15 years ago Reviewed by Darin.
weinig@apple.com [Mon, 10 Dec 2007 23:32:14 +0000 (23:32 +0000)]
    Reviewed by Darin.

        More cleanup of kjs_window.
        - Move WindowFeatures from bridge/ to page/
        - Move functions related to WindowFeatures (boolFeature,
          floatFeature, setWindowFeature, parseWindowFeatures) into the class.
        - Fix up whitespace.

        * WebCore.vcproj/WebCore.vcproj:
        * WebCore.xcodeproj/project.pbxproj:
        * bindings/js/kjs_window.cpp:
        (KJS::LocationProtoFuncReplace::callAsFunction): Use better variable names.
        (KJS::LocationProtoFuncAssign::callAsFunction): Ditto.
        (KJS::LocationProtoFuncToString::callAsFunction): Remove extraneous calls to
        allowsAccessFrom, cleanup the function a little.
        * bridge/WindowFeatures.h: Removed.
        * page/WindowFeatures.cpp: Added.
        * page/WindowFeatures.h: Copied from WebCore/bridge/WindowFeatures.h.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28592 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoJavaScriptCore:
timothy@apple.com [Mon, 10 Dec 2007 23:06:23 +0000 (23:06 +0000)]

        Reviewed by Mark Rowe

        <rdar://problem/5639463> Bundle versions on Tiger should be 4523.x not 523.x

        * Configurations/Version.xcconfig: Some Tiger versions of Xcode don't set MAC_OS_X_VERSION_MAJOR,
          so assume Tiger and use a 4 for the SYSTEM_VERSION_PREFIX.


        Reviewed by Mark Rowe.

        <rdar://problem/5639463> Bundle versions on Tiger should be 4523.x not 523.x

        * Configurations/Version.xcconfig: Some Tiger versions of Xcode don't set MAC_OS_X_VERSION_MAJOR,
          so assume Tiger and use a 4 for the SYSTEM_VERSION_PREFIX.


        Reviewed by Mark Rowe.

        <rdar://problem/5639463> Bundle versions on Tiger should be 4523.x not 523.x

        * Configurations/Version.xcconfig: Some Tiger versions of Xcode don't set MAC_OS_X_VERSION_MAJOR,
          so assume Tiger and use a 4 for the SYSTEM_VERSION_PREFIX.


        Reviewed by Mark Rowe.

        <rdar://problem/5639463> Bundle versions on Tiger should be 4523.x not 523.x

        * Configurations/Version.xcconfig: Some Tiger versions of Xcode don't set MAC_OS_X_VERSION_MAJOR,
          so assume Tiger and use a 4 for the SYSTEM_VERSION_PREFIX.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28591 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoCheck in correct results
slewis@apple.com [Mon, 10 Dec 2007 23:02:47 +0000 (23:02 +0000)]
Check in correct results

        * svg/custom/resource-client-removal-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28590 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago2007-12-10 Alp Toker <alp@atoker.com>
alp@webkit.org [Mon, 10 Dec 2007 20:39:26 +0000 (20:39 +0000)]
2007-12-10  Alp Toker  <alp@atoker.com>

        Reviewed by Niko.

        Cairo implementation of GraphicsContext::setUseAntialiasing().

        * platform/graphics/cairo/GraphicsContextCairo.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28589 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by Darin.
rwlbuis@webkit.org [Mon, 10 Dec 2007 20:14:46 +0000 (20:14 +0000)]
    Reviewed by Darin.

        SVG should disable antialiasing for shape-rendering="crispEdges"

        Turn off anti-aliasing of shapes when shape-rendering="crispEdges".

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28588 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by Niko.
rwlbuis@webkit.org [Mon, 10 Dec 2007 20:03:07 +0000 (20:03 +0000)]
    Reviewed by Niko.

        SVG crash in Node::setChanged() on Debug builds only (trashed parent)

        Fix the crash by properly unregistering as client from SVGResource
        when deleting a styled svg node.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28587 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Rubberstamped by John
beidson@apple.com [Mon, 10 Dec 2007 19:38:06 +0000 (19:38 +0000)]
    Rubberstamped by John

        * storage/DatabaseTracker.cpp:
        (WebCore::DatabaseTracker::canEstablishDatabase): If the UI Delegate returns *exactly* the estimated size
          for the new quota, we should allow the database to be created

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28586 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by Darin.
kdecker@apple.com [Mon, 10 Dec 2007 18:47:39 +0000 (18:47 +0000)]
    Reviewed by Darin.

        Fixed: <rdar://problem/4290098> Right-mouse click on element doesn't call onmousedown handler

        * WebView/WebHTMLView.mm:
        (-[WebHTMLView menuForEvent:]): Match behavior of other browsers by sending an onmousedown event for right clicks.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28585 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoBug 9683: Implement select.options.remove() method
ddkilzer@apple.com [Mon, 10 Dec 2007 17:51:02 +0000 (17:51 +0000)]
Bug 9683: Implement select.options.remove() method


        Bug 9683: Implement select.options.remove() method

        Reviewed by Maciej.

        Implement select.options.remove() by calling select.remove()
        with the same arguments.  This is what MSIE 7 does, although its
        select.remove() method differs from WebKit's by throwing an
        exception when called with no arguments or with a negative
        integer argument.  Note that the DOM Level 1 documentation
        specifies that select.remove() does not throw an exception.

        Tests: fast/js/select-options-remove-gc.html

        * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
        (WebCore::JSHTMLOptionsCollection::remove): Added.
        * html/HTMLOptionsCollection.cpp:
        (WebCore::HTMLOptionsCollection::remove): Added.
        * html/HTMLOptionsCollection.h:
        * html/HTMLOptionsCollection.idl:


        Bug 9683: Implement select.options.remove() method

        Reviewed by Maciej.

        * fast/js/resources/select-options-remove.js: Added.
        * fast/js/select-options-remove-expected.txt: Added.
        * fast/js/select-options-remove-gc-expected.txt: Added.
        * fast/js/select-options-remove-gc.html: Added.
        * fast/js/select-options-remove.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28584 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Fix <rdar://5624866> CFStringRef UI_STRING should use a cache and follow...
aroben@apple.com [Mon, 10 Dec 2007 17:16:12 +0000 (17:16 +0000)]
     Fix <rdar://5624866> CFStringRef UI_STRING should use a cache and follow the CF "Get" model (current uses leak)

         Added a new class, LocalizedString, that wraps a CFStringRef and a
         WebCore::String. We store one LocalizedString for each key string.

         Reviewed by Steve.

         * WebLocalizableStrings.cpp: Changed our two HashMaps to map from
         WebCore::String to LocalizedString*.
         (LocalizedString::operator CFStringRef):
         (LocalizedString::operator LPCTSTR): Code moved here from
         (findCachedString): Changed to return a LocalizedString*.
         (cacheString): Changed to take a LocalizedString*.
         (localizedString): Changed to return a const LocalizedString&. We
         first try to find a cached LocalizedString. If there isn't one, we
         create a new one and cache it.
         (WebLocalizedLPCTSTRUTF8): Changed to call localizedString.
         (WebLocalizedLPCTSTR): Ditto.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28583 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Make WebLocalizableStrings work a little more like the Mac version
aroben@apple.com [Mon, 10 Dec 2007 17:15:33 +0000 (17:15 +0000)]
     Make WebLocalizableStrings work a little more like the Mac version

         Reviewed by Steve.

         * WebKit.vcproj/WebKit.def: Deprecated SetWebLocalizedStringMainBundle.
         * WebKit.vcproj/WebKit_debug.def: Ditto.
         * WebLocalizableStrings.cpp:
         (createWebKitBundle): Changed to only create the bundle once.
         (cfBundleForStringsBundle): Added. Code was factored out of
         copyLocalizedStringFromBundle. We now use the CFBundleGetMainBundle to
         get the main bundle and WebLocalizableStringsBundle's identifier to
         fetch the framework's bundle.
         (copyLocalizedStringFromBundle): Changed to call
         (cacheString): Cleaned up logic a bit with an early return.
         (SetWebLocalizedStringMainBundle): Moved down with the other
         deprecated functions and made into a no-op.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28582 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoTiger build fix.
mrowe@apple.com [Mon, 10 Dec 2007 13:38:36 +0000 (13:38 +0000)]
Tiger build fix.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28581 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago2007-12-10 Darin Adler <darin@apple.com>
mrowe@apple.com [Mon, 10 Dec 2007 13:15:00 +0000 (13:15 +0000)]
2007-12-10  Darin Adler  <darin@apple.com>

        Reviewed by Mark Rowe.

        - fix http://bugs.webkit.org/show_bug.cgi?id=16375
          REGRESSION: Safari crashes on quit

        Probably a debug-only issue.

        * kjs/Parser.cpp:
        (KJS::parser): Create the parser and never destroy it by using a pointer instead
        of a global object.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28580 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Removed fast/events/objc-keyboard-event-creation.html from skipped list,...
