[PyQt] Segfault with QSerialPort and signals

Florian Bruhin me at the-compiler.org
Thu Dec 5 16:08:31 GMT 2013


I'm currently struggling with a segfault I'm getting when using
QSerialPort and emitting a signal, with Windows XP SP3, Python 3.3.3
and PyQt5 5.1.1.

I did some minimal example code which triggers the behaviour:
http://paste.the-compiler.org/view/raw/e2c56c0a

When I run this and receive a byte via the serial port, I get an
"Access violation" (aka segfault) in qt5serialport.dll. Sometimes it
happens when clicking "Start" the first time, sometimes after the
second time.

Some things I observed so far:

 - The signal needs to have a bool/int as first parameter, and some
   other parameter -- otherwise it doesn't seem to trigger.

 - When I emit the signal _before_ the port has been closed
   (self.ser.close()), it doesn't seem to trigger.

 - On Linux (Archlinux, Python 3.3.2, PyQt 5.1.1) I can't reproduce
   this, but after starting a second time, I always get
   "QSocketNotifier: Invalid socket specified".

What gives? Am I doing something wrong? Or is this a bug in [Py]Qt
somewhere?

Florian

-- 
() ascii ribbon campaign - stop html mail    www.asciiribbon.org
/\ www.the-compiler.org  | I love long mails http://email.is-not-s.ms/
One thing about the past. It's likely to last. -- Ogden Nash 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 836 bytes
Desc: not available
URL: <http://www.riverbankcomputing.com/pipermail/pyqt/attachments/20131205/91785d4a/attachment.pgp>


More information about the PyQt mailing list