Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1593)

Side by Side Diff: Source/bindings/v8/ScriptController.cpp

Issue 23601032: Pass isolate to ScopedPersistent constructor (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Update deprecated generator as well Created 7 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2008, 2009 Google Inc. All rights reserved. 2 * Copyright (C) 2008, 2009 Google Inc. All rights reserved.
3 * Copyright (C) 2009 Apple Inc. All rights reserved. 3 * Copyright (C) 2009 Apple Inc. All rights reserved.
4 * 4 *
5 * Redistribution and use in source and binary forms, with or without 5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are 6 * modification, are permitted provided that the following conditions are
7 * met: 7 * met:
8 * 8 *
9 * * Redistributions of source code must retain the above copyright 9 * * Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer. 10 * notice, this list of conditions and the following disclaimer.
(...skipping 401 matching lines...) Expand 10 before | Expand all | Expand 10 after
412 // 412 //
413 // Inside the javascript engine, the engine can keep a reference to the 413 // Inside the javascript engine, the engine can keep a reference to the
414 // NPObject as part of its wrapper. However, before accessing the object 414 // NPObject as part of its wrapper. However, before accessing the object
415 // it must consult the _NPN_Registry. 415 // it must consult the _NPN_Registry.
416 416
417 v8::Local<v8::Object> wrapper = createV8ObjectForNPObject(npObject, 0, m_iso late); 417 v8::Local<v8::Object> wrapper = createV8ObjectForNPObject(npObject, 0, m_iso late);
418 418
419 // Track the plugin object. We've been given a reference to the object. 419 // Track the plugin object. We've been given a reference to the object.
420 m_pluginObjects.set(widget, npObject); 420 m_pluginObjects.set(widget, npObject);
421 421
422 return V8ScriptInstance::create(wrapper); 422 return V8ScriptInstance::create(wrapper, m_isolate);
423 } 423 }
424 424
425 void ScriptController::cleanupScriptObjectsForPlugin(Widget* nativeHandle) 425 void ScriptController::cleanupScriptObjectsForPlugin(Widget* nativeHandle)
426 { 426 {
427 PluginObjectMap::iterator it = m_pluginObjects.find(nativeHandle); 427 PluginObjectMap::iterator it = m_pluginObjects.find(nativeHandle);
428 if (it == m_pluginObjects.end()) 428 if (it == m_pluginObjects.end())
429 return; 429 return;
430 _NPN_UnregisterObject(it->value); 430 _NPN_UnregisterObject(it->value);
431 _NPN_ReleaseObject(it->value); 431 _NPN_ReleaseObject(it->value);
432 m_pluginObjects.remove(it); 432 m_pluginObjects.remove(it);
(...skipping 281 matching lines...) Expand 10 before | Expand all | Expand 10 after
714 v8Results = evaluateHandleScope.Close(resultArray); 714 v8Results = evaluateHandleScope.Close(resultArray);
715 } 715 }
716 716
717 if (results && !v8Results.IsEmpty()) { 717 if (results && !v8Results.IsEmpty()) {
718 for (size_t i = 0; i < v8Results->Length(); ++i) 718 for (size_t i = 0; i < v8Results->Length(); ++i)
719 results->append(ScriptValue(v8Results->Get(i))); 719 results->append(ScriptValue(v8Results->Get(i)));
720 } 720 }
721 } 721 }
722 722
723 } // namespace WebCore 723 } // namespace WebCore
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698