ap@webkit.org [Mon, 10 Dec 2007 08:55:48 +0000 (08:55 +0000)]
    Removed fast/events/objc-keyboard-event-creation.html from skipped list, as this test has
        been moved to platform/mac long ago.

        * platform/win/Skipped:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28579 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by Sam Weinig.
darin@apple.com [Mon, 10 Dec 2007 06:22:04 +0000 (06:22 +0000)]
    Reviewed by Sam Weinig.

        - fix http://bugs.webkit.org/show_bug.cgi?id=16369
          REGRESSION (r28525): regular expression tests failing due to bad firstByte optimization

        * pcre/pcre_compile.cpp: Changed some names to use interCaps intead of under_scores.
        (branchIsAnchored): Broke is_anchored into two separate functions; this one works on a
        branch and the other on an anchor. The old function would only work on a bracket.
        Also removed unneeded parameters; the anchored check does not require the bracket
        map or the options any more because we have a reduced set of features.
        (bracketIsAnchored): Ditto.
        (branchNeedsLineStart): Broke canApplyFirstCharOptimization into two functions and gave
        both a better name. This is the function that was returning the wrong value. The failure
        was beacuse the old function would only work on a bracket.
        (bracketNeedsLineStart): Ditto.
        (jsRegExpCompile): Changed to call the appropriate branch or bracket flavor of the
        functions based on whether we compiled an outer bracket. Also removed inaccurate comments
        and unneeded parameters.

        - other small changes

        * pcre/pcre.h: Renumbered error codes, in a logical order. First, normal failure, then
        the recursion limit, then running out of memory, and finally an unexpected internal error.

        * pcre/pcre_exec.cpp: Fixed indentation.
        (jsRegExpExecute): Corrected an inaccurate comment.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28578 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by Maciej.
darin@apple.com [Mon, 10 Dec 2007 04:05:56 +0000 (04:05 +0000)]
    Reviewed by Maciej.

        - fix http://bugs.webkit.org/show_bug.cgi?id=16370
          REGRESSION (r28540): source URL and line number no longer set for outer function/programs

        Test: fast/js/exception-linenums-in-html-1.html
        Test: fast/js/exception-linenums-in-html-2.html
        Test: fast/js/exception-linenums.html

        By the time the ProgramNode was constructed, the source URL was empty.

        * kjs/Parser.cpp:
        (KJS::Parser::parseProgram): Added code to set and clear m_sourceURL, which is now
        handled here instead of in the lexer; it needs to still be set when we create the
        program node. Call setLoc to set the first and last line number.
        (KJS::Parser::parseFunctionBody): Ditto, but for the body.
        (KJS::Parser::parse): Removed the sourceURL argument.

        * kjs/Parser.h: Added sourceURL(), m_sourceURL, and m_lastLine. Added a lastLine
        parameter to didFinishParsing, since the bison grammar knows the last line number
        and we otherwise do not know it. Removed the sourceURL parameter from parse, since
        that's now handled at a higher level.

        * kjs/grammar.y: Pass the last line number to didFinishParsing.

        * kjs/lexer.cpp:
        (KJS::Lexer::setCode): Removed the sourceURL argument and the code to set m_sourceURL.
        (KJS::Lexer::clear): Ditto.
        * kjs/lexer.h: More of the same.

        * kjs/nodes.cpp:
        (KJS::FunctionBodyNode::FunctionBodyNode): Get the source URL from the parser rather
        than from the lexer. Removed unneeded call to setLoc, since the line numbers already
        both default to -1.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28577 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Rubber stamped by Mark Rowe.
weinig@apple.com [Mon, 10 Dec 2007 03:33:34 +0000 (03:33 +0000)]
    Rubber stamped by Mark Rowe.

        * WebCore.xcodeproj/project.pbxproj: Add missing DerivedSources files.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28576 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoNeed to read the spec properly.
oliver@apple.com [Mon, 10 Dec 2007 01:12:34 +0000 (01:12 +0000)]
Need to read the spec properly.

Reviewed by Niko

Correction, 'z' and 'Z' are the only commands that cannot have an extended
list of arguments.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28575 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoPrevent unlimited iteration in the case of invalid path data.
oliver@apple.com [Mon, 10 Dec 2007 00:44:18 +0000 (00:44 +0000)]
Prevent unlimited iteration in the case of invalid path data.

Reviewed by Niko.

The only path commands that can leave numbers trailing the command processing
are 'm' and 'M', in which trailing numbers are parsed as arguments to an
implicit lineto command.  In any case we should just terminate as an invalid

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28574 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago2007-12-09 Luca Bruno <lethalman88@gmail.com>
alp@webkit.org [Sun, 9 Dec 2007 21:52:55 +0000 (21:52 +0000)]
2007-12-09  Luca Bruno  <lethalman88@gmail.com>

        Reviewed by Alp Toker.

        [GTK] curl - slow dns causing hangs.

        Create a vector of jobs, to satisfy requests in the right order.
        Set a limit to the number of simultaneous connections.

        * platform/network/curl/ResourceHandleManager.cpp:
        (WebCore::maxRunningJobs): added

        * platform/network/curl/ResourceHandleManager.h:
        (WebCore::ResourceHandleList): removed
        (WebCore::ResourceHandleManager::m_runningJobs): added
        (WebCore::ResourceHandleManager::m_resourceHandleListHead): removed
        (WebCore::ResourceHandleManager::m_resourceHandleList): added

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28573 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by Oliver.
weinig@apple.com [Sun, 9 Dec 2007 07:56:34 +0000 (07:56 +0000)]
    Reviewed by Oliver.

        Cleanup kjs_window.h/cpp.

        * bindings/js/kjs_window.cpp:
        * bindings/js/kjs_window.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28572 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Rubber-stamped by Adam Roben.
weinig@apple.com [Sun, 9 Dec 2007 07:48:24 +0000 (07:48 +0000)]
    Rubber-stamped by Adam Roben.

        * fast/dom/Window/window-resize-and-move-arguments.html: Make the window small enough
        that this test won't fail on systems with lower resolutions.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28571 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoWebCore:
weinig@apple.com [Sun, 9 Dec 2007 00:47:41 +0000 (00:47 +0000)]

        Reviewed by Mitz.

        Move window scrolling, moving and resizing methods from KJS::Window
        to WebCore::DOMWindow so that there bindings can be autogenerated.

        Tests: fast/dom/Window/window-resize-and-move-arguments.html

        * WebCore.xcodeproj/project.pbxproj:
        * bindings/js/kjs_window.cpp:
        (KJS::Window::getValueProperty): Remove extraneous allowsAccessFrom check.
        (KJS::WindowProtoFuncNotImplemented::callAsFunction): Remove extraneous allowsAccessFrom check.
        * bindings/js/kjs_window.h:
        * bindings/scripts/CodeGeneratorJS.pm: Add new extended attribute
        to ensure that the no less than the declared number of attributes
        is allowed.
        * page/DOMWindow.cpp:
        (WebCore::DOMWindow::adjustWindowRect): Moved from kjs_window.
        * page/DOMWindow.h:
        * page/DOMWindow.idl:


        Reviewed by Sam W.

        Split the ENABLE_SVG_EXPERIMENTAL_FEATURES flag into separate flags.

        Fixes <rdar://problem/5620249> Must disable SVG animation
        <rdar://problem/5612772> Disable SVG filters on Mac to match Windows behavior

        These layout test changes are caused by some of the experimental
        features no longer being enabled by default.

        * fast/dom/Window/window-properties-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/filters-blend-01-b-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/filters-color-01-b-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/filters-composite-02-b-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/filters-comptran-01-b-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/filters-conv-01-f-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/filters-diffuse-01-f-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/filters-displace-01-f-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/filters-example-01-b-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/filters-felem-01-b-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/filters-gauss-01-b-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/filters-image-01-b-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/filters-light-01-f-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/filters-morph-01-f-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/filters-offset-01-b-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/filters-specular-01-f-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/filters-tile-01-b-expected.txt:
        * platform/mac/svg/W3C-SVG-1.1/filters-turb-01-f-expected.txt:
        * platform/mac/svg/custom/empty-merge-expected.txt:
        * platform/mac/svg/custom/feComponentTransfer-Discrete-expected.txt:
        * platform/mac/svg/custom/feComponentTransfer-Gamma-expected.txt:
        * platform/mac/svg/custom/feComponentTransfer-Linear-expected.txt:
        * platform/mac/svg/custom/feComponentTransfer-Table-expected.txt:
        * platform/mac/svg/custom/feDisplacementMap-01-expected.txt:
        * platform/mac/svg/custom/filter-source-alpha-expected.txt:
        * platform/mac/svg/custom/image-with-transform-clip-filter-expected.txt:
        * platform/mac/svg/custom/invalid-css-expected.txt:
        * platform/mac/svg/custom/non-opaque-filters-expected.txt:
        * platform/mac/svg/custom/text-filter-expected.txt:
        * platform/mac/svg/custom/visibility-override-filter-expected.txt:
        * svg/batik/filters/filterRegions-expected.txt:
        * svg/batik/text/textEffect-expected.txt:
        * svg/batik/text/textEffect3-expected.txt:
        * svg/batik/text/textFeatures-expected.txt:
        * svg/batik/text/textProperties-expected.txt:
        * svg/custom/js-svg-constructors-expected.txt:
        * svg/dom/font-face-elements-expected.txt:
        * svg/webarchive/svg-feimage-subresources-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28570 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago2007-12-08 Kevin Ollivier <kevino@theolliviers.com>
