Changeset 133253 in webkit


Ignore:
Timestamp:
Nov 1, 2012 6:40:18 PM (11 years ago)
Author:
commit-queue@webkit.org
Message:

[BlackBerry] Simplify the code of returning JSValue in "BlackBerry::WebKit::WebPagePrivate::executeJavaScript"
https://bugs.webkit.org/show_bug.cgi?id=100941

Patch by Peter Wang <peter.wang@torchmobile.com.cn> on 2012-11-01
Reviewed by Yong Li.

Remove the unnecessary steps, just directly deal with returned JSValue.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::executeJavaScript):
(BlackBerry::WebKit::WebPagePrivate::executeJavaScriptInIsolatedWorld):

Location:
trunk/Source/WebKit/blackberry
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit/blackberry/Api/WebPage.cpp

    r133097 r133253  
    781781    }
    782782
    783     JSC::ExecState* exec = m_mainFrame->script()->globalObject(mainThreadNormalWorld())->globalExec();
    784     JSGlobalContextRef context = toGlobalRef(exec);
    785 
    786     JSC::JSLockHolder lock(exec);
    787     JSType type = JSValueGetType(context, toRef(exec, value));
    788 
    789     switch (type) {
    790     case kJSTypeNull:
     783    if (value.isUndefined())
     784        returnType = JSUndefined;
     785    else if (value.isNull())
    791786        returnType = JSNull;
    792         break;
    793     case kJSTypeBoolean:
     787    else if (value.isBoolean())
    794788        returnType = JSBoolean;
    795         break;
    796     case kJSTypeNumber:
     789    else if (value.isNumber())
    797790        returnType = JSNumber;
    798         break;
    799     case kJSTypeString:
     791    else if (value.isString())
    800792        returnType = JSString;
    801         break;
    802     case kJSTypeObject:
     793    else if (value.isObject())
    803794        returnType = JSObject;
    804         break;
    805     case kJSTypeUndefined:
    806     default:
     795    else
    807796        returnType = JSUndefined;
    808         break;
    809     }
    810 
    811     if (returnType == JSBoolean || returnType == JSNumber || returnType == JSString || returnType == JSObject)
     797
     798    if (returnType == JSBoolean || returnType == JSNumber || returnType == JSString || returnType == JSObject) {
     799        JSC::ExecState* exec = m_mainFrame->script()->globalObject(mainThreadNormalWorld())->globalExec();
    812800        returnValue = result.toString(exec);
     801    }
    813802
    814803    return true;
     
    833822    }
    834823
    835     JSC::ExecState* exec = m_mainFrame->script()->globalObject(m_isolatedWorld.get())->globalExec();
    836     JSGlobalContextRef context = toGlobalRef(exec);
    837 
    838     JSC::JSLockHolder lock(exec);
    839     JSType type = JSValueGetType(context, toRef(exec, value));
    840 
    841     switch (type) {
    842     case kJSTypeNull:
     824    if (value.isUndefined())
     825        returnType = JSUndefined;
     826    else if (value.isNull())
    843827        returnType = JSNull;
    844         break;
    845     case kJSTypeBoolean:
     828    else if (value.isBoolean())
    846829        returnType = JSBoolean;
    847         break;
    848     case kJSTypeNumber:
     830    else if (value.isNumber())
    849831        returnType = JSNumber;
    850         break;
    851     case kJSTypeString:
     832    else if (value.isString())
    852833        returnType = JSString;
    853         break;
    854     case kJSTypeObject:
     834    else if (value.isObject())
    855835        returnType = JSObject;
    856         break;
    857     case kJSTypeUndefined:
    858     default:
     836    else
    859837        returnType = JSUndefined;
    860         break;
    861     }
    862 
    863     if (returnType == JSBoolean || returnType == JSNumber || returnType == JSString || returnType == JSObject)
     838
     839    if (returnType == JSBoolean || returnType == JSNumber || returnType == JSString || returnType == JSObject) {
     840        JSC::ExecState* exec = m_mainFrame->script()->globalObject(mainThreadNormalWorld())->globalExec();
    864841        returnValue = result.toString(exec);
     842    }
    865843
    866844    return true;
  • trunk/Source/WebKit/blackberry/ChangeLog

    r133247 r133253  
     12012-11-01  Peter Wang  <peter.wang@torchmobile.com.cn>
     2
     3        [BlackBerry] Simplify the code of returning JSValue in "BlackBerry::WebKit::WebPagePrivate::executeJavaScript"
     4        https://bugs.webkit.org/show_bug.cgi?id=100941
     5
     6        Reviewed by Yong Li.
     7
     8        Remove the unnecessary steps, just directly deal with returned JSValue.
     9
     10        * Api/WebPage.cpp:
     11        (BlackBerry::WebKit::WebPagePrivate::executeJavaScript):
     12        (BlackBerry::WebKit::WebPagePrivate::executeJavaScriptInIsolatedWorld):
     13
    1142012-11-01  Otto Derek Cheung  <otcheung@rim.com>
    215
Note: See TracChangeset for help on using the changeset viewer.