1. 30 Jun, 2006 2 commits
  2. 29 Jun, 2006 1 commit
  3. 28 Jun, 2006 1 commit
    • thatcher's avatar
      JavaScriptCore: · d420935a
      thatcher authored
              Prefer the Stabs debugging symbols format until DWARF bugs are fixed.
      
              * JavaScriptCore.xcodeproj/project.pbxproj:
      
      JavaScriptGlue:
      
              Prefer the Stabs debugging symbols format until DWARF bugs are fixed.
      
              * JavaScriptGlue.xcodeproj/project.pbxproj:
      
      WebCore:
      
              Prefer the Stabs debugging symbols format until DWARF bugs are fixed.
      
              * WebCore.xcodeproj/project.pbxproj:
      
      WebKit:
      
              Prefer the Stabs debugging symbols format until DWARF bugs are fixed.
      
              * WebKit.xcodeproj/project.pbxproj:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@15085 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d420935a
  4. 27 Jun, 2006 4 commits
    • thatcher's avatar
      Reviewed by Tim O. · fdc01d5e
      thatcher authored
              <rdar://problem/4448350> Deprecated ObjC language API used in JavaScriptCore, WebCore, WebKit and WebBrowser
      
              Switch to the new ObjC 2 API, ifdefed the old code around OBJC_API_VERSION so it still works on Tiger.
              Removed the use of the old stringWithCString, switched to the new Tiger version that accepts an encoding.
              Lots of code style cleanup.
      
              * JavaScriptCore.xcodeproj/project.pbxproj:
              * bindings/objc/objc_class.h:
              * bindings/objc/objc_class.mm:
              (KJS::Bindings::ObjcClass::~ObjcClass):
              (KJS::Bindings::_createClassesByIsAIfNecessary):
              (KJS::Bindings::ObjcClass::classForIsA):
              (KJS::Bindings::ObjcClass::name):
              (KJS::Bindings::ObjcClass::methodsNamed):
              (KJS::Bindings::ObjcClass::fieldNamed):
              (KJS::Bindings::ObjcClass::fallbackObject):
              * bindings/objc/objc_header.h:
              * bindings/objc/objc_instance.h:
              * bindings/objc/objc_instance.mm:
              (ObjcInstance::ObjcInstance):
              (ObjcInstance::~ObjcInstance):
              (ObjcInstance::operator=):
              (ObjcInstance::begin):
              (ObjcInstance::end):
              (ObjcInstance::getClass):
              (ObjcInstance::invokeMethod):
              (ObjcInstance::invokeDefaultMethod):
              (ObjcInstance::setValueOfField):
              (ObjcInstance::supportsSetValueOfUndefinedField):
              (ObjcInstance::setValueOfUndefinedField):
              (ObjcInstance::getValueOfField):
              (ObjcInstance::getValueOfUndefinedField):
              (ObjcInstance::defaultValue):
              (ObjcInstance::stringValue):
              (ObjcInstance::numberValue):
              (ObjcInstance::booleanValue):
              (ObjcInstance::valueOf):
              * bindings/objc/objc_runtime.h:
              * bindings/objc/objc_runtime.mm:
              (ObjcMethod::ObjcMethod):
              (ObjcMethod::name):
              (ObjcMethod::getMethodSignature):
              (ObjcMethod::setJavaScriptName):
              (ObjcField::name):
              (ObjcField::type):
              (ObjcField::valueFromInstance):
              (convertValueToObjcObject):
              (ObjcField::setValueToInstance):
              (ObjcArray::operator=):
              (ObjcArray::setValueAt):
              (ObjcArray::valueAt):
              (ObjcFallbackObjectImp::ObjcFallbackObjectImp):
              (ObjcFallbackObjectImp::callAsFunction):
              (ObjcFallbackObjectImp::defaultValue):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@15071 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      fdc01d5e
    • andersca's avatar
      2006-06-28 Anders Carlsson <acarlsson@apple.com> · e630e667
      andersca authored
              Reviewed by Geoff.
      
              http://bugzilla.opendarwin.org/show_bug.cgi?id=8636
              REGRESSION: JavaScript access to Java applet causes hang (_webViewURL not implemented)
              
              * bindings/jni/jni_objc.mm:
              (KJS::Bindings::dispatchJNICall):
              Just pass nil as the calling URL. This will cause the Java plugin to use the URL of the page
              containing the applet (which is what we used to do).
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@15070 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e630e667
    • thatcher's avatar
      Adding symbols for debug builds. · d37fc8a7
      thatcher authored
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@15064 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d37fc8a7
    • thatcher's avatar
      Reviewed by Darin. · b203939a
      thatcher authored
              <rdar://problem/4406785> Add an export file to TOT JavaScriptCore like the Safari-2-0-branch
      
              * JavaScriptCore.exp: Added.
              * JavaScriptCore.xcodeproj/project.pbxproj:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@15058 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b203939a
  5. 25 Jun, 2006 2 commits
    • ggaren's avatar
      Reviewed by Adele. · dcc6aead
      ggaren authored
              
              - Added JSConstructorMake to match JSFunctionMake, along with test code.
              
              [ I checked in the ChangeLog before without the actual files. ]
      
              * API/JSObjectRef.cpp:
              (JSConstructorMake):
              * API/JSObjectRef.h:
              * API/testapi.c:
              (myConstructor_callAsConstructor):
              (main):
              * API/testapi.js:
              * ChangeLog:
              * JavaScriptCore.xcodeproj/project.pbxproj: Moved testapi.c to the testapi
              target -- this was an oversight in my earlier check-in.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@15043 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      dcc6aead
    • thatcher's avatar
      JavaScriptCore: · 6458fe59
      thatcher authored
              Reviewed by Darin.
      
              Bug 9574: Drosera should show inline scripts within the original HTML
              http://bugzilla.opendarwin.org/show_bug.cgi?id=9574
      
              Pass the starting line number and error message to the debugger.
      
              * kjs/debugger.cpp:
              (Debugger::sourceParsed):
              * kjs/debugger.h:
              * kjs/function.cpp:
              (KJS::GlobalFuncImp::callAsFunction):
              * kjs/function_object.cpp:
              (FunctionObjectImp::construct):
              * kjs/interpreter.cpp:
              (KJS::Interpreter::evaluate):
      
      WebCore:
      
              Reviewed by Darin.
      
              Bug 9574: Drosera should show inline scripts within the original HTML
              http://bugzilla.opendarwin.org/show_bug.cgi?id=9574
      
              * Pass the starting line number and error message to the debugger.
              * Call parsedSource even if there was a script parse error so the
                debugger can show the parse error.
              * Pass NSURL objects to the ObjC delegate for the script URLs.
      
              * bridge/mac/WebCoreScriptDebugger.h:
              * bridge/mac/WebCoreScriptDebugger.mm:
              (toNSURL):
              (WebCoreScriptDebuggerImp::sourceParsed):
      
      WebKit:
      
              Reviewed by Darin.
      
              Bug 9574: Drosera should show inline scripts within the original HTML
              http://bugzilla.opendarwin.org/show_bug.cgi?id=9574
      
              * Adds a new version of the didParseSource delegate callback with base line number.
              * Adds a new delegate callback for when a script fails to parse.
              * These new callbacks use NSURLs for the url parameter.
              * Adds a new script listener callback to notify when the main resource loads.
              * Adds a WebScriptErrorDomian and other keys for use with NSError.
      
              * DefaultDelegates/WebDefaultScriptDebugDelegate.m:
              (-[WebDefaultScriptDebugDelegate webView:didParseSource:baseLineNumber:fromURL:sourceId:forWebFrame:]):
              (-[WebDefaultScriptDebugDelegate webView:failedToParseSource:baseLineNumber:fromURL:withError:forWebFrame:]):
              * DefaultDelegates/WebScriptDebugServer.h:
              * DefaultDelegates/WebScriptDebugServer.m:
              (-[WebScriptDebugServer webView:didLoadMainResourceForDataSource:]):
              (-[WebScriptDebugServer webView:didParseSource:baseLineNumber:fromURL:sourceId:forWebFrame:]):
              (-[WebScriptDebugServer webView:failedToParseSource:baseLineNumber:fromURL:withError:forWebFrame:]):
              * DefaultDelegates/WebScriptDebugServerPrivate.h:
              * WebKit.exp:
              * WebView/WebDataSource.m:
              (-[WebDataSource _setPrimaryLoadComplete:]):
              * WebView/WebScriptDebugDelegate.h:
              * WebView/WebScriptDebugDelegate.m:
              (-[WebScriptCallFrame parsedSource:fromURL:sourceId:startLine:errorLine:errorMessage:]):
      
      WebKitTools:
      
              Reviewed by Darin.
      
              Bug 9574: Drosera should show inline scripts within the original HTML
              http://bugzilla.opendarwin.org/show_bug.cgi?id=9574
      
              Refactor the JavaScript code to have a distinction between files
              and scripts. Show the script in the context of the HTML file if
              it's URL is the same as the frame's main resource. At the time of
              the disParseScript callback the main resource might not be completely
              loaded, but Drosera needs to show whatever we have at the time. Once
              the main resource is finished, update the file source and reload the file.
      
              * Drosera/DebuggerDocument.m:
              (-[DebuggerDocument pause]):
              (-[DebuggerDocument webView:didLoadMainResourceForDataSource:]):
              (-[DebuggerDocument webView:didParseSource:baseLineNumber:fromURL:sourceId:forWebFrame:]):
              (-[DebuggerDocument webView:failedToParseSource:baseLineNumber:fromURL:withError:forWebFrame:]):
              * Drosera/debugger.css:
              * Drosera/debugger.js:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@15026 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6458fe59
  6. 24 Jun, 2006 3 commits
    • ap's avatar
      Rubber-stamped by Eric. · fe38bd3e
      ap authored
              Add a -h (do not follow symlinks) option to ln in derived sources build script (without it,
              a symlink was created inside the source directory on second build).
      
      JavaScriptCore:
              * JavaScriptCore.xcodeproj/project.pbxproj:
      
      WebCore:
              * WebCore.xcodeproj/project.pbxproj:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@15019 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      fe38bd3e
    • ddkilzer's avatar
      JavaScriptCore: · 577f0491
      ddkilzer authored
              Reviewed by Timothy.
      
              * Info.plist: Fixed copyright to include 2003-2006.
      
      JavaScriptGlue:
      
              Reviewed by Timothy.
      
              * Info.plist: Fixed copyright to include 2003-2006.
      
      WebCore:
      
              Reviewed by Timothy.
      
              * Info.plist: Fixed copyright to include 2003-2006.
              * manual-tests/NPN_Invoke/Info.plist: Added copyright statement.
      
      WebKit:
      
              Reviewed by Timothy.
      
              * Info.plist: Fixed copyright to include 2003-2006.
      
      WebKitTools:
      
              Reviewed by Timothy.
      
              * DrawTest/Info.plist: Added copyright statement.
              * Drosera/Info.plist: Ditto.
              * DumpRenderTree/TestNetscapePlugIn.subproj/Info.plist: Ditto.
              * WebKitLauncher/Info.plist: Ditto.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@15017 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      577f0491
    • ap's avatar
      Reviewed by Darin. · c6c9aed0
      ap authored
              - http://bugzilla.opendarwin.org/show_bug.cgi?id=9418
              WebKit will not build when Space exists in path
      
              Enclose search paths in quotes; create symlinks to avoid passing paths with spaces to make.
      
              * JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj:
              * WebCore/WebCore.xcodeproj/project.pbxproj:
              * WebKit/WebKit.xcodeproj/project.pbxproj:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@15005 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c6c9aed0
  7. 23 Jun, 2006 3 commits
  8. 22 Jun, 2006 3 commits
  9. 21 Jun, 2006 3 commits
    • thatcher's avatar
      Switching to Stabs debugging format for Production builds. · ae53c839
      thatcher authored
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@14956 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ae53c839
    • ggaren's avatar
      Fixed release build, fixed accidental infinite recursion due to · cfe244d2
      ggaren authored
              last minute global replace gone awry.
              
              * API/APICast.h:
              (toRef):
              * API/testapi.c:
              (assertEqualsAsBoolean):
              (assertEqualsAsNumber):
              (assertEqualsAsUTF8String):
              (assertEqualsAsCharactersPtr):
              * JavaScriptCore.xcodeproj/project.pbxproj:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@14954 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      cfe244d2
    • ggaren's avatar
      JavaScriptCore: · 2593cdc4
      ggaren authored
              Reviewed by Anders.
              
              - First cut at C API to JavaScript. Includes a unit test, 'testapi.c', 
              and the outline of a test app, 'minidom.c'.
              
              Includes one change to JSC internals: Rename propList to getPropertyList and have it
              take its target property list by reference so that subclasses can
              add properties to the list before calling through to their superclasses.
              
              Also, I just ran prepare-ChangeLog in about 10 seconds, and I would like
              to give a shout-out to that.
              
              * API/APICast.h: Added.
              (toJS):
              (toRef):
              * API/JSBase.h: Added.
              * API/JSCallbackObject.cpp: Added.
              (KJS::):
              (KJS::JSCallbackObject::JSCallbackObject):
              (KJS::JSCallbackObject::~JSCallbackObject):
              (KJS::JSCallbackObject::className):
              (KJS::JSCallbackObject::getOwnPropertySlot):
              (KJS::JSCallbackObject::put):
              (KJS::JSCallbackObject::deleteProperty):
              (KJS::JSCallbackObject::implementsConstruct):
              (KJS::JSCallbackObject::construct):
              (KJS::JSCallbackObject::implementsCall):
              (KJS::JSCallbackObject::callAsFunction):
              (KJS::JSCallbackObject::getPropertyList):
              (KJS::JSCallbackObject::toBoolean):
              (KJS::JSCallbackObject::toNumber):
              (KJS::JSCallbackObject::toString):
              (KJS::JSCallbackObject::setPrivate):
              (KJS::JSCallbackObject::getPrivate):
              (KJS::JSCallbackObject::cachedValueGetter):
              (KJS::JSCallbackObject::callbackGetter):
              * API/JSCallbackObject.h: Added.
              (KJS::JSCallbackObject::classInfo):
              * API/JSCharBufferRef.cpp: Added.
              (JSStringMake):
              (JSCharBufferCreate):
              (JSCharBufferCreateUTF8):
              (JSCharBufferRetain):
              (JSCharBufferRelease):
              (JSValueCopyStringValue):
              (JSCharBufferGetLength):
              (JSCharBufferGetCharactersPtr):
              (JSCharBufferGetCharacters):
              (JSCharBufferGetMaxLengthUTF8):
              (JSCharBufferGetCharactersUTF8):
              (JSCharBufferIsEqual):
              (JSCharBufferIsEqualUTF8):
              (JSCharBufferCreateWithCFString):
              (CFStringCreateWithJSCharBuffer):
              * API/JSCharBufferRef.h: Added.
              * API/JSContextRef.cpp: Added.
              (JSContextCreate):
              (JSContextDestroy):
              (JSContextGetGlobalObject):
              (JSEvaluate):
              (JSCheckSyntax):
              (JSContextHasException):
              (JSContextGetException):
              (JSContextClearException):
              (JSContextSetException):
              * API/JSContextRef.h: Added.
              * API/JSObjectRef.cpp: Added.
              (JSValueToObject):
              (JSObjectMake):
              (JSFunctionMake):
              (JSObjectGetDescription):
              (JSObjectGetPrototype):
              (JSObjectSetPrototype):
              (JSObjectHasProperty):
              (JSObjectGetProperty):
              (JSObjectSetProperty):
              (JSObjectDeleteProperty):
              (JSObjectGetPrivate):
              (JSObjectSetPrivate):
              (JSObjectIsFunction):
              (JSObjectCallAsFunction):
              (JSObjectIsConstructor):
              (JSObjectCallAsConstructor):
              (__JSPropertyListEnumerator::__JSPropertyListEnumerator):
              (JSObjectCreatePropertyEnumerator):
              (JSPropertyEnumeratorGetNext):
              (JSPropertyEnumeratorRetain):
              (JSPropertyEnumeratorRelease):
              (JSPropertyListAdd):
              * API/JSObjectRef.h: Added.
              * API/JSValueRef.cpp: Added.
              (JSValueGetType):
              (JSValueIsUndefined):
              (JSValueIsNull):
              (JSValueIsBoolean):
              (JSValueIsNumber):
              (JSValueIsString):
              (JSValueIsObject):
              (JSValueIsEqual):
              (JSValueIsStrictEqual):
              (JSUndefinedMake):
              (JSNullMake):
              (JSBooleanMake):
              (JSNumberMake):
              (JSValueToBoolean):
              (JSValueToNumber):
              (JSGCProtect):
              (JSGCUnprotect):
              (JSGCCollect):
              * API/JSValueRef.h: Added.
              * API/JavaScriptCore.h: Added.
              * API/minidom.c: Added.
              (main):
              * API/minidom.html: Added.
              * API/minidom.js: Added.
              * API/testapi.c: Added.
              (assertEqualsAsBoolean):
              (assertEqualsAsNumber):
              (assertEqualsAsUTF8String):
              (assertEqualsAsCharactersPtr):
              (assertEqualsAsCharacters):
              (MyObject_initialize):
              (MyObject_copyDescription):
              (MyObject_hasProperty):
              (MyObject_getProperty):
              (MyObject_setProperty):
              (MyObject_deleteProperty):
              (MyObject_getPropertyList):
              (MyObject_callAsFunction):
              (MyObject_callAsConstructor):
              (MyObject_convertToType):
              (MyObject_finalize):
              (print_callAsFunction):
              (main):
              (createStringWithContentsOfFile):
              * API/testapi.js: Added.
              * ChangeLog:
              * JavaScriptCore.xcodeproj/project.pbxproj:
              * bindings/npruntime_impl.h:
              * kjs/array_instance.h:
              * kjs/array_object.cpp:
              (ArrayInstance::getPropertyList):
              * kjs/interpreter.cpp:
              (KJS::Interpreter::evaluate):
              * kjs/nodes.cpp:
              (ForInNode::execute):
              * kjs/object.cpp:
              (KJS::JSObject::put):
              (KJS::JSObject::canPut):
              (KJS::JSObject::deleteProperty):
              (KJS::JSObject::propertyIsEnumerable):
              (KJS::JSObject::getPropertyAttributes):
              (KJS::JSObject::getPropertyList):
              * kjs/object.h:
              * kjs/property_map.cpp:
              (KJS::PropertyMap::get):
              * kjs/property_map.h:
              * kjs/scope_chain.cpp:
              (KJS::ScopeChain::print):
              * kjs/string_object.cpp:
              (StringInstance::getPropertyList):
              * kjs/string_object.h:
              * kjs/ustring.h:
              (KJS::UString::Rep::ref):
      
      JavaScriptGlue:
      
              Reviewed by Anders.
              
              - Required for JS API: Rename propList to getPropertyList and have it
              take its target property list by reference so that subclasses can
              add properties to the list before calling through to their superclasses.
      
              * JSUtils.cpp:
              (KJSValueToCFTypeInternal):
              * JSValueWrapper.cpp:
              (JSValueWrapper::JSObjectCopyPropertyNames):
              * UserObjectImp.cpp:
              (UserObjectImp::getPropertyList):
              * UserObjectImp.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@14951 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2593cdc4
  10. 20 Jun, 2006 1 commit
    • thatcher's avatar
      Reviewed by Geoff. · e4d37b4d
      thatcher authored
              Make sure we clear the exception before returning so
              that future calls will not fail because of an earlier
              exception state. Assert on entry that the WebScriptObject
              is working with an ExecState that dose not have an exception. 
              Document that evaluateWebScript and callWebScriptMethod return
              WebUndefined when an exception is thrown.
      
              * bindings/objc/WebScriptObject.h:
              * bindings/objc/WebScriptObject.mm:
              (-[WebScriptObject callWebScriptMethod:withArguments:]):
              (-[WebScriptObject evaluateWebScript:]):
              (-[WebScriptObject setValue:forKey:]):
              (-[WebScriptObject valueForKey:]):
              (-[WebScriptObject removeWebScriptKey:]):
              (-[WebScriptObject webScriptValueAtIndex:]):
              (-[WebScriptObject setWebScriptValueAtIndex:value:]):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@14932 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e4d37b4d
  11. 19 Jun, 2006 1 commit
  12. 18 Jun, 2006 2 commits
    • andersca's avatar
      JavaScriptCore: · db812fdd
      andersca authored
      2006-06-18  Anders Carlsson  <acarlsson@apple.com>
      
              Reviewed by Geoff.
      
              * kjs/interpreter.cpp:
              (KJS::TimeoutChecker::pauseTimeoutCheck):
              Do nothing if the timeout check hasn't been started.
              
              (KJS::TimeoutChecker::resumeTimeoutCheck):
              Do nothing if the timeout check hasn't been started.
              Use the right signal handler when unblocking.
              
              (KJS::Interpreter::handleTimeout):
              pause/resume the timeout check around the call to
              shouldInterruptScript().
              
      WebCore:
      
      2006-06-17  Anders Carlsson  <acarlsson@apple.com>
      
              Reviewed by Geoff.
      
              * bindings/js/kjs_binding.cpp:
              (KJS::ScriptInterpreter::ScriptInterpreter):
              Set the default script timeout.
              
              (KJS::ScriptInterpreter::shouldInterruptScript):
              New function which asks the frame if the script should be interrupted.
              
              * bindings/js/kjs_binding.h:
                      
              * bindings/js/kjs_events.cpp:
              (KJS::JSAbstractEventListener::handleEvent):
              * bindings/js/kjs_proxy.cpp:
              (WebCore::KJSProxy::evaluate):
              Add calls to startTimeoutCheck/stopTimeoutCheck
              
              * bindings/js/kjs_window.cpp:
              (KJS::WindowFunc::callAsFunction):
              Add calls to pauseTimeoutCheck/unpauseTimeoutCheck 
              
              (KJS::ScheduledAction::execute):
              Add calls to startTimeoutCheck/stopTimeoutCheck
              
              * bridge/mac/FrameMac.h:
              * bridge/mac/FrameMac.mm:
              (WebCore::FrameMac::shouldInterruptJavaScript):
              New function which asks the bridge if the script should be interrupted.
              
              * bridge/mac/WebCoreFrameBridge.h:
              * page/Frame.h:
              Add function declarations.
              
      WebKit:
      
      2006-06-18  Anders Carlsson  <acarlsson@apple.com>
      
              Reviewed by Geoff.
      
              * WebCoreSupport/WebFrameBridge.m:
              (-[WebFrameBridge shouldInterruptJavaScript]):
              Ask the UI delegate if the script should be interrupted.
              
              * WebView/WebUIDelegatePrivate.h:
              Declare webViewShouldInterruptJavaScript: delegate method
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@14904 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      db812fdd
    • mjs's avatar
      Reviewed by Maciej · f01b4610
      mjs authored
              http://bugzilla.opendarwin.org/show_bug.cgi?id=9491
              Windows build breaks in interpreter.cpp 
      
              * kjs/interpreter.cpp
              (KJS::TimeoutChecker::pauseTimeoutCheck):
              (KJS::TimeoutChecker::resumeTimeoutCheck):
              Make sure to only assert equality with s_executingInterpreter when it 
              is being used (i.e. when HAVE(SYS_TIME_H) == true)
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@14902 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f01b4610
  13. 17 Jun, 2006 2 commits
  14. 16 Jun, 2006 1 commit
    • andersca's avatar
      2006-06-17 Anders Carlsson <acarlsson@apple.com> · bfa44ad2
      andersca authored
              Reviewed by Maciej and Geoff.
      
              http://bugzilla.opendarwin.org/show_bug.cgi?id=7080
              Provide some way to stop a JavaScript infinite loop
              
              * kjs/completion.h:
              (KJS::):
              Add Interrupted completion type.
              
              * kjs/function.cpp:
              (KJS::FunctionImp::callAsFunction):
              (KJS::GlobalFuncImp::callAsFunction):
              Only set the exception on the new ExecState if the current one has had one.
              
              * kjs/interpreter.cpp:
              (KJS::TimeoutChecker::startTimeoutCheck):
              (KJS::TimeoutChecker::stopTimeoutCheck):
              (KJS::TimeoutChecker::alarmHandler):
              (KJS::TimeoutChecker::pauseTimeoutCheck):
              (KJS::TimeoutChecker::resumeTimeoutCheck):
              New TimeoutChecker class which handles setting Interpreter::m_timedOut flag after a given
              period of time. This currently only works on Unix platforms where setitimer and signals are used.
              
              (KJS::Interpreter::Interpreter):
              Initialize new member variables.
              
              (KJS::Interpreter::~Interpreter):
              Destroy the timeout checker.
              
              (KJS::Interpreter::startTimeoutCheck):
              (KJS::Interpreter::stopTimeoutCheck):
              (KJS::Interpreter::pauseTimeoutCheck):
              (KJS::Interpreter::resumeTimeoutCheck):
              Call the timeout checker.
              
              (KJS::Interpreter::handleTimeout):
              Called on timeout. Resets the m_timedOut flag and calls shouldInterruptScript.
              
              * kjs/interpreter.h:
              (KJS::Interpreter::setTimeoutTime):
              New function for setting the timeout time.
              
              (KJS::Interpreter::shouldInterruptScript):
              New function. The idea is that this should be overridden by subclasses in order to for example
              pop up a dialog asking the user if the script should be interrupted.
              
              (KJS::Interpreter::checkTimeout):
              New function which checks the m_timedOut flag and calls handleTimeout if it's set.
              
              * kjs/nodes.cpp:
              (DoWhileNode::execute):
              (WhileNode::execute):
              (ForNode::execute):
              Call Interpreter::checkTimeout after each iteration of the loop.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@14893 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      bfa44ad2
  15. 15 Jun, 2006 1 commit
    • thatcher's avatar
      JavaScriptCore: · dfee4748
      thatcher authored
              Reviewed by Geoff and Darin.
              
              Prefer the DWARF debugging symbols format for use in Xcode 2.3.
      
              * JavaScriptCore.xcodeproj/project.pbxproj:
      
      JavaScriptGlue:
      
              Reviewed by Geoff and Darin.
              
              Prefer the DWARF debugging symbols format for use in Xcode 2.3.
      
              * JavaScriptGlue.xcodeproj/project.pbxproj:
      
      WebCore:
      
              Reviewed by Geoff and Darin.
              
              Prefer the DWARF debugging symbols format for use in Xcode 2.3.
      
              * WebCore.xcodeproj/project.pbxproj:
      
      WebKit:
      
              Reviewed by Geoff and Darin.
              
              Prefer the DWARF debugging symbols format for use in Xcode 2.3.
      
              * WebKit.xcodeproj/project.pbxproj:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@14883 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      dfee4748
  16. 14 Jun, 2006 1 commit
  17. 13 Jun, 2006 2 commits
    • ggaren's avatar
      build fix · 858cab27
      ggaren authored
              
              * bindings/objc/WebScriptObject.mm:
              (+[WebScriptObject throwException:]): Restore assignment I accidentally
              deleted in previous commit
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@14836 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      858cab27
    • ggaren's avatar
      JavaScriptCore: · 01b2e77a
      ggaren authored
              Reviewed by TimO, Maciej.
              
              - Merged InterpreterImp code into Interpreter, which implements
              all interpreter functionality now. This is part of my continuing quest
              to create an external notion of JS "execution context" that is unified and simple --
              something to replace the mix of Context, ContextImp, ExecState, Interpreter,
              InterpreterImp, and JSRun.
              
              All tests pass. Leaks test has not regressed from its baseline ~207 leaks
              with ~3460 leaked nodes.
      
              * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
              * JavaScriptCore.xcodeproj/project.pbxproj:
              * bindings/NP_jsobject.cpp:
              * bindings/objc/WebScriptObject.mm:
              (+[WebScriptObject throwException:]):
              * bindings/runtime_root.cpp:
              * bindings/runtime_root.h:
              * kjs/Context.cpp:
              (KJS::Context::Context):
              * kjs/ExecState.cpp: Added.
              (KJS::ExecState::lexicalInterpreter):
              * kjs/ExecState.h: Added.
              (KJS::ExecState::dynamicInterpreter):
              * kjs/SavedBuiltins.h: Added.
              * kjs/bool_object.cpp:
              (BooleanPrototype::BooleanPrototype):
              * kjs/collector.cpp:
              (KJS::Collector::collect):
              (KJS::Collector::numInterpreters):
              * kjs/context.h:
              * kjs/debugger.cpp:
              (Debugger::attach):
              (Debugger::detach):
              * kjs/function.cpp:
              (KJS::FunctionImp::callAsFunction):
              (KJS::GlobalFuncImp::callAsFunction):
              * kjs/function_object.cpp:
              (FunctionObjectImp::construct):
              * kjs/internal.cpp:
              * kjs/internal.h:
              * kjs/interpreter.cpp:
              (KJS::interpreterMap):
              (KJS::Interpreter::Interpreter):
              (KJS::Interpreter::init):
              (KJS::Interpreter::~Interpreter):
              (KJS::Interpreter::globalObject):
              (KJS::Interpreter::initGlobalObject):
              (KJS::Interpreter::globalExec):
              (KJS::Interpreter::checkSyntax):
              (KJS::Interpreter::evaluate):
              (KJS::Interpreter::builtinObject):
              (KJS::Interpreter::builtinFunction):
              (KJS::Interpreter::builtinArray):
              (KJS::Interpreter::builtinBoolean):
              (KJS::Interpreter::builtinString):
              (KJS::Interpreter::builtinNumber):
              (KJS::Interpreter::builtinDate):
              (KJS::Interpreter::builtinRegExp):
              (KJS::Interpreter::builtinError):
              (KJS::Interpreter::builtinObjectPrototype):
              (KJS::Interpreter::builtinFunctionPrototype):
              (KJS::Interpreter::builtinArrayPrototype):
              (KJS::Interpreter::builtinBooleanPrototype):
              (KJS::Interpreter::builtinStringPrototype):
              (KJS::Interpreter::builtinNumberPrototype):
              (KJS::Interpreter::builtinDatePrototype):
              (KJS::Interpreter::builtinRegExpPrototype):
              (KJS::Interpreter::builtinErrorPrototype):
              (KJS::Interpreter::builtinEvalError):
              (KJS::Interpreter::builtinRangeError):
              (KJS::Interpreter::builtinReferenceError):
              (KJS::Interpreter::builtinSyntaxError):
              (KJS::Interpreter::builtinTypeError):
              (KJS::Interpreter::builtinURIError):
              (KJS::Interpreter::builtinEvalErrorPrototype):
              (KJS::Interpreter::builtinRangeErrorPrototype):
              (KJS::Interpreter::builtinReferenceErrorPrototype):
              (KJS::Interpreter::builtinSyntaxErrorPrototype):
              (KJS::Interpreter::builtinTypeErrorPrototype):
              (KJS::Interpreter::builtinURIErrorPrototype):
              (KJS::Interpreter::mark):
              (KJS::Interpreter::interpreterWithGlobalObject):
              (KJS::Interpreter::saveBuiltins):
              (KJS::Interpreter::restoreBuiltins):
              * kjs/interpreter.h:
              (KJS::Interpreter::setCompatMode):
              (KJS::Interpreter::compatMode):
              (KJS::Interpreter::firstInterpreter):
              (KJS::Interpreter::nextInterpreter):
              (KJS::Interpreter::prevInterpreter):
              (KJS::Interpreter::debugger):
              (KJS::Interpreter::setDebugger):
              (KJS::Interpreter::setContext):
              (KJS::Interpreter::context):
              * kjs/nodes.cpp:
              (StatementNode::hitStatement):
              (RegExpNode::evaluate):
              * kjs/protect.h:
      
      JavaScriptGlue:
      
              Reviewed by TimO, Maciej.
              
              - JSGlue part of merging InterpreterImp into Interpreter.
              
              Since there's now a kjs forwarding header, I moved all forwarding
              headers into a "ForwardingHeaders" directory, like in WebCore.
      
              * ForwardingHeaders: Added.
              * ForwardingHeaders/kjs: Added.
              * ForwardingHeaders/kjs/ExecState.h: Added.
              * ForwardingHeaders/wtf: Added.
              * JavaScriptGlue.xcodeproj/project.pbxproj:
              * config.h:
              * wtf: Removed.
              * wtf/AlwaysInline.h: Removed.
              * wtf/Assertions.h: Removed.
              * wtf/FastMalloc.h: Removed.
              * wtf/Forward.h: Removed.
              * wtf/HashCountedSet.h: Removed.
              * wtf/HashSet.h: Removed.
              * wtf/Noncopyable.h: Removed.
              * wtf/OwnArrayPtr.h: Removed.
              * wtf/OwnPtr.h: Removed.
              * wtf/PassRefPtr.h: Removed.
              * wtf/Platform.h: Removed.
              * wtf/RefPtr.h: Removed.
              * wtf/Vector.h: Removed.
      
      WebCore:
      
              Reviewed by TimO, Maciej.
      
              - WebCore part of merging InterpreterImp into Interpreter. No test
              because there's no behavior change.
              
              A substantive change here is that ScriptInterpreter::mark must now chain to
              Interpreter::mark, since Interpreter needs to mark the things that
              InterpreterImp used to mark.
              
              * WebCore.xcodeproj/project.pbxproj:
              * bindings/js/kjs_binding.cpp:
              * bindings/js/kjs_window.cpp:
              (KJS::Window::put):
              * bridge/mac/WebCoreFrameBridge.mm:
              * bridge/mac/WebCoreScriptDebugger.mm:
              (-[WebCoreScriptCallFrame evaluateWebScript:]):
              * kwq/KWQPageState.mm:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@14834 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      01b2e77a
  18. 12 Jun, 2006 1 commit
    • ggaren's avatar
      Reviewed by Maciej. · 7dd2504d
      ggaren authored
              
              - Have *.lut.h files #include lookup.h to eliminate surprising header
              include order dependency.
      
              * DerivedSources.make:
              * kjs/array_object.cpp:
              * kjs/date_object.cpp:
              * kjs/date_object.h:
              (KJS::DateProtoFunc::):
              * kjs/lexer.cpp:
              * kjs/math_object.cpp:
              * kjs/number_object.cpp:
              * kjs/regexp_object.cpp:
              * kjs/string_object.cpp:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@14821 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7dd2504d
  19. 10 Jun, 2006 1 commit
    • ggaren's avatar
      JavaScriptCore: · 1ec99535
      ggaren authored
              - http://bugzilla.opendarwin.org/show_bug.cgi?id=8515
              Linux porting compile bug
              
              Fix by Mike Emmel, Reviewed by Darin.
      
              * JavaScriptCoreSources.bkl:
              * jscore.bkl:
              * wtf/Platform.h:
      
      WebCore:
      
              - http://bugzilla.opendarwin.org/show_bug.cgi?id=8515
              Linux porting compile bug
              
              Fix by Mike Emmel, Reviewed by Darin.
      
              * Projects/gdk/webcore-gdk.bkl:
              * WebCoreSources.bkl:
              * css/maketokenizer:
              * html/HTMLCanvasElement.cpp:
              * html/HTMLImageElement.h:
              * icon/IconDatabase.cpp:
              * make-generated-sources.sh:
              * page/Frame.h:
              * page/FramePrivate.h:
              * platform/Cursor.h:
              * platform/FontData.h:
              (WebCore::FontData::getGlyphIndex):
              * platform/GlyphBuffer.h:
              (WebCore::GlyphBuffer::glyphAt):
              (WebCore::GlyphBuffer::advanceAt):
              (WebCore::GlyphBuffer::add):
              * platform/GraphicsContext.h:
              * platform/PlatformKeyboardEvent.h:
              * platform/PlatformMouseEvent.h:
              * platform/PlatformWheelEvent.h:
              * platform/ScrollView.h:
              * platform/TransferJob.h:
              (WebCore::TransferJob::getInternal):
              * platform/TransferJobInternal.h:
              (WebCore::TransferJobInternal::TransferJobInternal):
              * platform/Widget.h:
              * platform/cairo/GraphicsContextCairo.cpp:
              (WebCore::GraphicsContext::GraphicsContext):
              (WebCore::GraphicsContext::roundToDevicePixels):
              * webcore-base.bkl:
              * xpath/impl/XPathValue.cpp:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@14807 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1ec99535
  20. 09 Jun, 2006 2 commits
    • ggaren's avatar
      Build fix -- I think :). · 553fa5fb
      ggaren authored
              * JavaScriptCore.xcodeproj/project.pbxproj:
              * kjs/context.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@14801 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      553fa5fb
    • ggaren's avatar
      Reviewed by Eric (yay!). · fd7c1022
      ggaren authored
              
              - Removed Context wrapper for ContextImp, renamed ContextImp to Context,
              split Context into its own file -- Context.cpp -- renamed _var to m_var,
              change ' *' to '* '.
      
              * JavaScriptCore.xcodeproj/project.pbxproj:
              * kjs/Context.cpp: Added.
              (KJS::Context::Context):
              (KJS::Context::~Context):
              (KJS::Context::mark):
              * kjs/context.h:
              (KJS::Context::scopeChain):
              (KJS::Context::variableObject):
              (KJS::Context::setVariableObject):
              (KJS::Context::thisValue):
              (KJS::Context::callingContext):
              (KJS::Context::activationObject):
              (KJS::Context::currentBody):
              (KJS::Context::function):
              (KJS::Context::arguments):
              (KJS::Context::pushScope):
              (KJS::Context::seenLabels):
              * kjs/function.cpp:
              (KJS::FunctionImp::callAsFunction):
              (KJS::FunctionImp::processParameters):
              (KJS::FunctionImp::argumentsGetter):
              (KJS::GlobalFuncImp::callAsFunction):
              * kjs/internal.cpp:
              (KJS::InterpreterImp::evaluate):
              * kjs/internal.h:
              (KJS::InterpreterImp::setContext):
              (KJS::InterpreterImp::context):
              * kjs/interpreter.cpp:
              * kjs/interpreter.h:
              (KJS::ExecState::context):
              (KJS::ExecState::ExecState):
              * kjs/nodes.cpp:
              (currentSourceId):
              (currentSourceURL):
              (ThisNode::evaluate):
              (ResolveNode::evaluate):
              (FunctionCallResolveNode::evaluate):
              (PostfixResolveNode::evaluate):
              (DeleteResolveNode::evaluate):
              (TypeOfResolveNode::evaluate):
              (PrefixResolveNode::evaluate):
              (AssignResolveNode::evaluate):
              (VarDeclNode::evaluate):
              (VarDeclNode::processVarDecls):
              (DoWhileNode::execute):
              (WhileNode::execute):
              (ForNode::execute):
              (ForInNode::execute):
              (ContinueNode::execute):
              (BreakNode::execute):
              (ReturnNode::execute):
              (WithNode::execute):
              (SwitchNode::execute):
              (LabelNode::execute):
              (TryNode::execute):
              (FuncDeclNode::processFuncDecl):
              (FuncExprNode::evaluate):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@14799 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      fd7c1022
  21. 07 Jun, 2006 1 commit
  22. 05 Jun, 2006 2 commits