summary refs log tree commit diff
path: root/gnu/packages/patches/icecat-CVE-2015-2733-pt2.patch
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/patches/icecat-CVE-2015-2733-pt2.patch')
-rw-r--r--gnu/packages/patches/icecat-CVE-2015-2733-pt2.patch31
1 files changed, 31 insertions, 0 deletions
diff --git a/gnu/packages/patches/icecat-CVE-2015-2733-pt2.patch b/gnu/packages/patches/icecat-CVE-2015-2733-pt2.patch
new file mode 100644
index 0000000000..cc74a33871
--- /dev/null
+++ b/gnu/packages/patches/icecat-CVE-2015-2733-pt2.patch
@@ -0,0 +1,31 @@
+From 72cd6e97ae12b89659cd59788bad08cd2f514eff Mon Sep 17 00:00:00 2001
+From: Andrea Marchesini <amarchesini@mozilla.com>
+Date: Fri, 12 Jun 2015 10:06:19 -0400
+Subject: [PATCH] Bug 1169867 - XMLHttpRequest::SendInternal should not unpin
+ itself when the worker goes away. r=bent, a=abillings
+
+--HG--
+extra : transplant_source : %28%B3%BD%9D%E2p%F3%BE%94S%CCD%08%8B%07%8A%CC%17%B0%7B
+---
+ dom/workers/XMLHttpRequest.cpp | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/dom/workers/XMLHttpRequest.cpp b/dom/workers/XMLHttpRequest.cpp
+index 5690af5..d425eac 100644
+--- a/dom/workers/XMLHttpRequest.cpp
++++ b/dom/workers/XMLHttpRequest.cpp
+@@ -1829,6 +1829,11 @@ XMLHttpRequest::SendInternal(const nsAString& aStringBody,
+     new SendRunnable(mWorkerPrivate, mProxy, aStringBody, Move(aBody),
+                      aClonedObjects, syncLoopTarget, hasUploadListeners);
+   if (!runnable->Dispatch(cx)) {
++    // Dispatch() may have spun the event loop and we may have already unrooted.
++    // If so we don't want autoUnpin to try again.
++    if (!mRooted) {
++      autoUnpin.Clear();
++    }
+     aRv.Throw(NS_ERROR_FAILURE);
+     return;
+   }
+-- 
+2.4.3
+