[Bug 218652] lang/python36: thread issue in external library (both ctypes and C extension)
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Fri Apr 14 10:11:45 UTC 2017
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=218652
Bug ID: 218652
Summary: lang/python36: thread issue in external library (both
ctypes and C extension)
Product: Ports & Packages
Version: Latest
Hardware: Any
OS: Any
Status: New
Severity: Affects Only Me
Priority: ---
Component: Individual Port(s)
Assignee: python at FreeBSD.org
Reporter: sylvain at sylvaingarrigues.com
Assignee: python at FreeBSD.org
Flags: maintainer-feedback?(python at FreeBSD.org)
Hello,
I have libsylvain.so which has just one function (sylvain_display()) which
displays an hello world windows through QT libraries.
I have this one program `sylvain' which is a single line program which calls
sylvain_display from libsylvain.so.
When I run `sylvain', I have some debug output from QT on the console, and the
hello world window is displayed on my TV (I am running this on a Raspberry Pi
with FreeBSD).
Now, when I run python2.7 or python3.6, and load libsylvain.so either through
the ctypes module or through a C extension module, and call the
sylvain_display() function from python, I have the console log output from QT
as with the `sylvain' program, but I don't have the window on my TV!
I guess the rendering to the TV is done on a separate thread and this one is
not called or locked?
I came up with this simple test program to isolate the issue because both PyQT
and PySide now don't work as expected, I have console log but no actual TV
output.
This used to work one year ago, I don't know what has changed in Python.
Hope you guys will figure this out.
libsylvain.cpp: http://dev.sylvaingarrigues.com/libsylvain.cpp
sylvain.cpp (test program for libsylvain):
http://dev.sylvaingarrigues.com/sylvain.cpp
sylvain-ctypes.py (load libsylvain):
http://dev.sylvaingarrigues.com/sylvain-ctypes.py
Also tried with a C extension to rule out ctypes bug, same issue:
sylvainmodule.cpp (python module wrapper):
http://dev.sylvaingarrigues.com/sylvainmodule.cpp
sylvain-next.pu (load sylvainmodule and sylvain_display):
http://dev.sylvaingarrigues.com/sylvain-cext.py
build script: http://dev.sylvaingarrigues.com/build.sh
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the freebsd-python
mailing list