From 6a722e251dedd5f01ac0c46e330a368be7bb760b Mon Sep 17 00:00:00 2001
From: John Resig <jeresig@gmail.com>
Date: Sat, 7 Nov 2009 16:08:07 +0100
Subject: [PATCH] jQuery.ajax modified the passed-in object only to help test
 the code - this shouldn't occur. Fixes #5439.

---
 src/ajax.js       |    2 +-
 test/unit/ajax.js |    5 +++++
 2 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/src/ajax.js b/src/ajax.js
index 353c824..a9f47dd 100644
--- a/src/ajax.js
+++ b/src/ajax.js
@@ -194,7 +194,7 @@ jQuery.extend({
 	ajax: function( s ) {
 		// Extend the settings, but re-extend 's' so that it can be
 		// checked again later (in the test suite, specifically)
-		s = jQuery.extend(true, s, jQuery.extend(true, {}, jQuery.ajaxSettings, s));
+		s = jQuery.extend(true, {}, jQuery.ajaxSettings, s);
 		
 		var jsonp, status, data,
 			callbackContext = s.context || window,
diff --git a/test/unit/ajax.js b/test/unit/ajax.js
index 5d791be..1fcf5ea 100644
--- a/test/unit/ajax.js
+++ b/test/unit/ajax.js
@@ -368,6 +368,10 @@ test("ajax cache", function () {
 	ok( jQuery.ajax({url: "data/text.php?name=David&_=tobereplaced555&washere=true", cache:false}), "test with 2 parameters surrounding _= one" );
 });
 
+/*
+ * Test disabled.
+ * The assertions expect that the passed-in object will be modified,
+ * which shouldn't be the case. Fixes #5439.
 test("global ajaxSettings", function() {
 	expect(2);
 
@@ -389,6 +393,7 @@ test("global ajaxSettings", function() {
 
 	jQuery.ajaxSettings = tmp;
 });
+*/
 
 test("load(String)", function() {
 	expect(1);
-- 
1.7.10.4