From 983548f8ebc3fcd1bb4600bc4b740cb8a5d4c48b Mon Sep 17 00:00:00 2001
From: John Resig <jeresig@gmail.com>
Date: Tue, 9 Nov 2010 13:44:06 -0500
Subject: [PATCH] Make sure that if an additional load event is triggered
 (such as an iframe being dynamically injected in DOM ready)
 the ready event isn't triggered twice. Fixes #7352.

---
 src/core.js |   19 +++++++++++--------
 1 file changed, 11 insertions(+), 8 deletions(-)

diff --git a/src/core.js b/src/core.js
index 8940ada..9e1bfc6 100644
--- a/src/core.js
+++ b/src/core.js
@@ -417,18 +417,21 @@ jQuery.extend({
 			// If there are functions bound, to execute
 			if ( readyList ) {
 				// Execute all of them
-				var fn, i = 0;
-				while ( (fn = readyList[ i++ ]) ) {
-					fn.call( document, jQuery );
-				}
+				var fn,
+					i = 0,
+					ready = readyList;
 
 				// Reset the list of functions
 				readyList = null;
-			}
 
-			// Trigger any bound ready events
-			if ( jQuery.fn.trigger ) {
-				jQuery( document ).trigger( "ready" ).unbind( "ready" );
+				while ( (fn = ready[ i++ ]) ) {
+					fn.call( document, jQuery );
+				}
+
+				// Trigger any bound ready events
+				if ( jQuery.fn.trigger ) {
+					jQuery( document ).trigger( "ready" ).unbind( "ready" );
+				}
 			}
 		}
 	},
-- 
1.7.10.4