Revision: 6113
Author: [email protected]
Date: Thu Sep 10 11:55:16 2009
Log: Keep expando ID in sync with our object table by removing the property  
when
the object is removed from our table.

http://code.google.com/p/google-web-toolkit/source/detail?r=6113

Modified:
  /trunk/plugins/npapi/ScriptableInstance.cpp

=======================================
--- /trunk/plugins/npapi/ScriptableInstance.cpp Wed Sep  9 14:57:53 2009
+++ /trunk/plugins/npapi/ScriptableInstance.cpp Thu Sep 10 11:55:16 2009
@@ -362,7 +362,12 @@
    Debug::log(Debug::Debugging) << "freeValue(#ids=" << idCount << ")" <<  
Debug::flush;
    for (int i = 0; i < idCount; ++i) {
          Debug::log(Debug::Spam) << " id=" << ids[i] << Debug::flush;
-    localObjects.free(ids[i]);
+    NPObject* obj = localObjects.get(ids[i]);
+    if (!NPN_RemoveProperty(getNPP(), obj, gwtId)) {
+      Debug::log(Debug::Error) << "Unable to remove GWT ID from object "  
<< ids[i] << Debug::flush;
+    } else {
+      localObjects.free(ids[i]);
+    }
    }
  }


--~--~---------~--~----~------------~-------~--~----~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~----------~----~----~----~------~----~------~--~---

Reply via email to