issue482: conkeror doesn't start with recent xulrunner

Priority: bug Status: resolved
Files
File name Uploaded Type Edit Remove
fix-for-recent-xulrunner-v2.patch donio, 2014-12-27.08:41:25 text/x-patch
fix-for-recent-xulrunner.patch donio, 2014-12-26.11:32:24 text/x-patch
Messages
msg1240 (view) Author: donio Date: 2014-12-26.11:30:23
A recent upstream commit has changed the format of some errors that components/application.js catches to
skip non-existent paths when loading files. As a result conkeror aborts on startup:

Error initializing.
Error: Error opening input stream (invalid filename?): chrome://conkeror/content/io

The following patch makes it work for me but a more generic pattern might be better:

diff --git a/components/application.js b/components/application.js
index 962ca73..2c7bdb3 100644
--- a/components/application.js
+++ b/components/application.js
@@ -163,7 +163,9 @@ application.prototype = {
                 } catch (e if (typeof e == 'string' &&
                                {"ContentLength not available (not a local URL?)":true,
                                 "Error creating channel (invalid URL scheme?)":true,
-                                "Error opening input stream (invalid filename?)":true}
+                                "Error opening input stream (invalid filename?)":true,
+                                "Error opening input stream (invalid filename?):
chrome://conkeror/content/io":true,
+                                "Error opening input stream (invalid filename?):
chrome://conkeror/content/content-policy":true}
                                [e])) {
                     // null op. (suppress error, try next path)
                 }


The upstream commit that changes the errors in gecko-dev git:

commit 179821a35d4a7f64e6996d76d592e71c7e1ac33f
Author: Alexander J. Vincent <ajvincent@gmail.com>
Date:   Sat Nov 8 17:08:09 2014 -0800

    Bug 1092477 - Let the subscript Loader report any URL it fails on, when it can.  r=bholley

 addon-sdk/source/lib/toolkit/loader.js        |  2 +-
 js/xpconnect/loader/mozJSSubScriptLoader.cpp  | 30 ++++++++++++++++++++++++------
 js/xpconnect/tests/chrome/chrome.ini          |  1 +
 js/xpconnect/tests/chrome/test_bug1092477.xul | 36 ++++++++++++++++++++++++++++++++++++
 testing/mochitest/browser-test.js             |  2 +-
 toolkit/devtools/worker-loader.js             |  2 +-
 6 files changed, 64 insertions(+), 9 deletions(-)


Also, with the current gecko-dev xulrunner doesn't build for me out of the box, making this more
difficult to test. The following patch works around that:

diff --git a/xulrunner/stub/moz.build b/xulrunner/stub/moz.build
index 7a10d25..daee2dd 100644
--- a/xulrunner/stub/moz.build
+++ b/xulrunner/stub/moz.build
@@ -11,7 +11,8 @@

 # We don't want to create a dependency on mozglue.
 # Statically link against the RTL on windows
-GeckoProgram(CONFIG['XULRUNNER_STUB_NAME'], mozglue=None, msvcrt='static')
+# GeckoProgram(CONFIG['XULRUNNER_STUB_NAME'], mozglue=None, msvcrt='static')
+GeckoProgram(CONFIG['XULRUNNER_STUB_NAME'])

 SOURCES += [
     'nsXULStub.cpp',
msg1241 (view) Author: donio Date: 2014-12-26.11:32:24
attaching patch because the inline version got mangled
msg1242 (view) Author: donio Date: 2014-12-27.08:41:25
another go at a workaround
msg1251 (view) Author: donio Date: 2015-03-01.18:12:54
looks fixed with 6906955ef78caeb357b729e1f608dfe1f0171dcc
History
Date User Action Args
2015-03-01 18:12:54doniosetstatus: chatting -> resolved
messages: + msg1251
2014-12-27 08:41:25doniosetfiles: + fix-for-recent-xulrunner-v2.patch
messages: + msg1242
2014-12-26 11:32:25doniosetfiles: + fix-for-recent-xulrunner.patch
status: unread -> chatting
messages: + msg1241
2014-12-26 11:30:24doniocreate