diff --git a/kded/kded.cpp b/kded/kded.cpp index b5f1c2d75..73b4d729b 100644 --- a/kded/kded.cpp +++ b/kded/kded.cpp @@ -441,13 +441,17 @@ void Kded::updateResourceList() void Kded::crashHandler(int) { DCOPClient::emergencyClose(); - if (_self) // Don't restart if we were closing down - system("kded"); -qWarning("Last DCOP call before KDED crash was from application '%s'\n" + if (_self) { // Don't restart if we were closing down + qWarning("Last DCOP call before KDED crash was from application '%s'\n" "to object '%s', function '%s'.", DCOPClient::postMortemSender(), DCOPClient::postMortemObject(), DCOPClient::postMortemFunction()); + qWarning("Restarting KDED...\n"); + if (system("kded") < 0) { + qWarning("Unable to restart KDED!\n"); + } + } } void Kded::installCrashHandler()