alp@webkit.org [Sun, 9 Dec 2007 00:32:55 +0000 (00:32 +0000)]
2007-12-08  Kevin Ollivier  <kevino@theolliviers.com>

        Reviewed by Alp Toker.

        [CURL] didReceiveResponse() only called for HTTP loads

        [GDK] file:// relative CSS include URLs handled incorrectly

        Make sure CURL sets the ResourceResponse URL and calls
        didReceiveResponse for local files too.

        * platform/network/curl/ResourceHandleManager.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28569 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoSplit the ENABLE_SVG_EXPERIMENTAL_FEATURES flag into separate flags.
oliver@apple.com [Sun, 9 Dec 2007 00:27:57 +0000 (00:27 +0000)]
Split the ENABLE_SVG_EXPERIMENTAL_FEATURES flag into separate flags.

Reviewed by Sam W.

Fixes <rdar://problem/5620249> Must disable SVG animation
      <rdar://problem/5612772> Disable SVG filters on Mac to match Windows behavior

In order to allow finer grained control over the set of SVG features
this patch splits ENABLE_SVG_EXPERIMENTAL_FEATURES into the following
distinct flags:

by default only ENABLE_SVG_AS_IMAGE and ENABLE_SVG_USE are set.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28568 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoWebCore:
mitz@apple.com [Sat, 8 Dec 2007 23:45:40 +0000 (23:45 +0000)]

        Reviewed by Adele Peterson.

        - fix two bugs in parsing of stylesheets in <style> elements created by
          the parser:
          1. each such stylesheet is parsed twice, once when the text node is
             added and again when the </style> tag is reached
          2. re-inserting such a <style> element into the document fails to
             re-parse and apply its stylesheet.

        Test for bug #2: fast/dom/HTMLStyleElement/insert-parser-generated.html

        * html/HTMLStyleElement.cpp:
        * svg/SVGStyleElement.cpp:


        Reviewed by Adele Peterson.

        - test that re-inserting a parser-generated <style> element applies its

        * fast/dom/HTMLStyleElement: Added.
        * fast/dom/HTMLStyleElement/insert-parser-generated.html: Added.
        * platform/mac/fast/dom/HTMLStyleElement: Added.
        * platform/mac/fast/dom/HTMLStyleElement/insert-parser-generated-expected.checksum: Added.
        * platform/mac/fast/dom/HTMLStyleElement/insert-parser-generated-expected.png: Added.
        * platform/mac/fast/dom/HTMLStyleElement/insert-parser-generated-expected.txt: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28567 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoFix ChangeLog
weinig@apple.com [Sat, 8 Dec 2007 21:02:32 +0000 (21:02 +0000)]
Fix ChangeLog

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28566 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoJavaScriptCore:
weinig@apple.com [Sat, 8 Dec 2007 18:03:43 +0000 (18:03 +0000)]

        Reviewed by Darin.

        - Rename isSafeScript to allowsAccess.

        * bindings/NP_jsobject.cpp:
        * kjs/JSGlobalObject.h:
        (KJS::JSGlobalObject::allowsAccessFrom): Reverse caller/argument of allowsAccessFrom to match
        the new call.


        Reviewed by Darin.

        - Removes the faulty isSafeScript implementation that was only
          used for plugins.
        - Renames isSafeScript to allowsAccessFrom.

        * bindings/js/JSDOMWindowCustom.cpp:
        * bindings/js/kjs_dom.cpp:
        * bindings/js/kjs_window.cpp:
        * bindings/js/kjs_window.h:
        * bindings/objc/WebScriptObject.mm:
        (-[WebScriptObject _isSafeScript]): Reverse caller/argument of allowsAccessFrom to match
        the new call.
        * bindings/scripts/CodeGeneratorJS.pm:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28565 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago2007-12-08 Luca Bruno <lethalman88@gmail.com>
alp@webkit.org [Sat, 8 Dec 2007 14:39:02 +0000 (14:39 +0000)]
2007-12-08  Luca Bruno  <lethalman88@gmail.com>

        Reviewed by Alp Toker.

        [GTK] Some webview parts must use the focused frame.

        Also update some old code.

        * WebView/webkitprivate.cpp:
        (getFrameFromView): removed

        * WebView/webkitprivate.h:
        (getFrameFromView): removed

        * WebView/webkitwebview.cpp:
        (webkit_web_view_key_press_event): use focused frame
        (webkit_web_view_key_release_event): use focused frame

        * WebCoreSupport/EditorClientGtk.cpp:
        (WebKit::EditorClient::handleKeypress): fix for page up and page down keys for editable contents

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28564 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by Darin.
rwlbuis@webkit.org [Sat, 8 Dec 2007 12:27:03 +0000 (12:27 +0000)]
    Reviewed by Darin.

        SVGLengthList allows bad values

        Be more strict with svg lengths without a unit identifier.

        Test: svg/custom/invalid-lengthlist.svg

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28563 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Mac Tiger build fix.
rwlbuis@webkit.org [Sat, 8 Dec 2007 12:11:34 +0000 (12:11 +0000)]
    Mac Tiger build fix.

        Use the wtf prefix when including MathExtras.h.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28562 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoRemove 'Reviewed by' from build fix ChangeLog entry
alp@webkit.org [Sat, 8 Dec 2007 11:35:51 +0000 (11:35 +0000)]
Remove 'Reviewed by' from build fix ChangeLog entry

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28561 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago2007-12-08 Alp Toker <alp@atoker.com>
alp@webkit.org [Sat, 8 Dec 2007 11:32:36 +0000 (11:32 +0000)]
2007-12-08  Alp Toker  <alp@atoker.com>

        Reviewed by Alp Toker.

        GTK+ build fix (for ENABLE_VIDEO builds):

        Include MathExtras.h to get isfinite().

        * rendering/RenderMedia.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28560 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by Darin.
rwlbuis@webkit.org [Sat, 8 Dec 2007 08:53:33 +0000 (08:53 +0000)]
    Reviewed by Darin.

        svg_dynamic_cast should be removed

        Replace svg_dynamic_cast with a combination of
        isSVGElement and static_cast.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28559 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoWebCore:
antti@apple.com [Sat, 8 Dec 2007 06:49:14 +0000 (06:49 +0000)]

        Reviewed by Adele.

        Partial fix for <rdar://problem/5633400>
        Transformed <video>, <img>, <embed> are not clipped correctly until a repaint is forced

        Fix video painting when transform is applied.

        Test: media/video-transformed.html

        * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:


        Reviewed by Adele.

        Test video painting when transform is applied.

        * media/video-paint-test.js: Added.
        * media/video-transformed.html: Added.
        * platform/mac/media/video-transformed-expected.checksum: Added.
        * platform/mac/media/video-transformed-expected.png: Added.
        * platform/mac/media/video-transformed-expected.txt: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28558 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoWebKit/win:
sfalken@apple.com [Sat, 8 Dec 2007 05:44:54 +0000 (05:44 +0000)]

        Fix version parsing.

        Rubber-stamped by Oliver.

        * WebKit.vcproj/auto-version.sh:


        Fix version parsing.

        Rubber-stamped by Oliver.

        * Drosera/win/Drosera.vcproj/auto-version.sh:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28557 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Build modifications for Drosera.
sfalken@apple.com [Sat, 8 Dec 2007 04:26:15 +0000 (04:26 +0000)]
    Build modifications for Drosera.

        Reviewed by Adam.

        * Drosera/DroseraWin.make: Added.
        * Drosera/win/Drosera.vcproj/Drosera.rc:
        * Drosera/win/Drosera.vcproj/Drosera.vcproj:
        * Drosera/win/Drosera.vcproj/PRODUCTVERSION: Added.
        * Drosera/win/Drosera.vcproj/VERSION: Added.
        * Drosera/win/Drosera.vcproj/auto-version.sh: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28556 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoWebCore:
