From a7dfbb55d9e4be6bbf096abb0e06e32086476a96 Mon Sep 17 00:00:00 2001
From: Brandon Aaron <brandon.aaron@gmail.com>
Date: Wed, 19 Dec 2007 18:35:58 +0000
Subject: [PATCH] Short-circuit jQuery.event.fix if it has already fixed the
 current event object.

---
 src/event.js |    7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/src/event.js b/src/event.js
index c0238cc..fa8be8d 100644
--- a/src/event.js
+++ b/src/event.js
@@ -263,11 +263,18 @@ jQuery.event = {
 	},
 
 	fix: function(event) {
+		// Short-circuit if the event has already been fixed by jQuery.event.fix
+		if ( event[ expando ] )
+			return event;
+			
 		// store a copy of the original event object 
 		// and clone to set read-only properties
 		var originalEvent = event;
 		event = jQuery.extend({}, originalEvent);
 		
+		// Mark the event as fixed by jQuery.event.fix
+		event[ expando ] = true;
+		
 		// add preventDefault and stopPropagation since 
 		// they will not work on the clone
 		event.preventDefault = function() {
-- 
1.7.10.4