diff options
Diffstat (limited to 'dom/xml/test/file_bug392338.js')
-rw-r--r-- | dom/xml/test/file_bug392338.js | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/dom/xml/test/file_bug392338.js b/dom/xml/test/file_bug392338.js new file mode 100644 index 000000000..1a433353b --- /dev/null +++ b/dom/xml/test/file_bug392338.js @@ -0,0 +1,22 @@ +Components.utils.import("resource://gre/modules/Services.jsm"); + +var modifyObserver = { + observe: function(subject, topic, data) { + if (topic == 'http-on-modify-request') { + var testOk = false; + try { + // We should be able to QI the request to an nsIChannel, then get + // the notificationCallbacks without throwing an exception. + var ir = subject.QueryInterface(Components.interfaces.nsIChannel).notificationCallbacks; + + // The notificationCallbacks should be an nsIInterfaceRequestor. + testOk = ir.toString().indexOf(Components.interfaces.nsIInterfaceRequestor) != -1; + } catch (e) { + } + sendAsyncMessage('modify-request-completed', testOk); + Services.obs.removeObserver(modifyObserver, 'http-on-modify-request'); + } + } +}; + +Services.obs.addObserver(modifyObserver, 'http-on-modify-request', false); |