From fbaf0bb26397aa498eb9156f06d5a6fe34dd7dd8 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Fri, 19 Apr 2024 03:14:29 +0200 Subject: Merging upstream version 125.0.1. Signed-off-by: Daniel Baumann --- browser/components/shell/WindowsUserChoice.cpp | 13 +++++++++++++ browser/components/shell/WindowsUserChoice.h | 9 +++++++++ 2 files changed, 22 insertions(+) (limited to 'browser/components/shell') diff --git a/browser/components/shell/WindowsUserChoice.cpp b/browser/components/shell/WindowsUserChoice.cpp index baa3e7286e..d533a1d8b3 100644 --- a/browser/components/shell/WindowsUserChoice.cpp +++ b/browser/components/shell/WindowsUserChoice.cpp @@ -284,6 +284,19 @@ UniquePtr GetAssociationKeyPath(const wchar_t* aExt) { return keyPath; } +void AppendAssociationKeyPath(const wchar_t* aExt, nsAString& aOutput) { + if (aExt[0] == L'.') { + aOutput.AppendLiteral( + u"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\FileExts\\"); + } else { + aOutput.AppendLiteral( + u"SOFTWARE\\Microsoft\\Windows\\Shell\\Associations\\UrlAssociations" + u"\\"); + } + + aOutput.Append(aExt); +} + UniquePtr GenerateUserChoiceHash(const wchar_t* aExt, const wchar_t* aUserSid, const wchar_t* aProgId, diff --git a/browser/components/shell/WindowsUserChoice.h b/browser/components/shell/WindowsUserChoice.h index ae83e093e4..b4925c0552 100644 --- a/browser/components/shell/WindowsUserChoice.h +++ b/browser/components/shell/WindowsUserChoice.h @@ -61,6 +61,15 @@ CheckUserChoiceHashResult CheckUserChoiceHash(const wchar_t* aExt, */ mozilla::UniquePtr GetAssociationKeyPath(const wchar_t* aExt); +/* + * Appends the registry path for the given association, file extension or + * protocol to the parameter string. + * + * @param aExt File extension or protocol association to return path to. + * @param aOutput String to append registry path to. + */ +void AppendAssociationKeyPath(const wchar_t* aExt, nsAString& aOutput); + /* * Get the current user's SID * -- cgit v1.2.3