Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Porter <slug@qwebirc.org>2011-02-14 03:35:44 (GMT)
committer Chris Porter <slug@qwebirc.org>2011-02-14 03:35:44 (GMT)
commit6f5821f1eed88f323dd87f915ff6dd2d8a630d65 (patch)
tree9f3b51d4a1a1b0187d9a4c2ca8b69bf9a119ad44
parent235a19f7e87229b761d902bd069c7d39afd3a246 (diff)
Better attempt at HTTP header minimisation.
-rw-r--r--js/irc/ircconnection.js21
1 files changed, 14 insertions, 7 deletions
diff --git a/js/irc/ircconnection.js b/js/irc/ircconnection.js
index c6054fa..1b42859 100644
--- a/js/irc/ircconnection.js
+++ b/js/irc/ircconnection.js
@@ -59,16 +59,23 @@ qwebirc.irc.IRCConnection = new Class({
/* try to minimise the amount of headers */
r.headers = new Hash;
r.addEvent("request", function() {
- var setHeader = function(key, value) {
+ var kill = ["Accept", "Accept-Language"];
+ var killBit = "";
+
+ if(Browser.Engine.trident) {
+ killBit = "?";
+ kill.push("User-Agent");
+ kill.push("Connection");
+ } else if(/Firefox[\/\s]\d+\.\d+/.test(navigator.userAgent)) { /* HACK */
+ killBit = null;
+ }
+
+ for(var i=0;i<kill.length;i++) {
try {
- this.setRequestHeader(key, value);
+ this.setRequestHeader(kill[i], killBit);
} catch(e) {
}
- }.bind(this);
-
- setHeader("User-Agent", null);
- setHeader("Accept", null);
- setHeader("Accept-Language", null);
+ }
}.bind(r.xhr));
if(Browser.Engine.trident)