Bug 824581 - RemoteOpenFileChild::AsyncRemoteFileOpen crashes on Windows/Mac r=jduell a=b2gbustage
authorBobby Holley <bobbyholley@gmail.com>
Wed, 26 Dec 2012 11:01:00 -0800
changeset 123157 54034e3cc092284e816e3bb8a954c9167b9e9ff9
parent 123156 ffa57091f9fa6e458b3a38d5148bad384ef09ff1
child 123158 837ee26af977bd780bcff4d789517700e1491704
push id273
push userlsblakk@mozilla.com
push dateThu, 14 Feb 2013 23:19:38 +0000
treeherdermozilla-release@c5e807a3f8b8 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersjduell, b2gbustage
bugs824581
milestone19.0a2
Bug 824581 - RemoteOpenFileChild::AsyncRemoteFileOpen crashes on Windows/Mac r=jduell a=b2gbustage
modules/libjar/test/unit/xpcshell.ini
netwerk/ipc/RemoteOpenFileChild.cpp
--- a/modules/libjar/test/unit/xpcshell.ini
+++ b/modules/libjar/test/unit/xpcshell.ini
@@ -1,15 +1,15 @@
 [DEFAULT]
 head = head_ipc.js
 tail = 
 
 [test_jarchannel.js]
 [test_jarchannel_e10s.js]
-skip-if = os == "mac" || os == "win"
+skip-if = os == "mac"
 [test_bug278262.js]
 [test_bug333423.js]
 [test_bug336691.js]
 [test_bug370103.js]
 [test_bug379841.js]
 [test_bug407303.js]
 [test_bug453254.js]
 [test_bug458158.js]
--- a/netwerk/ipc/RemoteOpenFileChild.cpp
+++ b/netwerk/ipc/RemoteOpenFileChild.cpp
@@ -103,23 +103,21 @@ RemoteOpenFileChild::AsyncRemoteFileOpen
   }
 
   mozilla::dom::TabChild* tabChild = nullptr;
   if (aTabChild) {
     tabChild = static_cast<mozilla::dom::TabChild*>(aTabChild);
   }
 
 #if defined(XP_WIN) || defined(MOZ_WIDGET_COCOA)
-  // we do nothing on these platforms: we'll just open file locally when asked
-  // for NSPR handle
-  mListener->OnRemoteFileOpenComplete(NS_OK);
-  mListener = nullptr;
+  // Windows/OSX desktop builds skip remoting, and just open file in child
+  // process when asked for NSPR handle
+  aListener->OnRemoteFileOpenComplete(NS_OK);
   mAsyncOpenCalled = true;
   return NS_OK;
-
 #else
   URIParams uri;
   SerializeURI(mURI, uri);
 
   gNeckoChild->SendPRemoteOpenFileConstructor(this, uri, tabChild);
 
   // Can't seem to reply from within IPDL Parent constructor, so send open as
   // separate message