NS_IMETHODIMP nsMapiSupport::Observe(nsISupports *aSubject, const char *aTopic, const PRUnichar *aData) { nsresult rv = NS_OK ; if (!strcmp(aTopic, "profile-after-change")) return InitializeMAPISupport(); if (!strcmp(aTopic, NS_XPCOM_SHUTDOWN_OBSERVER_ID)) return ShutdownMAPISupport(); nsCOMPtr<nsIObserverService> observerService(do_GetService("@mozilla.org/observer-service;1", &rv)); if (NS_FAILED(rv)) return rv; rv = observerService->AddObserver(this,"profile-after-change", PR_FALSE); if (NS_FAILED(rv)) return rv; rv = observerService->AddObserver(this, NS_XPCOM_SHUTDOWN_OBSERVER_ID, PR_FALSE); if (NS_FAILED(rv)) return rv; return rv; }
NS_IMETHODIMP nsMapiSupport::Observe(nsISupports *aSubject, const char *aTopic, const PRUnichar *aData) { nsresult rv = NS_OK ; if (!strcmp(aTopic, "profile-after-change")) return InitializeMAPISupport(); if (!strcmp(aTopic, NS_XPCOM_SHUTDOWN_OBSERVER_ID)) return ShutdownMAPISupport(); nsCOMPtr<nsIObserverService> observerService = mozilla::services::GetObserverService(); NS_ENSURE_TRUE(observerService, NS_ERROR_UNEXPECTED); rv = observerService->AddObserver(this,"profile-after-change", false); if (NS_FAILED(rv)) return rv; rv = observerService->AddObserver(this, NS_XPCOM_SHUTDOWN_OBSERVER_ID, false); if (NS_FAILED(rv)) return rv; return rv; }