Bug#790825: vlc crashes when laptop is undocked
Michael Biebl
biebl at debian.org
Sat Jul 4 13:00:14 UTC 2015
Am 03.07.2015 um 09:32 schrieb Sebastian Ramacher:
> Thanks. I think this is a Qt 5 issue. I am able to produce a similar backtrace
> with the following example program [1]:
[example program]
> Can you confirm that this example also crashes for you?
Yes, this minimal program crashes as well when my system is undocked.
For completeness sake, backtrace is attached.
So this looks like a Qt5 issue indeed. I don't remember seeing those
crashes with Qt4, so this looks like a regression.
Thanks,
Michael
--
Why is it that all of the instruments seeking intelligent life in the
universe are pointed away from Earth?
-------------- next part --------------
Starting program: /home/michael/bug/helloworld
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[New Thread 0x7fffece58700 (LWP 3741)]
Program received signal SIGSEGV, Segmentation fault.
QWidgetPrivate::drawWidget (this=this at entry=0x694320, pdev=pdev at entry=0x6d3eb0, rgn=..., offset=..., flags=flags at entry=4,
sharedPainter=sharedPainter at entry=0x0, backingStore=0x6d8740) at kernel/qwidget.cpp:5552
5552 kernel/qwidget.cpp: Datei oder Verzeichnis nicht gefunden.
#0 QWidgetPrivate::drawWidget (this=this at entry=0x694320, pdev=pdev at entry=0x6d3eb0, rgn=..., offset=..., flags=flags at entry=4,
sharedPainter=sharedPainter at entry=0x0, backingStore=0x6d8740) at kernel/qwidget.cpp:5552
paintEngine = 0x69e4b0
grabbed = <optimized out>
asRoot = false
alsoOnScreen = false
toBePainted = {d = 0x6b0f30, static shared_empty = {ref = {atomic = {_q_value = -1}}, qt_rgn = 0x7ffff7734a00 <qrp>}}
onScreen = false
recursive = true
alsoInvisible = false
#1 0x00007ffff78cecc1 in QWidgetPrivate::paintSiblingsRecursive (this=this at entry=0x6cf870, pdev=pdev at entry=0x6d3eb0, siblings=..., index=<optimized out>,
rgn=..., offset=..., flags=4, sharedPainter=0x0, backingStore=0x6d8740) at kernel/qwidget.cpp:5743
wRegion = {d = 0x6b0f30, static shared_empty = {ref = {atomic = {_q_value = -1}}, qt_rgn = 0x7ffff7734a00 <qrp>}}
w = <optimized out>
boundingRect = {x1 = <optimized out>, y1 = 0, x2 = <optimized out>, y2 = 201}
dirtyBoundingRect = false
exludeOpaqueChildren = false
excludeNativeChildren = false
widgetPos = {xp = 1, yp = 1}
hasMask = false
#2 0x00007ffff78cdb07 in QWidgetPrivate::drawWidget (this=0x6cf870, pdev=0x6d3eb0, rgn=..., offset=..., flags=flags at entry=5,
sharedPainter=sharedPainter at entry=0x0, backingStore=0x6d8740) at kernel/qwidget.cpp:5600
asRoot = true
alsoOnScreen = false
toBePainted = {d = 0x787250, static shared_empty = {ref = {atomic = {_q_value = -1}}, qt_rgn = 0x7ffff7734a00 <qrp>}}
onScreen = <optimized out>
recursive = true
alsoInvisible = false
#3 0x00007ffff789e0bb in QWidgetBackingStore::doSync (this=this at entry=0x6d8740) at kernel/qwidgetbackingstore.cpp:1230
flags = 5
repaintAllWidgets = false
inTopLevelResize = <optimized out>
tlwRect = <optimized out>
surfaceGeometry = <optimized out>
dirtyCopy = {d = 0x698e90, static shared_empty = {ref = {atomic = {_q_value = -1}}, qt_rgn = 0x7ffff7734a00 <qrp>}}
updatesDisabled = <optimized out>
toClean = {d = 0x698e90, static shared_empty = {ref = {atomic = {_q_value = -1}}, qt_rgn = 0x7ffff7734a00 <qrp>}}
opaqueNonOverlappedWidgets = {a = 32, s = 0, ptr = 0x7fffffffcb10, {
array = "\000\000\000\000\000\000\000\000\020px\000\000\000\000\000\020px\000\000\000\000\000\020px\000\000\000\000\000\000\000\000\000\001\000\000\000\000\063P\244>\247\232\260`\337\377\377\377\177\000\000`\337\377\377\377\177\000\000\220\315\377\377\377\177\000\000\240\367a\000\000\000\000\000\001\004\000\000\000\000\000\000\240\337\377\377\377\177\000\000\005\000 \002\000\000\000\000\334\n\211\367\377\177\000\000`\337\377\377\377\177\000\000\220\315\377\377\377\177\000\000`\337\377\377\377\177\000\000\000\000\000\000\000\000\000\000\001\004\000\000\000\000\000\000\260_\211\367\377\177\000\000\000\000\000\000\000\000\000\000\067\311Q\367\377\177\000\000\240\367a\000\000\000\000\000\002\000\000\000\000\000\000\000 \322\377\377\377\177\000\000"...,
q_for_alignment_1 = 0, q_for_alignment_2 = 0}}
beginPaintInfo = {wasFlushed = 0, nothingToPaint = 0, backingStoreRecreated = 0}
#4 0x00007ffff789e459 in QWidgetBackingStore::sync (this=0x6d8740) at kernel/qwidgetbackingstore.cpp:1036
No locals.
#5 0x00007ffff78bf21f in QWidgetPrivate::syncBackingStore (this=0x6cf870) at kernel/qwidget.cpp:1894
No locals.
#6 0x00007ffff78d4218 in QWidget::event (this=this at entry=0x7fffffffdf60, event=event at entry=0x7fffffffd060) at kernel/qwidget.cpp:8962
No locals.
#7 0x00007ffff79d273e in QFrame::event (this=this at entry=0x7fffffffdf60, e=e at entry=0x7fffffffd060) at widgets/qframe.cpp:526
result = <optimized out>
#8 0x00007ffff7a5c333 in QAbstractScrollArea::event (this=0x7fffffffdf60, e=0x7fffffffd060) at widgets/qabstractscrollarea.cpp:1142
No locals.
#9 0x00007ffff7890adc in QApplicationPrivate::notify_helper (this=this at entry=0x61f7a0, receiver=receiver at entry=0x7fffffffdf60, e=e at entry=0x7fffffffd060)
at kernel/qapplication.cpp:3720
consumed = <optimized out>
#10 0x00007ffff7895fb0 in QApplication::notify (this=0x7fffffffdfa0, receiver=0x7fffffffdf60, e=0x7fffffffd060) at kernel/qapplication.cpp:3503
w = 0x7fffffffdf60
extra = <optimized out>
isProxyWidget = <optimized out>
res = <optimized out>
#11 0x00007ffff6fa33ab in QCoreApplication::notifyInternal (this=0x7fffffffdfa0, receiver=receiver at entry=0x7fffffffdf60, event=event at entry=0x7fffffffd060)
at kernel/qcoreapplication.cpp:935
threadData = 0x61f910
loopLevelCounter = {threadData = 0x61f910}
result = false
cbdata = {0x7fffffffdf60, 0x7fffffffd060, 0x7fffffffd00f}
d = <optimized out>
#12 0x00007ffff789f51f in sendEvent (event=0x7fffffffd060, receiver=0x7fffffffdf60) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:228
No locals.
#13 QWidgetBackingStore::sendUpdateRequest (this=<optimized out>, widget=0x7fffffffdf60, updateTime=<optimized out>) at kernel/qwidgetbackingstore.cpp:456
event = {_vptr.QEvent = 0x7ffff71ddc70 <vtable for QEvent+16>, static staticMetaObject = {d = {superdata = 0x0,
stringdata = 0x7ffff716a140 <qt_meta_stringdata_QEvent>, data = 0x7ffff7169b80 <qt_meta_data_QEvent>, static_metacall = 0x0,
relatedMetaObjects = 0x0, extradata = 0x0}}, d = 0x0, t = 77, posted = 0, spont = 0, m_accept = 1, reserved = 13}
#14 0x00007ffff78a010d in QWidgetBackingStore::markDirty (this=0x6d8740, rect=..., widget=<optimized out>,
updateTime=updateTime at entry=QWidgetBackingStore::UpdateNow, bufferState=bufferState at entry=QWidgetBackingStore::BufferInvalid)
at kernel/qwidgetbackingstore.cpp:639
widgetRect = {x1 = 0, y1 = 0, x2 = 201, y2 = 201}
translatedRect = {x1 = 0, y1 = 0, x2 = 201, y2 = 201}
#15 0x00007ffff78ebde4 in QWidgetWindow::repaintWindow (this=0x69e030) at kernel/qwidgetwindow.cpp:648
this = 0x69e030
#16 0x00007ffff6fd412e in QMetaObject::activate (sender=sender at entry=0x69e030, signalOffset=<optimized out>, local_signal_index=local_signal_index at entry=0,
argv=argv at entry=0x7fffffffd2d0) at kernel/qobject.cpp:3717
receiverInSameThread = <optimized out>
sw = {receiver = 0x69e030, previousSender = 0x7fffffffd4b0, currentSender = {sender = 0x69e030, signal = 3, ref = 1}, switched = true}
callFunction = 0x7ffff7c3df70 <QWidgetWindow::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>
receiver = 0x69e030
method_relative = 1
c = 0x695c50
last = 0x695c50
locker = {val = 140737339357136}
connectionLists = {connectionLists = 0x69a180}
list = <optimized out>
signal_index = 3
empty_argv = {0x0}
currentThreadId = 0x7ffff7fb7780
#17 0x00007ffff6fd47a7 in QMetaObject::activate (sender=sender at entry=0x69e030, m=m at entry=0x7ffff771fbc0 <QWindow::staticMetaObject>,
local_signal_index=local_signal_index at entry=0, argv=argv at entry=0x7fffffffd2d0) at kernel/qobject.cpp:3582
No locals.
#18 0x00007ffff72d7c2f in QWindow::screenChanged (this=this at entry=0x69e030, _t1=_t1 at entry=0x0) at .moc/moc_qwindow.cpp:626
_a = {0x0, 0x7fffffffd2c8}
#19 0x00007ffff72d8485 in QWindowPrivate::emitScreenChangedRecursion (this=this at entry=0x6b6a90, newScreen=newScreen at entry=0x0) at kernel/qwindow.cpp:366
No locals.
#20 0x00007ffff72dbbb3 in QWindowPrivate::setTopLevelScreen (this=0x6b6a90, newScreen=0x0, recreate=<optimized out>) at kernel/qwindow.cpp:387
shouldRecreate = <optimized out>
#21 0x00007ffff72dbd55 in QWindow::screenDestroyed (this=0x69e030, object=<optimized out>) at kernel/qwindow.cpp:1720
wasVisible = true
#22 0x00007ffff6fd3aba in call (a=0x7fffffffd520, r=0x69e030, this=0x6952d0) at ../../include/QtCore/../../src/corelib/kernel/qobject_impl.h:124
No locals.
#23 QMetaObject::activate (sender=sender at entry=0x639ee0, signalOffset=<optimized out>, local_signal_index=local_signal_index at entry=0,
argv=argv at entry=0x7fffffffd520) at kernel/qobject.cpp:3702
obj = {d = 0x6952d0}
receiverInSameThread = <optimized out>
sw = {receiver = 0x69e030, previousSender = 0x0, currentSender = {sender = 0x639ee0, signal = 0, ref = 1}, switched = true}
callFunction = <optimized out>
receiver = 0x69e030
method_relative = 0
c = 0x693ba0
last = 0x698840
locker = {val = 140737339356968}
connectionLists = {connectionLists = 0x69a150}
list = <optimized out>
signal_index = 0
empty_argv = {0x0}
currentThreadId = 0x7ffff7fb7780
#24 0x00007ffff6fd47a7 in QMetaObject::activate (sender=sender at entry=0x639ee0, m=m at entry=0x7ffff71d9980 <QObject::staticMetaObject>,
local_signal_index=local_signal_index at entry=0, argv=argv at entry=0x7fffffffd520) at kernel/qobject.cpp:3582
No locals.
#25 0x00007ffff6fd484f in QObject::destroyed (this=this at entry=0x639ee0, _t1=_t1 at entry=0x639ee0) at .moc/moc_qobject.cpp:206
_a = {0x0, 0x7fffffffd518}
#26 0x00007ffff6fdd1bb in QObject::~QObject (this=0x639ee0, __in_chrg=<optimized out>) at kernel/qobject.cpp:903
d = 0x639f00
#27 0x00007ffff72fa589 in QScreen::~QScreen (this=0x639ee0, __in_chrg=<optimized out>) at kernel/qscreen.cpp:77
No locals.
#28 0x00007ffff72c0e2a in QPlatformScreen::~QPlatformScreen (this=0x63a4c0, __in_chrg=<optimized out>) at kernel/qplatformscreen.cpp:57
No locals.
#29 0x00007ffff7f32179 in QXcbScreen::~QXcbScreen (this=0x63a4c0, __in_chrg=<optimized out>) at qxcbscreen.cpp:222
No locals.
#30 0x00007ffff7f24fbb in QXcbConnection::updateScreens (this=this at entry=0x62c100) at qxcbconnection.cpp:286
i = 0
activeScreens = {q_hash = {{d = 0x6d78e0, e = 0x6d78e0}}}
it = {data = 0x62db84, rem = 0, index = 864}
screenNumber = <optimized out>
xcbScreenNumber = <optimized out>
newScreens = {<QListSpecialMethods<QXcbScreen*>> = {<No data fields>}, {p = {static shared_null = {ref = {atomic = {_q_value = -1}}, alloc = 0,
begin = 0, end = 0, array = {0x0}}, d = 0x6d7820}, d = 0x6d7820}}
primaryScreen = <optimized out>
#31 0x00007ffff7f25c8d in QXcbConnection::handleXcbEvent (this=this at entry=0x62c100, event=event at entry=0x7fffe8003e60) at qxcbconnection.cpp:961
change_event = <optimized out>
result = 0
dispatcher = 0x64e2a0
handled = false
response_type = 89
#32 0x00007ffff7f26ecb in QXcbConnection::processXcbEvents (this=0x62c100) at qxcbconnection.cpp:1303
accepted = false
it = 0x7ffff707a430 <qt_array+48>
event = 0x7fffe8003e60
eventGuard = {d = 0x7fffe8003e60}
response_type = <optimized out>
i = 0
connection_error = <optimized out>
eventqueue = 0x637d98
#33 0x00007ffff6fd4e8a in QObject::event (this=0x62c100, e=<optimized out>) at kernel/qobject.cpp:1245
mce = <optimized out>
sw = {receiver = 0x62c100, previousSender = 0x0, currentSender = {sender = 0x637d80, signal = 5, ref = 1}, switched = true}
#34 0x00007ffff7890adc in QApplicationPrivate::notify_helper (this=this at entry=0x61f7a0, receiver=receiver at entry=0x62c100, e=e at entry=0x7fffe8003fb0)
at kernel/qapplication.cpp:3720
consumed = <optimized out>
#35 0x00007ffff7895fb0 in QApplication::notify (this=0x7fffffffdfa0, receiver=0x62c100, e=0x7fffe8003fb0) at kernel/qapplication.cpp:3503
w = 0x62c100
extra = <optimized out>
isProxyWidget = <optimized out>
res = <optimized out>
#36 0x00007ffff6fa33ab in QCoreApplication::notifyInternal (this=0x7fffffffdfa0, receiver=0x62c100, event=event at entry=0x7fffe8003fb0)
at kernel/qcoreapplication.cpp:935
threadData = 0x61f910
loopLevelCounter = {threadData = 0x61f910}
result = false
cbdata = {0x62c100, 0x7fffe8003fb0, 0x7fffffffdbff}
d = <optimized out>
#37 0x00007ffff6fa541b in sendEvent (event=0x7fffe8003fb0, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:228
No locals.
#38 QCoreApplicationPrivate::sendPostedEvents (receiver=receiver at entry=0x0, event_type=event_type at entry=0, data=0x61f910)
at kernel/qcoreapplication.cpp:1552
e = 0x7fffe8003fb0
pe = <optimized out>
r = <optimized out>
unlocker = {m = <synthetic pointer>}
event_deleter = {d = 0x7fffe8003fb0}
locker = {val = 6420792}
startOffset = 0
i = @0x61f92c: 1
cleanup = {receiver = 0x0, event_type = 0, data = 0x61f910, exceptionCaught = true}
#39 0x00007ffff6fa5a18 in QCoreApplication::sendPostedEvents (receiver=receiver at entry=0x0, event_type=event_type at entry=0)
at kernel/qcoreapplication.cpp:1410
data = <optimized out>
#40 0x00007ffff6ffbf33 in postEventSourceDispatch (s=0x64e300) at kernel/qeventdispatcher_glib.cpp:271
source = 0x64e300
#41 0x00007ffff5a0fc3d in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
No symbol table info available.
#42 0x00007ffff5a0ff20 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
No symbol table info available.
#43 0x00007ffff5a0ffcc in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
No symbol table info available.
#44 0x00007ffff6ffc347 in QEventDispatcherGlib::processEvents (this=0x64e2a0, flags=...) at kernel/qeventdispatcher_glib.cpp:418
d = 0x64abe0
canWait = true
savedFlags = {i = 0}
result = <optimized out>
#45 0x00007ffff6fa0b62 in QEventLoop::exec (this=this at entry=0x7fffffffdee0, flags=..., flags at entry=...) at kernel/qeventloop.cpp:204
locker = {val = 6420992}
ref = {d = 0x69bf30, locker = @0x7fffffffde60, exceptionCaught = true}
d = 0x69bf30
#46 0x00007ffff6fa87ac in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1188
threadData = 0x61f910
eventLoop = {<QObject> = {_vptr.QObject = 0x7ffff71e1150 <vtable for QEventLoop+16>, static staticMetaObject = {d = {superdata = 0x0,
stringdata = 0x7ffff710dc80 <qt_meta_stringdata_QObject>, data = 0x7ffff710db40 <qt_meta_data_QObject>,
static_metacall = 0x7ffff6fdd430 <QObject::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0,
extradata = 0x0}}, d_ptr = {d = 0x69bf30}, static staticQtMetaObject = {d = {superdata = 0x0,
stringdata = 0x7ffff7155780 <qt_meta_stringdata_Qt>, data = 0x7ffff7152f00 <qt_meta_data_Qt>, static_metacall = 0x0,
relatedMetaObjects = 0x0, extradata = 0x0}}}, static staticMetaObject = {d = {superdata = 0x7ffff71d9980 <QObject::staticMetaObject>,
stringdata = 0x7ffff7169740 <qt_meta_stringdata_QEventLoop>, data = 0x7ffff71696c0 <qt_meta_data_QEventLoop>,
static_metacall = 0x7ffff7053550 <QEventLoop::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)>, relatedMetaObjects = 0x0,
extradata = 0x0}}}
returnCode = <optimized out>
#47 0x0000000000401361 in main ()
No symbol table info available.
A debugging session is active.
Inferior 1 [process 3731] will be killed.
Quit anyway? (y or n)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: OpenPGP digital signature
URL: <http://lists.alioth.debian.org/pipermail/pkg-multimedia-maintainers/attachments/20150704/f4cbf9c4/attachment.sig>
More information about the pkg-multimedia-maintainers
mailing list