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 -~----------~----~----~----~------~----~------~--~---
