WebKit-https.git
12 years ago<rdar://problem/6302405> Crash (null-deref) when using :before pseudoselector with...
oliver@apple.com [Thu, 11 Dec 2008 22:33:51 +0000 (22:33 +0000)]
<rdar://problem/6302405> Crash (null-deref) when using :before pseudoselector with content CSS rule in SVG
<https://bugs.webkit.org/show_bug.cgi?id=22804>

Reviewed by Adele Peterson.

This issue was caused by css generated content resulting in non-svg flowboxes
being injected into SVG content.  As SVG spec does not describe behaviour in
this case, and neither Opera nor Firefox displays such generated content, so
now we make svg text layout and rendering just ignore any such content.

Test: svg/css/crash-css-generated-content.xhtml

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

12 years ago2008-12-11 Cameron Zwarich <zwarich@apple.com>
cwzwarich@webkit.org [Thu, 11 Dec 2008 21:56:07 +0000 (21:56 +0000)]
2008-12-11  Cameron Zwarich  <zwarich@apple.com>

        Reviewed by Dave Hyatt.

        Bug 21256: REGRESSION (r36906): horizontally repeating image leaves ghosts when vertical scrolling
        <https://bugs.webkit.org/show_bug.cgi?id=21256>
        <rdar://problem/6362978>

        The ScrollView refactoring in r36906 caused the ScrollView and the
        platform widget to disagree about whether optimizing scrolling via
        blitting is allowed. The easiest way to fix this is to make ScrollView
        simply ask the platform widget whether this is safe on platforms that
        are affected.

        It is not possible to write a layout test for this bug because it
        involves the back/forward cache.

        * platform/ScrollView.cpp:
        (WebCore::ScrollView::ScrollView):
        (WebCore::ScrollView::setCanBlitOnScroll):
        (WebCore::ScrollView::canBlitOnScroll):
        (WebCore::ScrollView::platformSetCanBlitOnScroll):
        (WebCore::ScrollView::platformCanBlitOnScroll):
        * platform/ScrollView.h:
        * platform/mac/ScrollViewMac.mm:
        (WebCore::ScrollView::platformSetCanBlitOnScroll):
        (WebCore::ScrollView::platformCanBlitOnScroll):
        * platform/wx/ScrollViewWx.cpp:
        (WebCore::ScrollView::platformSetCanBlitOnScroll):
        (WebCore::ScrollView::platformCanBlitOnScroll):

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

12 years ago2008-12-11 Anders Carlsson <andersca@apple.com>
andersca@apple.com [Thu, 11 Dec 2008 21:27:39 +0000 (21:27 +0000)]
2008-12-11  Anders Carlsson  <andersca@apple.com>

        Fix Tiger build.

        * Misc/WebNSDataExtras.h:

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

12 years agoWebKit/mac:
andersca@apple.com [Thu, 11 Dec 2008 21:26:24 +0000 (21:26 +0000)]
WebKit/mac:

2008-12-11  Anders Carlsson  <andersca@apple.com>

        Reviewed by Cameron Zwarich.

        https://bugs.webkit.org/show_bug.cgi?id=22797
        REGRESSION: Crash at http://news.cnet.com/8301-17939_109-10119149-2.html

        Make sure to protect the stream because destroyStream can otherwise cause it to be deleted.

        * Plugins/WebBaseNetscapePluginStream.mm:
        (WebNetscapePluginStream::destroyStreamWithReason):

LayoutTests:

2008-12-11  Anders Carlsson  <andersca@apple.com>

        Reviewed by Cameron Zwarich.

        https://bugs.webkit.org/show_bug.cgi?id=22797
        REGRESSION: Crash at http://news.cnet.com/8301-17939_109-10119149-2.html

        * http/tests/plugins/get-url-expected.txt: Added.
        * http/tests/plugins/get-url.html: Added.

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

12 years agoReviewed by Eric Seidel.
zimmermann@webkit.org [Thu, 11 Dec 2008 20:44:38 +0000 (20:44 +0000)]
Reviewed by Eric Seidel.
Fix typo in doctype (correct wapforum.org URL)

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

12 years ago2008-12-11 Brent Fulgham <bfulgham@gmail.com>
zecke@webkit.org [Thu, 11 Dec 2008 19:16:20 +0000 (19:16 +0000)]
2008-12-11  Brent Fulgham  <bfulgham@gmail.com>

        Reviewed by Adam Roben.

        https://bugs.webkit.org/show_bug.cgi?id=22808

        Correct build break due to malformed XML in Visual Studio project
        following @r39205 change.

        * WebCore.vcproj/WebCore.vcproj: Correct file entry so project loads.

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

12 years ago2008-12-10 Glenn Wilson <gwilson@google.com>
eric@webkit.org [Thu, 11 Dec 2008 19:10:47 +0000 (19:10 +0000)]
2008-12-10  Glenn Wilson  <gwilson@google.com>

        Reviewed by Adam Roben.

        Added new methods for overriding default WebPreference values
        and for resetting preferences to their defaults.
        https://bugs.webkit.org/show_bug.cgi?id=20534

        * WebView/WebPreferenceKeysPrivate.h:
        * WebView/WebPreferences.mm:
        (-[WebPreferences resetToDefaults]): new method
        (-[WebPreferences overridePreference:flag:]): new method
        * WebView/WebPreferencesPrivate.h: new method signatures

2008-12-10  Glenn Wilson  <gwilson@google.com>

        Reviewed by Adam Roben.

        Added support for overriding default preferences per-test.
        https://bugs.webkit.org/show_bug.cgi?id=20534
        Two new methods were added: resetToDefaults and overridePreference.

        * Interfaces/IWebPreferencesPrivate.idl: new method signatures
        * WebPreferenceKeysPrivate.h: added new key for internal state
        * WebPreferences.cpp: added new methods
        (WebPreferences::overridePreference): new method
        (WebPreferences::resetToDefaults): new method
        * WebPreferences.h: new method signatures

2008-12-10  Glenn Wilson  <gwilson@google.com>

        Reviewed by Adam Roben.

        Changed LayoutTestController and DumpRenderTree to allow for manual
        overriding of default preferences at test time.  Also added support for
        resetting the preferences after each test.
        https://bugs.webkit.org/show_bug.cgi?id=20534

        * DumpRenderTree/LayoutTestController.cpp: Added callback method for overriding preferences
        * DumpRenderTree/LayoutTestController.h: Added signature for callback
        * DumpRenderTree/win/DumpRenderTree.cpp: Added calls to reset preferences after each test if necessary
        * DumpRenderTree/win/LayoutTestControllerWin.cpp: Added JS override function
        * DumpRenderTree/mac/DumpRenderTree.mm: Added calls to reset preferences after each test if necessary
        * DumpRenderTree/mac/LayoutTestControllerMac.mm: Added JS override function

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

12 years ago Reviewed by Dave Hyatt.
cmarrin@apple.com [Thu, 11 Dec 2008 16:24:32 +0000 (16:24 +0000)]
    Reviewed by Dave Hyatt.

        Fixed https://bugs.webkit.org/show_bug.cgi?id=22738

        This gets rid of the per-animation timers which were used when an animation
        started, ended and looped. Their job is now done by the main AnimationController's
        timer. It is now set to fire as needed. For instance, if there is a delay, it will
        fire after the delay time and then every 30ms to run the animation. The start, loop
        and end events are generated as needed during the firing of this timer.

        I had to add one more bit of code. When animation timers used to fire the animation events.
        This would always happen from the RunLoop, so any style changes that happened in the
        event handler would get picked up on the next updateRendering() call. But now the start
        event is generated during the styleIsAvailable() call, which is in the middle of the
        updateRendering() cycle. And calling an event handler in the middle of updateRendering()
        is not allowed and causes style changes to get missed. We already have a mechanism in
        AnimationController to defer updateRendering() calls. So I added logic to defer all
        event handling to there. Now, I put any request for event handling into a list and ask
        for a deferred updateRendering() call. When that deferred timer fires, I go through that
        list, send all the events and then call updateRendering().

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

12 years ago2008-12-11 Yael Aharon <yael.aharon@nokia.com>
hausmann@webkit.org [Thu, 11 Dec 2008 15:57:00 +0000 (15:57 +0000)]
2008-12-11  Yael Aharon  <yael.aharon@nokia.com>

        Reviewed by Simon Hausmann.

        Allow applications to save and restore their state between loads.

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

12 years ago2008-12-11 Simon Hausmann <simon.hausmann@nokia.com>
hausmann@webkit.org [Thu, 11 Dec 2008 15:45:47 +0000 (15:45 +0000)]
2008-12-11  Simon Hausmann  <simon.hausmann@nokia.com>

        Fix the Qt build with an empty filenameExtension() implementation.

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

12 years agoFix crash in the cairo implementation of the SVGPaintServer
zecke@webkit.org [Thu, 11 Dec 2008 15:03:43 +0000 (15:03 +0000)]
Fix crash in the cairo implementation of the SVGPaintServer

For SVGFonts the RenderObject can be zero. The existing SVGFont
test cases is exposing this bug. Qt and other ports have fixed
this issue by adding null checks as well.

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

