dotgnu-general
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [DotGNU]Status of cscc and Qt#


From: Adam Treat
Subject: Re: [DotGNU]Status of cscc and Qt#
Date: Wed, 6 Nov 2002 18:51:34 -0500
User-agent: KMail/1.4.7

On Wednesday 06 November 2002 06:20 pm, Rhys Weatherley wrote:
> Hmmm ... it looks like it is blowing up in "libqt-mt" when the native
> library is unloaded using "dlclose".  I'm not sure how to debug that.
>
> Mono doesn't appear to call "dlclose" at shutdown time, so it may
> avoid the SEGV by simply not doing any cleanup on dynamic libraries.
> Unless the "dlclose" is happening somewhere that I can't find right now.
>
> You could try commenting out the call to "ILDynLibraryClose" in
> "ILExecProcessDestroy" and seeing if that helps.  It isn't really
> a long-term solution though.

Yes, this is the same kind of backtrace I get when exiting Qt# apps.  
Actually, the bt looks like this:

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 1024 (LWP 17054)]
0x40cbe9c7 in QGList::removeRef(void*) () from /usr/local/qt/lib/libqt-mt.so.3
(gdb) bt
#0  0x40cbe9c7 in QGList::removeRef(void*) () from 
/usr/local/qt/lib/libqt-mt.so.3
#1  0x40a9eb0e in remove_tree(QObject*) () from 
/usr/local/qt/lib/libqt-mt.so.3
#2  0x40a9ef51 in QObject::~QObject() () from /usr/local/qt/lib/libqt-mt.so.3
#3  0x40a62c40 in QFontCache::~QFontCache() () from 
/usr/local/qt/lib/libqt-mt.so.3
#4  0x40a6b818 in __static_initialization_and_destruction_0(int, int) () from 
/usr/local/qt/lib/libqt-mt.so.3
#5  0x40a6bdb2 in _GLOBAL__D__ZN5QFontC2EP12QFontPrivateb () from 
/usr/local/qt/lib/libqt-mt.so.3
#6  0x409f3a9f in __do_global_dtors_aux () from 
/usr/local/qt/lib/libqt-mt.so.3
#7  0x40d51491 in _fini () from /usr/local/qt/lib/libqt-mt.so.3
#8  0x40163c9c in _dl_close () from /lib/libc.so.6
#9  0x40163fd0 in _dl_close () from /lib/libc.so.6
#10 0x40036f4b in dlopen () from /lib/libdl.so.2
#11 0x40009a0b in _dl_catch_error () from /lib/ld-linux.so.2
#12 0x400372ef in dlerror () from /lib/libdl.so.2
#13 0x40036f71 in dlclose () from /lib/libdl.so.2
#14 0x08065b8d in ILExecProcessDestroy (process=0x80edf50) at process.c:162
#15 0x0804ad05 in main (argc=2, argv=0xbffff9c4) at ilrun.c:404

> > *sigh*  We have been having so many problems with our Disposal code and
> > implementing IDisposable with Mono.  Rhys, do you have Qt# installed? 
> > You'd need Mono to generate the bindings (apparently pnet's System.Xml
> > can't run our generator yet.)  Thank you for all your help Rhys.

It looks like Gopal's patch to SuppressFinalize in engine/lib_gc.c has fixed 
the GC.SuppressFinalization problem.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]