JSString::outOfMemory() should ASSERT(isRope()) rather than !isRope()
authorcommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 23 Feb 2012 19:29:14 +0000 (19:29 +0000)
committercommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 23 Feb 2012 19:29:14 +0000 (19:29 +0000)
https://bugs.webkit.org/show_bug.cgi?id=79268

Patch by Yong Li <yoli@rim.com> on 2012-02-23
Reviewed by Michael Saboff.

resolveRope() is the only caller of outOfMemory(), and it calls outOfMemory()
after it fails to allocate a buffer for m_value. So outOfMemory() should assert
isRope() rather than !isRope().

* runtime/JSString.cpp:
(JSC::JSString::outOfMemory):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@108649 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Source/JavaScriptCore/ChangeLog
Source/JavaScriptCore/runtime/JSString.cpp

index 0f55c1a..a15be11 100644 (file)
@@ -1,3 +1,17 @@
+2012-02-23  Yong Li  <yoli@rim.com>
+
+        JSString::outOfMemory() should ASSERT(isRope()) rather than !isRope()
+        https://bugs.webkit.org/show_bug.cgi?id=79268
+
+        Reviewed by Michael Saboff.
+
+        resolveRope() is the only caller of outOfMemory(), and it calls outOfMemory()
+        after it fails to allocate a buffer for m_value. So outOfMemory() should assert
+        isRope() rather than !isRope().
+
+        * runtime/JSString.cpp:
+        (JSC::JSString::outOfMemory):
+
 2012-02-23  Patrick Gansterer  <paroga@webkit.org>
 
         [CMake] Add WEBKIT_INCLUDE_CONFIG_FILES_IF_EXISTS macro
index 3fa2901..cfa7d03 100644 (file)
@@ -189,7 +189,7 @@ void JSString::outOfMemory(ExecState* exec) const
 {
     for (size_t i = 0; i < s_maxInternalRopeLength && m_fibers[i]; ++i)
         m_fibers[i].clear();
-    ASSERT(!isRope());
+    ASSERT(isRope());
     ASSERT(m_value == UString());
     if (exec)
         throwOutOfMemoryError(exec);