12 years ago2008-12-11 Holger Freyther <zecke@selfish.org>
zecke@webkit.org [Thu, 11 Dec 2008 14:46:52 +0000 (14:46 +0000)]
2008-12-11  Holger Freyther  <zecke@selfish.org>

        Reviewed by Simon Hausmann.

        https://bugs.webkit.org/show_bug.cgi?id=20953

        Make the Qt port follow the Win, Mac, Gtk+ port in regard to Font
        handling. FontQt.cpp from now on is only implementing the complex path. Create
        FontFallbackListQt.cpp and FontPlatformDataQt.cpp to work within
        the framework set by the Font code.

        Sharing the Font.cpp implementation allows the Qt port to support
        the CSS font faces and SVG fonts.

        Split out the Qt4.3 Font handling into FonQt43.cpp to allow to more
        easily deprecate it.

        This commit is removing a lot of #ifdefs from Font.h as the Qt Font
        implementation is now in line with the rest of WebCore.

        * WebCore.pro:
        * platform/graphics/Font.h: Remove #ifdefs
        (WebCore::Font::letterSpacing):
        (WebCore::Font::setLetterSpacing):
        (WebCore::Font::isPlatformFont):
        * platform/graphics/FontFallbackList.h:
        * platform/graphics/SimpleFontData.cpp:
        (WebCore::SimpleFontData::SimpleFontData):
        (WebCore::SimpleFontData::platformGlyphInit): There is no GlyphCache
        on Qt, move the initialisation over.
        (WebCore::SimpleFontData::~SimpleFontData):
        * platform/graphics/SimpleFontData.h:
        (WebCore::SimpleFontData::getQtFont):
        * platform/graphics/qt/FontCacheQt.cpp:
        (WebCore::FontCache::getCachedFontPlatformData): Remove unused parameter
        (WebCore::FontCache::releaseFontData): Add to build
        * platform/graphics/qt/FontCustomPlatformData.cpp:
        (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
        (WebCore::FontCustomPlatformData::fontPlatformData):
        (WebCore::createFontCustomPlatformData):
        * platform/graphics/qt/FontCustomPlatformData.h:
        * platform/graphics/qt/FontFallbackListQt.cpp: Added.
        (WebCore::FontFallbackList::FontFallbackList):
        (WebCore::FontFallbackList::invalidate):
        (WebCore::FontFallbackList::releaseFontData):
        (WebCore::FontFallbackList::determinePitch):
        (WebCore::FontFallbackList::fontDataAt):
        (WebCore::FontFallbackList::fontDataForCharacters):
        (WebCore::FontFallbackList::setPlatformFont):
        * platform/graphics/qt/FontPlatformData.h:
        (WebCore::FontPlatformData::font):
        (WebCore::FontPlatformData::size):
        * platform/graphics/qt/FontPlatformDataQt.cpp: Added.
        (WebCore::FontPlatformData::FontPlatformData):
        * platform/graphics/qt/FontQt.cpp:
        (WebCore::Font::drawComplexText):
        (WebCore::Font::floatWidthForComplexText):
        (WebCore::Font::offsetForPositionForComplexText):
        (WebCore::Font::selectionRectForComplexText):
        (WebCore::Font::font):
        * platform/graphics/qt/FontQt43.cpp: Added. Moved Qt4.3 code from FontQt.cpp
        (WebCore::Font::drawComplexText):
        (WebCore::Font::floatWidthForComplexText):
        (WebCore::Font::offsetForPositionForComplexText):
        (WebCore::Font::selectionRectForComplexText):
        * platform/graphics/qt/GlyphPageTreeNodeQt.cpp:
        (WebCore::GlyphPageTreeNode::pruneTreeCustomFontData):
        (WebCore::GlyphPageTreeNode::pruneTreeFontData):
        * platform/graphics/qt/SimpleFontDataQt.cpp:
        (WebCore::SimpleFontData::determinePitch):
        (WebCore::SimpleFontData::containsCharacters):
        (WebCore::SimpleFontData::platformInit):
        (WebCore::SimpleFontData::platformGlyphInit):
        (WebCore::SimpleFontData::platformDestroy):
        * platform/qt/RenderThemeQt.cpp:
        (WebCore::RenderThemeQt::adjustButtonStyle): Avoid crashes.

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

12 years agoWebCorv
zecke@webkit.org [Thu, 11 Dec 2008 14:14:46 +0000 (14:14 +0000)]
WebCorv
2008-12-11  Holger Freyther  <zecke@selfish.org>

        Reviewed by Simon Hausmann.

        https://bugs.webkit.org/show_bug.cgi?id=20953

        For Qt it is not pratical to have a FontCache and GlyphPageTreeNode
        implementation. This is one of the reasons why the Qt port is currently not
        using WebCore/platform/graphics/Font.cpp. By allowing to not use
        the simple/fast-path the Qt port will be able to use it.

        Introduce USE(FONT_FAST_PATH) and define it for every port but the
        Qt one.

        * platform/graphics/Font.cpp:
        (WebCore::Font::drawText):
        (WebCore::Font::floatWidth):
        (WebCore::Font::selectionRectForText):
        (WebCore::Font::offsetForPosition):
        * platform/graphics/Font.h:

JavaScriptCore
2008-12-11  Holger Freyther  <zecke@selfish.org>

        Reviewed by Simon Hausmann.

        https://bugs.webkit.org/show_bug.cgi?id=20953

        For Qt it is not pratical to have a FontCache and GlyphPageTreeNode
        implementation. This is one of the reasons why the Qt port is currently not
        using WebCore/platform/graphics/Font.cpp. By allowing to not use
        the simple/fast-path the Qt port will be able to use it.

        Introduce USE(FONT_FAST_PATH) and define it for every port but the
        Qt one.

        * wtf/Platform.h: Enable USE(FONT_FAST_PATH)

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

12 years ago2008-12-11 Holger Hans Peter Freyther <zecke@selfish.org>
zecke@webkit.org [Thu, 11 Dec 2008 11:18:46 +0000 (11:18 +0000)]
2008-12-11  Holger Hans Peter Freyther  <zecke@selfish.org>

        Reviewed by Darin Adler.

        https://bugs.webkit.org/show_bug.cgi?id=20953

        Split out the font fast path from Fast.cpp into FontFastPath.cpp. This
        will allow the Qt port to share most of WebCore::Font
        implementation but the fast path. Qt does not provide the API to get
        individual Glyphs making the fast path hard to support.

        * GNUmakefile.am:
        * WebCore.vcproj/WebCore.vcproj:
        * WebCore.xcodeproj/project.pbxproj:
        * WebCoreSources.bkl:
        * platform/graphics/Font.cpp:
        * platform/graphics/FontFastPath.cpp: Added.
        (WebCore::Font::glyphDataForCharacter):

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

12 years ago2008-12-04 Gabor Loki <loki@inf.u-szeged.hu>
zecke@webkit.org [Thu, 11 Dec 2008 11:15:38 +0000 (11:15 +0000)]
2008-12-04  Gabor Loki  <loki@inf.u-szeged.hu>

        Reviewed by Darin Adler and landed by Holger Freyther.

        <https://bugs.webkit.org/show_bug.cgi?id=22648>
        Fix threading on Qt-port and Gtk-port for Sampling tool.

        * wtf/ThreadingGtk.cpp:
        (WTF::waitForThreadCompletion):
        * wtf/ThreadingQt.cpp:
        (WTF::waitForThreadCompletion):

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

12 years ago2008-12-11 Robert Carr <racarr@svn.gnome.org>
zecke@webkit.org [Thu, 11 Dec 2008 10:22:40 +0000 (10:22 +0000)]
2008-12-11  Robert Carr  <racarr@svn.gnome.org>

        Reviewed by Holger Freyther.

        https://bugs.webkit.org/show_bug.cgi?id=22560

        Code in PlatformScreenGtk for screenDepth and screenRect can not
        assume that the platformWindow for the widget has a valid "window"
        member. For example in the case of, a new browser view opening as a
        child of a GtkNotebook, but never being switched to, or manually
        realized. Solve by using the toplevel window of the widget, rather
        than the widget itself.

        * platform/gtk/PlatformScreenGtk.cpp:
        (WebCore::screenDepth):
        (WebCore::screenRect):

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

12 years ago2008-12-08 Dean McNamee <deanm@chromium.org>
vestbo@webkit.org [Thu, 11 Dec 2008 10:20:57 +0000 (10:20 +0000)]
2008-12-08  Dean McNamee  <deanm@chromium.org>

        Reviewed by Darin Adler.

        Always append a trailing slash when using PHP's sys_get_temp_dir().

        This allows these tests to run on Linux, where this API returns the
        directory without a trailing slash.

        * http/tests/xmlhttprequest/resources/access-control-basic-preflight-cache-invalidation.php:
        * http/tests/xmlhttprequest/resources/access-control-basic-preflight-cache-timeout.php:
        * http/tests/xmlhttprequest/resources/access-control-basic-preflight-cache.php:
        * http/tests/xmlhttprequest/resources/portabilityLayer.php:
        * http/tests/xmlhttprequest/resources/reset-temp-file.php:

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

12 years ago2008-12-08 Tor Arne Vestbø <tavestbo@trolltech.com>
vestbo@webkit.org [Thu, 11 Dec 2008 10:09:50 +0000 (10:09 +0000)]
2008-12-08  Tor Arne Vestbø  <tavestbo@trolltech.com>

        Reviewed by Darin Adler and Holger Freyther.

        Make Widget::frameRectsChanged() and overrides non-const

        This will hopefully allow us to get rid of some of the mutables in
        the classes that react to the callback by changing their own state.

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

12 years agoReimplement RenderTheme::caretBlinkInterval for Qt.
zecke@webkit.org [Thu, 11 Dec 2008 10:03:28 +0000 (10:03 +0000)]
Reimplement RenderTheme::caretBlinkInterval for Qt.

The QApplication::cursorFlashTime is in milliseconds and describes
the whole cycle while WebCore expects half a cycle.

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

12 years ago2008-12-09 Trenton Schulz <trenton.schulz@nokia.com>
vestbo@webkit.org [Thu, 11 Dec 2008 08:27:10 +0000 (08:27 +0000)]
2008-12-09  Trenton Schulz <trenton.schulz@nokia.com>

        Reviewed by Tor Arne Vestbø.

        [Qt/Mac] Don't call HIGetScaleFactor() if we're not on Tiger or better

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

12 years ago2008-12-10 Cameron Zwarich <zwarich@apple.com>
cwzwarich@webkit.org [Thu, 11 Dec 2008 06:27:36 +0000 (06:27 +0000)]
2008-12-10  Cameron Zwarich  <zwarich@apple.com>

        Reviewed by Oliver Hunt.

        Bug 22734: Debugger crashes when stepping into a function call in a return statement
        <https://bugs.webkit.org/show_bug.cgi?id=22734>
        <rdar://problem/6426796>

        * bytecompiler/BytecodeGenerator.cpp:
        (JSC::BytecodeGenerator::BytecodeGenerator): The DebuggerCallFrame uses
        the 'this' value stored in a callFrame, so op_convert_this should be
        emitted at the beginning of a function body when generating bytecode
        with debug hooks.
        * debugger/DebuggerCallFrame.cpp:
        (JSC::DebuggerCallFrame::thisObject): The assertion inherent in the call
        to asObject() here is valid, because any 'this' value should have been
        converted to a JSObject*.

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

12 years ago2008-12-10 Gavin Barraclough <barraclough@apple.com>
barraclough@apple.com [Thu, 11 Dec 2008 04:35:13 +0000 (04:35 +0000)]
2008-12-10  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Geoff Garen.

        Port more of the JIT to use the MacroAssembler interface.

        Everything in the main pass, bar a few corner cases (operations with required
        registers, or calling convention code).  Slightly refactors array creation,
        moving the offset calculation into the callFrame into C code (reducing code
        planted).

        Overall this appears to be a 1% win on v8-tests, due to the smaller immediates
        being planted (in jfalse in particular).

        * interpreter/Interpreter.cpp:
        (JSC::Interpreter::cti_op_new_array):
        * jit/JIT.cpp:
        (JSC::JIT::privateCompileMainPass):
        (JSC::JIT::privateCompileSlowCases):
        * jit/JIT.h:
        * wrec/WRECGenerator.cpp:
        (JSC::WREC::Generator::generateEnter):

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

12 years agoRubber-stamped by George Staikos.
zimmermann@webkit.org [Thu, 11 Dec 2008 02:42:05 +0000 (02:42 +0000)]
Rubber-stamped by George Staikos.
Update WML pixel test results, after adding <template> support.

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

12 years ago2008-12-10 Anders Carlsson <andersca@apple.com>
andersca@apple.com [Thu, 11 Dec 2008 02:41:42 +0000 (02:41 +0000)]
2008-12-10  Anders Carlsson  <andersca@apple.com>

        Reviewed by Darin Adler.

        Implement support for NPN_PostURL/NPN_PostURLNotify in WebKit.

        * Plugins/Hosted/NetscapePluginInstanceProxy.h:
        Add stopAllStreams.

        * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
        (WebKit::NetscapePluginInstanceProxy::stopAllStreams):
        Factored out this from ::destroy.

        (WebKit::NetscapePluginInstanceProxy::destroy):
        Call stopAllStreams().

        (WebKit::NetscapePluginInstanceProxy::pluginHostDied):
        Ditto.

        (WebKit::NetscapePluginInstanceProxy::loadURL):
        Handle post being true. This code has been copied from WebNetscapePluginView.mm (for now).

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

12 years agoReviewed by Eric Seidel and George Staikos.
zimmermann@webkit.org [Thu, 11 Dec 2008 02:34:51 +0000 (02:34 +0000)]
Reviewed by Eric Seidel and George Staikos.

Fixes: https://bugs.webkit.org/show_bug.cgi?id=22799

Add WML <template> support. The <template> element is specified at deck-level
and declares a template for all <card> elements in the document.

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

12 years ago2008-12-09 Dmitry Titov <dimich@chromium.org>
oliver@apple.com [Thu, 11 Dec 2008 02:14:04 +0000 (02:14 +0000)]
2008-12-09  Dmitry Titov  <dimich@chromium.org>

        Reviewed by Darin Adler.

        Fix memory leak - need to call stopActiveDOMObjects
        when cached pages get destroyed.
        https://bugs.webkit.org/show_bug.cgi?id=22753

        * dom/Document.cpp:
        (WebCore::Document::detach):

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

12 years ago2008-12-10 Simon Fraser <simon.fraser@apple.com>
simon.fraser@apple.com [Thu, 11 Dec 2008 01:55:06 +0000 (01:55 +0000)]
2008-12-10  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Antti Koivisto

        <rdar://problem/6431224>

        When updating the value of a slider, don't mark the parents
        as needing layout, because the size of the slider can never
        change. This fixes full-page repaints in some cases.

        * rendering/RenderSlider.cpp:
        (WebCore::RenderSlider::updateFromElement):

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

12 years agoWebKitTools:
beidson@apple.com [Thu, 11 Dec 2008 01:51:57 +0000 (01:51 +0000)]
WebKitTools:
2008-12-10  Brady Eidson  <beidson@apple.com>

        Reviewed by Darin

        Implement the new policy delegate (including navigation type and permissive mode) for DRT/win

        * DumpRenderTree/win/DumpRenderTree.cpp:
        * DumpRenderTree/win/DumpRenderTreeWin.h:

        * DumpRenderTree/win/LayoutTestControllerWin.cpp:
        (LayoutTestController::setCustomPolicyDelegate):

        * DumpRenderTree/win/PolicyDelegate.cpp:
        (PolicyDelegate::PolicyDelegate):
        (PolicyDelegate::decidePolicyForNavigationAction):
        * DumpRenderTree/win/PolicyDelegate.h:
        (PolicyDelegate::setPermissive):

LayoutTests:
2008-12-10  Brady Eidson  <beidson@apple.com>

        Reviewed by Darin

        Most of these policy delegate related tests will now pass with accompanying DRT changes.

        * platform/win/Skipped:

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

12 years ago2008-12-10 Pierre-Olivier Latour <pol@apple.com>
pol@apple.com [Thu, 11 Dec 2008 01:49:49 +0000 (01:49 +0000)]
2008-12-10  Pierre-Olivier Latour  <pol@apple.com>

        Reviewed by Darin Adler.

        Replaced outdated reference image for svg/webarchive/svg-cursor-subresources.svg

        https://bugs.webkit.org/show_bug.cgi?id=22801

        * platform/mac/svg/webarchive/svg-cursor-subresources-expected.checksum:
        * platform/mac/svg/webarchive/svg-cursor-subresources-expected.png:

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

12 years ago2008-12-10 Anders Carlsson <andersca@apple.com>
andersca@apple.com [Thu, 11 Dec 2008 01:25:52 +0000 (01:25 +0000)]
2008-12-10  Anders Carlsson  <andersca@apple.com>

        Reviewed by Darin Adler.

        Move two NSData category methods to WebNSDataExtras.m.

        * Misc/WebNSDataExtras.h:
        * Misc/WebNSDataExtras.m:
        (-[NSData _web_startsWithBlankLine]):
        (-[NSData _web_locationAfterFirstBlankLine]):
        * Plugins/WebNetscapePluginView.mm:

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

12 years agoUpdated Radar bug reference.
ddkilzer@apple.com [Thu, 11 Dec 2008 01:01:10 +0000 (01:01 +0000)]
Updated Radar bug reference.

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

12 years ago2008-12-10 Pierre-Olivier Latour <pol@apple.com>
pol@apple.com [Thu, 11 Dec 2008 00:48:35 +0000 (00:48 +0000)]
2008-12-10  Pierre-Olivier Latour  <pol@apple.com>

        Reviewed by Darin Adler.

        Rewrote animations/animation-test-helpers.js to take advantage of the pauseAnimationAtTimeOnElementWithId()
        API when available in DRT.

        Updated all animations tests that check for values of animated CSS properties to use these new helper functions.

        https://bugs.webkit.org/show_bug.cgi?id=22796

        * animations/animation-test-helpers.js:
        (isCloseEnough):
        (checkExpectedValue):
        (endTest):
        (startTest):
        (runAnimationTest):
        * animations/big-rotation-expected.txt:
        * animations/big-rotation.html:
        * animations/change-keyframes-expected.txt:
        * animations/change-keyframes-name-expected.txt:
        * animations/change-keyframes-name.html:
        * animations/change-keyframes.html:
        * animations/change-one-anim-expected.txt:
        * animations/change-one-anim.html:
        * animations/generic-from-to-expected.txt:
        * animations/generic-from-to.html:
        * animations/import-expected.txt:
        * animations/import.html:
        * animations/keyframe-timing-functions-expected.txt:
        * animations/keyframe-timing-functions.html:
        * animations/keyframes-comma-separated-expected.txt:
        * animations/keyframes-comma-separated.html:
        * animations/keyframes-expected.txt:
        * animations/keyframes-from-missing.html:
        * animations/keyframes-out-of-order-expected.txt:
        * animations/keyframes-out-of-order.html:
        * animations/keyframes-to-missing.html:
        * animations/keyframes.html:
        * animations/lineheight-animation-expected.txt:
        * animations/lineheight-animation.html:
        * animations/matrix-anim-expected.txt:
        * animations/matrix-anim.html:
        * animations/multiple-animations-expected.txt:
        * animations/multiple-animations.html:
        * animations/multiple-keyframes-expected.txt:
        * animations/multiple-keyframes.html:
        * animations/transition-and-animation-1-expected.txt:
        * animations/transition-and-animation-1.html:
        * animations/transition-and-animation-2-expected.txt:
        * animations/transition-and-animation-2.html:
        * animations/width-using-ems-expected.txt:
        * animations/width-using-ems.html:
        * platform/win/Skipped:

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

12 years agoWebCore:
alice.liu@apple.com [Thu, 11 Dec 2008 00:00:16 +0000 (00:00 +0000)]
WebCore:

2008-12-10  Alice Liu  <alice.liu@apple.com>

        Manual test for https://bugs.webkit.org/show_bug.cgi?id=20685

        Reviewed by Darin Adler.

        * manual-tests/drag-image-to-desktop.html: Added.

LayoutTests:

2008-12-10  Alice Liu  <alice.liu@apple.com>

        Adding tweak to .conf files needed for
        WebCore/manual-tests/drag-image-to-desktop.html

        Reviewed by Darin Adler.

        * http/conf/apache2-debian-httpd.conf:
        * http/conf/apache2-httpd.conf:
        * http/conf/cygwin-httpd.conf:
        * http/conf/httpd.conf:
        * http/tests/misc/resources/generatedimage.bat: Added.

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

12 years agoWebCore:
alice.liu@apple.com [Wed, 10 Dec 2008 23:57:53 +0000 (23:57 +0000)]
WebCore:

2008-12-10  Alice Liu  <alice.liu@apple.com>

        fixed https://bugs.webkit.org/show_bug.cgi?id=20685

        Reviewed by Darin Adler.

        Manual test case is manual-tests/drag-image-to-desktop.html

        Added new files to projects
        * WebCore.vcproj/WebCore.vcproj:
        * WebCore.xcodeproj/project.pbxproj:

        * page/DragController.cpp:
        (WebCore::DragController::startDrag):
        * platform/MIMETypeRegistry.cpp:
        (WebCore::initializeSupportedImageMIMETypes):
        (WebCore::initializeSupportedImageMIMETypesForEncoding):

        These changes add a method to obtain the extension for an image
        * platform/graphics/BitmapImage.cpp:
        (WebCore::BitmapImage::filenameExtension):
        * platform/graphics/BitmapImage.h:
        * platform/graphics/Image.h:
        (WebCore::Image::filenameExtension):
        * platform/graphics/ImageSource.h:
        * platform/graphics/cairo/ImageSourceCairo.cpp:
        (WebCore::ImageSource::filenameExtension):
        * platform/graphics/cg/ImageSourceCG.cpp:
        (WebCore::ImageSource::filenameExtension):

        These changes added a utility that returns the preferred extension for a UTI
        * platform/graphics/cg/ImageSourceCG.h: Added.
        * platform/graphics/cg/ImageSourceCGMac.mm: Added.
        (WebCore::MIMETypeForImageSourceType):
        (WebCore::preferredExtensionForImageSourceType):
        * platform/graphics/cg/ImageSourceCGWin.cpp: Added.
        (WebCore::MIMETypeForImageSourceType):
        (WebCore::preferredExtensionForImageSourceType):

        * platform/mac/MIMETypeRegistryMac.mm:
        moved getMIMETypeForUTI to ImageSourceCGMac.mm

        Ask image for its file extension instead of relying on MIME type and file path
        * platform/win/ClipboardWin.cpp:
        (WebCore::createGlobalImageFileDescriptor):

        Remove extraneous code from getPreferredExtensionForMIMEType.
        Also moved getMIMETypeForUTI to ImageSourceCGWin.cpp
        * platform/win/MIMETypeRegistryWin.cpp:
        (WebCore::MIMETypeRegistry::getPreferredExtensionForMIMEType):

WebKit/mac:

2008-12-10  Alice Liu  <alice.liu@apple.com>

        fixed https://bugs.webkit.org/show_bug.cgi?id=20685

        Reviewed by Darin Adler.

        * Misc/WebNSPasteboardExtras.mm:
        Ask image for its file extension instead of falling back on MIME type and file path.
        Also moved this code to before setting the pasteboard data so as not to set any if
        no extension can be determined.
        (-[NSPasteboard _web_declareAndWriteDragImageForElement:URL:title:archive:source:]):

        * WebView/WebHTMLView.mm:
        Fixed a separate but related long-standing bug of how the filename for the promised
        drag data is determined by asking the image for a proper file extension.
        (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]):

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

