| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2004, 2006 Apple Computer, Inc. All rights reserved. | 2 * Copyright (C) 2004, 2006 Apple Computer, Inc. All rights reserved. |
| 3 * Copyright (C) 2007, 2008, 2009 Google, Inc. All rights reserved. | 3 * Copyright (C) 2007, 2008, 2009 Google, 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 | 6 * modification, are permitted provided that the following conditions |
| 7 * are met: | 7 * are met: |
| 8 * 1. Redistributions of source code must retain the above copyright | 8 * 1. Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
| 10 * 2. Redistributions in binary form must reproduce the above copyright | 10 * 2. Redistributions in binary form must reproduce the above copyright |
| (...skipping 186 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 197 } | 197 } |
| 198 } | 198 } |
| 199 v8NpObject->v8Object.Reset(); | 199 v8NpObject->v8Object.Reset(); |
| 200 v8NpObject->rootObject = 0; | 200 v8NpObject->rootObject = 0; |
| 201 } | 201 } |
| 202 | 202 |
| 203 } // namespace blink | 203 } // namespace blink |
| 204 | 204 |
| 205 bool _NPN_Invoke(NPP npp, NPObject* npObject, NPIdentifier methodName, const NPV
ariant* arguments, uint32_t argumentCount, NPVariant* result) | 205 bool _NPN_Invoke(NPP npp, NPObject* npObject, NPIdentifier methodName, const NPV
ariant* arguments, uint32_t argumentCount, NPVariant* result) |
| 206 { | 206 { |
| 207 ScriptForbiddenScope::AllowSuperUnsafeScript thisShouldBeRemoved; |
| 208 |
| 207 if (!npObject) | 209 if (!npObject) |
| 208 return false; | 210 return false; |
| 209 | 211 |
| 210 v8::Isolate* isolate = v8::Isolate::GetCurrent(); | 212 v8::Isolate* isolate = v8::Isolate::GetCurrent(); |
| 211 | 213 |
| 212 V8NPObject* v8NpObject = npObjectToV8NPObject(npObject); | 214 V8NPObject* v8NpObject = npObjectToV8NPObject(npObject); |
| 213 if (!v8NpObject) { | 215 if (!v8NpObject) { |
| 214 if (npObject->_class->invoke) | 216 if (npObject->_class->invoke) |
| 215 return npObject->_class->invoke(npObject, methodName, arguments, arg
umentCount, result); | 217 return npObject->_class->invoke(npObject, methodName, arguments, arg
umentCount, result); |
| 216 | 218 |
| (...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 262 if (resultObject.IsEmpty()) | 264 if (resultObject.IsEmpty()) |
| 263 return false; | 265 return false; |
| 264 | 266 |
| 265 convertV8ObjectToNPVariant(resultObject, npObject, result, isolate); | 267 convertV8ObjectToNPVariant(resultObject, npObject, result, isolate); |
| 266 return true; | 268 return true; |
| 267 } | 269 } |
| 268 | 270 |
| 269 // FIXME: Fix it same as _NPN_Invoke (HandleScope and such). | 271 // FIXME: Fix it same as _NPN_Invoke (HandleScope and such). |
| 270 bool _NPN_InvokeDefault(NPP npp, NPObject* npObject, const NPVariant* arguments,
uint32_t argumentCount, NPVariant* result) | 272 bool _NPN_InvokeDefault(NPP npp, NPObject* npObject, const NPVariant* arguments,
uint32_t argumentCount, NPVariant* result) |
| 271 { | 273 { |
| 274 ScriptForbiddenScope::AllowSuperUnsafeScript thisShouldBeRemoved; |
| 275 |
| 272 if (!npObject) | 276 if (!npObject) |
| 273 return false; | 277 return false; |
| 274 | 278 |
| 275 v8::Isolate* isolate = v8::Isolate::GetCurrent(); | 279 v8::Isolate* isolate = v8::Isolate::GetCurrent(); |
| 276 | 280 |
| 277 V8NPObject* v8NpObject = npObjectToV8NPObject(npObject); | 281 V8NPObject* v8NpObject = npObjectToV8NPObject(npObject); |
| 278 if (!v8NpObject) { | 282 if (!v8NpObject) { |
| 279 if (npObject->_class->invokeDefault) | 283 if (npObject->_class->invokeDefault) |
| 280 return npObject->_class->invokeDefault(npObject, arguments, argument
Count, result); | 284 return npObject->_class->invokeDefault(npObject, arguments, argument
Count, result); |
| 281 | 285 |
| (...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 317 | 321 |
| 318 bool _NPN_Evaluate(NPP npp, NPObject* npObject, NPString* npScript, NPVariant* r
esult) | 322 bool _NPN_Evaluate(NPP npp, NPObject* npObject, NPString* npScript, NPVariant* r
esult) |
| 319 { | 323 { |
| 320 // FIXME: Give the embedder a way to control this. | 324 // FIXME: Give the embedder a way to control this. |
| 321 bool popupsAllowed = false; | 325 bool popupsAllowed = false; |
| 322 return _NPN_EvaluateHelper(npp, popupsAllowed, npObject, npScript, result); | 326 return _NPN_EvaluateHelper(npp, popupsAllowed, npObject, npScript, result); |
| 323 } | 327 } |
| 324 | 328 |
| 325 bool _NPN_EvaluateHelper(NPP npp, bool popupsAllowed, NPObject* npObject, NPStri
ng* npScript, NPVariant* result) | 329 bool _NPN_EvaluateHelper(NPP npp, bool popupsAllowed, NPObject* npObject, NPStri
ng* npScript, NPVariant* result) |
| 326 { | 330 { |
| 331 ScriptForbiddenScope::AllowSuperUnsafeScript thisShouldBeRemoved; |
| 332 |
| 327 VOID_TO_NPVARIANT(*result); | 333 VOID_TO_NPVARIANT(*result); |
| 328 if (!npObject) | 334 if (!npObject) |
| 329 return false; | 335 return false; |
| 330 | 336 |
| 331 V8NPObject* v8NpObject = npObjectToV8NPObject(npObject); | 337 V8NPObject* v8NpObject = npObjectToV8NPObject(npObject); |
| 332 if (!v8NpObject) | 338 if (!v8NpObject) |
| 333 return false; | 339 return false; |
| 334 | 340 |
| 335 v8::Isolate* isolate = v8::Isolate::GetCurrent(); | 341 v8::Isolate* isolate = v8::Isolate::GetCurrent(); |
| 336 ScriptState* scriptState = mainWorldScriptState(isolate, npp, npObject); | 342 ScriptState* scriptState = mainWorldScriptState(isolate, npp, npObject); |
| (...skipping 257 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 594 | 600 |
| 595 convertV8ObjectToNPVariant(resultObject, npObject, result, isolate); | 601 convertV8ObjectToNPVariant(resultObject, npObject, result, isolate); |
| 596 return true; | 602 return true; |
| 597 } | 603 } |
| 598 | 604 |
| 599 if (NP_CLASS_STRUCT_VERSION_HAS_CTOR(npObject->_class) && npObject->_class->
construct) | 605 if (NP_CLASS_STRUCT_VERSION_HAS_CTOR(npObject->_class) && npObject->_class->
construct) |
| 600 return npObject->_class->construct(npObject, arguments, argumentCount, r
esult); | 606 return npObject->_class->construct(npObject, arguments, argumentCount, r
esult); |
| 601 | 607 |
| 602 return false; | 608 return false; |
| 603 } | 609 } |
| OLD | NEW |