JavaScriptCore:
authormjs <mjs@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 23 Nov 2005 05:41:23 +0000 (05:41 +0000)
committermjs <mjs@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 23 Nov 2005 05:41:23 +0000 (05:41 +0000)
commit7cd311c9ba0a84d3f8a499f68adcd38ce812f703
treecfdd166565603e46a3c3302b7ec62509b430bffb
parent76cf1f0a9ebf61e734b677256529763e45637d38
JavaScriptCore:

        Reviewed by Geoff.

<rdar://problem/4139620> Seed: WebKit: hang when sending XMLHttpRequest if automatic proxy config is used

Also factored locking code completely into a separate class, and
added a convenient packaged way to temporarily drop locks.

        * JavaScriptCore.xcodeproj/project.pbxproj:
        * kjs/JSLock.cpp: Added.
        (KJS::initializeInterpreterLock):
        (KJS::InterpreterLock::lock):
        (KJS::InterpreterLock::unlock):
        (KJS::InterpreterLock::lockCount):
        (KJS::InterpreterLock::DropAllLocks::DropAllLocks):
        (KJS::InterpreterLock::DropAllLocks::~DropAllLocks):
        * kjs/JSLock.h: Added.
        (KJS::InterpreterLock::InterpreterLock):
        (KJS::InterpreterLock::~InterpreterLock):
        * kjs/internal.cpp:
        * kjs/internal.h:
        * kjs/interpreter.cpp:
        * kjs/interpreter.h:
        * kjs/protect.h:
        * kjs/testkjs.cpp:
        (TestFunctionImp::callAsFunction):

WebCore:

        Reviewed by Geoff.

<rdar://problem/4139620> Seed: WebKit: hang when sending XMLHttpRequest if automatic proxy config is used

        * khtml/ecma/kjs_events.cpp:
        (KJS::JSLazyEventListener::parseCode):
        * khtml/ecma/xmlhttprequest.cpp:
        (KJS::XMLHttpRequest::send):
        * kwq/WebCoreJavaScript.mm:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@11284 268f45cc-cd09-0410-ab3c-d52691b4dbfc
17 files changed:
JavaScriptCore/ChangeLog
JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj
JavaScriptCore/kjs/JSLock.cpp [new file with mode: 0644]
JavaScriptCore/kjs/JSLock.h [new file with mode: 0644]
JavaScriptCore/kjs/collector.cpp
JavaScriptCore/kjs/config.h
JavaScriptCore/kjs/internal.cpp
JavaScriptCore/kjs/internal.h
JavaScriptCore/kjs/interpreter.cpp
JavaScriptCore/kjs/interpreter.h
JavaScriptCore/kjs/protect.h
JavaScriptCore/kjs/protected_values.cpp
JavaScriptCore/kjs/testkjs.cpp
WebCore/ChangeLog-2005-12-19
WebCore/khtml/ecma/kjs_events.cpp
WebCore/khtml/ecma/xmlhttprequest.cpp
WebCore/kwq/WebCoreJavaScript.mm