summaryrefslogtreecommitdiffstats
path: root/dom/ipc/BrowserParent.cpp
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-19 01:13:33 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-19 01:13:33 +0000
commit086c044dc34dfc0f74fbe41f4ecb402b2cd34884 (patch)
treea4f824bd33cb075dd5aa3eb5a0a94af221bbe83a /dom/ipc/BrowserParent.cpp
parentAdding debian version 124.0.1-1. (diff)
downloadfirefox-086c044dc34dfc0f74fbe41f4ecb402b2cd34884.tar.xz
firefox-086c044dc34dfc0f74fbe41f4ecb402b2cd34884.zip
Merging upstream version 125.0.1.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'dom/ipc/BrowserParent.cpp')
-rw-r--r--dom/ipc/BrowserParent.cpp16
1 files changed, 14 insertions, 2 deletions
diff --git a/dom/ipc/BrowserParent.cpp b/dom/ipc/BrowserParent.cpp
index d369556588..5d13d2e814 100644
--- a/dom/ipc/BrowserParent.cpp
+++ b/dom/ipc/BrowserParent.cpp
@@ -1322,8 +1322,20 @@ mozilla::ipc::IPCResult BrowserParent::RecvPDocAccessibleConstructor(
#endif
already_AddRefed<PFilePickerParent> BrowserParent::AllocPFilePickerParent(
- const nsString& aTitle, const nsIFilePicker::Mode& aMode) {
- return MakeAndAddRef<FilePickerParent>(aTitle, aMode);
+ const nsString& aTitle, const nsIFilePicker::Mode& aMode,
+ const MaybeDiscarded<BrowsingContext>& aBrowsingContext) {
+ RefPtr<CanonicalBrowsingContext> browsingContext =
+ [&]() -> CanonicalBrowsingContext* {
+ if (aBrowsingContext.IsNullOrDiscarded()) {
+ return nullptr;
+ }
+ if (!aBrowsingContext.get_canonical()->IsOwnedByProcess(
+ Manager()->ChildID())) {
+ return nullptr;
+ }
+ return aBrowsingContext.get_canonical();
+ }();
+ return MakeAndAddRef<FilePickerParent>(aTitle, aMode, browsingContext);
}
already_AddRefed<PSessionStoreParent>