[X2Go-Dev] x2goclient-3.99.2.1 plugin crash
Oleksandr Shneyder
oleksandr.shneyder at obviously-nice.de
Thu Jul 5 14:22:47 CEST 2012
Hello Jan,
I have made some fixes in X2GoPlugin code for several minutes:
http://code.x2go.org/gitweb?p=x2goclient.git;a=commit;h=d4d0fe38610d3e514dc2e4e259ce8f103e4ac535
Please test it.
The documentation in our wiki about X2Go Plugin configuration was too
old. Since we using qtbrowserplugin for building X2Go Plugin we don't
need a configuration file any more. All settings should be saved direct
in HTML-File. I have the wiki page also updated, please check it:
http://www.x2go.org/doku.php/wiki:components:x2goplugin#inserting_the_object_object_code
Am 05.07.2012 13:50, schrieb Jan Engelhardt:
>
> I can get the x2goclient firefox plugin to reproducibly crash. This
> crash happens once one clicks on the blue X2go splash when the plugin
> is loaded.
> According to gdb,
>
> (gdb) p stb
> $1 = (QToolBar *) 0x0 [or values pointing to unmapped areas]
> (gdb) l
> 10353 void ONMainWindow::slotEmbedToolBarToolTip()
> 10354 {
> 10355 if ( !showTbTooltip )
> 10356 return;
> 10357 QWidget* widg=stb->widgetForAction (
> 10358 act_embedToolBar );
> 10359 QToolTip::showText ( this->mapToGlobal ( QPoint ( 6,6 ) ),
> 10360 tr ( "<br><b> Click this "
> 10361 "button <br>"
> 10362 " to restore toolbar"
> (gdb) bt
> #0 data (this=0x8) at ../../src/corelib/tools/qscopedpointer.h:135
> #1 qGetPtrHelper<QScopedPointer<QObjectData> > (p=...)
> at ../../src/corelib/global/qglobal.h:2342
> #2 d_func (this=0x0) at widgets/qtoolbar.h:167
> #3 QToolBar::widgetForAction (this=0x0, action=0x0)
> at widgets/qtoolbar.cpp:1285
> #4 0x00007fe1d9ad5c03 in ONMainWindow::slotEmbedToolBarToolTip (this=
> 0x7fe1d14c6800) at ../onmainwindow.cpp:10358
> #5 0x00007fe1d9b554fd in ONMainWindow::qt_metacall (this=0x7fe1d14c6800, _c=
> QMetaObject::InvokeMetaMethod, _id=108, _a=0x7fff1d3d0440)
> at moc_onmainwindow.cpp:402
> #6 0x00007fe1d7c235aa in QMetaObject::activate (sender=0x7fe1d1413200,
> m=<optimized out>, local_signal_index=<optimized out>, argv=0x0)
> at kernel/qobject.cpp:3287
> #7 0x00007fe1d7c2b66f in QSingleShotTimer::timerEvent (this=0x7fe1d1413200)
> at kernel/qtimer.cpp:308
> #8 0x00007fe1d7c26e89 in QObject::event (this=0x7fe1d1413200,
> e=<optimized out>) at kernel/qobject.cpp:1190
> #9 0x00007fe1d844fc34 in notify_helper (e=0x7fff1d3d0b00, receiver=
> 0x7fe1d1413200, this=0x7fe1db3e00b0) at kernel/qapplication.cpp:4481
> #10 QApplicationPrivate::notify_helper (this=0x7fe1db3e00b0, receiver=
> 0x7fe1d1413200, e=0x7fff1d3d0b00) at kernel/qapplication.cpp:4453
> #11 0x00007fe1d8454ac1 in QApplication::notify (this=0x7fe1db3a94b0, receiver=
> 0x7fe1d1413200, e=0x7fff1d3d0b00) at kernel/qapplication.cpp:4360
> ---Type <return> to continue, or q <return> to quit---q
> Quit
>
> I also attempted to valgrind that, and came up with
>
> ==19917== Conditional jump or move depends on uninitialised value(s)
> ==19917== at 0x12237BD8: ONMainWindow::slotEmbedToolBarToolTip() (onmainwindow.cpp:10355)
> ==19917== by 0x122B74FC: ONMainWindow::qt_metacall(QMetaObject::Call, int, void**) (moc_onmainwindow.cpp:402)
> ==19917== by 0x1424A5A9: QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (qobject.cpp:3287)
> ==19917== by 0x1425266E: QSingleShotTimer::timerEvent(QTimerEvent*) (qtimer.cpp:308)
> ==19917== by 0x1424DE88: QObject::event(QEvent*) (qobject.cpp:1190)
> ==19917== by 0x132C9C33: QApplicationPrivate::notify_helper(QObject*, QEvent*) (qapplication.cpp:4481)
> ==19917== by 0x132CEAC0: QApplication::notify(QObject*, QEvent*) (qapplication.cpp:4360)
> ==19917== by 0x1423782B: QCoreApplication::notifyInternal(QObject*, QEvent*) (qcoreapplication.cpp:787)
> ==19917== by 0x142643A7: QTimerInfoList::activateTimers() (qcoreapplication.h:215)
> ==19917== by 0x14261B93: timerSourceDispatch(_GSource*, int (*)(void*), void*) (qeventdispatcher_glib.cpp:184)
> ==19917== by 0xA3E258C: g_main_context_dispatch (gmain.c:2425)
> ==19917== by 0xA3E2D87: g_main_context_iterate.isra.21 (gmain.c:3073)
> ==19917==
>
> So, showTbTooltip seems uninitialized. I added printfs around every
> place where showTbTooltip is modified. However, my printfs never made it
> to screen (stdout/stderr are connected to a /dev/pts/N), which means
> that initWidgetsEmbed was never called.
> _______________________________________________
> X2Go-Dev mailing list
> X2Go-Dev at lists.berlios.de
> https://lists.berlios.de/mailman/listinfo/x2go-dev
--
Oleksandr Shneyder
Dipl. Informatik
X2go Core Developer Team
email: oleksandr.shneyder at obviously-nice.de
web: www.obviously-nice.de
--> X2go - everywhere at home
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 262 bytes
Desc: OpenPGP digital signature
URL: <http://lists.x2go.org/pipermail/x2go-dev/attachments/20120705/438a5a69/attachment.pgp>
More information about the x2go-dev
mailing list