NS_IMETHODIMP nsSeamonkeyProfileMigrator::GetSourceProfiles(nsISupportsArray** aResult) { if (!mProfileNames && !mProfileLocations) { mProfileNames = do_CreateInstance(NS_SUPPORTSARRAY_CONTRACTID); mProfileLocations = do_CreateInstance(NS_SUPPORTSARRAY_CONTRACTID); NS_ENSURE_TRUE(mProfileNames && mProfileLocations, NS_ERROR_UNEXPECTED); // Fills mProfileNames and mProfileLocations FillProfileDataFromSeamonkeyRegistry(); } NS_IF_ADDREF(*aResult = mProfileNames); return NS_OK; }
NS_IMETHODIMP nsSeamonkeyProfileMigrator::GetSourceProfiles(nsISupportsArray** aResult) { if (!mProfileNames && !mProfileLocations) { nsresult rv = NS_NewISupportsArray(getter_AddRefs(mProfileNames)); if (NS_FAILED(rv)) return rv; rv = NS_NewISupportsArray(getter_AddRefs(mProfileLocations)); if (NS_FAILED(rv)) return rv; // Fills mProfileNames and mProfileLocations FillProfileDataFromSeamonkeyRegistry(); } NS_IF_ADDREF(*aResult = mProfileNames); return NS_OK; }