Hi J-S,
I found some rough edges in the osgQtBrowser example. Testing was on an
AMD-64 system running SusE 10.1.
-Don
1) osgQtBrowserd --useWidgetImage
runs OK; resize & event handling good; Memory fault on exit.
gdb had this diagnostic:
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 47620506365088 (LWP 30791)]
0x000000000040b6c1 in ScopedLock (this=0x7fff2d2635d0, m=Internal: global symbol
`Mutex' found in
/usr/osg/OpenSceneGraph/src/OpenThreads/pthreads/PThreadMutex.c++ psymtab but
not in symtab.
Mutex may be an inlined function, or may be a template function
(if a template, try specifying an instantiation: Mutex<type>).
) at ScopedLock:31
31 explicit ScopedLock(M& m):m_lock(m) {m_lock.lock();}
(gdb) where
#0 0x000000000040b6c1 in ScopedLock (this=0x7fff2d2635d0, m...@0x512c18) at
ScopedLock:31
#1 0x00002b4f7de10efa in osg::ObserverSet::signalObjectDeleted (this=0x512bf8,
ptr=0x6edf58) at /usr/osg/OpenSceneGraph/src/osg/Observer.cpp:73
#2 0x00002b4f7de3c709 in osg::Referenced::signalObserversAndDelete
(this=0x6edf58,
signalDelete=true, doDelete=true)
at /usr/osg/OpenSceneGraph/src/osg/Referenced.cpp:311
#3 0x000000000040ac4e in osg::Referenced::unref (this=0x6edf58) at
Referenced:198
#4 0x00002b4f7dd4c0fc in ~ref_ptr (this=0x5b8970) at ref_ptr:33
#5 0x00002b4f7dd47cce in ~Drawable (this=0x5b88a0)
-- snip --
2) osgQtBrowserd --useWidgetImage --fullscreen
dies on start-up:
Warning: deleting still referenced object 0x6d4850 of type 'PN3osg10ReferencedE'
the final reference count was 2, memory corruption possible.
Illegal instruction
gdb:
[Thread debugging using libthread_db enabled]
[New Thread 47385360653472 (LWP 30798)]
Warning: deleting still referenced object 0x5b5c20 of type 'PN3osg10ReferencedE'
the final reference count was 2, memory corruption possible.
Program received signal SIGILL, Illegal instruction.
[Switching to Thread 47385360653472 (LWP 30798)]
0x00000000005b5c18 in ?? () at .moc/release-shared/moc_qgraphicswidget.cpp:61
warning: Source file is more recent than executable.
61 {
(gdb) where
#0 0x00000000005b5c18 in ?? () at
.moc/release-shared/moc_qgraphicswidget.cpp:61
#1 0x0000000000000000 in ?? ()
#2 0x0000000000000000 in ?? ()
-- snip --
3) osgQtBrowserd --useWidgetImage --useBrowser
like #1 except all white quad instead of text;
disabled code to by-pass WebKit likely to blame:
QPainter::begin: Paint device returned engine == 0, type: 3
QPainter::setCompositionMode: Painter not active
QPainter::setCompositionMode: Painter not active
QPainter::end: Painter not active, aborted
Memory fault
4) osgQtBrowserd --useWidgetImage --useBrowser --fullscreen
disabled code
Warning: deleting still referenced object 0x5ba970 of type 'PN3osg10ReferencedE'
the final reference count was 2, memory corruption possible.
Illegal instruction
5) osgQtBrowserd --useWidgetImage --sanityCheck
OK with your sanity clause. QT & OGS in seperate windows.
6) osgQtBrowserd --useWidgetImage --fullscreen --sanityCheck
Same as #5; not full sceen even after unsetting "OSG_WINDOW=0 0 800 600".
7) osgQtBrowserd --useWidgetImage --useBrowser --sanityCheck
Like #5 except Qt Window all white; hits "disabled code".
8) osgQtBrowserd --useWidgetImage --useBrowser --fullscreen --sanityCheck
Like #7; not full screen.
_______________________________________________
osg-submissions mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-submissions-openscenegraph.org