Closed
Bug 560556
Opened 14 years ago
Closed 12 years ago
JS_ClearScope doesn't handle failure from JS_SetReservedSlot
Categories
(Core :: JavaScript Engine, defect)
Core
JavaScript Engine
Tracking
()
RESOLVED
WORKSFORME
People
(Reporter: timeless, Unassigned)
References
(Blocks 1 open bug)
Details
(Keywords: coverity)
3812 JS_PUBLIC_API(void) 3813 JS_ClearScope(JSContext *cx, JSObject *obj) 3814 { 3815 CHECK_REQUEST(cx); 3816 3817 if (obj->map->ops->clear) 3818 obj->map->ops->clear(cx, obj); 3819 3820 /* Clear cached class objects on the global object. */ 3821 if (obj->getClass()->flags & JSCLASS_IS_GLOBAL) { 3822 int key; 3823 3824 for (key = JSProto_Null; key < JSProto_LIMIT; key++) 3825 JS_SetReservedSlot(cx, obj, key, JSVAL_VOID); 3826 } 3827 } In theory, JS_SetReservedSlot can fail for an object whose scope is shared. For JS_ClearScope where JSCLASS_IS_GLOBAL, we might know that the object's scope isn't shared. I wonder if that means we can use a hypothetical private js_SetReservedSlot_will_not_fail() Sadly this is too complicated for my tiny little mind at this hour.
Comment 1•12 years ago
|
||
This was fixed as part of bug 650369, in fact.
Status: NEW → RESOLVED
Closed: 12 years ago
Resolution: --- → WORKSFORME
Updated•6 years ago
|
Blocks: coverity-analysis
You need to log in
before you can comment on or make changes to this bug.
Description
•