Changeset 34947 in webkit for trunk/JavaScriptCore/API/JSObjectRef.cpp
- Timestamp:
- Jul 2, 2008, 12:00:53 AM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/API/JSObjectRef.cpp
r34854 r34947 48 48 JSClassRef JSClassCreate(const JSClassDefinition* definition) 49 49 { 50 JSLock lock;51 50 RefPtr<OpaqueJSClass> jsClass = (definition->attributes & kJSClassAttributeNoAutomaticPrototype) 52 51 ? OpaqueJSClass::createNoAutomaticPrototype(definition) … … 58 57 JSClassRef JSClassRetain(JSClassRef jsClass) 59 58 { 60 JSLock lock;61 59 jsClass->ref(); 62 60 return jsClass; … … 65 63 void JSClassRelease(JSClassRef jsClass) 66 64 { 67 JSLock lock;68 65 jsClass->deref(); 69 66 } … … 71 68 JSObjectRef JSObjectMake(JSContextRef ctx, JSClassRef jsClass, void* data) 72 69 { 73 JSLock lock;74 ExecState* exec = toJS(ctx);70 ExecState* exec = toJS(ctx); 71 JSLock lock(exec); 75 72 76 73 if (!jsClass) … … 86 83 JSObjectRef JSObjectMakeFunctionWithCallback(JSContextRef ctx, JSStringRef name, JSObjectCallAsFunctionCallback callAsFunction) 87 84 { 88 JSLock lock;89 ExecState* exec = toJS(ctx);85 ExecState* exec = toJS(ctx); 86 JSLock lock(exec); 90 87 Identifier nameID = name ? Identifier(exec, toJS(name)) : Identifier(exec, "anonymous"); 91 88 … … 95 92 JSObjectRef JSObjectMakeConstructor(JSContextRef ctx, JSClassRef jsClass, JSObjectCallAsConstructorCallback callAsConstructor) 96 93 { 97 JSLock lock;98 ExecState* exec = toJS(ctx);94 ExecState* exec = toJS(ctx); 95 JSLock lock(exec); 99 96 100 97 JSValue* jsPrototype = jsClass … … 109 106 JSObjectRef JSObjectMakeFunction(JSContextRef ctx, JSStringRef name, unsigned parameterCount, const JSStringRef parameterNames[], JSStringRef body, JSStringRef sourceURL, int startingLineNumber, JSValueRef* exception) 110 107 { 111 JSLock lock;112 113 ExecState* exec = toJS(ctx); 108 ExecState* exec = toJS(ctx); 109 JSLock lock(exec); 110 114 111 UString::Rep* bodyRep = toJS(body); 115 112 UString::Rep* sourceURLRep = sourceURL ? toJS(sourceURL) : &UString::Rep::null; … … 148 145 bool JSObjectHasProperty(JSContextRef ctx, JSObjectRef object, JSStringRef propertyName) 149 146 { 150 JSLock lock;151 ExecState* exec = toJS(ctx);147 ExecState* exec = toJS(ctx); 148 JSLock lock(exec); 152 149 JSObject* jsObject = toJS(object); 153 150 UString::Rep* nameRep = toJS(propertyName); … … 158 155 JSValueRef JSObjectGetProperty(JSContextRef ctx, JSObjectRef object, JSStringRef propertyName, JSValueRef* exception) 159 156 { 160 JSLock lock;161 ExecState* exec = toJS(ctx);157 ExecState* exec = toJS(ctx); 158 JSLock lock(exec); 162 159 JSObject* jsObject = toJS(object); 163 160 UString::Rep* nameRep = toJS(propertyName); … … 174 171 void JSObjectSetProperty(JSContextRef ctx, JSObjectRef object, JSStringRef propertyName, JSValueRef value, JSPropertyAttributes attributes, JSValueRef* exception) 175 172 { 176 JSLock lock;177 ExecState* exec = toJS(ctx);173 ExecState* exec = toJS(ctx); 174 JSLock lock(exec); 178 175 JSObject* jsObject = toJS(object); 179 176 Identifier name(exec, toJS(propertyName)); … … 194 191 JSValueRef JSObjectGetPropertyAtIndex(JSContextRef ctx, JSObjectRef object, unsigned propertyIndex, JSValueRef* exception) 195 192 { 196 JSLock lock;197 ExecState* exec = toJS(ctx);193 ExecState* exec = toJS(ctx); 194 JSLock lock(exec); 198 195 JSObject* jsObject = toJS(object); 199 196 … … 210 207 void JSObjectSetPropertyAtIndex(JSContextRef ctx, JSObjectRef object, unsigned propertyIndex, JSValueRef value, JSValueRef* exception) 211 208 { 212 JSLock lock;213 ExecState* exec = toJS(ctx);209 ExecState* exec = toJS(ctx); 210 JSLock lock(exec); 214 211 JSObject* jsObject = toJS(object); 215 212 JSValue* jsValue = toJS(value); … … 225 222 bool JSObjectDeleteProperty(JSContextRef ctx, JSObjectRef object, JSStringRef propertyName, JSValueRef* exception) 226 223 { 227 JSLock lock;228 ExecState* exec = toJS(ctx);224 ExecState* exec = toJS(ctx); 225 JSLock lock(exec); 229 226 JSObject* jsObject = toJS(object); 230 227 UString::Rep* nameRep = toJS(propertyName); … … 274 271 JSValueRef JSObjectCallAsFunction(JSContextRef ctx, JSObjectRef object, JSObjectRef thisObject, size_t argumentCount, const JSValueRef arguments[], JSValueRef* exception) 275 272 { 276 JSLock lock;277 ExecState* exec = toJS(ctx);273 ExecState* exec = toJS(ctx); 274 JSLock lock(exec); 278 275 JSObject* jsObject = toJS(object); 279 276 JSObject* jsThisObject = toJS(thisObject); … … 310 307 JSObjectRef JSObjectCallAsConstructor(JSContextRef ctx, JSObjectRef object, size_t argumentCount, const JSValueRef arguments[], JSValueRef* exception) 311 308 { 312 JSLock lock;313 ExecState* exec = toJS(ctx);309 ExecState* exec = toJS(ctx); 310 JSLock lock(exec); 314 311 JSObject* jsObject = toJS(object); 315 312 … … 344 341 JSPropertyNameArrayRef JSObjectCopyPropertyNames(JSContextRef ctx, JSObjectRef object) 345 342 { 346 JS Lock lock;347 JSObject* jsObject = toJS(object);348 ExecState* exec = toJS(ctx);343 JSObject* jsObject = toJS(object); 344 ExecState* exec = toJS(ctx); 345 JSLock lock(exec); 349 346 350 347 JSPropertyNameArrayRef propertyNames = new OpaqueJSPropertyNameArray(&exec->globalData()); … … 356 353 JSPropertyNameArrayRef JSPropertyNameArrayRetain(JSPropertyNameArrayRef array) 357 354 { 358 JSLock lock;359 355 ++array->refCount; 360 356 return array; … … 363 359 void JSPropertyNameArrayRelease(JSPropertyNameArrayRef array) 364 360 { 365 JSLock lock;366 if (--array->refCount == 0)361 if (--array->refCount == 0) { 362 JSLock lock(array->array.globalData()->isSharedInstance); 367 363 delete array; 364 } 368 365 } 369 366 … … 380 377 void JSPropertyNameAccumulatorAddName(JSPropertyNameAccumulatorRef array, JSStringRef propertyName) 381 378 { 382 JSLock lock;383 379 PropertyNameArray* propertyNames = toJS(array); 384 380 UString::Rep* rep = toJS(propertyName); 381 382 JSLock lock(propertyNames->globalData()->isSharedInstance); 385 383 propertyNames->add(rep); 386 384 }
Note:
See TracChangeset
for help on using the changeset viewer.