12 years ago2008-12-10 Sam Weinig <sam@webkit.org>
weinig@apple.com [Wed, 10 Dec 2008 21:33:18 +0000 (21:33 +0000)]
2008-12-10  Sam Weinig  <sam@webkit.org>

        Fix non-JIT builds.

        * bytecode/CodeBlock.h:

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

12 years ago2008-12-10 Simon Fraser <simon.fraser@apple.com>
simon.fraser@apple.com [Wed, 10 Dec 2008 20:57:09 +0000 (20:57 +0000)]
2008-12-10  Simon Fraser  <simon.fraser@apple.com>

        Potential build fix. The forward declaration of FloatPoint should
        be inside the WebCore namespace.

        * platform/graphics/FloatPoint3D.h:

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

12 years ago2008-12-10 Sam Weinig <sam@webkit.org>
weinig@apple.com [Wed, 10 Dec 2008 20:05:53 +0000 (20:05 +0000)]
2008-12-10  Sam Weinig  <sam@webkit.org>

        Reviewed by Geoffrey Garen.

        <rdar://problem/6428332> Remove the CTI return address table from CodeBlock

        Step 2:

        Convert the return address table from a HashMap to a sorted Vector.  This
        reduces the size of the data structure by ~4.5MB on Membuster head.

        SunSpider reports a 0.5% progression.

        * bytecode/CodeBlock.cpp:
        (JSC::sizeInBytes): Generic method to get the cost of a Vector.
        (JSC::CodeBlock::dumpStatistics): Add dumping of member sizes.
        * bytecode/CodeBlock.h:
        (JSC::PC::PC): Struct representing NativePC -> VirtualPC mappings.
        (JSC::getNativePC): Helper for binary chop.
        (JSC::CodeBlock::getBytecodeIndex): Used to get the VirtualPC from a
        NativePC using a binary chop of the pcVector.
        (JSC::CodeBlock::pcVector): Accessor.

        * interpreter/Interpreter.cpp:
        (JSC::vPCForPC): Use getBytecodeIndex instead of jitReturnAddressVPCMap().get().
        (JSC::Interpreter::cti_op_instanceof): Ditto.
        (JSC::Interpreter::cti_op_resolve): Ditto.
        (JSC::Interpreter::cti_op_resolve_func): Ditto.
        (JSC::Interpreter::cti_op_resolve_skip): Ditto.
        (JSC::Interpreter::cti_op_resolve_with_base): Ditto.
        (JSC::Interpreter::cti_op_throw): Ditto.
        (JSC::Interpreter::cti_op_in): Ditto.
        (JSC::Interpreter::cti_vm_throw): Ditto.

        * jit/JIT.cpp:
        (JSC::JIT::privateCompile): Reserve exact capacity and fill the pcVector.

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

