From c0692c52141d43a7e35ce8efa9eb3a8c3a0b21d7 Mon Sep 17 00:00:00 2001 From: Jeff Walden Date: Thu, 4 Aug 2011 19:39:13 -0700 Subject: [PATCH] Bug 676738 - Change the index argument to JS_DeleteElement and JS_DeleteElement2 from jsint to uint32. r=dmandelin --HG-- extra : rebase_source : 7ee32857d1bd9d85d34f25d3bba4a3bdee2511e1 --- js/src/jsapi.cpp | 10 +++++++--- js/src/jsapi.h | 4 ++-- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/js/src/jsapi.cpp b/js/src/jsapi.cpp index 9abe0726f24..c7ff19f2453 100644 --- a/js/src/jsapi.cpp +++ b/js/src/jsapi.cpp @@ -3798,9 +3798,13 @@ JS_DeletePropertyById2(JSContext *cx, JSObject *obj, jsid id, jsval *rval) } JS_PUBLIC_API(JSBool) -JS_DeleteElement2(JSContext *cx, JSObject *obj, jsint index, jsval *rval) +JS_DeleteElement2(JSContext *cx, JSObject *obj, uint32 index, jsval *rval) { - return JS_DeletePropertyById2(cx, obj, INT_TO_JSID(index), rval); + CHECK_REQUEST(cx); + jsid id; + if (!IndexToId(cx, index, &id)) + return false; + return JS_DeletePropertyById2(cx, obj, id, rval); } JS_PUBLIC_API(JSBool) @@ -3825,7 +3829,7 @@ JS_DeletePropertyById(JSContext *cx, JSObject *obj, jsid id) } JS_PUBLIC_API(JSBool) -JS_DeleteElement(JSContext *cx, JSObject *obj, jsint index) +JS_DeleteElement(JSContext *cx, JSObject *obj, uint32 index) { jsval junk; return JS_DeleteElement2(cx, obj, index, &junk); diff --git a/js/src/jsapi.h b/js/src/jsapi.h index 0da5af29caa..99fa496afc8 100644 --- a/js/src/jsapi.h +++ b/js/src/jsapi.h @@ -2505,10 +2505,10 @@ extern JS_PUBLIC_API(JSBool) JS_SetElement(JSContext *cx, JSObject *obj, jsint index, jsval *vp); extern JS_PUBLIC_API(JSBool) -JS_DeleteElement(JSContext *cx, JSObject *obj, jsint index); +JS_DeleteElement(JSContext *cx, JSObject *obj, uint32 index); extern JS_PUBLIC_API(JSBool) -JS_DeleteElement2(JSContext *cx, JSObject *obj, jsint index, jsval *rval); +JS_DeleteElement2(JSContext *cx, JSObject *obj, uint32 index, jsval *rval); extern JS_PUBLIC_API(void) JS_ClearScope(JSContext *cx, JSObject *obj);