[prev in list] [next in list] [prev in thread] [next in thread] 

List:       pykde
Subject:    Re: [PyQt] 5.14 and macOS: Immediate renderer process crash with QtWebEngine
From:       Colin McPhail <mcphail_colin () hotmail ! com>
Date:       2020-01-04 19:00:53
Message-ID: HE1PR10MB1755CA49BFB0CE61ED0E9EAA85220 () HE1PR10MB1755 ! EURPRD10 ! PROD ! OUTLOOK ! COM
[Download RAW message or body]

On 4 Jan 2020, at 17:46, Phil Thompson \
<phil@riverbankcomputing.com<mailto:phil@riverbankcomputing.com>> wrote:

On 03/01/2020 21:56, Florian Bruhin wrote:
Hey,
On Fri, Jan 03, 2020 at 12:11:01PM +0000, Colin McPhail wrote:
 On 1 Jan 2020, at 18:21, Florian Bruhin \
<[1]me@the-compiler.org<mailto:me@the-compiler.org>> wrote:  On Tue, Dec 31, 2019 at \
07:42:01PM +0000, Phil Thompson wrote:  On 31/12/2019 18:13, Florian Bruhin wrote:
     Hey,
     I just tried to upgrade to PyQt 5.14 on macOS, but a simple
     QtWebEngine
     application like this:
     [...]
     results in an immediate renderer process crash, making QtWebEngine
     unusable.
...
 Florian
 --
I too have noticed these render process crashes. I'm using the PyQt 5.14
wheels and Python 3.8.1 from [2]python.org<http://python.org> on macOS Catalina \
(10.15.2). Apple's Console utility app is showing me crash reports and I have
attached one. I took a quick look at the source files it mentions and the
renderer seems to be trying to locate a directory containing spelling
checker dictionaries (?).
Oh, I wasn't aware it was possible to get crash information that way. So it
looks like it crashes here:
 CFBundleCopyBundleURL
   (inside macOS stuff)
 QLibraryInfo::location(QLibraryInfo::LibraryLocation) + 2258
(qlibraryinfo.cpp:542)
   CFBundleRef qtCoreBundle = CFBundleGetBundleWithIdentifier(
CFSTR("org.qt-project.QtCore"));
   Q_ASSERT(qtCoreBundle);
   QCFType<CFURLRef> qtCorePath = CFBundleCopyBundleURL(qtCoreBundle);
 QLibraryInfo::location(QLibraryInfo::LibraryLocation) + 1305
(qlibraryinfo.cpp:831)
...
(The old code used CFBundleGetMainBundle() from what it seems)
So I'm guessing that is the culprit somehow? Maybe the QtCore bundle isn't
loaded from the point of view of QtWebEngineProcess? But then no idea why
that'd happen with PyQt but not Qt itself.

Thanks, that was the clue I needed. The missing file is \
QtCore.framework/Resources/Info.plist

Phil

Happy to confirm that copying that file from a Qt 5.14 installation to the \
appropriate place in PyQt5's site-packages hierarchy worked for me.

Thanks!

--Colin