mitz@apple.com [Sat, 8 Dec 2007 01:48:50 +0000 (01:48 +0000)]

        Reviewed by Sam Weinig.

        - fix http://bugs.webkit.org/show_bug.cgi?id=16348
          @font-face does not affect the default style

        Test: fast/css/font-face-default-font.html

        * dom/Document.cpp:
        (WebCore::Document::recalcStyle): Pass our font selector to
        Font::update() if we already have one.


        Reviewed by Sam Weinig.

        - test for http://bugs.webkit.org/show_bug.cgi?id=16348
          @font-face does not affect the default style

        * fast/css/font-face-default-font.html: Added.
        * platform/mac-leopard/fast/css: Added.
        * platform/mac-leopard/fast/css/font-face-default-font-expected.checksum: Added.
        * platform/mac-leopard/fast/css/font-face-default-font-expected.png: Added.
        * platform/mac/fast/css/font-face-default-font-expected.txt: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28555 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by Kevin Decker and Tim Hatcher.
darin@apple.com [Sat, 8 Dec 2007 01:37:05 +0000 (01:37 +0000)]
    Reviewed by Kevin Decker and Tim Hatcher.

        - speculative fix for <rdar://problem/5400159> CrashTracer: [USER] 726 crashes
          in Safari at com.apple.WebKit: -[WebHTMLView(WebPrivate) _updateMouseoverWithFakeEvent] + 389

        * WebView/WebHTMLView.mm:
        (-[WebHTMLView _frameOrBoundsChanged]): Only schedule the mouseover timer if we are in a window
        and not closed. That's because viewDidMoveToWindow and close are the entry points for cancelling.
        (-[WebHTMLView close]): Add code to cancel both timers. Needed for the case where the entire
        window goes away, and the view is never removed from the window.
        (-[WebHTMLView viewDidMoveToWindow]): Don't do work if the view is closed.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28554 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Fix build.
sfalken@apple.com [Sat, 8 Dec 2007 01:06:37 +0000 (01:06 +0000)]
    Fix build.

        * WebKit.vcproj/WebKit.vcproj:
        * WebScriptCallFrame.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28553 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Fix build.
sfalken@apple.com [Sat, 8 Dec 2007 01:00:26 +0000 (01:00 +0000)]
    Fix build.

        * WebHistory.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28552 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by Sam Weinig.
ggaren@apple.com [Sat, 8 Dec 2007 00:59:48 +0000 (00:59 +0000)]
    Reviewed by Sam Weinig.

        Refactored variable access optimization: Removed the assumption that
        the FunctionBodyNode holds the symbol table.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28551 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago - try to fix build
darin@apple.com [Sat, 8 Dec 2007 00:56:14 +0000 (00:56 +0000)]
    - try to fix build

        * Api/qwebhistoryinterface.cpp:
        (WebCore::historyContains): There's a WebCore function here in WebKit! Needs to
        be updated, since WebCore changed, but this should not be here.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28550 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Build fix: added #include.
ggaren@apple.com [Sat, 8 Dec 2007 00:39:50 +0000 (00:39 +0000)]
    Build fix: added #include.

        * kjs/nodes.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28549 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Build fix: added #include.
ggaren@apple.com [Sat, 8 Dec 2007 00:35:08 +0000 (00:35 +0000)]
    Build fix: added #include.

        * kjs/interpreter.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28548 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Build fix: added #include.
ggaren@apple.com [Sat, 8 Dec 2007 00:30:42 +0000 (00:30 +0000)]
    Build fix: added #include.

        * kjs/grammar.y:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28547 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Build fix: added #include.
ggaren@apple.com [Sat, 8 Dec 2007 00:24:51 +0000 (00:24 +0000)]
    Build fix: added #include.

        * kjs/function_object.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28546 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by Sam Weinig.
ggaren@apple.com [Sat, 8 Dec 2007 00:23:31 +0000 (00:23 +0000)]
    Reviewed by Sam Weinig.

        Fixed crash seen running layout tests.

        Reverted a change I made earlier today. Added a comment to try to
        discourage myself from making this mistake a third time.

        * kjs/function.cpp:
        * kjs/function.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28545 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago - fix Windows build
darin@apple.com [Sat, 8 Dec 2007 00:22:27 +0000 (00:22 +0000)]
    - fix Windows build

        * bridge/win/GlobalHistoryWin.cpp:
        (WebCore::historyContains): Missed a rename.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28544 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by Anders and Darin
beidson@apple.com [Sat, 8 Dec 2007 00:05:07 +0000 (00:05 +0000)]
    Reviewed by Anders and Darin

        When a statement bumps up against the quota and the UI Delegate grants more space, we need to
        actually set the new maximum size on the SQLiteDatabase (in addition to storing the new max quota
        in the DatabaseTracker, which was already done)

        * storage/SQLTransaction.cpp:
        (WebCore::SQLTransaction::runStatements): If a statement is being retried, set the maximum size on
          the SQLiteDatabase to the new maximum size

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28543 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago - fix Tiger build
darin@apple.com [Sat, 8 Dec 2007 00:02:56 +0000 (00:02 +0000)]
    - fix Tiger build

        * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: Tiger didn't even have
        QTKIT_VERSION_MAX_ALLOWED, so add logic to work without that.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28542 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by Darin's rubberstamp
beidson@apple.com [Sat, 8 Dec 2007 00:02:46 +0000 (00:02 +0000)]
    Reviewed by Darin's rubberstamp

        When developing the Database feature and dealing with UI Delegate issues, it is important to have
        live examples on the web to help reproduce certain situations.

        This file is a dumping ground for such examples, and starts out with one function - the ability to add
        arbitrary amounts of data to a database to test the quota-related mechanisms of the UI

        * misc/DatabaseTester.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28541 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by Sam Weinig.
ggaren@apple.com [Sat, 8 Dec 2007 00:01:13 +0000 (00:01 +0000)]
    Reviewed by Sam Weinig.

        Refactored parsing of global code: Removed the assumption that
        ProgramNode inherits from FunctionBodyNode from the parser.

        * kjs/Parser.cpp:
        * kjs/Parser.h:
        * kjs/function.cpp:
        * kjs/grammar.y:
        * kjs/nodes.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28540 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago - fix 64-bit build, hopefully without breaking Tiger build
darin@apple.com [Fri, 7 Dec 2007 23:53:01 +0000 (23:53 +0000)]
    - fix 64-bit build, hopefully without breaking Tiger build

        * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
        Don't use Movies.h constants that are nonexistent in 64-bit.
        Define the new QTMovie.h constants, though, when using an older QTKit.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28539 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Tried to fix build by suppressing warning.
ggaren@apple.com [Fri, 7 Dec 2007 23:22:32 +0000 (23:22 +0000)]
    Tried to fix build by suppressing warning.

        * WebScriptCallFrame.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28538 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by Anders
beidson@apple.com [Fri, 7 Dec 2007 23:00:01 +0000 (23:00 +0000)]
    Reviewed by Anders

        Fix <rdar://problem/5636115> - Prompted for quota increase to create database when it already existed

        * storage/DatabaseTracker.cpp:
        (WebCore::DatabaseTracker::canEstablishDatabase): Check hasEntryForDatabase before doing any prompting
        (WebCore::DatabaseTracker::hasEntryForDatabase): Check and see if this database already exists
        * storage/DatabaseTracker.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28537 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoWebCore:
