diff options
Diffstat (limited to 'devel/electron38/files/patch-chrome_browser_profiles_profile__impl.cc')
| -rw-r--r-- | devel/electron38/files/patch-chrome_browser_profiles_profile__impl.cc | 40 | 
1 files changed, 40 insertions, 0 deletions
| diff --git a/devel/electron38/files/patch-chrome_browser_profiles_profile__impl.cc b/devel/electron38/files/patch-chrome_browser_profiles_profile__impl.cc new file mode 100644 index 000000000000..4eef3ab7a6fb --- /dev/null +++ b/devel/electron38/files/patch-chrome_browser_profiles_profile__impl.cc @@ -0,0 +1,40 @@ +--- chrome/browser/profiles/profile_impl.cc.orig	2025-08-26 20:49:50 UTC ++++ chrome/browser/profiles/profile_impl.cc +@@ -269,6 +269,10 @@ + #include "chrome/browser/safe_browsing/safe_browsing_service.h" + #endif +  ++#if BUILDFLAG(IS_BSD) ++#include "sandbox/policy/sandbox.h" ++#endif ++ + using bookmarks::BookmarkModel; + using content::BrowserThread; + using content::DownloadManagerDelegate; +@@ -603,7 +607,7 @@ void ProfileImpl::LoadPrefsForNormalStartup(bool async +   policy_provider = GetUserCloudPolicyManagerAsh(); + #else  // !BUILDFLAG(IS_CHROMEOS) +   { +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) +     ProfileManager* profile_manager = g_browser_process->profile_manager(); +     ProfileAttributesEntry* entry = +         profile_manager->GetProfileAttributesStorage() +@@ -886,7 +890,17 @@ base::FilePath ProfileImpl::last_selected_directory()  + } +  + base::FilePath ProfileImpl::last_selected_directory() { ++#if BUILDFLAG(IS_OPENBSD) ++  // If unveil(2) is used, force the file dialog directory to something we ++  // know is available. ++  auto* sandbox = sandbox::policy::SandboxLinux::GetInstance(); ++  if (sandbox->unveil_initialized()) ++    return GetPrefs()->GetFilePath(prefs::kDownloadDefaultDirectory); ++  else ++    return GetPrefs()->GetFilePath(prefs::kSelectFileLastDirectory); ++#else +   return GetPrefs()->GetFilePath(prefs::kSelectFileLastDirectory); ++#endif + } +  + void ProfileImpl::set_last_selected_directory(const base::FilePath& path) { | 
