Ignore:
Timestamp:
Nov 22, 2005, 9:41:23 PM (20 years ago)
Author:
mjs
Message:

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:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj

    r11275 r11284  
    4646                65E217BF08E7EECC0023E5F6 /* FastMalloc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 65E217B908E7EECC0023E5F6 /* FastMalloc.cpp */; };
    4747                65E217C008E7EECC0023E5F6 /* FastMalloc.h in Headers */ = {isa = PBXBuildFile; fileRef = 65E217BA08E7EECC0023E5F6 /* FastMalloc.h */; settings = {ATTRIBUTES = (Private, ); }; };
     48                65EA4C9B092AF9E20093D800 /* JSLock.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 65EA4C99092AF9E20093D800 /* JSLock.cpp */; };
     49                65EA4C9C092AF9E20093D800 /* JSLock.h in Headers */ = {isa = PBXBuildFile; fileRef = 65EA4C9A092AF9E20093D800 /* JSLock.h */; settings = {ATTRIBUTES = (Private, ); }; };
    4850                930754C108B0F68000AB3056 /* pcre_compile.c in Sources */ = {isa = PBXBuildFile; fileRef = 930754BF08B0F68000AB3056 /* pcre_compile.c */; };
    4951                930754D008B0F74600AB3056 /* pcre_tables.c in Sources */ = {isa = PBXBuildFile; fileRef = 930754CE08B0F74500AB3056 /* pcre_tables.c */; };
     
    349351                65E217B908E7EECC0023E5F6 /* FastMalloc.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = FastMalloc.cpp; sourceTree = "<group>"; };
    350352                65E217BA08E7EECC0023E5F6 /* FastMalloc.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = FastMalloc.h; sourceTree = "<group>"; };
     353                65EA4C99092AF9E20093D800 /* JSLock.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = JSLock.cpp; sourceTree = "<group>"; };
     354                65EA4C9A092AF9E20093D800 /* JSLock.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = JSLock.h; sourceTree = "<group>"; };
    351355                700DA117065984CE00747C0B /* WebScriptObjectPrivate.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = WebScriptObjectPrivate.h; path = bindings/objc/WebScriptObjectPrivate.h; sourceTree = "<group>"; };
    352356                704FD35305697E6D003DBED9 /* bool_object.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = bool_object.h; sourceTree = "<group>"; };
     
    522526                        isa = PBXGroup;
    523527                        children = (
     528                                65EA4C99092AF9E20093D800 /* JSLock.cpp */,
     529                                65EA4C9A092AF9E20093D800 /* JSLock.h */,
    524530                                65621E6B089E859700760F35 /* property_slot.cpp */,
    525531                                65621E6C089E859700760F35 /* property_slot.h */,
     
    841847                                6557E8F808EA5D4D0049CDFC /* HashMapPtrSpec.h in Headers */,
    842848                                65D7D19C08F10B5B0015ABD8 /* FastMallocInternal.h in Headers */,
     849                                65EA4C9C092AF9E20093D800 /* JSLock.h in Headers */,
    843850                        );
    844851                        runOnlyForDeploymentPostprocessing = 0;
     
    12231230                                6541BD7408E80A17002CBEE7 /* TCSystemAlloc.cpp in Sources */,
    12241231                                65DFC93308EA173A00F7300B /* HashTable.cpp in Sources */,
     1232                                65EA4C9B092AF9E20093D800 /* JSLock.cpp in Sources */,
    12251233                        );
    12261234                        runOnlyForDeploymentPostprocessing = 0;
Note: See TracChangeset for help on using the changeset viewer.