1. 14 Apr, 2009 40 commits
    • aroben@apple.com's avatar
      Skip a sometimes-failing test on Windows · 59052035
      aroben@apple.com authored
              Rubber-stamped by Simon Fraser.
      
              * platform/win/Skipped: Added
              transitions/zero-duration-with-non-zero-delay-end.html.
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42517 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      59052035
    • hausmann@webkit.org's avatar
      2009-04-14 Benjamin C Meyer <benjamin.meyer@torchmobile.com> · d9c1df13
      hausmann@webkit.org authored
              Reviewed by George Staikos.
      
              https://bugs.webkit.org/show_bug.cgi?id=25099
      
              When creating a QNetworkRequest make sure to populate the
              CacheLoadControlAttribute with the value set by the ResourceRequest::cachePolicy() so that the cache will be used as WebKit expects.
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42516 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      d9c1df13
    • hausmann@webkit.org's avatar
      2009-04-14 Laszlo Gombos <laszlo.1.gombos@nokia.com> · 60a7dd35
      hausmann@webkit.org authored
              Reviewed by Simon Hausmann.
      
              https://bugs.webkit.org/show_bug.cgi?id=24841
      
              Fix linking against QtWebKit for Symbian and other platforms
              where the OS ABI distinguishes between an import or an export situation.
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42515 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      60a7dd35
    • adele@apple.com's avatar
      2009-04-14 Adele Peterson <adele@apple.com> · 2236aee8
      adele@apple.com authored
              Reviewed by Darin.
      
              Initialize WebKitSystemInterface in class methods that could get called before a WebView/WebFrame is set up.  This was causing Mail to crash on launch.
      
              * Misc/WebCache.mm: (+[WebCache initialize]):
              * WebView/WebView.mm: (+[WebView initialize]):
      
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42514 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      2236aee8
    • kevino@webkit.org's avatar
      Build fix. Move the DerivedSources.make calls into build-wxwebkit so that the... · 6c0f48f5
      kevino@webkit.org authored
      Build fix. Move the DerivedSources.make calls into build-wxwebkit so that the FEATURE_DEFINES are parsed properly.
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42513 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      6c0f48f5
    • timothy@apple.com's avatar
      Fix a world leak caused by opening the Web Inspector. This was · 4ad0b8cd
      timothy@apple.com authored
              a regression caused by the InspectorController becoming refcounted.
      
              <rdar://problem/6782944>
      
              Reviewed by Darin Adler.
      
              * bindings/js/ScriptObject.cpp:
              (WebCore::ScriptGlobalObject::get): Renamed to better match the
              other functions.
              (WebCore::ScriptGlobalObject::remove): Added. Deletes the property.
              * bindings/js/ScriptObject.h:
              * inspector/InspectorController.cpp:
              (WebCore::InspectorController::~InspectorController): Do less work
              at destruction time since the object lifetime is tied to JS GC.
              Assert that inspectedPageDestroyed cleared everything needed.
              (WebCore::InspectorController::inspectedPageDestroyed): Do most
              of the work that ~InspectorController was doing.
              (WebCore::InspectorController::scriptObjectReady): Renamed getObject.
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42512 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      4ad0b8cd
    • dimich@chromium.org's avatar
      2009-04-14 Dmitry Titov <dimich@chromium.org> · e58949f0
      dimich@chromium.org authored
          Fixing ChangeLog.
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42511 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      e58949f0
    • dimich@chromium.org's avatar
      2009-04-14 Antony Sargent <asargent@chromium.org> · 85db5201
      dimich@chromium.org authored
              Reviewed by Dimitri Glazkov.
      
              This is some cleanup motivated by the crash in http://crbug.com/9775 , which
              happens because of calling window.open inside a window.onload handler.
      
              These changes are just part of the fix, along with some asserts to help prevent
              breakage on future changes.
      
              https://bugs.webkit.org/show_bug.cgi?id=25132
      
              * bindings/v8/V8EventListenerList.cpp:
              (WebCore::V8EventListenerList::add):
              (WebCore::V8EventListenerList::remove):
              (WebCore::V8EventListenerList::clear):
              * bindings/v8/V8EventListenerList.h:
              (WebCore::V8EventListenerList::size):
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42510 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      85db5201
    • dimich@chromium.org's avatar
      2009-04-14 Evan Martin <evan@chromium.org> · a75b6a6c
      dimich@chromium.org authored
              Reviewed by Darin Adler.
      
              Fix a race that can occur between flex and the perl script that parses
              its output.
      
              * css/maketokenizer: Consume all input.
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42509 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      a75b6a6c
    • dimich@chromium.org's avatar
      2009-04-14 Rohit Rao <rohitrao@google.com> · 6c1f58f2
      dimich@chromium.org authored
              Reviewed by Dan Bernstein.
      
              https://bugs.webkit.org/show_bug.cgi?id=25184
              Do not change the text color for selected text in Mac Chromium.
      
              * rendering/RenderThemeChromiumMac.h:
              (WebCore::RenderThemeChromiumMac::supportsSelectionForegroundColors):
              Now returns false, matching the behavior of Safari on Mac.
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42508 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      6c1f58f2
    • justin.garcia@apple.com's avatar
      2009-04-13 Justin Garcia <justin.garcia@apple.com> · b87b1c11
      justin.garcia@apple.com authored
              Reviewed by Eric Seidel.
      
              https://bugs.webkit.org/show_bug.cgi?id=25172
              Extra partial layout during the first keypress in an empty block
              
              Determining if a placeholder needs to be removed requires the creation of a VisiblePosition 
              which was triggering layout before we were finished modifying the DOM for the insert operation.
              
              Find out if we need to remove a placeholder near the start of the operation, and if we do remember 
              where it's located.  Then, later, remove it along with all of the other DOM operations we perform.
              
              Renamed lineBreakExistsAtPosition to lineBreakExistsAtVisiblePosition and added a lineBreakExistsAtPosition
              that takes in a Position.  In InsertTextCommand, we can use the latter, since we normalize manually.
              
              removePlaceholderAt now takes in a Position that it assumes has already been checked for a placeholder.
              
              No test added as this only effects performance.
      
              * editing/BreakBlockquoteCommand.cpp:
              (WebCore::BreakBlockquoteCommand::doApply):
              * editing/CompositeEditCommand.cpp:
              (WebCore::CompositeEditCommand::removePlaceholderAt):
              (WebCore::CompositeEditCommand::moveParagraphs):
              (WebCore::CompositeEditCommand::breakOutOfEmptyMailBlockquotedParagraph):
              (WebCore::CompositeEditCommand::positionAvoidingSpecialElementBoundary):
              * editing/CompositeEditCommand.h:
              * editing/DeleteSelectionCommand.cpp:
              (WebCore::DeleteSelectionCommand::calculateTypingStyleAfterDelete):
              (WebCore::DeleteSelectionCommand::doApply):
              * editing/FormatBlockCommand.cpp:
              (WebCore::FormatBlockCommand::doApply):
              * editing/InsertLineBreakCommand.cpp:
              (WebCore::InsertLineBreakCommand::doApply):
              * editing/InsertParagraphSeparatorCommand.cpp:
              (WebCore::InsertParagraphSeparatorCommand::doApply):
              * editing/InsertTextCommand.cpp:
              (WebCore::InsertTextCommand::input):
              * editing/htmlediting.cpp:
              (WebCore::lineBreakExistsAtVisiblePosition):
              (WebCore::lineBreakExistsAtPosition):
              * editing/htmlediting.h:
      
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42507 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      b87b1c11
    • aroben@apple.com's avatar
      Remove support for profile-guided optimization on Windows · 6929755d
      aroben@apple.com authored
      JavaScriptCore:
      
              Remove support for profile-guided optimization on Windows
      
              Rubber-stamped by Steve Falkenburg.
      
              * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj: Removed
              the Release_PGO configuration. Also let VS re-order the source files
              list.
      
      WebCore:
      
              Remove support for profile-guided optimization on Windows
      
              Rubber-stamped by Steve Falkenburg.
      
              * WebCore.vcproj/WebCore.vcproj: Removed the Release_PGO
              configuration.
      
      WebKit/win:
      
              Remove support for profile-guided optimization on Windows
      
              Rubber-stamped by Steve Falkenburg.
      
              * WebKit.vcproj/WebKit.vcproj: Removed the Release_PGOInstrument and
              Release_PGOOptimize configurations.
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42506 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      6929755d
    • xan@webkit.org's avatar
      2009-04-14 Xan Lopez <xlopez@igalia.com> · 36cf3cf1
      xan@webkit.org authored
              Unreviewed build fix.
      
              * GNUmakefile.am:
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42505 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      36cf3cf1
    • dimich@chromium.org's avatar
      2009-04-14 Dmitry Titov <dimich@chromium.org> · 6c22fc2d
      dimich@chromium.org authored
              Reviewed by Dimitri Glazkov.
      
              https://bugs.webkit.org/show_bug.cgi?id=25163
              Upstream fix for releasing v8 objects on worker thread termination in Chromium.
      
              * bindings/v8/V8DOMMap.cpp:
              (WebCore::domDataList): Now uses Vector instead of HashMap.
              (WebCore::domDataListMutex):
              (WebCore::ThreadSpecificDOMData::ThreadSpecificDOMData):  remove usage of currentThread();
              (WebCore::ThreadSpecificDOMData::~ThreadSpecificDOMData): ditto.
              (WebCore::NonMainThreadSpecificDOMData::~NonMainThreadSpecificDOMData): moved call to removeAllDOMObjectsInCurrentThread() to ~WorkerScriptController.
              (WebCore::handleWeakObjectInOwningThread):
              (WebCore::derefDelayedObjects):
              (WebCore::removeAllDOMObjectsInCurrentThread): not static anymore.
              * bindings/v8/V8DOMMap.h:
              * bindings/v8/WorkerContextExecutionProxy.cpp:
              (WebCore::WorkerContextExecutionProxy::dispose): removed code that avoided dual-dereference of WorkerContext.
              (WebCore::WorkerContextExecutionProxy::initContextIfNeeded): this ref() is countered in removeAllDOMObjectsInCurrentThread(), when the WorkerContext is removed from the v8 map.
              * bindings/v8/WorkerScriptController.cpp:
              (WebCore::WorkerScriptController::~WorkerScriptController):
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42504 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      6c22fc2d
    • aroben@apple.com's avatar
      Fix Bug 25183: Split up WebCore.vcproj's settings into vsprops files · 8115c578
      aroben@apple.com authored
              <https://bugs.webkit.org/show_bug.cgi?id=25183>
      
              WebCore.vcproj now uses a set of .vsprops files to store most of its
              settings.
      
              Reviewed by Darin Adler.
      
              * WebCore.vcproj/WebCore.vcproj: Moved settings from here into the new
              .vsprops files.
      
              * WebCore.vcproj/WebCoreCFNetwork.vsprops: Added. Contains settings
              for ports that build against CFNetwork.
              * WebCore.vcproj/WebCoreCG.vsprops: Added. Contains settings for ports
              that build against CoreGraphics.
              * WebCore.vcproj/WebCoreCURL.vsprops: Added. Contains settings for
              ports that build against libcurl.
              * WebCore.vcproj/WebCoreCairo.vsprops: Added. Contains settings for
              ports that build against Cairo.
              * WebCore.vcproj/WebCoreCommon.vsprops: Added. Contains settings
              shared by all ports.
              * WebCore.vcproj/WebCoreMediaQT.vsprops: Added. Contains settings for
              ports that use QTMovieWin to implement the MediaPlayerPrivate
              interface.
              * WebCore.vcproj/WebCorePthreads.vsprops: Added. Contains settings for
              ports that build against pthreads.
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42503 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      8115c578
    • ap@webkit.org's avatar
      Reviewed by Darin Adler. · 02a170bd
      ap@webkit.org authored
              http/tests/xmlhttprequest/basic-auth.html fails on Tiger.
      
              Turns out that NSURLCredentialPersistenceNone doesn't work on Tiger, so we have to use
              session persistence.
      
              * platform/network/mac/ResourceHandleMac.mm:
              (WebCore::ResourceHandle::didReceiveAuthenticationChallenge): Route the credential through
              receivedCredential(), ensuring that the Tiger-specific need to use session credentials
              is honored.
              (WebCore::ResourceHandle::receivedCredential): On Tiger, change PersistenceNone to
              PersistenceForSession, because the former doesn't work.
      
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42502 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      02a170bd
    • adele@apple.com's avatar
      2009-04-13 Adele Peterson <adele@apple.com> · 7548ac64
      adele@apple.com authored
              Reviewed by Darin Adler.
      
              Fix for <rdar://problem/6703873> Triple-click quoted line and type Return creates an extra quoted blank line
      
              Test: editing/inserting/6703873.html
      
              * editing/BreakBlockquoteCommand.cpp: (WebCore::BreakBlockquoteCommand::doApply):
              If the startNode's original parent is now empty, we can remove it.  Its already been cloned and copied with the startNode,
              so we only need to keep it around if it actually holds some original content, otherwise it will look like an extra empty 
              container in the document.
      
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42501 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      7548ac64
    • kov@webkit.org's avatar
      2009-04-14 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk> · 5f89b581
      kov@webkit.org authored
              Unreviewed. Update gtk-doc control and base sgml files for 1.1.5.
      
              * docs/webkitgtk-docs.sgml:
              * docs/webkitgtk-sections.txt:
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42500 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      5f89b581
    • xan@webkit.org's avatar
      2009-04-14 Xan Lopez <xlopez@igalia.com> · ee665ac4
      xan@webkit.org authored
              * NEWS: updated for 1.1.5 release.
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42499 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      ee665ac4
    • xan@webkit.org's avatar
      2009-04-14 Xan Lopez <xlopez@igalia.com> · a8dc6794
      xan@webkit.org authored
              Unreviewed version bump in preparation for 1.1.5 release.
      
              * configure.ac:
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42498 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      a8dc6794
    • xan@webkit.org's avatar
      2009-04-14 Xan Lopez <xlopez@igalia.com> · a56d1b12
      xan@webkit.org authored
              Reviewed by Holger Freyther.
      
              https://bugs.webkit.org/show_bug.cgi?id=21546
              [GTK] ATK accessibility enhancements
      
              Add a proper implementation of AtkText::get_text and
              AtkText::get_character_count, which takes into account non
              TextControl text. With this the 'Text' field in Accerciser's
              Interface Viewer is filled correctly.
      
              * page/gtk/AccessibilityObjectWrapperAtk.cpp:
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42497 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      a56d1b12
    • xan@webkit.org's avatar
      2009-04-14 Xan Lopez <xlopez@igalia.com> · 3f7b51ce
      xan@webkit.org authored
              Reviewed by Holger Freyther.
      
              https://bugs.webkit.org/show_bug.cgi?id=21546
              [GTK] ATK accessibility enhancements
      
              Remove some dead code and g_return_if_fail from static functions.
      
              * page/gtk/AccessibilityObjectWrapperAtk.cpp:
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42496 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      3f7b51ce
    • xan@webkit.org's avatar
      2009-04-14 Xan Lopez <xlopez@igalia.com> · 705c7827
      xan@webkit.org authored
              Reviewed by Holger Freyther.
      
              https://bugs.webkit.org/show_bug.cgi?id=21546
              [GTK] ATK accessibility enhancements
      
              Also implement text interface for StaticTextRole, which covers
              most of the text in web pages.
      
              * page/gtk/AccessibilityObjectWrapperAtk.cpp:
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42495 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      705c7827
    • hausmann@webkit.org's avatar
      2009-04-14 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org> · 098154a3
      hausmann@webkit.org authored
              Reviewed by Tor Arne Vestbø.
      
              Rename QWebElement::setHtml and html to setXml and toXml respectivily.
      
              Also add a mean to define the scope (inner or other).
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42494 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      098154a3
    • aroben@apple.com's avatar
      Land updated Windows results for two tests changed by r42471 · 1f507486
      aroben@apple.com authored
              Rubber-stamped by Anders Carlsson.
      
              * platform/win/css1/text_properties/text_transform-expected.txt: Copied from LayoutTests/platform/mac-leopard/css1/text_properties/text_transform-expected.txt.
              * platform/win/css2.1/t1605-c545-txttrans-00-b-ag-expected.txt: Copied from LayoutTests/platform/mac-leopard/css2.1/t1605-c545-txttrans-00-b-ag-expected.txt.
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42493 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      1f507486
    • aroben@apple.com's avatar
      Small run-javascriptcore-tests cleanup · e4903eeb
      aroben@apple.com authored
              Reviewed by Cameron Zwarich.
      
              * Scripts/run-javascriptcore-tests: Move the list of tests to skip
              into its own variable, annotated with the bugs that are filed about
              the various failures.
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42492 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      e4903eeb
    • aroben@apple.com's avatar
      Skip another sometimes-failing ecma/Date test on Windows · 9d5db852
      aroben@apple.com authored
              These failing tests are covered by Bug 25160: Various ecma/Date tests
              sometimes fail on Windows (but not Mac)
              <https://bugs.webkit.org/show_bug.cgi?id=25160>
      
              Reviewed by Cameron Zwarich.
      
              * Scripts/run-javascriptcore-tests: Added ecma/Date/15.9.2.1.js to the
              list of tests to skip.
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42491 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      9d5db852
    • hausmann@webkit.org's avatar
      2009-04-14 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org> · d94ea894
      hausmann@webkit.org authored
              Reviewed by Tor Arne Vestbø.
      
              Rename QWebElement::setText() and text() to ::setPlainText and
              ::toPlainText, respectively.
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42490 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      d94ea894
    • jmalonzo@webkit.org's avatar
      2009-04-14 Jan Michael Alonzo <jmalonzo@webkit.org> · 91e35e3f
      jmalonzo@webkit.org authored
              Reviewed by Holger Freyther.
      
              [Gtk] disable soup auth dialog when running DRT
              https://bugs.webkit.org/show_bug.cgi?id=24598
      
              Disable soup's auth dialog when running the tests.
      
              * DumpRenderTree/gtk/DumpRenderTree.cpp:
              (setDefaultsToConsistentStateValuesForTesting):
              * GNUmakefile.am:
      
      2009-04-14  Jan Michael Alonzo  <jmalonzo@webkit.org>
      
              Reviewed by Holger Freyther.
      
              [Gtk] disable soup auth dialog when running DRT
              https://bugs.webkit.org/show_bug.cgi?id=24598
      
              Enable http/tests/xmlhttprequest/failed-auth.html test. We should
              be able to run this test in non-interactive mode
      
              * platform/gtk/Skipped:
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42489 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      91e35e3f
    • jmalonzo@webkit.org's avatar
      2009-04-14 Jan Michael Alonzo <jmalonzo@webkit.org> · 7aa53962
      jmalonzo@webkit.org authored
              Gtk build fix when building minidom. Not reviewed.
      
              Use C-style comment instead of C++ style since autotools builds
              minidom using gcc and not g++.
      
              * wtf/Platform.h:
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42488 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      7aa53962
    • mrowe@apple.com's avatar
      Update WebKitSystemInterface so that the Tiger portion supports PowerPC. · 2eac9f75
      mrowe@apple.com authored
      * libWebKitSystemInterfaceLeopard.a:
      * libWebKitSystemInterfaceTiger.a:
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42487 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      2eac9f75
    • ap@webkit.org's avatar
      Another Windows build fix. · e523b98d
      ap@webkit.org authored
              * platform/network/cf/ResourceHandleCFNet.cpp:
              (WebCore::WebCoreSynchronousLoader::load):
      
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42486 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      e523b98d
    • ap@webkit.org's avatar
      Windows build fix. · 3fbd22dd
      ap@webkit.org authored
              * platform/network/cf/ResourceHandleCFNet.cpp:
              (WebCore::WebCoreSynchronousLoader::willSendRequest):
              (WebCore::WebCoreSynchronousLoader::didReceiveChallenge):
      
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42485 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      3fbd22dd
    • ap@webkit.org's avatar
      Removed mentions of tests from ChangeLog - I'll land those once OS-level... · e5ee18af
      ap@webkit.org authored
      Removed mentions of tests from ChangeLog - I'll land those once OS-level support for this feature is in.
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42484 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      e5ee18af
    • ap@webkit.org's avatar
      Reviewed by Sam Weinig. · 738667ac
      ap@webkit.org authored
              <rdar://problem/6698851> Implement XMLHttpRequest withCredentials attribute
      
              Tests: http/tests/xmlhttprequest/cross-origin-authorization.html
                     http/tests/xmlhttprequest/cross-origin-no-authorization.html
      
              * WebCore.xcodeproj/project.pbxproj: Made ThreadableLoader.h private, as enum definitions
              from it are now used in otehr private headers.
      
              * xml/XMLHttpRequest.h:
              * xml/XMLHttpRequest.idl:
              Added withCredentials attribute. When it is false (default), neither credentials nor cookies
              are sent with cross origin requests, When it is true, those are sent, but the server needs
              to allow handling results via Access-Control-Allow-Credentials header. It was always possible
              to send a cross-site request with credentials via IFRAME or IMG, so this just adds a way to
              read results, as long as the server reports that it's allowed.
              Having the default set to false ensures that requests won't fail unexpectedly because of
              stored credentials and cookies for other resources in the target protection space.
      
              * xml/XMLHttpRequest.cpp:
              (WebCore::XMLHttpRequest::loadRequestSynchronously): Allow stored credentials for same origin
              requests, and for cross origin ones that have withCredentials attribute set. Such code already
              existed for cookies (but it's simpler, because we could just set a ResourceRequest flag).
              (WebCore::XMLHttpRequest::loadRequestAsynchronously): Ditto.
      
              * platform/network/ResourceHandle.h: Added willSendRequest() - just like for other callbacks,
              is is easier to have code in the class. Also, loadResourceSynchronously() now takes a
              StoredCredentials option, matching async case.
      
              * platform/network/ResourceHandleClient.h:
              (WebCore::ResourceHandleClient::receivedCredential): Removed. This method could never be
              called, and no client used it.
              (WebCore::ResourceHandleClient::receivedRequestToContinueWithoutCredential): Ditto.
      
              * platform/network/ResourceHandleInternal.h:
              (WebCore::ResourceHandleInternal::ResourceHandleInternal): Split username and password out
              of request URL. We want to always get a callback for credentials to manage them in WebCore,
              so network back-end shouldn't see them too early.
      
              * platform/network/ResourceRequestBase.cpp:
              (WebCore::ResourceRequestBase::removeCredentials):
              * platform/network/ResourceRequestBase.h:
              Added a removeCredentials() method that removes login and password parts from request URL.
      
              * platform/network/mac/ResourceHandleMac.mm:
              (WebCoreCredentialStorage): Added a simple storage class for per-session credentials.
              (WebCore::ResourceHandle::loadResourceSynchronously): Pass allowStoredCredentials through.
              (WebCore::ResourceHandle::willSendRequest): On a redirect, credentials should be replaced.
              (WebCore::ResourceHandle::didReceiveAuthenticationChallenge): Try credentials from the URL
              and per-session credentials. Code was partially moved from Obj-C callback.
              (WebCore::ResourceHandle::receivedCredential): Intercept per-session credentials and store
              them in WebCore storage.
              (-[WebCoreResourceHandleAsDelegate connection:willSendRequest:redirectResponse:]): Don't
              store the redirected URL - we only needed credentials, which are now stored separately.
              (-[WebCoreResourceHandleAsDelegate connection:didReceiveAuthenticationChallenge:]): Removed
              code that was setting credentials from URL. First, the code is now in ResourceHandle, and
              also, it wasn't actually needed in Leopard release before this patch, see <rdar://problem/5298142>.
              (-[WebCoreSynchronousLoader dealloc]): Release credentials. Note that unlike ResourceHandle,
              this class still needs to track URL for checking whether a redirect is allowed. This is
              not a great solution, and we should unify client code to use the same checks in sync and
              async cases.
              (-[WebCoreSynchronousLoader connection:willSendRequest:redirectResponse:]): Just like in
              async case, put credentials aside to ensure that network back-end asks for them.
              (-[WebCoreSynchronousLoader connection:didReceiveAuthenticationChallenge:]): Use credentials
              from URL, or from WebCore storage.
              (-[WebCoreSynchronousLoader connectionShouldUseCredentialStorage:]): Don't use stored
              credentials when not allowed to.
              (+[WebCoreSynchronousLoader loadRequest:allowStoredCredentials:returningResponse:error:]):
              Put credentials aside to ensure that network back-end asks for them.
      
              * platform/network/cf/ResourceHandleCFNet.cpp:
              (WebCore::WebCoreCredentialStorage::set):
              (WebCore::WebCoreCredentialStorage::get):
              (WebCore::willSendRequest):
              (WebCore::ResourceHandle::start):
              (WebCore::ResourceHandle::willSendRequest):
              (WebCore::ResourceHandle::didReceiveAuthenticationChallenge):
              (WebCore::ResourceHandle::receivedCredential):
              (WebCore::ResourceHandle::loadResourceSynchronously):
              (WebCore::WebCoreSynchronousLoader::willSendRequest):
              (WebCore::WebCoreSynchronousLoader::didReceiveChallenge):
              (WebCore::WebCoreSynchronousLoader::shouldUseCredentialStorage):
              (WebCore::WebCoreSynchronousLoader::load):
              Same changes as in Mac case.
      
              * platform/network/curl/ResourceHandleCurl.cpp:
              (WebCore::ResourceHandle::loadResourceSynchronously):
              * platform/network/qt/ResourceHandleQt.cpp:
              (WebCore::ResourceHandle::loadResourceSynchronously):
              * platform/network/soup/ResourceHandleSoup.cpp:
              (WebCore::ResourceHandle::loadResourceSynchronously):
              Trying not to break the build.
      
              * dom/XMLTokenizerLibxml2.cpp: (WebCore::openFunc):
              * xml/XSLTProcessor.cpp: (WebCore::docLoaderFunc):
              Unconditionally allow stored credentials for these, as they only support same origin loads.
      
              * workers/WorkerContext.cpp: (WebCore::WorkerContext::importScripts):
              WorkerContext.importScripts() can be cross-origin, but sending credentials with it is no worse
              than sending them with <script src=...>, so this is also unconditionally allowed.
      
              * loader/DocumentThreadableLoader.cpp:
              (WebCore::DocumentThreadableLoader::loadResourceSynchronously): Pass through storedCredentials.
              (WebCore::DocumentThreadableLoader::create): Ditto.
              (WebCore::DocumentThreadableLoader::DocumentThreadableLoader): Save storedCredentials and
              sameOrigin flags foruse in callbacks.
              (WebCore::DocumentThreadableLoader::willSendRequest): Assert that loaders aren't all confused.
              (WebCore::DocumentThreadableLoader::didSendData): Ditto.
              (WebCore::DocumentThreadableLoader::didReceiveResponse): Ditto.
              (WebCore::DocumentThreadableLoader::didReceiveData): Ditto.
              (WebCore::DocumentThreadableLoader::didFinishLoading): Ditto.
              (WebCore::DocumentThreadableLoader::didFail): Ditto.
              (WebCore::DocumentThreadableLoader::getShouldUseCredentialStorage): Don't use credential
              storage if that's not allowed by the code that invoked DocumentThreadableLoader.
              (WebCore::DocumentThreadableLoader::didReceiveAuthenticationChallenge): Simulate a failure
              and cancel the request if we are about to ask the user for credentials for a cross-origin
              request, which is forbidden by CORS (and would have been very confusing if allowed).
              (WebCore::DocumentThreadableLoader::receivedCancellation): Assert that loaders aren't all confused.
      
              * loader/DocumentThreadableLoader.h: Updated for the new flags (storedCredentials and
              sameOrigin) that affect the loader. Eventually, we need to move all CORS logic from XHR here.
      
              * loader/ThreadableLoader.h: (StoredCredentials): Added another flag that affects loader
              behavior. We should combine all of these into a structure, and use it for sync requests, too.
      
              * loader/FrameLoader.cpp: (WebCore::FrameLoader::loadResourceSynchronously):
              * loader/FrameLoader.h:
              * loader/ThreadableLoader.cpp:
              (WebCore::ThreadableLoader::create):
              (WebCore::ThreadableLoader::loadResourceSynchronously):
              * loader/WorkerThreadableLoader.cpp:
              (WebCore::WorkerThreadableLoader::WorkerThreadableLoader):
              (WebCore::WorkerThreadableLoader::loadResourceSynchronously):
              (WebCore::WorkerThreadableLoader::MainThreadBridge::MainThreadBridge):
              (WebCore::WorkerThreadableLoader::MainThreadBridge::mainThreadCreateLoader):
              * loader/WorkerThreadableLoader.h:
              (WebCore::WorkerThreadableLoader::create):
              Pass through storedCredentials.
      
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42483 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      738667ac
    • barraclough@apple.com's avatar
      speculative 'doze build fix · c12b244c
      barraclough@apple.com authored
      git-svn-id: svn://svn.chromium.org/blink/trunk@42482 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      c12b244c
    • barraclough@apple.com's avatar
      2009-04-13 Gavin Barraclough <barraclough@apple.com> · 443fc42c
      barraclough@apple.com authored
              Reviewed by Cap'n Geoff Garen.
      
              Yarr!
              (Yet another regex runtime).
      
              Currently disabled by default since the interpreter, whilst awesomely
              functional, has not been optimized and is likely slower than PCRE, and
              the JIT, whilst faster than WREC, is presently incomplete and does not
              fallback to using an interpreter for the cases it cannot handle.
      
              * JavaScriptCore.xcodeproj/project.pbxproj:
              * assembler/MacroAssemblerX86Common.h:
              (JSC::MacroAssemblerX86Common::move):
              (JSC::MacroAssemblerX86Common::swap):
              (JSC::MacroAssemblerX86Common::signExtend32ToPtr):
              (JSC::MacroAssemblerX86Common::zeroExtend32ToPtr):
              (JSC::MacroAssemblerX86Common::branch32):
              (JSC::MacroAssemblerX86Common::branch16):
              * assembler/X86Assembler.h:
              (JSC::X86Assembler::cmpw_im):
              (JSC::X86Assembler::testw_rr):
              (JSC::X86Assembler::X86InstructionFormatter::immediate16):
              * runtime/RegExp.cpp:
              (JSC::RegExp::RegExp):
              (JSC::RegExp::~RegExp):
              (JSC::RegExp::create):
              (JSC::RegExp::compile):
              (JSC::RegExp::match):
              * runtime/RegExp.h:
              * wtf/Platform.h:
              * yarr: Added.
              * yarr/RegexCompiler.cpp: Added.
              (JSC::Yarr::CharacterClassConstructor::CharacterClassConstructor):
              (JSC::Yarr::CharacterClassConstructor::reset):
              (JSC::Yarr::CharacterClassConstructor::append):
              (JSC::Yarr::CharacterClassConstructor::putChar):
              (JSC::Yarr::CharacterClassConstructor::isUnicodeUpper):
              (JSC::Yarr::CharacterClassConstructor::isUnicodeLower):
              (JSC::Yarr::CharacterClassConstructor::putRange):
              (JSC::Yarr::CharacterClassConstructor::charClass):
              (JSC::Yarr::CharacterClassConstructor::addSorted):
              (JSC::Yarr::CharacterClassConstructor::addSortedRange):
              (JSC::Yarr::newlineCreate):
              (JSC::Yarr::digitsCreate):
              (JSC::Yarr::spacesCreate):
              (JSC::Yarr::wordcharCreate):
              (JSC::Yarr::nondigitsCreate):
              (JSC::Yarr::nonspacesCreate):
              (JSC::Yarr::nonwordcharCreate):
              (JSC::Yarr::RegexPatternConstructor::RegexPatternConstructor):
              (JSC::Yarr::RegexPatternConstructor::~RegexPatternConstructor):
              (JSC::Yarr::RegexPatternConstructor::reset):
              (JSC::Yarr::RegexPatternConstructor::assertionBOL):
              (JSC::Yarr::RegexPatternConstructor::assertionEOL):
              (JSC::Yarr::RegexPatternConstructor::assertionWordBoundary):
              (JSC::Yarr::RegexPatternConstructor::atomPatternCharacter):
              (JSC::Yarr::RegexPatternConstructor::atomBuiltInCharacterClass):
              (JSC::Yarr::RegexPatternConstructor::atomCharacterClassBegin):
              (JSC::Yarr::RegexPatternConstructor::atomCharacterClassAtom):
              (JSC::Yarr::RegexPatternConstructor::atomCharacterClassRange):
              (JSC::Yarr::RegexPatternConstructor::atomCharacterClassBuiltIn):
              (JSC::Yarr::RegexPatternConstructor::atomCharacterClassEnd):
              (JSC::Yarr::RegexPatternConstructor::atomParenthesesSubpatternBegin):
              (JSC::Yarr::RegexPatternConstructor::atomParentheticalAssertionBegin):
              (JSC::Yarr::RegexPatternConstructor::atomParenthesesEnd):
              (JSC::Yarr::RegexPatternConstructor::atomBackReference):
              (JSC::Yarr::RegexPatternConstructor::copyDisjunction):
              (JSC::Yarr::RegexPatternConstructor::copyTerm):
              (JSC::Yarr::RegexPatternConstructor::quantifyAtom):
              (JSC::Yarr::RegexPatternConstructor::disjunction):
              (JSC::Yarr::RegexPatternConstructor::regexBegin):
              (JSC::Yarr::RegexPatternConstructor::regexEnd):
              (JSC::Yarr::RegexPatternConstructor::regexError):
              (JSC::Yarr::RegexPatternConstructor::setupAlternativeOffsets):
              (JSC::Yarr::RegexPatternConstructor::setupDisjunctionOffsets):
              (JSC::Yarr::RegexPatternConstructor::setupOffsets):
              (JSC::Yarr::compileRegex):
              * yarr/RegexCompiler.h: Added.
              * yarr/RegexInterpreter.cpp: Added.
              (JSC::Yarr::Interpreter::appendParenthesesDisjunctionContext):
              (JSC::Yarr::Interpreter::popParenthesesDisjunctionContext):
              (JSC::Yarr::Interpreter::DisjunctionContext::DisjunctionContext):
              (JSC::Yarr::Interpreter::DisjunctionContext::operator new):
              (JSC::Yarr::Interpreter::allocDisjunctionContext):
              (JSC::Yarr::Interpreter::freeDisjunctionContext):
              (JSC::Yarr::Interpreter::ParenthesesDisjunctionContext::ParenthesesDisjunctionContext):
              (JSC::Yarr::Interpreter::ParenthesesDisjunctionContext::operator new):
              (JSC::Yarr::Interpreter::ParenthesesDisjunctionContext::restoreOutput):
              (JSC::Yarr::Interpreter::ParenthesesDisjunctionContext::getDisjunctionContext):
              (JSC::Yarr::Interpreter::allocParenthesesDisjunctionContext):
              (JSC::Yarr::Interpreter::freeParenthesesDisjunctionContext):
              (JSC::Yarr::Interpreter::InputStream::InputStream):
              (JSC::Yarr::Interpreter::InputStream::next):
              (JSC::Yarr::Interpreter::InputStream::rewind):
              (JSC::Yarr::Interpreter::InputStream::read):
              (JSC::Yarr::Interpreter::InputStream::readChecked):
              (JSC::Yarr::Interpreter::InputStream::reread):
              (JSC::Yarr::Interpreter::InputStream::prev):
              (JSC::Yarr::Interpreter::InputStream::getPos):
              (JSC::Yarr::Interpreter::InputStream::setPos):
              (JSC::Yarr::Interpreter::InputStream::atStart):
              (JSC::Yarr::Interpreter::InputStream::atEnd):
              (JSC::Yarr::Interpreter::InputStream::checkInput):
              (JSC::Yarr::Interpreter::InputStream::uncheckInput):
              (JSC::Yarr::Interpreter::testCharacterClass):
              (JSC::Yarr::Interpreter::tryConsumeCharacter):
              (JSC::Yarr::Interpreter::checkCharacter):
              (JSC::Yarr::Interpreter::tryConsumeCharacterClass):
              (JSC::Yarr::Interpreter::checkCharacterClass):
              (JSC::Yarr::Interpreter::tryConsumeBackReference):
              (JSC::Yarr::Interpreter::matchAssertionBOL):
              (JSC::Yarr::Interpreter::matchAssertionEOL):
              (JSC::Yarr::Interpreter::matchAssertionWordBoundary):
              (JSC::Yarr::Interpreter::matchPatternCharacter):
              (JSC::Yarr::Interpreter::backtrackPatternCharacter):
              (JSC::Yarr::Interpreter::matchCharacterClass):
              (JSC::Yarr::Interpreter::backtrackCharacterClass):
              (JSC::Yarr::Interpreter::matchBackReference):
              (JSC::Yarr::Interpreter::backtrackBackReference):
              (JSC::Yarr::Interpreter::recordParenthesesMatch):
              (JSC::Yarr::Interpreter::resetMatches):
              (JSC::Yarr::Interpreter::resetAssertionMatches):
              (JSC::Yarr::Interpreter::parenthesesDoBacktrack):
              (JSC::Yarr::Interpreter::matchParenthesesOnceBegin):
              (JSC::Yarr::Interpreter::matchParenthesesOnceEnd):
              (JSC::Yarr::Interpreter::backtrackParenthesesOnceBegin):
              (JSC::Yarr::Interpreter::backtrackParenthesesOnceEnd):
              (JSC::Yarr::Interpreter::matchParentheticalAssertionOnceBegin):
              (JSC::Yarr::Interpreter::matchParentheticalAssertionOnceEnd):
              (JSC::Yarr::Interpreter::backtrackParentheticalAssertionOnceBegin):
              (JSC::Yarr::Interpreter::backtrackParentheticalAssertionOnceEnd):
              (JSC::Yarr::Interpreter::matchParentheses):
              (JSC::Yarr::Interpreter::backtrackParentheses):
              (JSC::Yarr::Interpreter::matchTerm):
              (JSC::Yarr::Interpreter::backtrackTerm):
              (JSC::Yarr::Interpreter::matchAlternative):
              (JSC::Yarr::Interpreter::matchDisjunction):
              (JSC::Yarr::Interpreter::matchNonZeroDisjunction):
              (JSC::Yarr::Interpreter::interpret):
              (JSC::Yarr::Interpreter::Interpreter):
              (JSC::Yarr::ByteCompiler::ParenthesesStackEntry::ParenthesesStackEntry):
              (JSC::Yarr::ByteCompiler::ByteCompiler):
              (JSC::Yarr::ByteCompiler::compile):
              (JSC::Yarr::ByteCompiler::checkInput):
              (JSC::Yarr::ByteCompiler::assertionBOL):
              (JSC::Yarr::ByteCompiler::assertionEOL):
              (JSC::Yarr::ByteCompiler::assertionWordBoundary):
              (JSC::Yarr::ByteCompiler::atomPatternCharacter):
              (JSC::Yarr::ByteCompiler::atomCharacterClass):
              (JSC::Yarr::ByteCompiler::atomBackReference):
              (JSC::Yarr::ByteCompiler::atomParenthesesSubpatternBegin):
              (JSC::Yarr::ByteCompiler::atomParentheticalAssertionBegin):
              (JSC::Yarr::ByteCompiler::popParenthesesStack):
              (JSC::Yarr::ByteCompiler::dumpDisjunction):
              (JSC::Yarr::ByteCompiler::closeAlternative):
              (JSC::Yarr::ByteCompiler::atomParenthesesEnd):
              (JSC::Yarr::ByteCompiler::regexBegin):
              (JSC::Yarr::ByteCompiler::regexEnd):
              (JSC::Yarr::ByteCompiler::alterantiveDisjunction):
              (JSC::Yarr::ByteCompiler::emitDisjunction):
              (JSC::Yarr::byteCompileRegex):
              (JSC::Yarr::interpretRegex):
              * yarr/RegexInterpreter.h: Added.
              (JSC::Yarr::ByteTerm::):
              (JSC::Yarr::ByteTerm::ByteTerm):
              (JSC::Yarr::ByteTerm::BOL):
              (JSC::Yarr::ByteTerm::CheckInput):
              (JSC::Yarr::ByteTerm::EOL):
              (JSC::Yarr::ByteTerm::WordBoundary):
              (JSC::Yarr::ByteTerm::BackReference):
              (JSC::Yarr::ByteTerm::AlternativeBegin):
              (JSC::Yarr::ByteTerm::AlternativeDisjunction):
              (JSC::Yarr::ByteTerm::AlternativeEnd):
              (JSC::Yarr::ByteTerm::PatternEnd):
              (JSC::Yarr::ByteTerm::invert):
              (JSC::Yarr::ByteTerm::capture):
              (JSC::Yarr::ByteDisjunction::ByteDisjunction):
              (JSC::Yarr::BytecodePattern::BytecodePattern):
              (JSC::Yarr::BytecodePattern::~BytecodePattern):
              * yarr/RegexJIT.cpp: Added.
              (JSC::Yarr::RegexGenerator::optimizeAlternative):
              (JSC::Yarr::RegexGenerator::matchCharacterClassRange):
              (JSC::Yarr::RegexGenerator::matchCharacterClass):
              (JSC::Yarr::RegexGenerator::jumpIfNoAvailableInput):
              (JSC::Yarr::RegexGenerator::jumpIfAvailableInput):
              (JSC::Yarr::RegexGenerator::checkInput):
              (JSC::Yarr::RegexGenerator::atEndOfInput):
              (JSC::Yarr::RegexGenerator::notAtEndOfInput):
              (JSC::Yarr::RegexGenerator::jumpIfCharEquals):
              (JSC::Yarr::RegexGenerator::jumpIfCharNotEquals):
              (JSC::Yarr::RegexGenerator::readCharacter):
              (JSC::Yarr::RegexGenerator::storeToFrame):
              (JSC::Yarr::RegexGenerator::loadFromFrame):
              (JSC::Yarr::RegexGenerator::TermGenerationState::TermGenerationState):
              (JSC::Yarr::RegexGenerator::TermGenerationState::resetAlternative):
              (JSC::Yarr::RegexGenerator::TermGenerationState::alternativeValid):
              (JSC::Yarr::RegexGenerator::TermGenerationState::nextAlternative):
              (JSC::Yarr::RegexGenerator::TermGenerationState::alternative):
              (JSC::Yarr::RegexGenerator::TermGenerationState::resetTerm):
              (JSC::Yarr::RegexGenerator::TermGenerationState::termValid):
              (JSC::Yarr::RegexGenerator::TermGenerationState::nextTerm):
              (JSC::Yarr::RegexGenerator::TermGenerationState::term):
              (JSC::Yarr::RegexGenerator::TermGenerationState::lookaheadTerm):
              (JSC::Yarr::RegexGenerator::TermGenerationState::isSinglePatternCharacterLookaheadTerm):
              (JSC::Yarr::RegexGenerator::TermGenerationState::inputOffset):
              (JSC::Yarr::RegexGenerator::TermGenerationState::jumpToBacktrack):
              (JSC::Yarr::RegexGenerator::TermGenerationState::setBacktrackGenerated):
              (JSC::Yarr::RegexGenerator::jumpToBacktrackCheckEmitPending):
              (JSC::Yarr::RegexGenerator::genertateAssertionBOL):
              (JSC::Yarr::RegexGenerator::genertateAssertionEOL):
              (JSC::Yarr::RegexGenerator::matchAssertionWordchar):
              (JSC::Yarr::RegexGenerator::genertateAssertionWordBoundary):
              (JSC::Yarr::RegexGenerator::genertatePatternCharacterSingle):
              (JSC::Yarr::RegexGenerator::genertatePatternCharacterPair):
              (JSC::Yarr::RegexGenerator::genertatePatternCharacterFixed):
              (JSC::Yarr::RegexGenerator::genertatePatternCharacterGreedy):
              (JSC::Yarr::RegexGenerator::genertatePatternCharacterNonGreedy):
              (JSC::Yarr::RegexGenerator::genertateCharacterClassSingle):
              (JSC::Yarr::RegexGenerator::genertateCharacterClassFixed):
              (JSC::Yarr::RegexGenerator::genertateCharacterClassGreedy):
              (JSC::Yarr::RegexGenerator::genertateCharacterClassNonGreedy):
              (JSC::Yarr::RegexGenerator::generateParenthesesSingleDisjunctionOneAlternative):
              (JSC::Yarr::RegexGenerator::generateParenthesesSingle):
              (JSC::Yarr::RegexGenerator::generateTerm):
              (JSC::Yarr::RegexGenerator::generateDisjunction):
              (JSC::Yarr::RegexGenerator::RegexGenerator):
              (JSC::Yarr::RegexGenerator::generate):
              (JSC::Yarr::jitCompileRegex):
              (JSC::Yarr::executeRegex):
              * yarr/RegexJIT.h: Added.
              (JSC::Yarr::RegexCodeBlock::RegexCodeBlock):
              * yarr/RegexParser.h: Added.
              (JSC::Yarr::):
              (JSC::Yarr::Parser::):
              (JSC::Yarr::Parser::CharacterClassParserDelegate::CharacterClassParserDelegate):
              (JSC::Yarr::Parser::CharacterClassParserDelegate::begin):
              (JSC::Yarr::Parser::CharacterClassParserDelegate::atomPatternCharacterUnescaped):
              (JSC::Yarr::Parser::CharacterClassParserDelegate::atomPatternCharacter):
              (JSC::Yarr::Parser::CharacterClassParserDelegate::atomBuiltInCharacterClass):
              (JSC::Yarr::Parser::CharacterClassParserDelegate::end):
              (JSC::Yarr::Parser::CharacterClassParserDelegate::assertionWordBoundary):
              (JSC::Yarr::Parser::CharacterClassParserDelegate::atomBackReference):
              (JSC::Yarr::Parser::CharacterClassParserDelegate::flush):
              (JSC::Yarr::Parser::CharacterClassParserDelegate::):
              (JSC::Yarr::Parser::Parser):
              (JSC::Yarr::Parser::parseEscape):
              (JSC::Yarr::Parser::parseAtomEscape):
              (JSC::Yarr::Parser::parseCharacterClassEscape):
              (JSC::Yarr::Parser::parseCharacterClass):
              (JSC::Yarr::Parser::parseParenthesesBegin):
              (JSC::Yarr::Parser::parseParenthesesEnd):
              (JSC::Yarr::Parser::parseQuantifier):
              (JSC::Yarr::Parser::parseTokens):
              (JSC::Yarr::Parser::parse):
              (JSC::Yarr::Parser::saveState):
              (JSC::Yarr::Parser::restoreState):
              (JSC::Yarr::Parser::atEndOfPattern):
              (JSC::Yarr::Parser::peek):
              (JSC::Yarr::Parser::peekIsDigit):
              (JSC::Yarr::Parser::peekDigit):
              (JSC::Yarr::Parser::consume):
              (JSC::Yarr::Parser::consumeDigit):
              (JSC::Yarr::Parser::consumeNumber):
              (JSC::Yarr::Parser::consumeOctal):
              (JSC::Yarr::Parser::tryConsume):
              (JSC::Yarr::Parser::tryConsumeHex):
              (JSC::Yarr::parse):
              * yarr/RegexPattern.h: Added.
              (JSC::Yarr::CharacterRange::CharacterRange):
              (JSC::Yarr::):
              (JSC::Yarr::PatternTerm::):
              (JSC::Yarr::PatternTerm::PatternTerm):
              (JSC::Yarr::PatternTerm::BOL):
              (JSC::Yarr::PatternTerm::EOL):
              (JSC::Yarr::PatternTerm::WordBoundary):
              (JSC::Yarr::PatternTerm::invert):
              (JSC::Yarr::PatternTerm::capture):
              (JSC::Yarr::PatternTerm::quantify):
              (JSC::Yarr::PatternAlternative::PatternAlternative):
              (JSC::Yarr::PatternAlternative::lastTerm):
              (JSC::Yarr::PatternAlternative::removeLastTerm):
              (JSC::Yarr::PatternDisjunction::PatternDisjunction):
              (JSC::Yarr::PatternDisjunction::~PatternDisjunction):
              (JSC::Yarr::PatternDisjunction::addNewAlternative):
              (JSC::Yarr::RegexPattern::RegexPattern):
              (JSC::Yarr::RegexPattern::~RegexPattern):
              (JSC::Yarr::RegexPattern::reset):
              (JSC::Yarr::RegexPattern::containsIllegalBackReference):
              (JSC::Yarr::RegexPattern::newlineCharacterClass):
              (JSC::Yarr::RegexPattern::digitsCharacterClass):
              (JSC::Yarr::RegexPattern::spacesCharacterClass):
              (JSC::Yarr::RegexPattern::wordcharCharacterClass):
              (JSC::Yarr::RegexPattern::nondigitsCharacterClass):
              (JSC::Yarr::RegexPattern::nonspacesCharacterClass):
              (JSC::Yarr::RegexPattern::nonwordcharCharacterClass):
      
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42481 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      443fc42c
    • oliver@apple.com's avatar
      Missed code from last patch · 260717af
      oliver@apple.com authored
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42480 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      260717af
    • hyatt@apple.com's avatar
      2009-04-13 David Hyatt <hyatt@apple.com> · cd34074f
      hyatt@apple.com authored
              Reviewed by Cameron Zwarich.
      
              Remove an outdated comment in ScrollView.h
      
              * platform/ScrollView.h:
      
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42479 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      cd34074f
    • oliver@apple.com's avatar
      BUG 25171: It should be possible to manually set the name of an anonymous function · e2d8a9fb
      oliver@apple.com authored
      <https://bugs.webkit.org/show_bug.cgi?id=25171>
      
      Submitted by Francisco Tolmasky <francisco@280north.com>
      Reviewed by Oliver Hunt.
      
      This change adds the displayName property to functions, which when set overrides the
      normal name when appearing in the console.
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@42478 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      e2d8a9fb