darin@apple.com [Fri, 7 Dec 2007 22:58:09 +0000 (22:58 +0000)]

        Reviewed by Mitz.

        - http://bugs.webkit.org/show_bug.cgi?id=15981
          speed up visited-link code a bit

        * bridge/GlobalHistory.h: Change historyContains to take a character pointer plus length
        instead of requiring a DeprecatedString.

        * bridge/mac/GlobalHistoryMac.mm: (WebCore::historyContains): Updated for above change.
        Also removes pointless "fast Latin-1" case that was never used.
        * bridge/win/GlobalHistoryWin.cpp: (WebCore::historyContains): Ditto.
        * platform/gtk/TemporaryLinkStubs.cpp: (WebCore::historyContains): Ditto.
        * platform/wx/TemporaryLinkStubs.cpp: (WebCore::historyContains): Ditto.

        * css/CSSStyleSelector.cpp:
        (WebCore::findHash): Added. Helper for cleanpath.
        (WebCore::findSlashDotDotSlash): Ditto.
        (WebCore::findSlashSlash): Ditto.
        (WebCore::findSlashDotSlash): Ditto.
        (WebCore::cleanpath): Changed to use fast helper functions instead of slower general-purpose
        DeprecatedString find function.
        (WebCore::containsColonSlashSlash): Added. Helper for checkPseudoState.
        (WebCore::checkPseudoState): Got rid of reference count churn by using an AtomicString*
        instead of an AtomicString for the attribute value. Changed to use fast helper function
        instead of slower DeprecatedString::contains function, and also made the fast case not
        bother allocating a DeprecatedConstString.

        - unrelated tiny cleanup

        * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
        (WebCore::releaseCachedStops): Use static_cast instead of reinterpret_cast.
        (WebCore::cgGradientCallback): Ditto.


        Reviewed by Mitz.

        - http://bugs.webkit.org/show_bug.cgi?id=15981
          speed up visited-link code a bit

        * History/WebHistory.mm: Removed unused Latin-1 code path.
        (-[_WebCoreHistoryProvider containsURL:length:]): Updated for method name change.


        Reviewed by Mitz.

        - http://bugs.webkit.org/show_bug.cgi?id=15981
          speed up visited-link code a bit

        * WebHistory.cpp: Removed unused Latin-1 code path.
        (_WebCoreHistoryProvider::containsItem): Updated for function name change.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28536 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Fix build on Tiger (Mark Rowe told me how).
darin@apple.com [Fri, 7 Dec 2007 22:45:23 +0000 (22:45 +0000)]
    Fix build on Tiger (Mark Rowe told me how).

        * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
        Include <objc/objc-runtime.h>, which existed back on Tiger,
        rather than <objc/runtime.h>, which did not.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28535 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Build fix: added JSVariableObject.cpp to the .pri file.
ggaren@apple.com [Fri, 7 Dec 2007 22:45:17 +0000 (22:45 +0000)]
    Build fix: added JSVariableObject.cpp to the .pri file.

        * JavaScriptCore.pri:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28534 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Build fix: added #include.
ggaren@apple.com [Fri, 7 Dec 2007 22:37:42 +0000 (22:37 +0000)]
    Build fix: added #include.

        * kjs/function.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28533 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Build fix: rolling out last build fix to change #include path.
ggaren@apple.com [Fri, 7 Dec 2007 22:33:00 +0000 (22:33 +0000)]
    Build fix: rolling out last build fix to change #include path.


        * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28532 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoJavaScriptCore:
sfalken@apple.com [Fri, 7 Dec 2007 22:30:26 +0000 (22:30 +0000)]

        Re-named our B&I flag from BUILDBOT to PRODUCTION.

        Reviewed by Sam Weinig.

        * JavaScriptCore.vcproj/JavaScriptCore.make:
        * JavaScriptCore.vcproj/testkjs/testkjs.vcproj:


        Re-named our B&I flag from BUILDBOT to PRODUCTION.

        Reviewed by Sam Weinig.

        * WebCore.vcproj/WebCore.make:


        Re-named our B&I flag from BUILDBOT to PRODUCTION.
        Fix our tiny versioning.
        Bump our product version.
        Use just the major version in the fallback VERSION files.
        Pick up the version numbers from the production builder.

        Reviewed by Sam Weinig.

        * Interfaces/WebKit.idl:
        * WebKit.vcproj/Interfaces.vcproj:
        * WebKit.vcproj/PRODUCTVERSION:
        * WebKit.vcproj/VERSION:
        * WebKit.vcproj/WebKit.make:
        * WebKit.vcproj/WebKit.rc:
        * WebKit.vcproj/WebKit.vcproj:
        * WebKit.vcproj/auto-version.sh:
        * WebKitDLL.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28531 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Build fix: corrected #include path.
ggaren@apple.com [Fri, 7 Dec 2007 22:26:11 +0000 (22:26 +0000)]
    Build fix: corrected #include path.

        * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28530 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Build fix: removed stray name qualification.
ggaren@apple.com [Fri, 7 Dec 2007 22:23:41 +0000 (22:23 +0000)]
    Build fix: removed stray name qualification.

        * kjs/function.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28529 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Build fix: moved functions with qualified names outside of class
ggaren@apple.com [Fri, 7 Dec 2007 22:14:17 +0000 (22:14 +0000)]
    Build fix: moved functions with qualified names outside of class

        * kjs/JSVariableObject.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28528 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoJavaScriptCore:
ggaren@apple.com [Fri, 7 Dec 2007 22:05:55 +0000 (22:05 +0000)]

        Reviewed by Sam Weinig.

        Next step in refactoring JSGlobalObject: Added JSVariableObject class,
        and factored symbol-table-related code into it. (JSGlobalObject doesn't
        use the symbol table code yet, though.)

        Layout and JS tests, and testapi, pass. SunSpider reports no regression.


        Reviewed by Sam Weinig.

        Added some namespace qualifications and a forwarding header, now that
        KJS::Node is sometimes #included in WebCore by JavaScriptCore headers.

        * ForwardingHeaders/wtf/ListRefPtr.h: Added.
        * bindings/js/JSXSLTProcessor.cpp:
        * bindings/js/kjs_binding.cpp:


        Reviewed by Sam Weinig.

        Added a forwarding header, since we now #include nodes.h through some
        JavaScriptCore headers.

        * ForwardingHeaders/wtf/ListRefPtr.h: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28527 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Add SoftLinking.h for Windows and use it in a few places
aroben@apple.com [Fri, 7 Dec 2007 20:21:17 +0000 (20:21 +0000)]
 Add SoftLinking.h for Windows and use it in a few places


         Add SoftLinking.h for Windows and use it in a few places

         Reviewed by Oliver.

         * WebCore.vcproj/WebCore.vcproj: Added new file to project.
         * platform/win/PlatformScrollBarSafari.cpp: Use SoftLinking.h.
         (WebCore::PlatformScrollbar::PlatformScrollbar): Removed manual
         soft-linking calls.
         (WebCore::PlatformScrollbar::paintButton): Check for the presence of
         the SafariTheme library now that we can't check for the presence of
         paintThemePart directly.
         (WebCore::PlatformScrollbar::paintTrack): Ditto.
         (WebCore::PlatformScrollbar::paintThumb): Ditto.
         * platform/win/SoftLinking.h: Copied from WebCore/platform/mac/SoftLinking.h.
         * rendering/RenderThemeSafari.cpp: Same basic changes as to
         * rendering/RenderThemeSafari.h: Removed m_themeDLL member.


         Use SoftLinking.h in WebKitClassFactory.

         Reviewed by Oliver.

         * WebKitClassFactory.cpp:
         (WebKitClassFactory::WebKitClassFactory): We don't have to worry about
         not finding STInitialize anymore now that a version of SafariTheme
         containing this function has shipped.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28526 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by Geoff.
darin@apple.com [Fri, 7 Dec 2007 19:59:58 +0000 (19:59 +0000)]
    Reviewed by Geoff.

        - fix http://bugs.webkit.org/show_bug.cgi?id=16185
          jsRegExpCompile should not add implicit non-capturing bracket

        While this does not make SunSpider faster, it will make many regular
        expressions a bit faster.

        * pcre/pcre_compile.cpp: Moved CompileData struct in here from the
        header since it's private to this file.
        (compile_branch): Updated for function name change.
        (compile_bracket): Renamed from compile_regex, since, for one thing,
        this does not compile an entire regular expression.
        (calculateCompiledPatternLengthAndFlags): Removed unused item_count
        local variable. Renamed CompileData to cd instead of compile_block
        to be consistent with other functions. Added code to set the
        needOuterBracket flag if there's at least one "|" at the outer level.
        (jsRegExpCompile): Renamed CompileData to cd instead of compile_block
        to be consistent with other functions. Removed unneeded "size" field
        from the compiled regular expression. If no outer bracket is needed,
        then use compile_branch to compile the regular expression.

        * pcre/pcre_internal.h: Removed the CompileData struct, which is now
        private to pcre_compile.cpp. Removed the size member from JSRegExp.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28525 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoWebCore:
