Changeset 27684 in webkit for trunk/JavaScriptCore/kjs/nodes.cpp


Ignore:
Timestamp:
Nov 11, 2007, 12:34:39 AM (18 years ago)
Author:
eseidel
Message:

2007-11-11 Eric Seidel <[email protected]>

Reviewed by Oliver.

Add KJS_CHECKEXCEPTIONBOOLEAN to match rest of nodes.cpp

  • kjs/nodes.cpp: (KJS::ExpressionNode::evaluateToBoolean): (KJS::LessNode::evaluateToBoolean): (KJS::GreaterNode::evaluateToBoolean): (KJS::LessEqNode::evaluateToBoolean): (KJS::GreaterEqNode::evaluateToBoolean): (KJS::InstanceOfNode::evaluateToBoolean): (KJS::InNode::evaluateToBoolean): (KJS::EqualNode::evaluateToBoolean): (KJS::NotEqualNode::evaluateToBoolean): (KJS::StrictEqualNode::evaluateToBoolean): (KJS::NotStrictEqualNode::evaluateToBoolean): (KJS::LogicalAndNode::evaluateToBoolean): (KJS::LogicalOrNode::evaluateToBoolean): (KJS::ConditionalNode::evaluateToBoolean):
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/kjs/nodes.cpp

    r27664 r27684  
    6363  }
    6464
     65#define KJS_CHECKEXCEPTIONBOOLEAN \
     66  if (exec->hadException()) { \
     67    handleException(exec); \
     68    return false; \
     69  }
     70
    6571#define KJS_CHECKEXCEPTIONLIST \
    6672  if (exec->hadException()) { \
     
    215221{
    216222    JSValue* value = evaluate(exec);
    217     if (exec->hadException()) {
    218         handleException(exec);
    219         return false;
    220     }
     223    KJS_CHECKEXCEPTIONBOOLEAN
    221224    return value->toBoolean(exec);
    222225}
     
    20412044{
    20422045    JSValue* v1 = expr1->evaluate(exec);
    2043     if (exec->hadException()) {
    2044         handleException(exec);
    2045         return false;
    2046     }
     2046    KJS_CHECKEXCEPTIONBOOLEAN
    20472047    JSValue* v2 = expr2->evaluate(exec);
    2048     if (exec->hadException()) {
    2049         handleException(exec);
    2050         return false;
    2051     }
     2048    KJS_CHECKEXCEPTIONBOOLEAN
    20522049    return lessThan(exec, v1, v2);
    20532050}
     
    20722069{
    20732070    JSValue* v1 = expr1->evaluate(exec);
    2074     if (exec->hadException()) {
    2075         handleException(exec);
    2076         return false;
    2077     }
     2071    KJS_CHECKEXCEPTIONBOOLEAN
    20782072    JSValue* v2 = expr2->evaluate(exec);
    2079     if (exec->hadException()) {
    2080         handleException(exec);
    2081         return false;
    2082     }
     2073    KJS_CHECKEXCEPTIONBOOLEAN
    20832074    return lessThan(exec, v2, v1);
    20842075}
     
    21032094{
    21042095    JSValue* v1 = expr1->evaluate(exec);
    2105     if (exec->hadException()) {
    2106         handleException(exec);
    2107         return false;
    2108     }
     2096    KJS_CHECKEXCEPTIONBOOLEAN
    21092097    JSValue* v2 = expr2->evaluate(exec);
    2110     if (exec->hadException()) {
    2111         handleException(exec);
    2112         return false;
    2113     }
     2098    KJS_CHECKEXCEPTIONBOOLEAN
    21142099    return lessThanEq(exec, v1, v2);
    21152100}
     
    21342119{
    21352120    JSValue* v1 = expr1->evaluate(exec);
    2136     if (exec->hadException()) {
    2137         handleException(exec);
    2138         return false;
    2139     }
     2121    KJS_CHECKEXCEPTIONBOOLEAN
    21402122    JSValue* v2 = expr2->evaluate(exec);
    2141     if (exec->hadException()) {
    2142         handleException(exec);
    2143         return false;
    2144     }
     2123    KJS_CHECKEXCEPTIONBOOLEAN
    21452124    return lessThanEq(exec, v2, v1);
    21462125}
     
    21782157{
    21792158    JSValue* v1 = expr1->evaluate(exec);
    2180     if (exec->hadException()) {
    2181         handleException(exec);
    2182         return false;
    2183     }
     2159    KJS_CHECKEXCEPTIONBOOLEAN
    21842160    JSValue* v2 = expr2->evaluate(exec);
    2185     if (exec->hadException()) {
    2186         handleException(exec);
    2187         return false;
    2188     }
     2161    KJS_CHECKEXCEPTIONBOOLEAN
    21892162
    21902163    if (!v2->isObject()) {
     
    22282201{
    22292202    JSValue* v1 = expr1->evaluate(exec);
    2230     if (exec->hadException()) {
    2231         handleException(exec);
    2232         return false;
    2233     }
     2203    KJS_CHECKEXCEPTIONBOOLEAN
    22342204    JSValue* v2 = expr2->evaluate(exec);
    2235     if (exec->hadException()) {
    2236         handleException(exec);
    2237         return false;
    2238     }
     2205    KJS_CHECKEXCEPTIONBOOLEAN
    22392206
    22402207    if (!v2->isObject())
     
    22662233{
    22672234    JSValue* v1 = expr1->evaluate(exec);
    2268     if (exec->hadException()) {
    2269         handleException(exec);
    2270         return false;
    2271     }
     2235    KJS_CHECKEXCEPTIONBOOLEAN
    22722236    JSValue* v2 = expr2->evaluate(exec);
    2273     if (exec->hadException()) {
    2274         handleException(exec);
    2275         return false;
    2276     }
     2237    KJS_CHECKEXCEPTIONBOOLEAN
    22772238
    22782239    return equal(exec, v1, v2);
     
    22992260{
    23002261    JSValue* v1 = expr1->evaluate(exec);
    2301     if (exec->hadException()) {
    2302         handleException(exec);
    2303         return false;
    2304     }
     2262    KJS_CHECKEXCEPTIONBOOLEAN
    23052263    JSValue* v2 = expr2->evaluate(exec);
    2306     if (exec->hadException()) {
    2307         handleException(exec);
    2308         return false;
    2309     }
     2264    KJS_CHECKEXCEPTIONBOOLEAN
    23102265
    23112266    return !equal(exec,v1, v2);
     
    23322287{
    23332288    JSValue* v1 = expr1->evaluate(exec);
    2334     if (exec->hadException()) {
    2335         handleException(exec);
    2336         return false;
    2337     }
     2289    KJS_CHECKEXCEPTIONBOOLEAN
    23382290    JSValue* v2 = expr2->evaluate(exec);
    2339     if (exec->hadException()) {
    2340         handleException(exec);
    2341         return false;
    2342     }
     2291    KJS_CHECKEXCEPTIONBOOLEAN
    23432292
    23442293    return strictEqual(exec,v1, v2);
     
    23652314{
    23662315    JSValue* v1 = expr1->evaluate(exec);
    2367     if (exec->hadException()) {
    2368         handleException(exec);
    2369         return false;
    2370     }
     2316    KJS_CHECKEXCEPTIONBOOLEAN
    23712317    JSValue* v2 = expr2->evaluate(exec);
    2372     if (exec->hadException()) {
    2373         handleException(exec);
    2374         return false;
    2375     }
     2318    KJS_CHECKEXCEPTIONBOOLEAN
    23762319
    23772320    return !strictEqual(exec,v1, v2);
     
    24542397{
    24552398    bool b = expr1->evaluateToBoolean(exec);
    2456     if (exec->hadException()) {
    2457         handleException(exec);
    2458         return false;
    2459     }
     2399    KJS_CHECKEXCEPTIONBOOLEAN
    24602400    return b && expr2->evaluateToBoolean(exec);
    24612401}
     
    24792419{
    24802420    bool b = expr1->evaluateToBoolean(exec);
    2481     if (exec->hadException()) {
    2482         handleException(exec);
    2483         return false;
    2484     }
     2421    KJS_CHECKEXCEPTIONBOOLEAN
    24852422    return b || expr2->evaluateToBoolean(exec);
    24862423}
     
    25062443{
    25072444    bool b = logical->evaluateToBoolean(exec);
    2508     if (exec->hadException()) {
    2509         handleException(exec);
    2510         return false;
    2511     }
     2445    KJS_CHECKEXCEPTIONBOOLEAN
    25122446    return b ? expr1->evaluateToBoolean(exec) : expr2->evaluateToBoolean(exec);
    25132447}
Note: See TracChangeset for help on using the changeset viewer.