| Differences between
and this patch
- a/Source/WebCore/ChangeLog +17 lines
Lines 1-3 a/Source/WebCore/ChangeLog_sec1
1
2012-12-03  Michael Pruett  <michael@68k.org>
2
3
        [JSC] Clear exceptions thrown in Dictionary
4
        https://bugs.webkit.org/show_bug.cgi?id=95563
5
6
        Reviewed by NOBODY (OOPS!).
7
8
        Exceptions thrown in Dictionary should be cleared so that
9
        subsequent accesses do not fail spuriously.
10
11
        Tests: storage/indexeddb/*
12
13
        * bindings/js/Dictionary.cpp:
14
        (WebCore::Dictionary::getWithUndefinedOrNullCheck):
15
        * bindings/js/Dictionary.h:
16
        (WebCore::Dictionary::get):
17
1
2012-11-29  Michael Pruett  <michael@68k.org>
18
2012-11-29  Michael Pruett  <michael@68k.org>
2
19
3
        IndexedDB: Implement IndexedDB bindings for JSC
20
        IndexedDB: Implement IndexedDB bindings for JSC
- a/Source/WebCore/bindings/js/Dictionary.cpp -1 / +4 lines
Lines 100-106 bool Dictionary::getOwnPropertyNames(Vector<String>& names) const a/Source/WebCore/bindings/js/Dictionary.cpp_sec1
100
100
101
bool Dictionary::getWithUndefinedOrNullCheck(const String& propertyName, String& value) const
101
bool Dictionary::getWithUndefinedOrNullCheck(const String& propertyName, String& value) const
102
{
102
{
103
    return m_dictionary.getWithUndefinedOrNullCheck(propertyName, value);
103
    bool success = m_dictionary.getWithUndefinedOrNullCheck(propertyName, value);
104
    if (m_dictionary.execState()->hadException())
105
        m_dictionary.execState()->clearException();
106
    return success;
104
}
107
}
105
108
106
};
109
};
- a/Source/WebCore/bindings/js/Dictionary.h -2 / +4 lines
Lines 77-83 bool Dictionary::get(const char* propertyName, Result& result) const a/Source/WebCore/bindings/js/Dictionary.h_sec1
77
    if (!m_dictionary.isValid())
77
    if (!m_dictionary.isValid())
78
        return false;
78
        return false;
79
    
79
    
80
    return m_dictionary.get(propertyName, result);
80
    bool success = m_dictionary.get(propertyName, result);
81
    if (m_dictionary.execState()->hadException())
82
        m_dictionary.execState()->clearException();
83
    return success;
81
}
84
}
82
85
83
template <typename Result>
86
template <typename Result>
84
- 

Return to Bug 95563