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

List:       kde-bugs-dist
Subject:    [phonon-backend-gstreamer] [Bug 327367] crash in QApplication::syncX in non-mainthread
From:       Daniel Vrátil <dvratil () redhat ! com>
Date:       2014-04-08 18:04:50
Message-ID: bug-327367-17878-Uv08iPJABY () http ! bugs ! kde ! org/
[Download RAW message or body]

https://bugs.kde.org/show_bug.cgi?id=327367

Daniel Vrátil <dvratil@redhat.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
   Version Fixed In|                            |4.7.3
         Resolution|---                         |FIXED
      Latest Commit|                            |http://commits.kde.org/phon
                   |                            |on-gstreamer/2cafb9db34ed10
                   |                            |79eca22c913a48011b67ff9c70

--- Comment #4 from Daniel Vrátil <dvratil@redhat.com> ---
Git commit 2cafb9db34ed1079eca22c913a48011b67ff9c70 by Dan Vrátil.
Committed on 08/04/2014 at 17:46.
Pushed by dvratil into branch '4.7'.

Only call QApplication::syncX() from the main thread

This fixes a regression introduced in 2db4c4. In order to pass WID to gstreamer
synchronously, a Qt::DirectConnection between Pipeline signal and a VideoWidget
slot must be created. However the signal from Pipeline can be emitted from an
arbitrary thread, so we can't call QApplication::syncX() directly from the slot
callchain. This patch moves the call to VideoWidget::syncX() slot that is
called
from X11Renderer via queued invocation to make sure it's always executed from
the
main thread.

FIXED-IN: 4.7.3
Related: bug 332977, bug 305333

M  +13   -0    gstreamer/videowidget.cpp
M  +1    -0    gstreamer/videowidget.h
M  +5    -14   gstreamer/x11renderer.cpp

http://commits.kde.org/phonon-gstreamer/2cafb9db34ed1079eca22c913a48011b67ff9c70

-- 
You are receiving this mail because:
You are watching all bug changes.=
[prev in list] [next in list] [prev in thread] [next in thread] 

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