On Tuesday 06 March 2001 19:14, Matthias Elter wrote: > > Implementing a flag or lock, so that KRun waits for the current DCOP call > > to terminate before making its own ? (In that case it would work, but for > > cases where A calls B which calls C, it would become a deadlock :( > > Yes use a in_call flag and ignore the timer event if you are already in a > call. You mean, reschedule the timer (it's a single shot, not a regular timer). But this call we're being in... it's from kicker, right ? KRun doesn't do two calls at the same time. This flag would need to go into DCOP itself... I'd let Waldo or Matthias (Ettrich) do that ;-) > > No, I think the only solution is to allow simultaneous DCOP calls > > (i.e. re-entrancy at the ICE level). > > There is a way to fix it on the dcop level. But this means that calls in a > situation when the client already is in a call will simply return with an > error. Certainly better than hanging, but not as good as real re-entrancy. Most apps don't check for error codes from dcop calls - and wouldn't know what to do in that case anyway (KRun would, obviously)... Very ugly solution. -- David FAURE, david@mandrakesoft.com, faure@kde.org http://perso.mandrakesoft.com/~david/, http://www.konqueror.org/ KDE, Making The Future of Computing Available Today