darin@apple.com [Fri, 7 Dec 2007 19:44:20 +0000 (19:44 +0000)]

        Reviewed by Adele.

        - fix <rdar://problem/5608795> CrashTracer: 481 crashes in Safari
          at WebCore::HTMLSelectElement::saveState const + 152

        Test: fast/forms/select-set-inner.html

        * dom/ContainerNode.cpp:
        (WebCore::ContainerNode::removeChildren): Added a return value, as with other
        calls that change children, so we can optimize for the case where it does nothing.
        (WebCore::ContainerNode::cloneChildNodes): Changed parameter type to ContainerNode.
        * dom/ContainerNode.h: See above.

        * html/HTMLOptGroupElement.cpp:
        (WebCore::HTMLOptGroupElement::removeChildren): Override removeChildren and call
        recalcSelectOptions in that case.
        (WebCore::HTMLOptGroupElement::childrenChanged): Override childrenChanged instead of
        addChild, for consistency with HTMLSelectElement; no need to override both.
        (WebCore::HTMLOptGroupElement::groupLabelText): Made const.
        * html/HTMLOptGroupElement.h: See above.

        * html/HTMLSelectElement.cpp: Don't override addChild any more, because we already
        override childrenChanged, and addChild calls that.
        (WebCore::HTMLSelectElement::removeChildren): Override removeChildren and call
        recalcSelectOptions in that case.
        (WebCore::HTMLSelectElement::recalcListItems): Tightened up the code a little bit
        by using a for loop and traverseNextSibling. Also added some new comments and
        removed some obsolete ones.
        (WebCore::HTMLSelectElement::checkListItems): Added. Debug-only check to make
        sure we don't have a stale list items vector.
        * html/HTMLSelectElement.h: Changed listItems() to invoke checkListItems().
        This will help us catch cases where we have too few calls to setRecalcListItems.


        Reviewed by Adele.

        - test for <rdar://problem/5608795> CrashTracer: 481 crashes in Safari
          at WebCore::HTMLSelectElement::saveState const + 152

        * fast/forms/select-set-inner-expected.txt: Added.
        * fast/forms/select-set-inner.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28524 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoWebCore:
mitz@apple.com [Fri, 7 Dec 2007 19:24:19 +0000 (19:24 +0000)]

        Reviewed by Darin Adler.

        - WebCore part of fixing <rdar://problem/5499918> REGRESSION: insertion point in input field with custom border cuts holes in focus ring interior edges

        Test: fast/repaint/focus-ring.html

        * editing/SelectionController.cpp:
        (WebCore::SelectionController::caretRepaintRect): Changed to return just
        the caret rect without any padding.
        (WebCore::SelectionController::recomputeCaretRect): Changed to repaint
        just the caret rect without any padding.
        * platform/graphics/GraphicsContext.h: Removed setFocusRingClip() and
        * platform/graphics/cairo/GraphicsContextCairo.cpp: Ditto.
        * platform/graphics/cg/GraphicsContextCG.cpp: Ditto.
        * platform/graphics/cg/GraphicsContextPlatformPrivate.h: Removed
        m_focusRingClip member.
        * platform/graphics/mac/GraphicsContextMac.mm:
        (WebCore::GraphicsContext::drawFocusRing): Changed to call
        wkDrawFocusRing() once without setting up additional clip. On Leopard,
        wkDrawFocusRing() respects the context clip now. On Tiger, a
        transparency layer is used to apply clipping to the focus ring.
        * platform/graphics/qt/GraphicsContextQt.cpp: Removed focus ring clip
        methods and member.
        * platform/graphics/wx/GraphicsContextWx.cpp: Ditto.
        * platform/mac/WebCoreSystemInterface.h: Removed the clipRect argument
        to wkDrawFocusRing().
        * platform/mac/WebCoreSystemInterface.mm: Ditto.
        * rendering/RenderLayer.cpp:
        (WebCore::setClip): Removed call to set the focus ring clip.
        (WebCore::restoreClip): Removed call to reset the focus ring clip.


        Reviewed by Darin Adler.

        - updated system interface for fixing <rdar://problem/5499918> REGRESSION: insertion point in input field with custom border cuts holes in focus ring interior edges

        * WebKitSystemInterface.h:
        * libWebKitSystemInterfaceLeopard.a:
        * libWebKitSystemInterfaceTiger.a:


        Reviewed by Darin Adler.

        - repaint test for <rdar://problem/5499918> REGRESSION: insertion point in input field with custom border cuts holes in focus ring interior edges

        * fast/repaint/focus-ring.html: Added.
        * platform/mac/fast/repaint/focus-ring-expected.checksum: Added.
        * platform/mac/fast/repaint/focus-ring-expected.png: Added.
        * platform/mac/fast/repaint/focus-ring-expected.txt: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28523 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by Adam Roben
beidson@apple.com [Fri, 7 Dec 2007 19:09:30 +0000 (19:09 +0000)]
    Reviewed by Adam Roben

        * misc/DatabaseExample.html: Changed to differentiate failure between running with an
          unsupported browser or some other error that prevented the database from opening.
          In the future we can use ExceptionCodes returned from openDatabase(), but a good list
          of those don't exist yet

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28522 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by Antti Koivisto and Kevin Decker.
darin@apple.com [Fri, 7 Dec 2007 18:44:05 +0000 (18:44 +0000)]
    Reviewed by Antti Koivisto and Kevin Decker.

        - fix <rdar://problem/5601586> QtKit should be dynamically loaded upon need, not linked at startup

        Also did a lot of small tweaks to MediaPlayerPrivateQTKit.

        * WebCore.xcodeproj/project.pbxproj: Don't link to QTKit.

        * platform/graphics/mac/MediaPlayerPrivateQTKit.h: Omit unneeded includes and declarations.
        Made a lot more functions const. Made a few more members private and a couple inline.
        * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: Added soft linking machinery for all the
        things we currently use in QTKit. It's a little more awkward for classes and other data objects
        than it is for functions, but still relatively straightforward, with no changes needed to the
        client code. Added using namespace directives. Made a cuePointTimerInterval constant and put
        it at the top of the file. Use 0 consistently instead of sometimes 0 and sometimes 0.0f.
        (WebCore::MediaPlayerPrivate::MediaPlayerPrivate): Removed unneeded initialization of RetainPtr
        members to nil.
        (WebCore::MediaPlayerPrivate::createQTMovie): Use adoptNS instead of autorelease.
        (WebCore::MediaPlayerPrivate::createQTMovieView): Ditto. Also use -[NSColor clearColor].
        (WebCore::MediaPlayerPrivate::createQTTime): Remove an unneeded type cast that had no effect.
        Changed to use long instead of int because that's the type for a QTTime time scale anyway.
        (WebCore::MediaPlayerPrivate::duration): Use a static_cast instead of a C-style cast.
        (WebCore::MediaPlayerPrivate::currentTime): Ditto. Also merged into a single expression.
        (WebCore::MediaPlayerPrivate::cuePointTimerFired): Added code to make a copy of the cue
        points set to avoid a potential problem with a set being modified as we iterate it.
        (WebCore::MediaPlayerPrivate::bytesLoaded): Removed unneeded null check of m_qtMovie.
        (WebCore::MediaPlayerPrivate::updateStates): Instead of comments explaining the numeric
        values, used the constants from the headers directly.
        (WebCore::MediaPlayerPrivate::getSupportedTypes): Instead of (QTMovieFileTypeOptions)0,
        pass the named constant with value 0, QTIncludeCommonTypes. Skipped the intermediate type
        of NSString to remove one cast. Replaced C-style cast with reinterpret_cast (arguably
        no better). Used RetainPtr instead of explicit CFRelease calls.

        * platform/mac/SoftLinking.h: Added macros to do soft linking for classes and for pointers.
        It's not quite as automatic as the soft linking we can do for functions, since these define
        functions to get the values, so you need to define macros to make what look like variable
        accesses turn into function calls. See MediaPlayerPrivateQTKit for the details.

        * html/HTMLMediaElement.h:
        * html/TimeRanges.h:
        * html/VoidCallback.h:
        * platform/graphics/MediaPlayer.h:
        Use angle brackets for wtf includes. Omit unneeded includes.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28521 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago <rdar://problem/5556378> Implemented database related UI delegate methods...
adachan@apple.com [Fri, 7 Dec 2007 18:43:09 +0000 (18:43 +0000)]
    <rdar://problem/5556378> Implemented database related UI delegate methods (prompts for new/enlarged databases)

        Reviewed by Darin.

        * Interfaces/IWebUIDelegatePrivate.idl:
        * WebChromeClient.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28520 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoWebCore:
mitz@apple.com [Fri, 7 Dec 2007 18:26:50 +0000 (18:26 +0000)]

        Reviewed by Darin Adler.

        - fix http://bugs.webkit.org/show_bug.cgi?id=16334
          <rdar://problem/5634923> REGRESSION (r28299): Homepage of any DotMac Web Gallery won't load completely

        Test: fast/dynamic/subtree-no-common-root-static-y.html

        * rendering/RenderObject.cpp:
        (WebCore::RenderObject::markContainingBlocksForLayout): Changed the call
        to setChildNeedsLayout() to not mark containing blocks and added a
        separate call to markContainingBlocksForLayout() that will not schedule
        a layout if we are already in the middle of scheduleRelayoutOfSubtree().


        Reviewed by Darin Adler.

        - test for http://bugs.webkit.org/show_bug.cgi?id=16334
          <rdar://problem/5634923> REGRESSION (r28299): Homepage of any DotMac Web Gallery won't load completely

        * fast/dynamic/subtree-no-common-root-static-y.html: Added.
        * platform/mac/fast/dynamic/subtree-no-common-root-static-y-expected.checksum: Added.
        * platform/mac/fast/dynamic/subtree-no-common-root-static-y-expected.png: Added.
        * platform/mac/fast/dynamic/subtree-no-common-root-static-y-expected.txt: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28519 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoFix wxWebKit page leaks.
