Bug 866636 - AddonUpdateChecker bypasses it cache, but doesn't inhibit writing to it. r=Unfocused
authorRitesh Modi <ritesh.ked3@gmail.com>
Fri, 03 May 2013 16:24:51 +1200
changeset 130907 e8c1bde6202553b3df468eff9be8da47cf0bdb34
parent 130906 b63a15eddd365633cb145fbed719dfe0b34772e1
child 130908 6ddd5fb7f041716ed4a0e2531f26bee38ed808bc
push id24638
push userttaubert@mozilla.com
push dateMon, 06 May 2013 11:30:19 +0000
treeherdermozilla-central@dae38fc0aeb4 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersUnfocused
bugs866636
milestone23.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 866636 - AddonUpdateChecker bypasses it cache, but doesn't inhibit writing to it. r=Unfocused
toolkit/mozapps/extensions/AddonUpdateChecker.jsm
--- a/toolkit/mozapps/extensions/AddonUpdateChecker.jsm
+++ b/toolkit/mozapps/extensions/AddonUpdateChecker.jsm
@@ -407,16 +407,18 @@ function UpdateParser(aId, aUpdateKey, a
 
   LOG("Requesting " + aUrl);
   try {
     this.request = Cc["@mozilla.org/xmlextras/xmlhttprequest;1"].
                    createInstance(Ci.nsIXMLHttpRequest);
     this.request.open("GET", this.url, true);
     this.request.channel.notificationCallbacks = new CertUtils.BadCertHandler(!requireBuiltIn);
     this.request.channel.loadFlags |= Ci.nsIRequest.LOAD_BYPASS_CACHE;
+    // Prevent the request from writing to cache.
+    this.request.channel.loadFlags |= Ci.nsIRequest.INHIBIT_CACHING;
     this.request.overrideMimeType("text/xml");
     var self = this;
     this.request.addEventListener("load", function loadEventListener(event) { self.onLoad() }, false);
     this.request.addEventListener("error", function errorEventListener(event) { self.onError() }, false);
     this.request.send(null);
   }
   catch (e) {
     ERROR("Failed to request update manifest", e);