Fixed memory leak in obtaining doNotDisturb value on macOS.

This commit is contained in:
23rd 2020-07-12 12:01:44 +03:00 committed by John Preston
parent da690d2741
commit 8dceec5a9f

View file

@ -33,13 +33,14 @@ void queryDoNotDisturbState() {
} }
LastSettingsQueryMs = ms; LastSettingsQueryMs = ms;
auto userDefaults = [NSUserDefaults alloc]; Boolean isKeyValid;
if ([userDefaults respondsToSelector:@selector(initWithSuiteName:)]) { const auto doNotDisturb = CFPreferencesGetAppBooleanValue(
id userDefaultsValue = [[[NSUserDefaults alloc] initWithSuiteName:@"com.apple.notificationcenterui"] objectForKey:@"doNotDisturb"]; CFSTR("doNotDisturb"),
DoNotDisturbEnabled = ([userDefaultsValue boolValue] == YES); CFSTR("com.apple.notificationcenterui"),
} else { &isKeyValid);
DoNotDisturbEnabled = false; DoNotDisturbEnabled = isKeyValid
} ? doNotDisturb
: false;
} }
using Manager = Platform::Notifications::Manager; using Manager = Platform::Notifications::Manager;