Revision: 6950 Author: [email protected] Date: Fri Feb 25 04:56:46 2011 Log: Fix assertion failure because of incorrect use of MaybeObjects.
Review URL: http://codereview.chromium.org/6599001 http://code.google.com/p/v8/source/detail?r=6950 Modified: /branches/bleeding_edge/src/objects.cc ======================================= --- /branches/bleeding_edge/src/objects.cc Fri Feb 25 03:17:31 2011 +++ /branches/bleeding_edge/src/objects.cc Fri Feb 25 04:56:46 2011 @@ -7279,8 +7279,10 @@ case EXTERNAL_INT_ELEMENTS: case EXTERNAL_UNSIGNED_INT_ELEMENTS: case EXTERNAL_FLOAT_ELEMENTS: { - MaybeObject* value = GetExternalElement(index); - if (!value->ToObjectUnchecked()->IsUndefined()) return value; + MaybeObject* maybe_value = GetExternalElement(index); + Object* value; + if (!maybe_value->ToObject(&value)) return maybe_value; + if (!value->IsUndefined()) return value; break; } case DICTIONARY_ELEMENTS: { @@ -7376,8 +7378,10 @@ case EXTERNAL_INT_ELEMENTS: case EXTERNAL_UNSIGNED_INT_ELEMENTS: case EXTERNAL_FLOAT_ELEMENTS: { - MaybeObject* value = GetExternalElement(index); - if (!value->ToObjectUnchecked()->IsUndefined()) return value; + MaybeObject* maybe_value = GetExternalElement(index); + Object* value; + if (!maybe_value->ToObject(&value)) return maybe_value; + if (!value->IsUndefined()) return value; break; } case DICTIONARY_ELEMENTS: { -- v8-dev mailing list [email protected] http://groups.google.com/group/v8-dev
