[vlc-devel] QT assertion failure with VideoWidget

Alexander Gall gall at switch.ch
Mon Jul 16 15:49:42 CEST 2007


VLC 0.9.0 SVN snapshot from July 13 causes an assertion failure in QT
4.3.0 (compiled in debug mode).

ASSERT failure in QCoreApplication::sendEvent: "Cannot send events to objects owned by a different thread. Current thread 4bd2c8. Receiver '' (of type 'VideoWidget') was created in thread 157400", file kernel/qcoreapplication.cpp, line 253 

I have attached the backtrace of the relevant thread.  In case it
matters, the system is OpenSolaris build svn_61 on SPARC.  VLC and QT
have been compild with SunStudio 12 (oops, it doesn't understand
--version :-)

$ vlc --version
VLC media player 0.9.0-svn Grishenko
VLC version 0.9.0-svn Grishenko
Compiled by gall at hadron.switch.ch
Compiler: usage: cc [ options] files.  Use 'cc -flags' for details
Based upon svn changeset [20795M]
This program comes with NO WARRANTY, to the extent permitted by law.
You may redistribute it under the terms of the GNU General Public License;
see the file named COPYING for details.
Written by the VideoLAN team; see the AUTHORS file.

-- 
Alex

(dbx) threads
      t at 1  a  l at 1   ?()   LWP suspended in  operator=()
      t at 2  a  l at 2   SigHandler()   LWP suspended in  __sigtimedwait()
      t at 4  a  l at 4   RunPreparse()   sleep on 0x475c8  in  __lwp_park()
      t at 5  a  l at 5   RunFetcher()   sleep on 0x14c070  in  __lwp_park()
      t at 6  a  l at 6   RunControlThread()   sleep on 0x14e3d8  in __lwp_park()
      t at 7  a  l at 7   RunInterface()   sleep on 0x14c168  in __lwp_park()
      t at 8  a  l at 8   RunInterface()   LWP suspended in  __nanosleep()
      t at 9  a  l at 9   RunSD()   LWP suspended in  __pollsys()
     t at 10  a l at 10   Run()   LWP suspended in  __pollsys()
     t at 11  a l at 11   DStreamThread()   sleep on 0x443f40  in __lwp_park()
o>   t at 12  a l at 12   DecoderThread()   signal SIGABRT in  __lwp_kill()
     t at 13  a l at 13   DecoderThread()   LWP suspended in  __nanosleep()
     t at 14  a l at 14   RunThread()   LWP suspended in  __nanosleep()
(dbx) where
current thread: t at 12
  [1] __lwp_kill(0x0, 0xffffffff, 0x0, 0x0, 0xfffffffc, 0x0), at 0xfef44a24
  [2] raise(0x6, 0x0, 0x5, 0xfef84f50, 0xffffffff, 0x6), at 0xfeef7504
  [3] abort(0x0, 0x1, 0x6, 0xfef836c0, 0xacf34, 0x0), at 0xfeed3824