[Attachment #3 (text/html)]

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: \
after-white-space;" class=""> <br class="">
<div><br class="">
<blockquote type="cite" class="">
<div class="">On 4 Jan 2020, at 17:46, Phil Thompson &lt;<a \
href="mailto:phil@riverbankcomputing.com" \
class="">phil@riverbankcomputing.com</a>&gt; wrote:</div> <br \
class="Apple-interchange-newline"> <div class=""><span style="caret-color: rgb(0, 0, \
0); font-family: Verdana; font-size: 13px; font-style: normal; font-variant-caps: \
normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: \
0px; text-transform: none; white-space: normal; word-spacing: 0px; \
-webkit-text-stroke-width: 0px; text-decoration: none; float: none; display: inline \
!important;" class="">On  03/01/2020 21:56, Florian Bruhin wrote:</span><br \
style="caret-color: rgb(0, 0, 0); font-family: Verdana; font-size: 13px; font-style: \
normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; \
text-align: start; text-indent: 0px; text-transform: none; white-space: normal; \
word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""> \
<blockquote type="cite" style="font-family: Verdana; font-size: 13px; font-style: \
normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; \
orphans: auto; text-align: start; text-indent: 0px; text-transform: none; \
white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; \
-webkit-text-stroke-width: 0px; text-decoration: none;" class=""> Hey,<br class="">
On Fri, Jan 03, 2020 at 12:11:01PM &#43;0000, Colin McPhail wrote:<br class="">
<blockquote type="cite" class="">&nbsp;On 1 Jan 2020, at 18:21, Florian Bruhin \
&lt;[1]<a href="mailto:me@the-compiler.org" class="">me@the-compiler.org</a>&gt; \
wrote:<br class=""> &nbsp;On Tue, Dec 31, 2019 at 07:42:01PM &#43;0000, Phil Thompson \
wrote:<br class=""> &nbsp;&nbsp;&nbsp;On 31/12/2019 18:13, Florian Bruhin wrote:<br \
class=""> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Hey,<br class="">
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;I just tried to upgrade to PyQt 5.14 on macOS, but a \
simple<br class=""> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;QtWebEngine<br class="">
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;application like this:<br class="">
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[...]<br class="">
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;results in an immediate renderer process crash, making \
QtWebEngine<br class=""> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;unusable.<br class="">
...<br class="">
&nbsp;Florian<br class="">
&nbsp;--<br class="">
I too have noticed these render process crashes. I'm using the PyQt 5.14<br class="">
wheels and Python 3.8.1 from [2]<a href="http://python.org" \
class="">python.org</a>&nbsp;on macOS Catalina (10.15.2).<br class=""> Apple's \
Console utility app is showing me crash reports and I have<br class=""> attached one. \
I took a quick look at the source files it mentions and the<br class=""> renderer \
seems to be trying to locate a directory containing spelling<br class=""> checker \
dictionaries (?).<br class=""> </blockquote>
Oh, I wasn't aware it was possible to get crash information that way. So it<br \
class=""> looks like it crashes here:<br class="">
&nbsp;CFBundleCopyBundleURL<br class="">
&nbsp;&nbsp;&nbsp;(inside macOS stuff)<br class="">
&nbsp;QLibraryInfo::location(QLibraryInfo::LibraryLocation) &#43; 2258<br class="">
(qlibraryinfo.cpp:542)<br class="">
&nbsp;&nbsp;&nbsp;CFBundleRef qtCoreBundle = CFBundleGetBundleWithIdentifier(<br \
class=""> CFSTR(&quot;org.qt-project.QtCore&quot;));<br class="">
&nbsp;&nbsp;&nbsp;Q_ASSERT(qtCoreBundle);<br class="">
&nbsp;&nbsp;&nbsp;QCFType&lt;CFURLRef&gt; qtCorePath = \
CFBundleCopyBundleURL(qtCoreBundle);<br class=""> \
&nbsp;QLibraryInfo::location(QLibraryInfo::LibraryLocation) &#43; 1305<br class=""> \
                (qlibraryinfo.cpp:831)<br class="">
...</blockquote>
</div>
</blockquote>
<blockquote type="cite" class="">
<div class="">
<blockquote type="cite" style="font-family: Verdana; font-size: 13px; font-style: \
normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; \
orphans: auto; text-align: start; text-indent: 0px; text-transform: none; \
white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; \
-webkit-text-stroke-width: 0px; text-decoration: none;" class=""> (The old code used \
CFBundleGetMainBundle() from what it seems)<br class=""> So I'm guessing that is the \
culprit somehow? Maybe the QtCore bundle isn't<br class=""> loaded from the point of \
view of QtWebEngineProcess? But then no idea why<br class=""> that'd happen with PyQt \
but not Qt itself.<br class=""> </blockquote>
<br style="caret-color: rgb(0, 0, 0); font-family: Verdana; font-size: 13px; \
font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: \
normal; text-align: start; text-indent: 0px; text-transform: none; white-space: \
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" \
class=""> <span style="caret-color: rgb(0, 0, 0); font-family: Verdana; font-size: \
13px; font-style: normal; font-variant-caps: normal; font-weight: normal; \
letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; \
white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; \
text-decoration: none; float: none; display: inline !important;" class="">Thanks,  \
that was the clue I needed. The missing file is \
QtCore.framework/Resources/Info.plist</span><br style="caret-color: rgb(0, 0, 0); \
font-family: Verdana; font-size: 13px; font-style: normal; font-variant-caps: normal; \
font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; \
text-transform: none; white-space: normal; word-spacing: 0px; \
-webkit-text-stroke-width: 0px; text-decoration: none;" class=""> <br \
style="caret-color: rgb(0, 0, 0); font-family: Verdana; font-size: 13px; font-style: \
normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; \
text-align: start; text-indent: 0px; text-transform: none; white-space: normal; \
word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""> \
<span style="caret-color: rgb(0, 0, 0); font-family: Verdana; font-size: 13px; \
font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: \
normal; text-align: start; text-indent: 0px; text-transform: none; white-space: \
normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; \
float: none; display: inline !important;" class="">Phil</span></div> </blockquote>
<br class="">
Happy to confirm that copying that file from a Qt 5.14 installation to the \
appropriate place in PyQt5's site-packages hierarchy worked for me.</div> <div><br \
class=""> </div>
<div>Thanks!</div>
<div><br class="">
</div>
<div>--Colin</div>
<br class="">
</body>
</html>


[Attachment #4 (unknown)]

_______________________________________________
PyQt mailing list    PyQt@riverbankcomputing.com
https://www.riverbankcomputing.com/mailman/listinfo/pyqt


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic