logo       

Re: Mysterious DESTROY warnings from PerlQt 3.008: msg#00025

Subject: Re: Mysterious DESTROY warnings from PerlQt 3.008
Germain Garand wrote:

> Le Lundi 15 Décembre 2003 14:44, Peter Rockai (mornfall) a écrit :
>> Hello!
>>
>> I am developing a Qt frontend for the Debian configuration system
>> DebConf.
> 
> Hello Peter,
> this is good news :-)
=). I have been promised that it will go into official Debian when it's
finished. Hooray.
> 
>> It uses (as you might have guessed) the PerlQt bindings. After the
>> frontend finishes, i get messages like this:
>> "DESTROY created new reference to dead object ' Qt::VBoxLayout', <GEN1>
>> line 5 during global destruction."
>> "DESTROY created new reference to dead object ' Qt::CheckBox', <GEN1>
>> line 7 during global destruction."
>> Et cetera (varies with different code-paths).
>>
> 
> This kind of error message is most likely obtained when PerlQt objects are
> improperly cleanup.
> During global destruction, an object is claiming it still has a parent and
> refuses to be destroyed.
> It may happen for instance if you abruptely exit() from inside a class
> instead of properly terminating the Qt::Application, or if the
> parent-children relationship was messed up in some way...
Well, this would explain a lot of this. As i exec/exit the QApplication
several times, this may cause the problem. The problem here is that i am
not in charge of flow control in this program. I use QApplication only to
be able to display my interface.
> You might want to check your constructors to see if you choose the right
> parent for your objects.
> A common error is using zero instead of "undef" when you mean a null
> pointer. This can sometimes lead to problems as it might call a method you
> did not intended.
I have read the FAQ. And i use real parents everywhere (no 0 anywhere).
> e.g
> Qt::GridLayout(0) would call QGridLayout ( int nRows = 1, int nCols = 1,
> int spacing = -1, const char * name = 0 )
Should be OK at my part. But i'll go and check -- it's possible something
slipped my sight.
> 
> Most of those errors can be spotted by using Qt::debug.
> Try -MQt::debug=calls,gc,ambiguous,verbose
> 
>> If it is relevant, i run these debian packages related to PerlQt:
>> ii  libqt-perl     3.008-1        Perl bindings for the Qt library
>> ii  libqt3c102-mt  3.2.1-6        Qt GUI Library (Threaded runtime
>> version)
>> ii  perl           5.8.2-2        Larry Wall's Practical Extraction and
>> Report ii  perl-base      5.8.2-2        The Pathologically Eclectic
>> Rubbish Lister. ii  perl-modules   5.8.2-2        Core Perl modules.
> 
> heavens! the bleeding edge :)
Sure... aptitude update; aptitude dist-upgrade almost daily :).

> 
>> So, the question remains, whether the
>> warnings indicate some bug on my part or a bug on your (PerlQt's) part or
>> are utterly harmless.
> 
> As I've never seen such an error with correct programs (i.e investigating
> those always revealed a bug in the PerlQt program), even quite complex
> ones, I'd say it's an error in your code, but who knows.
Ok, i will go and debug my app :). And maybe read some QApplication docs :p.
> 
>>
>> Thank for your help and cheers.
> 
> good luck for your project!
Thanks :).
> 
> Cheers,
> Germain

Cheers.
    Peter

-- 
Peter Rockai (mornfall), mornfall()logisys!dyndns!org, mornfall.homeip.net
---------------------------------------------------------------------------
He says gods like to see an atheist around. Gives them something to aim at.
                       -- (Terry Pratchett, Small Gods)


<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

Recently Viewed:
linux.arklinux....    user-groups.lin...    kde.usability/2...    ietf.ipp/2002-0...    mail.spam.spamc...    os.netbsd.devel...    audio.cd-record...    text.unicode.de...    php.documentati...    games.fps.halfl...    window-managers...    suse.oracle.gen...    bug-tracking.gn...    video.dvdrip.us...    xfree86.cvs/200...    java.netbeans.m...    network.argus/2...    culture.sf.kill...    debian.ports.al...    freebsd.questio...    qplus.devel/200...    handhelds.palm....   
Home | blog view | USPTO Patent Archive | advertise | OSDir is an inevitable website. super tiny logo

Free Magazines

Cisco News
Receive a free quarterly e-newsletter with exclusive articles on how Cisco IT uses its own products and solutions to enable the business.
subscribe

Systems Management News, the newspaper for IT systems administration and data center managers! Each issue of Systems Management News is chock-full of news and analysis to help you understand what's happening in your field.
subscribe

The Enterprise Newsweekly eWeek is the essential technology information source for builders of e-business.
subscribe

Oracle Magazine Oracle Magazine contains technology strategy articles, sample code, tips, Oracle and partner news, how to articles for developers and DBAs, and more. Oracle (NASDAQ: ORCL) is the world's largest enterprise software company.
subscribe

Total Telecom Total Telecom is "The Economist of the communications industry".
subscribe