12 years ago2008-12-10 Simon Fraser <simon.fraser@apple.com>
simon.fraser@apple.com [Wed, 10 Dec 2008 20:03:47 +0000 (20:03 +0000)]
2008-12-10  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Sam Weinig

        https://bugs.webkit.org/show_bug.cgi?id=22793

        Cleanup FloatPoint3D: inline the getters and setters,
        fix a potential divide-by-zero in normalize(), and add
        a FloatPoint constructor.

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

12 years ago2008-12-10 Julien Chaffraix <jchaffraix@webkit.org>
jchaffraix@webkit.org [Wed, 10 Dec 2008 19:18:58 +0000 (19:18 +0000)]
2008-12-10  Julien Chaffraix  <jchaffraix@webkit.org>

        Reviewed by Eric Seidel.

        Bug 22665: Remove setCreatedByParser(bool) from the few elements that use it
        https://bugs.webkit.org/show_bug.cgi?id=22665

        - Removed setCreatedByParser from style and link elements.

        - Removed XMLTokenizer::eventuallyMarkAsCreatedByParser.

        * dom/XMLTokenizer.cpp:
        * dom/XMLTokenizer.h:
        * dom/XMLTokenizerLibxml2.cpp:
        (WebCore::XMLTokenizer::startElementNs):
        * dom/XMLTokenizerQt.cpp:
        (WebCore::XMLTokenizer::parseStartElement):
        * html/HTMLElementFactory.cpp:
        (WebCore::linkConstructor):
        (WebCore::styleConstructor):
        * html/HTMLLinkElement.cpp:
        (WebCore::HTMLLinkElement::HTMLLinkElement):
        * html/HTMLLinkElement.h:
        * html/HTMLStyleElement.cpp:
        (WebCore::HTMLStyleElement::HTMLStyleElement):
        * html/HTMLStyleElement.h:
        * html/HTMLTagNames.in:
        * svg/SVGStyleElement.cpp:
        (WebCore::SVGStyleElement::SVGStyleElement):
        * svg/SVGStyleElement.h:
        * svg/svgtags.in:

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

