Bug 945754 - Make EnsureTrackPropertyTypes handle OOM. r=bhackett
authorChristian Holler <choller@mozilla.com>
Tue, 03 Dec 2013 17:43:18 +0100
changeset 173250 8a7ed8362caa0c86108c442f303f1e6762b58a9c
parent 173249 0d2c9cafe2e8fe38e57b9dfc847dfcc639aebb85
child 173251 85694fd9b17cf468f11350af85f82f79d16e2e39
child 173288 3930e0fc40aca2ec07979db52f5c8a57edf244b4
push id3224
push userlsblakk@mozilla.com
push dateTue, 04 Feb 2014 01:06:49 +0000
treeherdermozilla-beta@60c04d0987f1 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersbhackett
bugs945754
milestone28.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 945754 - Make EnsureTrackPropertyTypes handle OOM. r=bhackett
js/src/jsinferinlines.h
--- a/js/src/jsinferinlines.h
+++ b/js/src/jsinferinlines.h
@@ -426,16 +426,17 @@ EnsureTrackPropertyTypes(JSContext *cx, 
         return;
 
     id = IdToTypeId(id);
 
     if (obj->hasSingletonType()) {
         AutoEnterAnalysis enter(cx);
         if (obj->hasLazyType() && !obj->getType(cx)) {
             cx->compartment()->types.setPendingNukeTypes(cx);
+            cx->clearPendingException();
             return;
         }
         if (!obj->type()->unknownProperties())
             obj->type()->getProperty(cx, id);
     }
 
     JS_ASSERT(obj->type()->unknownProperties() || TrackPropertyTypes(cx, obj, id));
 }