kevino@webkit.org [Fri, 7 Dec 2007 17:24:17 +0000 (17:24 +0000)]
Fix wxWebKit page leaks.

Reviewed by Darin Adler.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28518 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoMSVC7 build fix due to a compiler bug with placement new and/or templates and casting.
kevino@webkit.org [Fri, 7 Dec 2007 17:18:38 +0000 (17:18 +0000)]
MSVC7 build fix due to a compiler bug with placement new and/or templates and casting.

Reviewed by Darin Adler.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28517 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago2007-12-07 Luca Bruno <lethalman88@gmail.com>
alp@webkit.org [Fri, 7 Dec 2007 11:47:32 +0000 (11:47 +0000)]
2007-12-07  Luca Bruno  <lethalman88@gmail.com>

        Reviewed by Alp Toker.

        [GTK] Key bindings must work with focused frames.

        There are still more cases where getFrameFromView() is mis-used that
        need to be fixed, but this is a good start.

        * WebView/webkitwebview.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28516 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by Darin.
ap@webkit.org [Fri, 7 Dec 2007 10:17:08 +0000 (10:17 +0000)]
    Reviewed by Darin.

        <rdar://problem/5632997> REGRESSION: www.xerox.ru doesn't work

        Test: http/tests/misc/empty-cookie.html

        * platform/mac/CookieJar.mm:
        (WebCore::setCookies): Don't store empty cookies.
        (WebCore::cookies): Filter out empty cookies if we have them, as they could have been set
        with an earlier version of Leopard!

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28515 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Fixed the if statement (ERROR_SUCCESS is 0 and we were actually
adachan@apple.com [Fri, 7 Dec 2007 07:27:40 +0000 (07:27 +0000)]
    Fixed the if statement (ERROR_SUCCESS is 0 and we were actually
        returning true when there's an error).

        Reviewed by Steve.

        * platform/win/FileSystemWin.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28514 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by Darin.
ap@webkit.org [Fri, 7 Dec 2007 07:02:16 +0000 (07:02 +0000)]
    Reviewed by Darin.

        JSCRE needs to import the PCRE test suite

        We can use two files from PCRE test suite, as others either test for features not supported
        in JS, or use internal debugging facilities of PCRE.

        The files are checked in almost unmodified, I have only converted them to UTF-8 and removed two
        huge test cases that were completely incompatible with JSC, and were polluting the output.

        Many of the failures in results are just legitimate differences in behavior or possibly
        problems with the test runner, but some may be genuine bugs and even regressions in JSC.

        * fast/regex: Added.
        * fast/regex/pcre-test-runner.js: Added.
        * fast/regex/test1-expected.txt: Added.
        * fast/regex/test1.html: Added.
        * fast/regex/test4-expected.txt: Added.
        * fast/regex/test4.html: Added.
        * fast/regex/testinput1: Added.
        * fast/regex/testinput4: Added.
        * fast/regex/testoutput1: Added.
        * fast/regex/testoutput4: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28513 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by Oliver's rubber stamp
beidson@apple.com [Fri, 7 Dec 2007 06:17:55 +0000 (06:17 +0000)]
    Reviewed by Oliver's rubber stamp

        Let's go ahead and call the correct UI Delegate method, shall we?

        * WebCoreSupport/WebChromeClient.mm:
        (WebChromeClient::requestQuotaIncreaseForDatabaseOperation): Call the correct UI delegate

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28512 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoLinux build fix - ensure that webcore is linked before jscore so that the linker...
kevino@webkit.org [Fri, 7 Dec 2007 05:33:45 +0000 (05:33 +0000)]
Linux build fix - ensure that webcore is linked before jscore so that the linker will know which symbols it needs to link in. Also fix MSVC project file name typo for sample app.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28511 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago - fix broken regression test
darin@apple.com [Fri, 7 Dec 2007 03:59:52 +0000 (03:59 +0000)]
    - fix broken regression test

        * bindings/js/kjs_binding.cpp:
        (KJS::setDOMException): Oops, this was just supposed to be PERMISSION_DENIED.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28510 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by Sam Weinig.
darin@apple.com [Fri, 7 Dec 2007 03:18:21 +0000 (03:18 +0000)]
    Reviewed by Sam Weinig.

        - fix http://bugs.webkit.org/show_bug.cgi?id=16332
          ObjC DOM exception object descriptions should include the exception name

        * WebCore.pro: Added ExceptionCode.cpp.
        * WebCore.vcproj/WebCore.vcproj: Added ExceptionCode.cpp.
        * WebCore.xcodeproj/project.pbxproj: Added ExceptionCode.cpp.
        * WebCoreSources.bkl: Added ExceptionCode.cpp.

        * bindings/js/kjs_binding.cpp: (KJS::setDOMException): Moved the code to decompose an
        ExceptionCode into ExceptionCode.h/cpp -- getExceptionCodeDescription. Also removed
        the many unneeded includes that were here. Had to keep one special case here, for

        * bindings/objc/ExceptionHandlers.mm: (WebCore::raiseDOMException): Changed to use the
        new getExceptionCodeDescription function so that this shares the exception name
        information that was previously only available to JavaScript.

        * dom/ExceptionCode.cpp: Copied from bindings/js/kjs_binding.cpp.
        (WebCore::getExceptionCodeDescription): Added some assertions, and made the function
        handle exception names in a slightly more robust way that is not subject to integer
        overflow. (Not a real world issue since we should never receive a bad exception code.)

        * dom/ExceptionCode.h: Added the ExceptionCodeDescription struct and the
        getExceptionCodeDescription function.

        * svg/SVGException.h: Added a missing #include and got rid of some comments. Some of
        the comments were mildly helpful, but others were incorrect. This now matches the other
        exception-related headers such as RangeException.h.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28509 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by Darin
beidson@apple.com [Fri, 7 Dec 2007 02:49:48 +0000 (02:49 +0000)]
    Reviewed by Darin

        Fixed a glaring bug that would prevent a statement from getting run a second time

        * storage/SQLStatement.cpp:
        (WebCore::SQLStatement::execute): Clear failure due to quota *before* we check the error
          and return early
        (WebCore::SQLStatement::clearFailureDueToQuota): Only clear the error if it was a quota error

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28508 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by Oliver Hunt.
timothy@apple.com [Fri, 7 Dec 2007 02:10:13 +0000 (02:10 +0000)]
    Reviewed by Oliver Hunt.

        Use keydown instead of keypress so keyIdentifier can be used.

        * page/inspector/ConsolePanel.js: Use keydown instead of keypress.
        * page/inspector/DatabasePanel.js: Ditto.
        * page/inspector/inspector.js: Ditto. Plus call removeEventListener
        before deleting windowLoaded.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28507 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Rename FontsTable.plist to FontsList.plist
aroben@apple.com [Fri, 7 Dec 2007 02:05:16 +0000 (02:05 +0000)]
    Rename FontsTable.plist to FontsList.plist

        Rubberstamped by Hyatt.

        * platform/graphics/win/FontDatabase.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28506 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Fixed <rdar://5540000> onbeforeunload doesn't fire when closing window/tab
alice.liu@apple.com [Fri, 7 Dec 2007 02:00:27 +0000 (02:00 +0000)]
    Fixed <rdar://5540000> onbeforeunload doesn't fire when closing window/tab

        Reviewed by Darin.

        * Interfaces/IWebViewPrivate.idl:
        * WebView.cpp:
        * WebView.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28505 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by Darin
beidson@apple.com [Fri, 7 Dec 2007 01:51:04 +0000 (01:51 +0000)]
    Reviewed by Darin

        Tweaked a comment and a few assertions from my last checkin

        * storage/SQLStatement.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28504 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoFix <rdar://5615283> Crash in WebFrame::receivedPolicyDecision
aroben@apple.com [Fri, 7 Dec 2007 01:04:43 +0000 (01:04 +0000)]
Fix <rdar://5615283> Crash in WebFrame::receivedPolicyDecision


        Remove some assertions we know can fire and replace them with a FIXME

        Reviewed by Anders.

        * WebCoreSupport/WebFrameLoaderClient.mm:


        Fix <rdar://5615283> Crash in WebFrame::receivedPolicyDecision

        It's possible for a second policy listener to be created while we're
        waiting for a decision on the first policy listener. In this case we
        would crash when the first policy listener had a decision made. Mac
        WebKit already handles this by invalidating any existing policy
        listener when creating a new one.

        A test case is coming in a future commit.

        Reviewed by Anders.

        * WebFrame.cpp:
        (WebFrame::setUpPolicyListener): Copy the Mac behavior of invalidating
        any existing policy listener, and remove some assertions that we know
        can fire.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28503 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by Darin
beidson@apple.com [Fri, 7 Dec 2007 00:50:32 +0000 (00:50 +0000)]
    Reviewed by Darin

        Finished hooking up UI Delegate for databases - Database operations will now enforce a size quota and
        will ask the UI Delegate for more space when that quota is met

        * platform/sql/SQLiteDatabase.cpp: Add the new SQLResultFull constant
        * platform/sql/SQLiteDatabase.h: Ditto

        * storage/Database.cpp:
        (WebCore::Database::securityOriginData): Added this accessor, copying for thread safety
        (WebCore::Database::stringIdentifier): Ditto
        * storage/Database.h:

        * storage/SQLStatement.cpp:
        (WebCore::SQLStatement::execute): Change to return an enum that represents 3 states - success, error, and quota.
          If the result is quota, this statement expects that it might be run again, presumably after the user increases
          the quota
        (WebCore::SQLStatement::setFailureDueToQuota): Setup a quota failure, including a flag and the error
        (WebCore::SQLStatement::clearFailureDueToQuota): Clear a quota failure, for when the statement is rerun
        * storage/SQLStatement.h:

        * storage/SQLTransaction.cpp:
        (WebCore::SQLTransaction::performPendingCallback): Added an acceptable callback pointer
        (WebCore::SQLTransaction::openTransactionAndPreflight): Setup the quota in the database that will remain for this
          transaction.  Note that in this patch, the quota being set is wrong - it makes sense to fix that in a follow up patch
        (WebCore::SQLTransaction::runStatements): Modified to add the ability to re-run a statement based on the UI delegate
          decision and whether the current statement was already run
        (WebCore::SQLTransaction::runCurrentStatement): Added another result condition - the Quota result - and handle it
        (WebCore::SQLTransaction::handleCurrentStatementError): Statements can now error-out from two places, so the code
          that handles a statement error was moved here
        (WebCore::SQLTransaction::deliverQuotaIncreaseCallback): Added - Consult the UI delegate for more quota, then
          reschedule the current statement on the database thread
        * storage/SQLTransaction.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28502 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Change the ASSERT added for the previous fix. The ASSERT was firing for 10...
timothy@apple.com [Thu, 6 Dec 2007 23:32:45 +0000 (23:32 +0000)]
    Change the ASSERT added for the previous fix. The ASSERT was firing for 10.5.0.
        Only assert if the major version is zero, since zero is handled in the other cases.

        * WebView/WebView.mm:
        (callGestalt): Remove the ASSERT.
        (createMacOSXVersionString): ASSERT that major is not zero.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28501 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago <rdar://problem/5614257> Crash in timer / hashtable code due to uncaught...
sfalken@apple.com [Thu, 6 Dec 2007 23:31:46 +0000 (23:31 +0000)]
    <rdar://problem/5614257> Crash in timer / hashtable code due to uncaught exception

        Don't use callback-based timers, since these cause Windows to eat Windows crashes
        in code the timers call.

        Windows appears to be defending against "shatter" attacks partially by setting
        up a structured exception block while dispatching callback-based WM_TIMERs.

        I verified this by adding a divide by zero into some timer callback code.
        In the case where the timer was dispatched via a callback, the divide by zero
        exception was silently handled and ignored, with execution continuing after
        our call to DispatchMessage.  When processed via the WNDPROC, no SEH
        block was established by Windows, and our divide by zero generated a real
        crash (which is what we wanted).

        Windows handling our crashes for us led us to leave the timer data structures
        in an invalid state so the next time a timer was set, we'd crash accessing an
        invalid HashMap of timer data.

        Reviewed by Hyatt.

        * platform/win/SharedTimerWin.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28500 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by Tim Hatcher.
darin@apple.com [Thu, 6 Dec 2007 22:36:10 +0000 (22:36 +0000)]
    Reviewed by Tim Hatcher.

        - fix <rdar://problem/5513394> No way to detect Tiger vs Leopard from Safari's user agent string

        * WebView/WebView.mm:
        (callGestalt): Added.
        (createMacOSXVersionString): Added.
        (-[WebView _userAgentWithApplicationName:andWebKitVersion:]): Added Mac OS X version string,
        right after the string "Mac OS X", but with underscores instead of dots to avoid the dreaded
        "4." problem (old libraries that think a "4." anywhere in the user agent means Netscape 4).
        (-[WebView _userAgentForURL:]): Fixed incorrect bug numbers.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28499 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoFix <rdar://5108390> Feed title is too low in blue banner
aroben@apple.com [Thu, 6 Dec 2007 22:11:37 +0000 (22:11 +0000)]
Fix <rdar://5108390> Feed title is too low in blue banner


        Fix <rdar://5108390> Feed title is too low in blue banner

        Way back in r23069 we started applying the same font ascent hack that
        Mac WebKit applies to Helvetica, Times, and Courier. We did this so
        that those fonts would match the Mac metrics when we run the
        regression tests. However, this hack was applying to Arial on Windows
        when a site would specify the Helvetica font face because Windows will
        alias the font names. Instead of removing the hack entirely, we
        turn it off by default but provide some SPI so that DumpRenderTree can
        turn it on.

        Reviewed by Hyatt.

        All tests pass.

        * platform/graphics/FontData.h: Add a new static method to turn on the
        hack on Windows only.
        * platform/graphics/win/FontDataWin.cpp:
        (WebCore::FontData::setShouldApplyMacAscentHack): Added.
        (WebCore::FontData::platformInit): Only perform the hack if
        shouldApplyMacAscentHack is true.


        Add SPI so that DumpRenderTree can turn on the Mac font ascent hack

        Reviewed by Hyatt.

        * Interfaces/IWebViewPrivate.idl: Added new method declaration.
        * WebView.cpp:
        (WebView::setShouldApplyMacFontAscentHack): Added. Just calls down to
        * WebView.h:


        Explicitly turn on the Mac font ascent hack on Windows

        This keeps our font metrics matching those from Mac.

        Reviewed by Hyatt.

        * DumpRenderTree/win/DumpRenderTree.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28498 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago - updated render tree results for r28483
mitz@apple.com [Thu, 6 Dec 2007 21:25:53 +0000 (21:25 +0000)]
    - updated render tree results for r28483

        * svg/batik/text/textEffect2-expected.txt:
        * svg/batik/text/textProperties-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28497 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoWebCore:
ggaren@apple.com [Thu, 6 Dec 2007 21:19:07 +0000 (21:19 +0000)]

        Reviewed by Sam Weinig.

        Fixed http://bugs.webkit.org/show_bug.cgi?id=16328
        REGRESSION (r28470): Crash expanding a GMail conversation

        * page/Frame.cpp:
        (WebCore::Frame::scriptProxy): Only return 0 if JS seems disabled *and*
        we haven't created the proxy yet. If we've created the proxy already, a
        script may be in the midst of execution, even though we've lost our
        settings object. During execution, scripts assume they have free access
        to the proxy.


        Reviewed by Sam Weinig.

        Test for http://bugs.webkit.org/show_bug.cgi?id=16328
        REGRESSION (r28470): Crash expanding a GMail conversation

        * fast/frames/location-put-after-removal.html: Added.
        * fast/frames/resources/location-put-after-removal-frame.html: Added.
        * fast/frames/resources/location-put-after-removal-frame-expected.txt: Updated.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28496 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Rename main.c to main.cpp here too.
andersca@apple.com [Thu, 6 Dec 2007 21:17:05 +0000 (21:17 +0000)]
    Rename main.c to main.cpp here too.

        * DumpRenderTree/win/TestNetscapePlugin/main.cpp: Copied from DumpRenderTree/win/TestNetscapePlugin/main.c.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28495 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Rubber stamped by Geoff.
weinig@apple.com [Thu, 6 Dec 2007 21:10:47 +0000 (21:10 +0000)]
    Rubber stamped by Geoff.

        * Scripts/do-webcore-rename: Don't rename kjs_css twice.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28494 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago * Scripts/do-webcore-rename: Some more renaming plans.
darin@apple.com [Thu, 6 Dec 2007 21:00:21 +0000 (21:00 +0000)]
    * Scripts/do-webcore-rename: Some more renaming plans.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@28493 268f45cc-cd09-0410-ab3c-d52691b4dbfc