Handle a case where the JSONP request succeeds after the timer has been fired
by checking to see if the script tag has already been removed.

Issu: 3993
Patch by: dtm@google.com
Review by: jat


git-svn-id: https://google-web-toolkit.googlecode.com/svn/trunk@6290 8db76d5a-ed1c-0410-87a9-c151d255dfc7
diff --git a/user/src/com/google/gwt/jsonp/client/JsonpRequest.java b/user/src/com/google/gwt/jsonp/client/JsonpRequest.java
index 7d64af1..97f2713 100644
--- a/user/src/com/google/gwt/jsonp/client/JsonpRequest.java
+++ b/user/src/com/google/gwt/jsonp/client/JsonpRequest.java
@@ -225,7 +225,10 @@
       public void execute() {
         unregisterCallbacks(CALLBACKS);
         Node script = Document.get().getElementById(callbackId);
-        getHeadElement().removeChild(script);
+        if (script != null) {
+          // The script may have already been deleted
+          getHeadElement().removeChild(script);
+        }
       }
     });
   }