12 years ago2008-12-10 Geoffrey Garen <ggaren@apple.com>
ggaren@apple.com [Wed, 10 Dec 2008 18:58:09 +0000 (18:58 +0000)]
2008-12-10  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Sam :( Weinig.

        Added a test for http://trac.webkit.org/changeset/39162.

        * fast/regex/malformed-escapes-expected.txt: Added.
        * fast/regex/malformed-escapes.html: Added.
        * fast/regex/resources/malformed-escapes.js: Added.

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

12 years agoWebCore:
beidson@apple.com [Wed, 10 Dec 2008 18:37:32 +0000 (18:37 +0000)]
WebCore:

2008-12-10  Brady Eidson  <beidson@apple.com>

        Reviewed by Darin

        https://bugs.webkit.org/show_bug.cgi?id=22194 and <rdar://problem/6388378> -
        Dialog when going back to a page from whence you submitted a form

        http://trac.webkit.org/changeset/37317 changed the manner in which headers are added to
        http requests, which caused the networking layer to have an incomplete set of headers
        just before consulting the Policy Delegate.  This caused a cache miss and incorrectly made
        us believe we'd be resubmitting the form.

        * loader/FrameLoader.cpp:
        (WebCore::FrameLoader::loadItem):  Being careful to maintain the new behavior required by
          the Origin header mechanism as discussed in bug 22194, restore the previous behavior of
          setting all the headers before the networking layer is asked about the cache lookup.

WebKitTools:

2008-12-10  Brady Eidson  <beidson@apple.com>

        Reviewed by Darin

        Change the custom policy delegate to actually allow navigation for tests that need it.
        The new behavior is opt-in and doesn't require any changes in old tests.

        * DumpRenderTree/LayoutTestController.cpp:
        (setCustomPolicyDelegateCallback):  Allow for a second boolean argument to set the permissive flag on the custom
          policy delegate, which will be false by default to maintain original behavior.
        * DumpRenderTree/LayoutTestController.h:
        * DumpRenderTree/mac/LayoutTestControllerMac.mm:
        (LayoutTestController::setCustomPolicyDelegate):

        * DumpRenderTree/win/LayoutTestControllerWin.cpp:
        (LayoutTestController::setCustomPolicyDelegate):  Partially stubbed out for now.
        * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
        (LayoutTestController::setCustomPolicyDelegate):  Still stubbed out, but with new param.

        * DumpRenderTree/mac/PolicyDelegate.h:
        * DumpRenderTree/mac/PolicyDelegate.mm:
        (-[PolicyDelegate webView:decidePolicyForNavigationAction:request:frame:decisionListener:]):  If the permissive flag
          is set, allow the navigation.
        (-[PolicyDelegate setPermissive:]):  Change the behavior between "use" and "ignore" - allowing navigation or not.

LayoutTests:

2008-12-10  Brady Eidson  <beidson@apple.com>

        Reviewed by Darin

        New layout tests for testing the fix for https://bugs.webkit.org/show_bug.cgi?id=22194:

        * http/tests/navigation/post-goback-repost-policy-expected.txt: Added.
        * http/tests/navigation/post-goback-repost-policy.html: Added.
        * http/tests/navigation/resources/goback-with-policydelegate.html: Added.
        * http/tests/navigation/resources/post-target-policy-test.html: Added.

        Updated layout test results for the new "custom policy delegate" mechanism:

        * fast/encoding/mailto-always-utf-8-expected.txt:
        * fast/forms/mailto/advanced-get-expected.txt:
        * fast/forms/mailto/advanced-put-expected.txt:
        * fast/forms/mailto/get-multiple-items-expected.txt:
        * fast/forms/mailto/get-multiple-items-text-plain-expected.txt:
        * fast/forms/mailto/get-multiple-items-x-www-form-urlencoded-expected.txt:
        * fast/forms/mailto/get-non-ascii-always-utf-8-expected.txt:
        * fast/forms/mailto/get-non-ascii-expected.txt:
        * fast/forms/mailto/get-non-ascii-text-plain-expected.txt:
        * fast/forms/mailto/get-non-ascii-text-plain-latin-1-expected.txt:
        * fast/forms/mailto/get-overwrite-query-expected.txt:
        * fast/forms/mailto/post-append-query-expected.txt:
        * fast/forms/mailto/post-multiple-items-expected.txt:
        * fast/forms/mailto/post-multiple-items-multipart-form-data-expected.txt:
        * fast/forms/mailto/post-multiple-items-text-plain-expected.txt:
        * fast/forms/mailto/post-multiple-items-x-www-form-urlencoded-expected.txt:
        * fast/forms/mailto/post-text-plain-expected.txt:
        * fast/forms/mailto/post-text-plain-with-accept-charset-expected.txt:
        * http/tests/security/feed-urls-from-remote-expected.txt:

        Skip the new test on Windows until the policy delegate can be enhanced there:
        * platform/win/Skipped:
        (It is already implicitly skipped for qt and gtk)

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

12 years ago2008-12-10 Dimitri Glazkov <dglazkov@chromium.org>
darin@chromium.org [Wed, 10 Dec 2008 18:27:22 +0000 (18:27 +0000)]
2008-12-10  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Timothy Hatcher.

        Add back ability to end all profiling via console by invoking profileEnd
        with no arguments.

        * page/Console.cpp:
        (WebCore::Console::profileEnd): Removed title null-checking and
            subsequent early exit.

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

12 years ago2008-12-10 Pierre-Olivier Latour <pol@apple.com>
pol@apple.com [Wed, 10 Dec 2008 18:00:55 +0000 (18:00 +0000)]
2008-12-10  Pierre-Olivier Latour  <pol@apple.com>

        Reviewed by Darin Adler.

        KeyframeAnimation::animate() needs to compute the elapsed animation time
        properly taking into account its paused state.

        https://bugs.webkit.org/show_bug.cgi?id=22773

        Test: animations/animation-drt-api-multiple-keyframes.html

        * page/animation/KeyframeAnimation.cpp:
        (WebCore::KeyframeAnimation::animate):

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

12 years ago2008-12-10 Simon Fraser <simon.fraser@apple.com>
simon.fraser@apple.com [Wed, 10 Dec 2008 17:18:12 +0000 (17:18 +0000)]
2008-12-10  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Dan Bernstein

        Part of
        https://bugs.webkit.org/show_bug.cgi?id=22570

        Rename methods on RenderLayer for clarity:
            clearClipRects -> clearClipRectsIncludingDescendants
            clearClipRect  -> clearClipRects

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

12 years agowx build fix after the script call stack/frame additions.
kevino@webkit.org [Wed, 10 Dec 2008 17:06:15 +0000 (17:06 +0000)]
wx build fix after the script call stack/frame additions.

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

12 years ago2008-12-10 Holger Hans Peter Freyther <zecke@selfish.org>
zecke@webkit.org [Wed, 10 Dec 2008 16:41:50 +0000 (16:41 +0000)]
2008-12-10  Holger Hans Peter Freyther  <zecke@selfish.org>

        Reviewed by Simon Hausmann.

        API changes discussed with Simon Hausmann, Tor Arne
        Vestbø, Ariya Hidayat...

        * Api/qwebdatabase.cpp:
        (QWebDatabase::fileName):
        (QWebDatabase::removeDatabase):
        * Api/qwebdatabase.h:
        * Api/qwebframe.cpp:
        (QWebFrame::scroll):
        (QWebFrame::scrollPosition):
        (QWebFrame::setScrollPosition):
        * Api/qwebframe.h:
        * Api/qwebpage.cpp:
        (QWebPage::setContentEditable):
        (QWebPage::isContentEditable):
        (QWebPage::extension):
        * Api/qwebpage.h:
        * Api/qwebsecurityorigin.cpp:
        * Api/qwebsettings.cpp:
        (QWebSettingsPrivate::apply):
        (QWebSettings::QWebSettings):
        * Api/qwebsettings.h:
        * QtLauncher/main.cpp:
        (MainWindow::setEditable):
        * WebCoreSupport/ChromeClientQt.cpp:
        (WebCore::ChromeClientQt::exceededDatabaseQuota):
        (WebCore::ChromeClientQt::runOpenPanel):
        * WebCoreSupport/EditorClientQt.cpp:
        (WebCore::EditorClientQt::isEditable):
        * tests/qwebpage/tst_qwebpage.cpp:
        (tst_QWebPage::database):

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

12 years ago2008-12-10 Srinivasa Rao M. Hamse <msrinirao@gmail.com>
zecke@webkit.org [Wed, 10 Dec 2008 16:35:41 +0000 (16:35 +0000)]
2008-12-10   Srinivasa Rao M. Hamse  <msrinirao@gmail.com>

        Reviewed by Holger Freyther.

        F1-F12 key mappings for WebKit Gtk Port

        * platform/gtk/KeyEventGtk.cpp:
        (WebCore::windowsKeyCodeForKeyEvent):

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

12 years ago2008-12-10 Enrico Ros <enrico.ros@m31.com>
hausmann@webkit.org [Wed, 10 Dec 2008 16:06:43 +0000 (16:06 +0000)]
2008-12-10  Enrico Ros  <enrico.ros@m31.com>

        Reviewed by Simon Hausmann.

        Fix the Qt build when SVG is disabled. A broken dependancy caused
        unnecessary rebuilds even with no changes.

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

12 years ago2008-12-09 Balazs Kelemen <Kelemen.Balazs.3@stud.u-szeged.hu>
hausmann@webkit.org [Wed, 10 Dec 2008 15:59:24 +0000 (15:59 +0000)]
2008-12-09  Balazs Kelemen  <Kelemen.Balazs.3@stud.u-szeged.hu>

        Reviewed by Simon Hausmann.

        Extended QtLauncher so now it can load pages from an url list
        one by one. This can be useful for testing purposes (eq. leak hunting).
        The -r option activates this feature.

        https://bugs.webkit.org/show_bug.cgi?id=20932

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

12 years ago2008-12-10 Hironori Bono <hbono@chromium.org>
ap@webkit.org [Wed, 10 Dec 2008 12:49:56 +0000 (12:49 +0000)]
2008-12-10  Hironori Bono  <hbono@chromium.org>

        Reviewed by Alexey Proskuryakov.

        Bug 21820: Unable to enter the Tamil UNICODE Characters via Thamizha Phonetic IME
        https://bugs.webkit.org/show_bug.cgi?id=21820

        <rdar://problem/5683248> Typing backspace to delete a diacritical mark also deletes the character before (Arabic)
        <rdar://problem/5702038> Backspace removes Thai Character in wrong sequence

        Tests: editing/deleting/delete-ligature-001.html
               editing/deleting/delete-ligature-002.html
               editing/deleting/delete-ligature-003.html

        * editing/TypingCommand.cpp:
        (WebCore::TypingCommand::deleteKeyPressed): Delete only the last character
        of a ligature which consists of multiple Unicode characters when deleting it with
        a backspace key.

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

12 years ago2008-12-10 David Levin <levin@chromium.org>
ap@webkit.org [Wed, 10 Dec 2008 12:23:36 +0000 (12:23 +0000)]
2008-12-10  David Levin  <levin@chromium.org>

        Reviewed by Alexey Proskuryakov.

        https://bugs.webkit.org/show_bug.cgi?id=22177
        Fix the windows build by removing calls to notifyFormStateChanged
        where they didn't appear in the original reviewed patch.

        * html/HTMLInputElement.cpp:
        (WebCore::HTMLInputElement::type):
        (WebCore::HTMLInputElement::attach):

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

12 years ago2008-12-10 Simon Hausmann <hausmann@webkit.org>
hausmann@webkit.org [Wed, 10 Dec 2008 09:10:32 +0000 (09:10 +0000)]
2008-12-10  Simon Hausmann  <hausmann@webkit.org>

        Fix the Qt build, added const to Node* parameter after change
        in signature.

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

12 years ago Rubber-stamped by Maciej Stachowiak.
ap@webkit.org [Wed, 10 Dec 2008 08:15:08 +0000 (08:15 +0000)]
    Rubber-stamped by Maciej Stachowiak.

        <rdar://problem/5959165> Crash in a number of iExploder tests in WebCore::CachedImage::notifyObservers

        Add a test for a crash that is no longer reproducible.

        * fast/css/mask-missing-image-crash-expected.txt: Added.
        * fast/css/mask-missing-image-crash.html: Added.

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

12 years ago Rubber-stamped by Dan Bernstein.
ap@webkit.org [Wed, 10 Dec 2008 07:59:56 +0000 (07:59 +0000)]
    Rubber-stamped by Dan Bernstein.

        https://bugs.webkit.org/show_bug.cgi?id=19762
        Crash in svg/webarchive/svg-cursor-subresources.svg

        * svg/webarchive/svg-cursor-subresources.svg: Copied from LayoutTests/svg/webarchive/svg-cursor-subresources.svg-disabled.
        * svg/webarchive/svg-cursor-subresources.svg-disabled: Removed.
        Re-enabling the test.

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

12 years agoJavaScriptCore:
ggaren@apple.com [Wed, 10 Dec 2008 07:54:04 +0000 (07:54 +0000)]
JavaScriptCore:

2008-12-09  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Oliver Hunt.

        Added WREC support for an assertion followed by a quantifier. Fixed
        PCRE to match.

        * wrec/WRECParser.cpp:
        (JSC::WREC::Parser::parseParentheses): Throw away the quantifier, since
        it's meaningless. (Firefox does the same.)

        * pcre/pcre_compile.cpp:
        (compileBranch): ditto.

LayoutTests:

2008-12-09  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Oliver Hunt.

        Added a test for an assertion followed by a quantifier.

        * fast/regex/quantified-assertions-expected.txt: Added.
        * fast/regex/quantified-assertions.html: Added.
        * fast/regex/resources/quantified-assertions.js: Copied from fast/regex/resources/alternative-length-miscalculation.js.

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

12 years ago2008-12-09 Adam Barth <abarth@webkit.org>
abarth@webkit.org [Wed, 10 Dec 2008 06:48:36 +0000 (06:48 +0000)]
2008-12-09  Adam Barth  <abarth@webkit.org>

        Reviewed by Sam Weinig.

        Add ScriptController::updateSecurityOrigin to notify the bindings
        that a document's securityOrigin has been updated.  This is used by
        V8 to update its security context.

        * bindings/js/ScriptController.cpp:
        (WebCore::ScriptController::updateSecurityOrigin):
        * bindings/js/ScriptController.h:
        * dom/Document.cpp:
        (WebCore::Document::setDomain):

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

12 years agoJavaScriptCore:
ggaren@apple.com [Wed, 10 Dec 2008 04:59:06 +0000 (04:59 +0000)]
JavaScriptCore:

2008-12-09  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Cameron Zwarich.

        In preparation for compiling WREC without PCRE:

        Further relaxed WREC's parsing to be more web-compatible. Fixed PCRE to
        match in cases where it didn't already.

        Changed JavaScriptCore to report syntax errors detected by WREC, rather
        than falling back on PCRE any time WREC sees an error.

        * pcre/pcre_compile.cpp:
        (checkEscape): Relaxed parsing of \c and \N escapes to be more
        web-compatible.

        * runtime/RegExp.cpp:
        (JSC::RegExp::RegExp): Only fall back on PCRE if WREC has not reported
        a syntax error.

        * wrec/WREC.cpp:
        (JSC::WREC::Generator::compileRegExp): Fixed some error reporting to
        match PCRE.

        * wrec/WRECParser.cpp: Added error messages that match PCRE.

        (JSC::WREC::Parser::consumeGreedyQuantifier):
        (JSC::WREC::Parser::parseParentheses):
        (JSC::WREC::Parser::parseCharacterClass):
        (JSC::WREC::Parser::parseNonCharacterEscape): Updated the above functions to
        use the new setError API.

        (JSC::WREC::Parser::consumeEscape): Relaxed parsing of \c \N \u \x \B
        to be more web-compatible.

        (JSC::WREC::Parser::parseAlternative): Distinguish between a malformed
        quantifier and a quantifier with no prefix, like PCRE does.

        (JSC::WREC::Parser::consumeParenthesesType): Updated to use the new setError API.

        * wrec/WRECParser.h:
        (JSC::WREC::Parser::error):
        (JSC::WREC::Parser::syntaxError):
        (JSC::WREC::Parser::parsePattern):
        (JSC::WREC::Parser::reset):
        (JSC::WREC::Parser::setError): Store error messages instead of error codes,
        to provide for exception messages. Use a setter for reporting errors, so
        errors detected early are not overwritten by errors detected later.

LayoutTests:

2008-12-09  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Cameron Zwarich.

        Updated regular expression layout tests to be agnostic between WREC
        and PCRE quirks. Also, updated results to match new, more web-compatible
        regular expression parsing.

        * fast/js/regexp-charclass-crash-expected.txt:
        * fast/js/regexp-charclass-crash.html:
        * fast/js/regexp-no-extensions-expected.txt:
        * fast/js/resources/regexp-no-extensions.js:
        * fast/regex/test1-expected.txt:

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

12 years ago2008-12-09 Gavin Barraclough <barraclough@apple.com>
barraclough@apple.com [Wed, 10 Dec 2008 04:22:00 +0000 (04:22 +0000)]
2008-12-09  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Oliver Hunt.

        Use va_args to access cti function arguments.
        https://bugs.webkit.org/show_bug.cgi?id=22774

        This may be a minor regression, but we'll take the hit if so to reduce fragility.

        * interpreter/Interpreter.cpp:
        * interpreter/Interpreter.h:

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

12 years agoFix gdb-safari on Tiger.
mrowe@apple.com [Wed, 10 Dec 2008 01:42:26 +0000 (01:42 +0000)]
Fix gdb-safari on Tiger.

gdb on Tiger does not take the -arch flag, so do not pass it.

Rubber-stamped by Ada Chan.

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

12 years ago2008-12-09 David Levin <levin@chromium.org>
pam@chromium.org [Wed, 10 Dec 2008 01:35:03 +0000 (01:35 +0000)]
2008-12-09  David Levin  <levin@chromium.org>

        Reviewed by Eric Seidel.

        https://bugs.webkit.org/show_bug.cgi?id=22512

        Add a test to check for checks when attaching an event to a document created by
        'document.implementation.createDocument'.

        * fast/events/create-document-crash-on-attach-event-expected.txt: Added.
        * fast/events/create-document-crash-on-attach-event.html: Added.
        * fast/events/resources/create-document-crash-on-attach-event.js: Added.
        (doc.onload):

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

12 years ago2008-12-09 David Levin <levin@chromium.org>
pam@chromium.org [Wed, 10 Dec 2008 01:28:20 +0000 (01:28 +0000)]
2008-12-09  David Levin  <levin@chromium.org>

        Reviewed by Eric Seidel.

        Add a test to check the event order for context clicks on Windows.

        https://bugs.webkit.org/show_bug.cgi?id=22505

        * platform/win/fast/events/context-click-events-expected.txt: Added.
        * platform/win/fast/events/context-click-events.html: Added.
        * platform/win/fast/events/resources: Added.
        * platform/win/fast/events/resources/TEMPLATE.html: Added.
        * platform/win/fast/events/resources/context-click-events.js: Added.
        (clickHandler):
        (traceMouseEvent):

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

12 years ago2008-12-09 Sam Weinig <sam@webkit.org>
weinig@apple.com [Wed, 10 Dec 2008 00:39:46 +0000 (00:39 +0000)]
2008-12-09  Sam Weinig  <sam@webkit.org>

        Reviewed twice by Cameron Zwarich.

        Fix for https://bugs.webkit.org/show_bug.cgi?id=22752
        Clear SymbolTable after codegen for Function codeblocks that
        don't require an activation

        This is a ~1.5MB improvement on Membuster-head.

        * bytecode/CodeBlock.cpp:
        (JSC::CodeBlock::dumpStatistics): Add logging of non-empty symbol tables
        and total size used by symbol tables.
        * bytecompiler/BytecodeGenerator.cpp:
        (JSC::BytecodeGenerator::generate): Clear the symbol table here.

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

12 years ago2008-12-09 Sam Weinig <sam@webkit.org>
weinig@apple.com [Wed, 10 Dec 2008 00:26:13 +0000 (00:26 +0000)]
2008-12-09  Sam Weinig  <sam@webkit.org>

        Reviewed by Geoffrey Garen.

        Remove unnecessary extra lookup when throwing an exception.
        We used to first lookup the target offset using getHandlerForVPC
        and then we would lookup the native code stub using
        nativeExceptionCodeForHandlerVPC.  Instead, we can just pass around
        the HandlerInfo.

        * bytecode/CodeBlock.cpp:
        (JSC::CodeBlock::handlerForVPC): Return the HandlerInfo.
        * bytecode/CodeBlock.h: Remove nativeExceptionCodeForHandlerVPC.

        * interpreter/Interpreter.cpp:
        (JSC::Interpreter::throwException): Return a HandlerInfo instead of
        and Instruction offset.
        (JSC::Interpreter::privateExecute): Get the offset from HandlerInfo.
        (JSC::Interpreter::cti_op_throw): Get the native code from the HandleInfo.
        (JSC::Interpreter::cti_vm_throw): Ditto.
        * interpreter/Interpreter.h:

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

12 years ago2008-12-09 Anders Carlsson <andersca@apple.com>
andersca@apple.com [Wed, 10 Dec 2008 00:14:18 +0000 (00:14 +0000)]
2008-12-09  Anders Carlsson  <andersca@apple.com>

        Reviewed by Darin Adler.

        Fix typecast.

        * WebView/WebHTMLView.mm:
        (-[WebHTMLView _pauseNullEventsForAllNetscapePlugins]):

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

12 years ago2008-12-09 Anders Carlsson <andersca@apple.com>
andersca@apple.com [Wed, 10 Dec 2008 00:13:56 +0000 (00:13 +0000)]
2008-12-09  Anders Carlsson  <andersca@apple.com>

        Reviewed by Darin Adler.

        Implement software rendering of hosted plug-ins.

        * Plugins/Hosted/NetscapePluginHostProxy.mm:
        (WKPCInvalidateRect):
        New MiG function. This is called by the plug-in host when it has drawn something.

        * Plugins/Hosted/WebHostedNetscapePluginView.h:
        * Plugins/Hosted/WebHostedNetscapePluginView.mm:
        (-[WebHostedNetscapePluginView createPlugin]):
        Create a software renderer.

        (-[WebHostedNetscapePluginView destroyPlugin]):
        Destroy the software renderer.

        (-[WebHostedNetscapePluginView drawRect:]):
        Draw using the software renderer.

        * Plugins/Hosted/WebKitPluginClient.defs:
        Add InvalidateRect.

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

12 years ago No review, build fix only.
eric@webkit.org [Wed, 10 Dec 2008 00:11:46 +0000 (00:11 +0000)]
    No review, build fix only.

        Fix a few config issues to let the Chromium Windows WebCore build get further.

        * WebCore.scons:

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

12 years agoReviewed by Dave Hyatt.
brettw@chromium.org [Wed, 10 Dec 2008 00:01:39 +0000 (00:01 +0000)]
Reviewed by Dave Hyatt.

https://bugs.webkit.org/show_bug.cgi?id=22177

Add a callback on ChromeClient that the state of form elements on
the page has changed. This is to allow clients implementing session
saving to know when the current state is dirty.

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

12 years ago2008-12-09 Anders Carlsson <andersca@apple.com>
andersca@apple.com [Tue, 9 Dec 2008 23:51:33 +0000 (23:51 +0000)]
2008-12-09  Anders Carlsson  <andersca@apple.com>

        Reviewed by Dan Bernstein.

        Make sure to pause null events for hosted plug-ins as well.

        * WebView/WebHTMLView.mm:
        (-[WebHTMLView _pauseNullEventsForAllNetscapePlugins]):

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

12 years ago2008-12-09 Anders Carlsson <andersca@apple.com>
andersca@apple.com [Tue, 9 Dec 2008 23:49:09 +0000 (23:49 +0000)]
2008-12-09  Anders Carlsson  <andersca@apple.com>

        Reviewed by Darin Adler.

        * Plugins/Hosted/NetscapePluginHostProxy.h:
        * Plugins/Hosted/NetscapePluginHostProxy.mm:
        (WebKit::NetscapePluginHostProxy::NetscapePluginHostProxy):
        (WebKit::NetscapePluginHostProxy::~NetscapePluginHostProxy):
        Unfortunately we can't use a libdispatch source right now, because of <rdar://problem/6393180>.

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

12 years ago2008-12-09 Sam Weinig <sam@webkit.org>
weinig@apple.com [Tue, 9 Dec 2008 23:36:39 +0000 (23:36 +0000)]
2008-12-09  Sam Weinig  <sam@webkit.org>

        Reviewed by Darin Adler.

        Fix intermittent crash in buildbot. The CSSCursorImageValues and
        SVGCursorElements held onto raw SVGElement pointers without any
        guarantee that the element is still around.

        We did not fix the design that resulted in this issue, we just fixed
        the pointer lifetimes.

        * css/CSSCursorImageValue.cpp:
        (WebCore::CSSCursorImageValue::~CSSCursorImageValue): Zero out the back pointers.
        (WebCore::CSSCursorImageValue::updateIfSVGCursorIsUsed): Set up a back pointer.
        (WebCore::CSSCursorImageValue::removeReferencedElement): Added. Used when the element
        is destroyed.
        * css/CSSCursorImageValue.h: Added removeReferencedElement.

        * svg/SVGCursorElement.cpp:
        (WebCore::SVGCursorElement::~SVGCursorElement): Zero out the back pointers.
        (WebCore::SVGCursorElement::addClient): Set up a back pointer.
        (WebCore::SVGCursorElement::removeClient): Zero out the back pointer.

        * svg/SVGElement.cpp:
        (WebCore::SVGElement::SVGElement): Initialize back pointers to zero.
        (WebCore::SVGElement::~SVGElement): Call both the element and cursor image value
        to remove the element from their sets.
        * svg/SVGElement.h:
        (WebCore::SVGElement::setCursorElement): Added.
        (WebCore::SVGElement::setCursorImageValue): Added.

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

12 years ago No review, build fix only.
eric@webkit.org [Tue, 9 Dec 2008 23:33:28 +0000 (23:33 +0000)]
    No review, build fix only.

        Add ExecutableAllocator files missing from Scons build.

        * JavaScriptCore.scons:

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

12 years ago2008-12-09 Dimitri Glazkov <dglazkov@chromium.org>
darin@chromium.org [Tue, 9 Dec 2008 23:11:02 +0000 (23:11 +0000)]
2008-12-09  Dimitri Glazkov  <dglazkov@chromium.org>

        Fix bustage.

        * WebCoreSupport/WebInspectorClientCF.cpp:

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

12 years ago2008-12-09 David Hyatt <hyatt@apple.com>
hyatt@apple.com [Tue, 9 Dec 2008 22:36:10 +0000 (22:36 +0000)]
2008-12-09  David Hyatt  <hyatt@apple.com>

        Add code that will create custom CSS scrollbars from the <body>, the document element (<html>) and the owning
        frame/iframe.  If any of them set a custom style, it will be used.  The scrollbars do not update dynamically
        yet as you switch from page to page (until they are destroyed and recreated).

        Reviewed by Adele

        * page/FrameView.cpp:
        (WebCore::FrameView::createScrollbar):

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

12 years ago Implement a few methods needed to keep Dictionary.app working on Leopard.
timothy@apple.com [Tue, 9 Dec 2008 22:02:58 +0000 (22:02 +0000)]
    Implement a few methods needed to keep Dictionary.app working on Leopard.

        <rdar://problem/6002160> Internal changes to WebKit in Safari 4
        Developer Preview might break Dictionary

        Reviewed by Dan Bernstein.

        * WebView/WebFrame.mm:
        (-[WebFrame convertNSRangeToDOMRange:]): Added. Calls _convertNSRangeToDOMRange.
        (-[WebFrame convertDOMRangeToNSRange:]): Added. Calls _convertDOMRangeToNSRange.
        * WebView/WebHTMLView.mm:
        (-[WebHTMLView _bridge]): Added. Returns the WebFrame, which has the methods
        that Dictionary.app is using.

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

12 years ago2008-12-09 Ojan Vafai <ojan@chromium.org>
darin@chromium.org [Tue, 9 Dec 2008 21:46:03 +0000 (21:46 +0000)]
2008-12-09  Ojan Vafai  <ojan@chromium.org>

        Reviewed by Dave Hyatt.

        https://bugs.webkit.org/show_bug.cgi?id=22689
        Match Firefox button metrics on Windows.

        * rendering/RenderButton.cpp:
        (WebCore::RenderButton::addChild):
        (WebCore::RenderButton::styleDidChange):
        (WebCore::RenderButton::setupInnerStyle):
        * rendering/RenderButton.h:
        * rendering/RenderTheme.cpp:
        (WebCore::RenderTheme::adjustButtonInnerStyle):
        * rendering/RenderTheme.h:
        * rendering/RenderThemeWin.cpp:
        (WebCore::RenderThemeWin::adjustSliderThumbSize):
        (WebCore::RenderThemeWin::adjustButtonInnerStyle):
        * rendering/RenderThemeWin.h:

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

12 years ago2008-12-09 Darin Fisher <darin@chromium.org>
darin@chromium.org [Tue, 9 Dec 2008 20:43:56 +0000 (20:43 +0000)]
2008-12-09  Darin Fisher  <darin@chromium.org>

        Fixes bustages.

        https://bugs.webkit.org/show_bug.cgi?id=22631
        Adding missing files from previous commit.

        * bindings/js/ScriptCallFrame.cpp: Added.
        (WebCore::ScriptCallFrame::ScriptCallFrame):
        (WebCore::ScriptCallFrame::~ScriptCallFrame):
        (WebCore::ScriptCallFrame::argumentAt):
        * bindings/js/ScriptCallFrame.h: Added.
        (WebCore::ScriptCallFrame::functionName):
        (WebCore::ScriptCallFrame::sourceURL):
        (WebCore::ScriptCallFrame::lineNumber):
        (WebCore::ScriptCallFrame::argumentCount):
        * bindings/js/ScriptCallStack.cpp: Added.
        (WebCore::ScriptCallStack::ScriptCallStack):
        (WebCore::ScriptCallStack::~ScriptCallStack):
        (WebCore::ScriptCallStack::at):
        (WebCore::ScriptCallStack::size):
        (WebCore::ScriptCallStack::initialize):
        * bindings/js/ScriptCallStack.h: Added.
        (WebCore::ScriptCallStack::state):

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

12 years ago2008-12-09 Dimitri Glazkov <dglazkov@chromium.org>
darin@chromium.org [Tue, 9 Dec 2008 20:25:33 +0000 (20:25 +0000)]
2008-12-09  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Timothy Hatcher.

        https://bugs.webkit.org/show_bug.cgi?id=22631
        Streamline Console.cpp, abstract out the use of JSC::ExecState and
        JSC::ArgList by introducing ScriptCallFrame and ScriptCallStack
        abstractions.

        * GNUmakefile.am: Added ScriptCallFrame and ScriptCallStack to build
        * WebCore.pro:  Added ScriptCallFrame and ScriptCallStack to build
        * WebCore.vcproj/WebCore.vcproj: Added ScriptCallFrame and
        ScriptCallStack to project
        * WebCore.xcodeproj/project.pbxproj: Added ScriptCallFrame and
        ScriptCallStack to project
        * bindings/js/JSConsoleCustom.cpp: Remove custom bindings.
        * bindings/js/ScriptCallFrame.cpp: Added.
        (WebCore::ScriptCallFrame::ScriptCallFrame):
        (WebCore::ScriptCallFrame::~ScriptCallFrame):
        (WebCore::ScriptCallFrame::argumentAt):
        * bindings/js/ScriptCallFrame.h: Added.
        (WebCore::ScriptCallFrame::functionName):
        (WebCore::ScriptCallFrame::sourceURL):
        (WebCore::ScriptCallFrame::lineNumber):
        (WebCore::ScriptCallFrame::argumentCount):
        * bindings/js/ScriptCallStack.cpp: Added.
        (WebCore::ScriptCallStack::ScriptCallStack):
        (WebCore::ScriptCallStack::~ScriptCallStack):
        (WebCore::ScriptCallStack::at):
        (WebCore::ScriptCallStack::size):
        (WebCore::ScriptCallStack::initialize):
        * bindings/js/ScriptCallStack.h: Added.
        (WebCore::ScriptCallStack::ScriptCallStack):
        (WebCore::ScriptCallStack::~ScriptCallStack):
        (WebCore::ScriptCallStack::state):
        (WebCore::ScriptCallStack::at):
        (WebCore::ScriptCallStack::size):
        (WebCore::ScriptCallStack::initialize):
        * bindings/js/ScriptString.h: Added missing PlatformString include.
        (WebCore::ScriptString::ScriptString): Added default constructor.
        (WebCore::ScriptString::operator==): Added equality operator.
        (WebCore::ScriptString::operator!=):
        * bindings/js/ScriptValue.cpp: Added isNull and isUndefined.
        (WebCore::ScriptValue::isNull):
        (WebCore::ScriptValue::isUndefined):
        * bindings/js/ScriptValue.h: Added isNull and isUndefined
        * bindings/scripts/CodeGeneratorJS.pm: Add handling for
        CustomArgumentHandling attribute.
        * inspector/InspectorController.cpp: Refactored to use
        ScriptCallFrame and ScriptCallStack.
        (WebCore::ConsoleMessage::ConsoleMessage):
        (WebCore::InspectorController::addMessageToConsole):
        (WebCore::InspectorController::startGroup):
        (WebCore::InspectorController::addScriptConsoleMessage):
        (WebCore::InspectorController::count):
        (WebCore::InspectorController::startTiming):
        (WebCore::InspectorController::stopTiming):
        * inspector/InspectorController.h: Refactored to use ScriptCallFrame and
        ScriptCallStack.
        * inspector/front-end/Console.js: Modified to use argument value itself
        rather than f.name for stack trace.
        * page/Console.cpp: Refactored to use ScriptCallFrame and
        ScriptCallStack.
        (WebCore::getFirstArgumentAsString):
        (WebCore::Console::addMessage):
        (WebCore::Console::debug):
        (WebCore::Console::error):
        (WebCore::Console::info):
        (WebCore::Console::log):
        (WebCore::Console::dir):
        (WebCore::Console::dirxml):
        (WebCore::Console::trace):
        (WebCore::Console::assertCondition):
        (WebCore::Console::count):
        (WebCore::Console::profile):
        (WebCore::Console::profileEnd):
        (WebCore::Console::time):
        (WebCore::Console::timeEnd):
        (WebCore::Console::group):
        (WebCore::Console::warn):
        * page/Console.h:
        * page/Console.idl: Removed Custom attributes, added
        CustomArgumentHandling attributes, and tweaked argument defs.

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

12 years ago2008-12-08 Judit Jasz <jasy@inf.u-szeged.hu>
cwzwarich@webkit.org [Tue, 9 Dec 2008 19:19:04 +0000 (19:19 +0000)]
2008-12-08  Judit Jasz  <jasy@inf.u-szeged.hu>

        Reviewed and tweaked by Cameron Zwarich.

        Bug 22352: Annotate opcodes with their length
        <https://bugs.webkit.org/show_bug.cgi?id=22352>

        * bytecode/Opcode.cpp:
        * bytecode/Opcode.h:
        * interpreter/Interpreter.cpp:
        (JSC::Interpreter::privateExecute):
        * jit/JIT.cpp:
        (JSC::JIT::privateCompileMainPass):
        (JSC::JIT::privateCompileSlowCases):

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

12 years ago2008-12-09 Darin Adler <darin@apple.com>
darin@apple.com [Tue, 9 Dec 2008 18:42:41 +0000 (18:42 +0000)]
2008-12-09  Darin Adler  <darin@apple.com>

        Try to fix non-Mac builds.

        * GNUmakefile.am: Added NavigatorBase.
        * WebCore.pro: Ditto.
        * WebCore.scons: Ditto.
        * WebCore.vcproj/WebCore.vcproj: Ditto.
        * WebCoreSources.bkl: Ditto.

        Unrelated tweak sitting in my tree.

        * bindings/objc/DOMAbstractView.mm: Remove pointless override of finalize method.

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

12 years ago2008-12-09 Darin Adler <darin@apple.com>
darin@apple.com [Tue, 9 Dec 2008 18:38:35 +0000 (18:38 +0000)]
2008-12-09  Darin Adler  <darin@apple.com>

        Try to fix Tiger build.

        * platform/network/mac/NetworkStateNotifierMac.cpp: Declare CFRunLoopGetMain.

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

12 years ago Reviewed by Darin Adler.
ap@webkit.org [Tue, 9 Dec 2008 17:58:10 +0000 (17:58 +0000)]
    Reviewed by Darin Adler.

        https://bugs.webkit.org/show_bug.cgi?id=22719
        Implement Navigator object in Workers

        Test: fast/workers/worker-navigator.html

        * DerivedSources.make:
        * GNUmakefile.am:
        * WebCore.pro:
        * WebCore.vcproj/WebCore.vcproj:
        * WebCore.xcodeproj/project.pbxproj:
        Added WorkerNavigator sources.

        * bindings/js/JSWorkerContext.cpp: (WebCore::jsWorkerContextNavigator):
        Worker.navigator returns a WoerkerNavigator object (it is named just Navigator in the spec,
        but it is not the same interface that is available on Windows).

        * dom/Worker.cpp:
        (WebCore::Worker::notifyFinished):
        * dom/WorkerContext.cpp:
        (WebCore::WorkerContext::WorkerContext):
        (WebCore::WorkerContext::navigator):
        * dom/WorkerContext.h:
        (WebCore::WorkerContext::create):
        * dom/WorkerThread.cpp:
        (WebCore::WorkerThread::create):
        (WebCore::WorkerThread::WorkerThread):
        (WebCore::WorkerThread::workerThread):
        * dom/WorkerThread.h:
        Pass a pre-computed user agent string into worker, because it cannot call a client method
        directly, and pre-computing is easier than sending a synchronous message to the main thread.

        * page/Navigator.cpp:
        * page/Navigator.h:
        * page/NavigatorBase.cpp: Added.
        * page/NavigatorBase.h: Added.
        Factor out common (and uncommon, but very similar) functionality into a base class.

        * page/WorkerNavigator.cpp: Added.
        * page/WorkerNavigator.h: Added.
        * page/WorkerNavigator.idl: Added.
        Per Web Workers and HTML5, implement a small subset of what we currently have in Window.Navigator.

        * platform/network/NetworkStateNotifier.cpp: (WebCore::networkStateNotifier):
        Make networkStateNotifier() static constructor thread safe. The object is created on the
        thread it is first called from, while callbacks are registered on the main thread. Calls to
        onLine() from other threads are safe, because it is just loading a boolean.

        * platform/network/mac/NetworkStateNotifierMac.cpp: (WebCore::NetworkStateNotifier::NetworkStateNotifier):
        Schedule notifications on main event loop, not the current one.

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

12 years ago2008-12-09 Pamela Greene <pam@chromium.org>
pam@chromium.org [Tue, 9 Dec 2008 17:53:40 +0000 (17:53 +0000)]
2008-12-09  Pamela Greene  <pam@chromium.org>

        Submitted without review.
        Corrected results so the test passes.

        * fast/events/special-key-events-in-input-text-expected.txt:

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

12 years ago008-12-09 Ariya Hidayat <ariya.hidayat@trolltech.com>
hausmann@webkit.org [Tue, 9 Dec 2008 16:40:37 +0000 (16:40 +0000)]
008-12-09  Ariya Hidayat  <ariya.hidayat@trolltech.com>

        Reviewed by Simon Hausmann.

        Fix the documentation of the localStorageDatabasePath setters/getters.

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

12 years agoRubber-stamped by Alexey Proskuryakov.
zimmermann@webkit.org [Tue, 9 Dec 2008 14:50:21 +0000 (14:50 +0000)]
Rubber-stamped by Alexey Proskuryakov.
Forgot to update Qt/WML build - add some new files to the build.

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

12 years agoFixed more ChangeLog dates.
ddkilzer@apple.com [Tue, 9 Dec 2008 14:48:15 +0000 (14:48 +0000)]
Fixed more ChangeLog dates.

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

12 years agoReviewed by Alexey Proskuryakov.
zimmermann@webkit.org [Tue, 9 Dec 2008 14:42:56 +0000 (14:42 +0000)]
Reviewed by Alexey Proskuryakov.

Fixes: https://bugs.webkit.org/show_bug.cgi?id=22637

Implement the GET method for WMLGoElement, and some test covering it's behaviour.
Update all build systems supporting WML that haven't been updated since a while.

Add WMLPostField stub implementation, needed for implementing POST method.

Tests: wml/go-task-get-method-external-deck-with-href.html
       wml/go-task-get-method-external-deck.html
       wml/go-task-get-method-same-deck.html

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

12 years ago2008-12-08 Ariya Hidayat <ariya.hidayat@trolltech.com>
hausmann@webkit.org [Tue, 9 Dec 2008 10:13:49 +0000 (10:13 +0000)]
2008-12-08  Ariya Hidayat  <ariya.hidayat@trolltech.com>

        Reviewed by Simon Hausmann.

        Multiple files support for the file chooser.

        * Api/qwebpage.cpp:
        (QWebPage::chooseFiles):
        * Api/qwebpage.h:
        * WebCoreSupport/ChromeClientQt.cpp:
        (WebCore::ChromeClientQt::runOpenPanel):

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

12 years ago2008-12-08 Dmitry Titov <dimich@chromium.org>
ap@webkit.org [Tue, 9 Dec 2008 07:48:45 +0000 (07:48 +0000)]
2008-12-08  Dmitry Titov  <dimich@chromium.org>

        Reviewed by Darin Adler.

        Test for https://bugs.webkit.org/show_bug.cgi?id=22710
        Verifies that active timeout does not cause memory leak.

        * fast/dom/Window/resources/long_timeout.html: Added.
        * fast/dom/Window/timeout-released-on-close-expected.txt: Added.
        * fast/dom/Window/timeout-released-on-close.html: Added.

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

12 years ago2008-12-08 Geoffrey Garen <ggaren@apple.com>
ggaren@apple.com [Tue, 9 Dec 2008 07:24:05 +0000 (07:24 +0000)]
2008-12-08  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Oliver Hunt.

        Implemented more of the relaxed and somewhat weird rules for deciding
        how to interpret a non-pattern-character.

        * wrec/Escapes.h:
        (JSC::WREC::Escape::):
        (JSC::WREC::Escape::Escape): Eliminated Escape::None because it was
        unused. If you see an '\\', it's either a valid escape or an error.

        * wrec/Quantifier.h:
        (JSC::WREC::Quantifier::Quantifier):
        * wrec/WRECGenerator.cpp:
        (JSC::WREC::Generator::generateNonGreedyQuantifier):
        (JSC::WREC::Generator::generateGreedyQuantifier): Renamed "noMaxSpecified"
        to "Infinity", since that's what it means.

        * wrec/WRECParser.cpp:
        (JSC::WREC::Parser::consumeGreedyQuantifier): Re-wrote {n,m} parsing rules
        because they were too strict before. Added support for backtracking
        in the case where the {n,m} fails to parse as a quantifier, and yet is
        not a syntax error.

        (JSC::WREC::Parser::parseCharacterClass):
        (JSC::WREC::Parser::parseNonCharacterEscape): Eliminated Escape::None,
        as above.

        (JSC::WREC::Parser::consumeEscape): Don't treat ASCII and _ escapes
        as syntax errors. See fast/regex/non-pattern-characters.html.

        * wrec/WRECParser.h:
        (JSC::WREC::Parser::SavedState::SavedState):
        (JSC::WREC::Parser::SavedState::restore): Added a state backtracker,
        since parsing {n,m} forms requires backtracking if the form turns out
        not to be a quantifier.

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

12 years ago2008-12-08 Geoffrey Garen <ggaren@apple.com>
ggaren@apple.com [Tue, 9 Dec 2008 07:07:40 +0000 (07:07 +0000)]
2008-12-08  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Oliver Hunt.

        Added a shortcut for --jsDriver-args, which I use a lot.

        * Scripts/run-javascriptcore-tests:

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

12 years ago2008-12-08 Geoffrey Garen <ggaren@apple.com>
ggaren@apple.com [Tue, 9 Dec 2008 06:47:37 +0000 (06:47 +0000)]
2008-12-08  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Oliver Hunt.

        Refactored WREC parsing so that only one piece of code needs to know
        the relaxed and somewhat weird rules for deciding how to interpret a
        non-pattern-character, in preparation for implementing those rules.

        Also, implemented the relaxed and somewhat weird rules for '}' and ']'.

        * wrec/WREC.cpp: Reduced the regular expression size limit. Now that
        WREC handles ']' properly, it compiles fast/js/regexp-charclass-crash.html,
        which makes it hang at the old limit. (The old limit was based on the
        misimpression that the same value in PCRE limited the regular expression
        pattern size; in reality, it limited the expected compiled regular
        expression size. WREC doesn't have a way to calculate an expected
        compiled regular expression size, but this should be good enough.)

        * wrec/WRECParser.cpp:
        (JSC::WREC::parsePatternCharacterSequence): Nixed this function because
        it contained a second copy of the logic for handling non-pattern-characters,
        which is about to get a lot more complicated.

        (JSC::WREC::PatternCharacterSequence::PatternCharacterSequence):
        (JSC::WREC::PatternCharacterSequence::size):
        (JSC::WREC::PatternCharacterSequence::append):
        (JSC::WREC::PatternCharacterSequence::flush): Helper object for generating
        an optimized sequence of pattern characters.

        (JSC::WREC::Parser::parseNonCharacterEscape): Renamed to reflect the fact
        that the main parseAlternative loop handles character escapes.

        (JSC::WREC::Parser::parseAlternative): Moved pattern character sequence
        logic from parsePatternCharacterSequence to here, using
        PatternCharacterSequence to help with the details.

        * wrec/WRECParser.h: Updated for renames.

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

12 years ago Reviewed by Geoff Garen.
ap@webkit.org [Tue, 9 Dec 2008 06:46:39 +0000 (06:46 +0000)]
    Reviewed by Geoff Garen.

        <rdar://problem/6166088> Give JSGlobalContextCreate a behavior that is concurrency aware,
        and un-deprecate it

        * API/JSContextRef.cpp: (JSGlobalContextCreate):
        * API/JSContextRef.h:
        Use a unique context group for the context, unless the application was linked against old
        JavaScriptCore.

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

12 years ago Reviewed by Adam Roben.
mitz@apple.com [Tue, 9 Dec 2008 06:29:17 +0000 (06:29 +0000)]
    Reviewed by Adam Roben.

        - Fix nightly builds

        * Interfaces/IWebViewPrivate.idl: Moved globalHistoryItem() to the end,
        so that it comes after all methods used by Safari 3.2.1.

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

12 years ago2008-12-08 Geoffrey Garen <ggaren@apple.com>
ggaren@apple.com [Tue, 9 Dec 2008 06:23:37 +0000 (06:23 +0000)]
2008-12-08  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Sam Weinig.

        Fixed js-test-pre.js to print a meaningful, complete sentence when
        exception tests fail.

        * fast/js/const-expected.txt: Updated test for new results.

        * fast/js/resources/js-test-pre.js:
        (shouldThrow):

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

12 years ago2008-12-08 Stephanie Lewis <slewis@apple.com>
slewis@apple.com [Tue, 9 Dec 2008 05:34:57 +0000 (05:34 +0000)]
2008-12-08  Stephanie Lewis  <slewis@apple.com>

        Fix Tiger build.

        * DumpRenderTree/mac/LayoutTestControllerMac.mm:

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

12 years ago2008-12-08 Sam Weinig <sam@webkit.org>
weinig@apple.com [Tue, 9 Dec 2008 05:27:10 +0000 (05:27 +0000)]
2008-12-08  Sam Weinig  <sam@webkit.org>

        Reviewed by Cameron Zwarich.

        Fix for <rdar://problem/6428332> Remove the CTI return address table from CodeBlock

        Step 1:

        Remove use of jitReturnAddressVPCMap when looking for vPC to store Structures
        in for cached lookup.  Instead, use the offset in the StructureStubInfo that is
        already required.

        * bytecode/CodeBlock.cpp:
        (JSC::CodeBlock::dumpStatistics): Fix extraneous semicolon.
        * interpreter/Interpreter.cpp:
        (JSC::Interpreter::tryCTICachePutByID):
        (JSC::Interpreter::tryCTICacheGetByID):
        (JSC::Interpreter::cti_op_get_by_id_self_fail):
        (JSC::Interpreter::cti_op_get_by_id_proto_list):
        * jit/JIT.h:
        (JSC::JIT::compileGetByIdSelf):
        (JSC::JIT::compileGetByIdProto):
        (JSC::JIT::compileGetByIdChain):
        (JSC::JIT::compilePutByIdReplace):
        (JSC::JIT::compilePutByIdTransition):
        * jit/JITPropertyAccess.cpp:
        (JSC::JIT::privateCompilePutByIdTransition):
        (JSC::JIT::patchGetByIdSelf):
        (JSC::JIT::patchPutByIdReplace):
        (JSC::JIT::privateCompilePatchGetArrayLength): Remove extra call to getStubInfo.
        (JSC::JIT::privateCompileGetByIdSelf):
        (JSC::JIT::privateCompileGetByIdProto):
        (JSC::JIT::privateCompileGetByIdChain):
        (JSC::JIT::privateCompilePutByIdReplace):

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

12 years ago2008-12-08 Gavin Barraclough <barraclough@apple.com>
barraclough@apple.com [Tue, 9 Dec 2008 04:54:16 +0000 (04:54 +0000)]
2008-12-08  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Oliver Hunt.

        Port the op_j?n?eq_null JIT code generation to use the MacroAssembler,
        and clean up slightly at the same time.  The 'j' forms currently compare,
        then set a register, then compare again, then branch.  Branch directly on
        the result of the first compare.

        Around a 1% progression on deltablue, crypto & early boyer, for about 1/2%
        overall on v8-tests.

        * jit/JIT.cpp:
        (JSC::JIT::privateCompileMainPass):
        * jit/JITPropertyAccess.cpp:
        (JSC::JIT::compileGetByIdSlowCase):

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

12 years ago2008-12-08 Gavin Barraclough <barraclough@apple.com>
barraclough@apple.com [Tue, 9 Dec 2008 02:10:41 +0000 (02:10 +0000)]
2008-12-08  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Geoff Garen.

        Expand MacroAssembler to support more operations, required by the JIT.

        Generally adds more operations and permutations of operands to the existing
        interface.  Rename 'jset' to 'jnz' and 'jnset' to 'jz', which seem clearer,
        and require that immediate pointer operands (though not pointer addresses to
        load and store instructions) are wrapped in a ImmPtr() type, akin to Imm32().

        No performance impact.

        * assembler/MacroAssembler.h:
        (JSC::MacroAssembler::):
        (JSC::MacroAssembler::ImmPtr::ImmPtr):
        (JSC::MacroAssembler::add32):
        (JSC::MacroAssembler::and32):
        (JSC::MacroAssembler::or32):
        (JSC::MacroAssembler::sub32):
        (JSC::MacroAssembler::xor32):
        (JSC::MacroAssembler::loadPtr):
        (JSC::MacroAssembler::load32):
        (JSC::MacroAssembler::storePtr):
        (JSC::MacroAssembler::store32):
        (JSC::MacroAssembler::poke):
        (JSC::MacroAssembler::move):
        (JSC::MacroAssembler::testImm32):
        (JSC::MacroAssembler::jae32):
        (JSC::MacroAssembler::jb32):
        (JSC::MacroAssembler::jePtr):
        (JSC::MacroAssembler::je32):
        (JSC::MacroAssembler::jnePtr):
        (JSC::MacroAssembler::jne32):
        (JSC::MacroAssembler::jnzPtr):
        (JSC::MacroAssembler::jnz32):
        (JSC::MacroAssembler::jzPtr):
        (JSC::MacroAssembler::jz32):
        (JSC::MacroAssembler::joSub32):
        (JSC::MacroAssembler::jump):
        (JSC::MacroAssembler::sete32):
        (JSC::MacroAssembler::setne32):
        (JSC::MacroAssembler::setnz32):
        (JSC::MacroAssembler::setz32):
        * assembler/X86Assembler.h:
        (JSC::X86Assembler::addl_mr):
        (JSC::X86Assembler::andl_i8r):
        (JSC::X86Assembler::cmpl_rm):
        (JSC::X86Assembler::cmpl_mr):
        (JSC::X86Assembler::cmpl_i8m):
        (JSC::X86Assembler::subl_mr):
        (JSC::X86Assembler::testl_i32m):
        (JSC::X86Assembler::xorl_i32r):
        (JSC::X86Assembler::movl_rm):
        (JSC::X86Assembler::modRm_opmsib):
        * jit/JIT.cpp:
        (JSC::JIT::privateCompileMainPass):
        * jit/JITInlineMethods.h:
        (JSC::JIT::emitGetVirtualRegister):
        (JSC::JIT::emitPutCTIArgConstant):
        (JSC::JIT::emitPutCTIParam):
        (JSC::JIT::emitPutImmediateToCallFrameHeader):
        (JSC::JIT::emitInitRegister):
        (JSC::JIT::checkStructure):
        (JSC::JIT::emitJumpIfJSCell):
        (JSC::JIT::emitJumpIfNotJSCell):
        (JSC::JIT::emitJumpSlowCaseIfNotImmNum):

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

12 years ago2008-12-08 Pierre-Olivier Latour <pol@apple.com>
pol@apple.com [Tue, 9 Dec 2008 02:01:55 +0000 (02:01 +0000)]
2008-12-08  Pierre-Olivier Latour  <pol@apple.com>

        Reviewed by Dan Bernstein.

        Increase timeout in video-paint-test.js so that <video> tests pass on the Tiger pixel bot which is slower
        than the Leopard one.

        https://bugs.webkit.org/show_bug.cgi?id=22742

        * media/video-paint-test.js:
        (init):

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

12 years agoJavaScriptCore:
ggaren@apple.com [Tue, 9 Dec 2008 01:10:37 +0000 (01:10 +0000)]
JavaScriptCore:

2008-12-08  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Sam Weinig.

        Fixed a bug where WREC would allow a quantifier whose minimum was
        greater than its maximum.

        * wrec/Quantifier.h:
        (JSC::WREC::Quantifier::Quantifier): ASSERT that the quantifier is not
        backwards.

        * wrec/WRECParser.cpp:
        (JSC::WREC::Parser::consumeGreedyQuantifier): Verify that the minimum
        is not greater than the maximum.

LayoutTests:

2008-12-08  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Sam Weinig.

        Added a test for interesting uses of non-pattern-characters in regular
        expressions.

        * fast/regex/non-pattern-characters-expected.txt: Added.
        * fast/regex/non-pattern-characters.html: Added.
        * fast/regex/resources/non-pattern-characters.js: Added.

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