=>[4] qt_message_output(msgType = QtFatalMsg, buf = 0xfb6f8b5c "ASSERT failure in QCoreApplication::sendEvent: "Cannot send events to objects owned by a different thread. Current thread 4bd2c8. Receiver '' (of type 'VideoWidget') was created in thread 157400", file kernel/qcoreapplication.cpp, line 253"), line 2145 in "qglobal.cpp"
  [5] qFatal(msg = 0xfcabd1e2 "ASSERT failure in %s: "%s", file %s, line %d", ...), line 2376 in "qglobal.cpp"
  [6] qt_assert_x(where = 0xfcac7d5d "QCoreApplication::sendEvent", what = 0x45ba68 "Cannot send events to objects owned by a different thread. Current thread 4bd2c8. Receiver '' (of type 'VideoWidget') was created in thread 157400", file = 0xfcac7dfd "kernel/qcoreapplication.cpp", line = 253), line 1912 in "qglobal.cpp"
  [7] QCoreApplicationPrivate::checkReceiverThread(this = 0x4f930, receiver = 0x23bad0), line 253 in "qcoreapplication.cpp"
  [8] QApplication::notify(this = 0x1573e0, receiver = 0x23bad0, e = 0xfb6fb374), line 3053 in "qapplication.cpp"
  [9] QCoreApplication::notifyInternal(this = 0x1573e0, receiver = 0x23bad0, event = 0xfb6fb374), line 509 in "qcoreapplication.cpp"
  [10] QCoreApplication::sendEvent(receiver = 0x23bad0, event = 0xfb6fb374), line 186 in "qaction.h"
  [11] QWidgetPrivate::setGeometry_sys(this = 0x23b150, x = 9, y = 794, w = 1031, h = 16, isMove = false), line 2151 in "qwidget_x11.cpp"
  [12] QWidget::resize(this = 0x23bad0, s = CLASS), line 4868 in "qwidget.cpp"
  [13] QWidget::resize(this = ???, w = ???, h = ???) (optimized), at 0xfdf1d3c4 (line ~915) in "qwidget.h"
  [14] QWidget::setMinimumSize(this = 0x23bad0, minw = 16, minh = 16), line 3042 in "qwidget.cpp"
  [15] VideoWidget::request(this = ???, p_nvout = ???, pi_x = ???, pi_y = ???, pi_width = ???, pi_height = ???) (optimized), at 0xfdf81f5c (line ~94) in "interface_widgets.cpp"
  [16] MainInterface::requestVideo(this = ???, p_nvout = ???, pi_x = ???, pi_y = ???, pi_width = ???, pi_height = ???) (optimized), at 0xfdf1a0ac (line ~441) in "main_interface.cpp"
  [17] DoRequest(p_intf = ???, p_vout = ???, pi1 = ???, pi2 = ???, pi3 = ???, pi4 = ???) (optimized), at 0xfdf17d90 (line ~76) in "main_interface.cpp" 
  [18] vout_RequestWindow(p_vout = ???, pi_x_hint = ???, pi_y_hint = ???, pi_width_hint = ???, pi_height_hint = ???) (optimized), at 0xff243aec (line ~123) in "vout_intf.c"
  [19] CreateWindow(p_vout = ???, p_win = ???) (optimized), at 0xfada82f0 (line ~1582) in "xcommon.c"
  [20] Activate__0_9_0b(p_this = ???) (optimized), at 0xfada70ac (line ~306) in "xcommon.c"
  [21] __module_Need(p_this = ???, psz_capability = ???, psz_name = ???, b_strict = ???) (optimized), at 0xff2964e4 (line ~648) in "modules.c"
  [22] __vout_Create(p_parent = ???, p_fmt = ???) (optimized), at 0xff231e00 (line ~398) in "video_output.c"
  [23] __vout_Request(p_this = ???, p_vout = ???, p_fmt = ???) (optimized), at 0xff2319a4 (line ~221) in "video_output.c"
  [24] vout_new_buffer(p_dec = ???) (optimized), at 0xff205f08 (line ~996) in "decoder.c"
  [25] GetNewPicture(p_dec = ???, pp_buf = ???) (optimized), at 0xfb753d04 (line ~606) in "libmpeg2.c"
  [26] DecodeBlock(p_dec = ???, pp_block = ???) (optimized), at 0xfb7534c8 (line ~318) in "libmpeg2.c"
  [27] DecoderDecodeVideo(p_dec = ???, p_block = ???) (optimized), at 0xff2050d4 (line ~560) in "decoder.c"
  [28] DecoderDecode(p_dec = ???, p_block = ???) (optimized), at 0xff2056d8 (line ~741) in "decoder.c"
  [29] DecoderThread(p_dec = ???) (optimized), at 0xff204c8c (line ~457) in "decoder.c"

_______________________________________________
vlc-devel mailing list
vlc-devel at videolan.org
http://mailman.videolan.org/listinfo/vlc-devel


More information about the vlc-devel mailing list