From 04ee44b4e6869a047e3866feef1410a5f0dd7ee2 Mon Sep 17 00:00:00 2001 From: Andreas Gal Date: Sat, 16 Apr 2011 14:51:18 -0700 Subject: [PATCH] for-in loop on proxy does not suppress properties deleted during enumeration (bug 600702, r=brendan) --- js/src/jsproxy.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/js/src/jsproxy.cpp b/js/src/jsproxy.cpp index 670c9278b59..b5fcf4c4d5f 100644 --- a/js/src/jsproxy.cpp +++ b/js/src/jsproxy.cpp @@ -953,7 +953,7 @@ proxy_DeleteProperty(JSContext *cx, JSObject *obj, jsid id, Value *rval, JSBool { // TODO: throwing away strict bool deleted; - if (!JSProxy::delete_(cx, obj, id, &deleted)) + if (!JSProxy::delete_(cx, obj, id, &deleted) || !js_SuppressDeletedProperty(cx, obj, id)) return false; rval->setBoolean(deleted); return true;