Michael Brade brade at
Mon Dec 5 17:45:48 GMT 2005

On Thursday 01 December 2005 20:12, Aaron J. Seigo wrote:
> i discussed this with brade, alright. but it was NOT to revert this change.
> this change should not in practice affect anyone IMHO (since the problem
> was ONLY trigged in situations where something went wrong anyways and this
> simply protected as well as possible against it). the times when this
> affected anyone would be in situations such as kicker.
Well gee ey? What's going on with you, you're writing this almost two weeks
after I reverted, which was still *before* our discussion, we have exchanged 
about 6 emails each since then, discussing the real cause and the proper fix! 
Now pretending you didn't get my (pseudo-)patch I sent with my second last 
mail? And ranting exactly at the time I left for Venezuela, right after my 
last diploma examination, about two days before I actually wanted to start 
debugging KLibLoader, which I did tell you more than a week ago already?

I don't understand you anymore, honestly. Luckily I've got an internet 
connection now so that I can reply at all.

> and NO, kicker can't fix this because it is out of kicker's control. it's
> the confluence of various kdelibs classes each individually doing The Right
> Thing for themselves, but not working together (static object deletion
> based cleanup on app exit). in this case, particularly klibloader and
> kdirlister.
we don't actually know for sure yet.

> and NOW we hae a 3.5.0 where kicker crashes on logout EVERY TIME in the
> DEFAULT CONFIGURATION. this is beyond stupid.
Mind you, it was not THIS commit that did that, this is KDE_3_5_BRANCH and we 
still have more than enough time to fix it. Properly. Two things:
  - this is my code (sadly there are not many people yet who understand the
    big picture of KDirListerCache) and you did not tell me anything about
    your problem before committing the flawed fix, you did not even send it to
    core-devel, and you committed it during the freeze, so I don't think it's
    ok for you to complain *NOW* that Kicker crashes and that I don't want a
    really bad hack in my code that *I* need to debug later on.
  - your fix would have made it impossibly difficult to debug the crashes that
    are still left in KDirListerCache (probably about 1-2 of them) by
    violating one of KDirListerCache's core invariants. All future KDE 3.5.0
    reports would be a lot closer to "useless" with your patch in.

> i spent a fair amount of time working this through and had a long
> conversation with michael about this via private email. and now, to cover a
> theoretical issue, we have a very real practical issue.
Ok, to make this clear for the public: Aaron spend this time *before* our 
discussion and I told him why his patch was completely wrong. I reverted this 
before our main discussion as well, after telling him that the fix won't be 
in KDE 3.5.0 (suggested by Coolo), so it's not like I said something to Aaron 
and did it the other way around behind his back.

I even sent a patch that would change KDirListerCache *properly*. Here's the 
simple explanation: something (maybe KLibLoader) deletes KDirListerCache 
before deleting the KDirListers connected to it. Then when deleting the 
KDirListers they try to deregister form from KDirListerCache, failing while 
causing a new static KDirListerCache object to be created that can't do much 
but crash sooner or later. 

The obvious patch is to check in the KDirLister DTOR if the cache is still 
there, no need to spend days just to hack one of the core methods in 
KDirListerCache with the purpose to delay the crash long enough so that 
Kicker can quit before it. It took me about 2 minutes to find the problem and 
the patch---after updating, freeing space on my hd and recompiling my KDE 
(-libs) with debugging symbols, which took a lot longer.

I'll attach the 2 last mail I sent to Aaron for public reference. They 
included the proper patch.

> i'm not going to simply re-commit, because i think that kind of commit
> fighting is not useful. i'd like to request permission to recommit my
> changes so that 3.5.1 might not suck as much in such an obviously stupid
> way.
Absolutely no. I sent you the proper patch for KDirListerCache already and I 
told you why I didn't commit it yet (see attachment). I'll commit it soon. 
Soon enough for KDE 3.5.1, but not before I have debugged the problem to 
maybe find a fix for the real cause, a fix for KLibLoader, or Kicker, or 

The least understandable part about your reaction is that you actually want to 
put your hack back in KDirListerCache right now, instead of forcing me to put 
my new patch in as soon as possible. The reasoning behind the latter I would 
at least have been able to follow. Please let's get back to sanity.

Michael Brade;                 KDE Developer, Student of Computer Science
  |-mail: echo brade !#|tr -d "c oh"|s\e\d 's/e/\@/2;s/$/.org/;s/bra/k/2'

KDE 3: The Next Generation in Desktop Experience
-------------- next part --------------
An embedded message was scrubbed...
From: Michael Brade <brade at>
Subject: Re: [Bug 113242] the logout crash
Date: Thu, 24 Nov 2005 11:36:59 +0100
Size: 5618
URL: <>
-------------- next part --------------
An embedded message was scrubbed...
From: Michael Brade <brade at>
Subject: Re: [Bug 113242] the logout crash
Date: Thu, 24 Nov 2005 14:28:04 +0100
Size: 2224
URL: <>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: <>

More information about the kde-core-devel mailing list