[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-9427-gc2be6fc

yurys at chromium.org yurys at chromium.org
Wed Dec 22 15:49:43 UTC 2010


The following commit has been merged in the debian/experimental branch:
commit 97b7c4a4e8f81d485c2f0e36ffa59bf59d362ae6
Author: yurys at chromium.org <yurys at chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Sat Nov 13 14:50:48 2010 +0000

    2010-11-13  Yury Semikhatsky  <yurys at chromium.org>
    
            Reviewed by Pavel Feldman.
    
            REGRESSION(71515): Web Inspector: Safari crash calling console.log when Log JavaScript Exceptions to Console is checked
            https://bugs.webkit.org/show_bug.cgi?id=49362
    
            * page/Console.cpp:
            (WebCore::Console::addMessage): avoid accessing ScriptArguments and ScriptCallStack after their ownership
            has been passed to the inspector.
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@71966 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index 1f46eaa..ed2ad71 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -2,6 +2,17 @@
 
         Reviewed by Pavel Feldman.
 
+        REGRESSION(71515): Web Inspector: Safari crash calling console.log when Log JavaScript Exceptions to Console is checked
+        https://bugs.webkit.org/show_bug.cgi?id=49362
+
+        * page/Console.cpp:
+        (WebCore::Console::addMessage): avoid accessing ScriptArguments and ScriptCallStack after their ownership
+        has been passed to the inspector.
+
+2010-11-13  Yury Semikhatsky  <yurys at chromium.org>
+
+        Reviewed by Pavel Feldman.
+
         Web Inspector: DOM event listener name is cropped in Elements panel
         https://bugs.webkit.org/show_bug.cgi?id=49387
 
diff --git a/WebCore/page/Console.cpp b/WebCore/page/Console.cpp
index 1481ebd..34db538 100644
--- a/WebCore/page/Console.cpp
+++ b/WebCore/page/Console.cpp
@@ -173,6 +173,18 @@ void Console::addMessage(MessageType type, MessageLevel level, PassOwnPtr<Script
     if (!acceptNoArguments && !arguments->argumentCount())
         return;
 
+    if (Console::shouldPrintExceptions()) {
+        printSourceURLAndLine(lastCaller.sourceURL(), 0);
+        printMessageSourceAndLevelPrefix(JSMessageSource, level);
+
+        for (unsigned i = 0; i < arguments->argumentCount(); ++i) {
+            String argAsString;
+            if (arguments->argumentAt(i).getString(arguments->globalState(), argAsString))
+                printf(" %s", argAsString.utf8().data());
+        }
+        printf("\n");
+    }
+
     String message;
     if (arguments->getFirstArgumentAsString(message))
         page->chrome()->client()->addMessageToConsole(JSMessageSource, type, level, message, lastCaller.lineNumber(), lastCaller.sourceURL());
@@ -180,19 +192,6 @@ void Console::addMessage(MessageType type, MessageLevel level, PassOwnPtr<Script
 #if ENABLE(INSPECTOR)
     page->inspectorController()->addMessageToConsole(JSMessageSource, type, level, message, arguments, callStack);
 #endif
-
-    if (!Console::shouldPrintExceptions())
-        return;
-
-    printSourceURLAndLine(lastCaller.sourceURL(), 0);
-    printMessageSourceAndLevelPrefix(JSMessageSource, level);
-
-    for (unsigned i = 0; i < arguments->argumentCount(); ++i) {
-        String argAsString;
-        if (arguments->argumentAt(i).getString(arguments->globalState(), argAsString))
-            printf(" %s", argAsString.utf8().data());
-    }
-    printf("\n");
 }
 
 void Console::debug(PassOwnPtr<ScriptArguments> arguments, PassOwnPtr<ScriptCallStack> callStack)

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list