[vlc-devel] KDE GUI platform
Rémi Denis-Courmont
remi at remlab.net
Sun Jan 30 16:21:36 CET 2011
Hello,
For quite a while, the Qt4 open & save file dialogs provided by the KDE GUI
platform plugin have been causing a segmentation fault at exit:
https://bugs.kde.org/show_bug.cgi?id=234484
As of KDE 4.6, the same dialogs cause the VLC user interface to freeze for one
minute. The root cause seems to be a longstanding bug in the QProcess class
from Qt4 core. However, the faulty dialogs did not make use of QProcess until
KDE version 4.6:
https://bugs.kde.org/show_bug.cgi?id=260719
There is a way to work around this bug in VLC: The SIGCHLD signal can be left
unblocked in the VLC process. Unfortunately, this means that a number of
system calls in the VLC process can be interrupted asynchronously. I tried to
fix the most obvious cases of calling poll(). But this also affects some other
system calls, and also code paths in underlying libraries. In a way, those are
bugs in VLC and its libraries. And those bugs should be fixed so that LibVLC
works fine (outside of VLC that is). However, from a pragmatic perspective, I
cannot do it, and I strongly doubt anyone can.
In any case, this is yet another bug in the KDE plugins for Qt. From
experience, the KDE project does not fix those bugs, as they only affect Qt
but non-KDE applications. In this case, it's quite clear that Qt refuses to
implement the correct solution (see kde-core-devel).
So I have forcefully disabled KDE within VLC as of version 1.1.7. That means
VLC looks ugly in the KDE environment. But I cannot see any reliable
alternative as long as KDE & Qt continue to ignore those bugs. And truth be
told, I am really fed up working around KDE bugs; VLC has enough bugs of its
own to deal with.
If you want to lobby them, feel free to do so. I gave up.
--
Rémi Denis-Courmont
http://www.remlab.net/
http://fi.linkedin.com/in/remidenis
More information about the vlc-devel
mailing list