@@ -235,13 +235,15 @@ void IndicatorsManager::setLoaded(bool loaded)
235235 m_loaded = loaded;
236236 Q_EMIT loadedChanged(m_loaded);
237237
238− DBusPendingCall * pending = NULL;
239− if (m_loaded) {
240− pending = upstart_emit_event(m_upstart, "indicator-services-start", NULL, 0, NULL, NULL, NULL, 100);
241− } else {
242− pending = upstart_emit_event(m_upstart, "indicator-services-end", NULL, 0, NULL, NULL, NULL, 100);
238+ if (m_upstart != NULL) {
239+ DBusPendingCall * pending = NULL;
240+ if (m_loaded) {
241+ pending = upstart_emit_event(m_upstart, "indicator-services-start", NULL, 0, NULL, NULL, NULL, 100);
242+ } else {
243+ pending = upstart_emit_event(m_upstart, "indicator-services-end", NULL, 0, NULL, NULL, NULL, 100);
244+ }
245+ dbus_pending_call_unref(pending);
243246 }
244− dbus_pending_call_unref(pending);
245247 }
246248}
247249