[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-devel
Subject:    Re: fam, kubuntu, knoppix and crashes
From:       Robert Hogan <robert () roberthogan ! net>
Date:       2007-01-18 21:08:34
Message-ID: 200701182108.35332.robert () roberthogan ! net
[Download RAW message or body]

On Sunday 07 January 2007 14:34, Robert Hogan wrote:
> Hi there,
>
> I now have a couple of situations in my app where activity that works fine
> for me (on slackware), results in a crash on debian-based distros.
>
> The backtraces of both crashes start in kdirwatcher and end with a call in
> libfam. In one case the user is opening a kurl dialog and in the other the
> app is creating a khtmlpart.
>
> The traces always end with:
>
> #3  0x0808d545 in Client::~Client ()
> #4  0xb738694b in FAMOpen2 () from /usr/lib/libfam.so.0
> #5  0xb73869a3 in FAMOpen () from /usr/lib/libfam.so.0
> #6  0xb782daa7 in KDirWatchPrivate (this=0x8366af8)
>    
>
> I googled a bit and found similar crashes reported in other apps, but no
> solution other than removing/disabling famd.
>
> Is there an application-level rather than distro-level workaround/fix?
>

Sweet ... Mother .. of ... Jesus.

The answer is always right under your nose. For this one, it was:

> #3  0x0808d545 in Client::~Client ()

My app has a class called Client, so does libfam. I rashly assumed this was my 
Client class reporting it's death for some *unknown reason* at crash time and 
moved on.

Only distros which compile kdelibs with libfam enabled (unlike slackware) will 
hit 

> #3  0x0808d545 in Client::~Client ()
> #4  0xb738694b in FAMOpen2 () from /usr/lib/libfam.so.0
> #5  0xb73869a3 in FAMOpen () from /usr/lib/libfam.so.0

So far so simple, but that Client class being destroyed is my own, it should 
be libfam's. Libfam was killing my app.

FAMOPen2 does:

    if (fc->fd < 0) {
        delete (Client *)fc->client;
        fc->client = NULL;
        return(-1);
    }

and delete's my Client class instead of it's own.

*Now* I know what namespaces are for!

*faceplant*

There are a couple of other poor sods with this woe:

http://bugs.kde.org/show_bug.cgi?id=137113
http://bugs.kde.org/show_bug.cgi?id=115772

and the rest:

http://bugs.kde.org/simple_search.cgi?id=famopen

-- 

KlamAV - An Anti-Virus Manager for KDE - http://www.klamav.net
TorK   - A Tor Controller For KDE      - http://tork.sf.net
 
>> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to unsubscribe <<

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic