From a11d4eb03c97c31ac47f8302a505edd75576eeef Mon Sep 17 00:00:00 2001 From: "trop[bot]" <37223003+trop[bot]@users.noreply.github.com> Date: Mon, 18 Aug 2025 12:00:14 +0200 Subject: [PATCH] fix: avoid deprecated login item methods (#48096) Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com> Co-authored-by: Samuel Attard --- shell/browser/browser_mac.mm | 5 ++--- shell/common/platform_util_mac.mm | 6 +++--- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/shell/browser/browser_mac.mm b/shell/browser/browser_mac.mm index c4b67ed5cc14..66df54331b79 100644 --- a/shell/browser/browser_mac.mm +++ b/shell/browser/browser_mac.mm @@ -411,19 +411,18 @@ v8::Local Browser::GetLoginItemSettings( #else // If the app was previously set as a LoginItem with the deprecated API, // we should report its LoginItemSettings via the old API. - LoginItemSettings settings_deprecated = GetLoginItemSettingsDeprecated(); if (@available(macOS 13, *)) { const std::string status = platform_util::GetLoginItemEnabled(options.type, options.service_name); if (status == "enabled-deprecated") { - settings = settings_deprecated; + settings = GetLoginItemSettingsDeprecated(); } else { settings.open_at_login = status == "enabled"; settings.opened_at_login = was_launched_at_login_; settings.status = status; } } else { - settings = settings_deprecated; + settings = GetLoginItemSettingsDeprecated(); } #endif return gin::ConvertToV8(isolate, settings); diff --git a/shell/common/platform_util_mac.mm b/shell/common/platform_util_mac.mm index 6e99e336e392..001d17b3fff9 100644 --- a/shell/common/platform_util_mac.mm +++ b/shell/common/platform_util_mac.mm @@ -220,7 +220,6 @@ void Beep() { std::string GetLoginItemEnabled(const std::string& type, const std::string& service_name) { - bool enabled = GetLoginItemEnabledDeprecated(); if (@available(macOS 13, *)) { SMAppService* service = GetServiceForType(type, service_name); SMAppServiceStatus status = [service status]; @@ -232,10 +231,11 @@ std::string GetLoginItemEnabled(const std::string& type, return "requires-approval"; else if (status == SMAppServiceStatusNotFound) { // If the login item was enabled with the old API, return that. - return enabled ? "enabled-deprecated" : "not-found"; + return GetLoginItemEnabledDeprecated() ? "enabled-deprecated" + : "not-found"; } } - return enabled ? "enabled" : "not-registered"; + return GetLoginItemEnabledDeprecated() ? "enabled" : "not-registered"; } bool SetLoginItemEnabled(const std::string& type,