segfault using PyQt6 version 6.10.1
Phil Thompson
phil at riverbankcomputing.com
Wed Dec 24 11:13:46 GMT 2025
On 24/12/2025 08:34, Dmitry Shachnev wrote:
> On Wed, Dec 24, 2025 at 12:00:21AM +0300, Dmitry Shachnev wrote:
>> Similar crashes (in QtWaylandClient::QWaylandClipboard::setMimeData)
>> were
>> reported in Debian:
>>
>> - https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1123850
>> - https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1123860
>>
>> And in Debian the Qt version is still 6.9.2, so it looks like a
>> regression
>> in PyQt or SIP, not in Qt.
>>
>> According to the reporter, downgrading PyQt from v6.10.1 to v6.10.0
>> helps.
>>
>> PyQt v6.10.0 was built using SIP v6.14.0.
>> PyQt v6.10.1 was built using SIP v6.15.0 + commit 79da3321082f17d5
>> backported.
>
> Rebuilding PyQt with SIP v6.15.1 does not help.
>
> I attached a valgrind stacktrace. I believe it may be helpful, since it
> shows
> that PyQt code deleted an object which is later used by Qt code.
PyQt v6.10.1 changed the /Factory/ annotation to /Transfer/ on
QPlainTextEdit::createMimeDataFromSelection() to match the fix to
createStandardContextMenu() as the language used to describe the
ownership changes in the docs is the same. A (possibly significant)
difference is that the former is virtual and the latter isn't. The
obvious fix would be just to revert that change (and to QTextEdit) but
it's possible that that is still buggy.
I'll look at in the next few days, but a similar valgrind long using
PyQt6 v6.10.0 would be very useful...
Phil
More information about the PyQt
mailing list