Changeset 36462 in webkit for trunk/JavaScriptCore/VM/Machine.cpp
- Timestamp:
- Sep 15, 2008, 4:33:25 PM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/VM/Machine.cpp
r36437 r36462 54 54 #include "operations.h" 55 55 #include "SamplingTool.h" 56 #include "StringObjectThatMasqueradesAsUndefined.h" 56 57 #include <stdio.h> 57 58 … … 572 573 m_jsArrayVptr = jsArray->vptr(); 573 574 static_cast<JSCell*>(jsArray)->~JSCell(); 575 576 StringObjectThatMasqueradesAsUndefined* jsStringObjectThatMasqueradesAsUndefined = new (storage) StringObjectThatMasqueradesAsUndefined(StringObjectThatMasqueradesAsUndefined::VPtrStealingHack); 577 m_jsStringObjectThatMasqueradesAsUndefinedVptr = jsStringObjectThatMasqueradesAsUndefined->vptr(); 578 static_cast<JSCell*>(jsStringObjectThatMasqueradesAsUndefined)->~JSCell(); 574 579 575 580 JSString* jsString = new (storage) JSString(JSString::VPtrStealingHack); … … 5402 5407 { 5403 5408 JSValue* src = ARG_src1; 5409 5404 5410 if (src->isUndefinedOrNull()) 5405 5411 return jsBoolean(true); 5406 5412 5407 return jsBoolean( !JSImmediate::isImmediate(src) && static_cast<JSCell*>(src)->masqueradeAsUndefined());5413 return jsBoolean(ARG_exec->machine()->doesMasqueradesAsUndefined(src)); 5408 5414 } 5409 5415 … … 5414 5420 return jsBoolean(false); 5415 5421 5416 return jsBoolean( JSImmediate::isImmediate(src) || !static_cast<JSCell*>(src)->masqueradeAsUndefined());5422 return jsBoolean(!ARG_exec->machine()->doesMasqueradesAsUndefined(src)); 5417 5423 } 5418 5424
Note:
See TracChangeset
for help on using the changeset viewer.