WebKit-https.git
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

12 years ago Build fix only, no review.
eric@webkit.org [Tue, 9 Dec 2008 01:09:09 +0000 (01:09 +0000)]
    Build fix only, no review.

        * JavaScriptCore.scons: add bytecode/JumpTable.cpp

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

12 years ago2008-12-08 Anders Carlsson <andersca@apple.com>
andersca@apple.com [Tue, 9 Dec 2008 01:07:37 +0000 (01:07 +0000)]
2008-12-08  Anders Carlsson  <andersca@apple.com>

        Reviewed by Darin Adler.

        More work towards getting NPN_GetURL working.

        * Plugins/Hosted/HostedNetscapePluginStream.h:
        Inherit from NetscapePlugInStreamLoaderClient.

        (WebKit::HostedNetscapePluginStream::streamID):
        * Plugins/Hosted/HostedNetscapePluginStream.mm:
        (WebKit::HostedNetscapePluginStream::startStream):
        Keep track of the resposne URL and the MIME type. Pass the response URL to the
        plug-in host.

        (WebKit::HostedNetscapePluginStream::didFinishLoading):
        Disconnect the stream.

        (WebKit::HostedNetscapePluginStream::start):
        Create a plug-in stream loader and start loading.

        (WebKit::HostedNetscapePluginStream::stop):
        Cancel the load.

        * Plugins/Hosted/NetscapePluginHostProxy.mm:
        (WKPCLoadURL):
        Fix the parameter order.

        (WKPCCancelLoadURL):
        New function that cancels a load of a stream with a given reason.

        * Plugins/Hosted/NetscapePluginInstanceProxy.h:
        * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
        (WebKit::NetscapePluginInstanceProxy::destroy):
        Stop the streams.

        (WebKit::NetscapePluginInstanceProxy::pluginStream):
        Return a plug-in stream given a stream ID.

        (WebKit::NetscapePluginInstanceProxy::disconnectStream):
        Remove the stream from the streams map.

        (WebKit::NetscapePluginInstanceProxy::loadRequest):
        Create a stream and load it.

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

        * Plugins/Hosted/WebKitPluginHost.defs:
        Add responseURL to StartStream.

        * Plugins/WebBaseNetscapePluginView.h:
        * Plugins/WebBaseNetscapePluginView.mm:
        (-[WebBaseNetscapePluginView pluginPackage]):
        Move this down to the base class from WebNetscapePluginView.

        * Plugins/WebNetscapePluginView.h:
        * Plugins/WebNetscapePluginView.mm:

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

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

        Reviewed by Geoffrey Garen.

        Patch for https://bugs.webkit.org/show_bug.cgi?id=22716
        <rdar://problem/6428315>
        Add RareData structure to CodeBlock for infrequently used auxiliary data
        members.

        Reduces memory on Membuster-head by ~.5MB

        * bytecode/CodeBlock.cpp:
        (JSC::CodeBlock::dump):
        (JSC::CodeBlock::dumpStatistics):
        (JSC::CodeBlock::mark):
        (JSC::CodeBlock::getHandlerForVPC):
        (JSC::CodeBlock::nativeExceptionCodeForHandlerVPC):
        (JSC::CodeBlock::shrinkToFit):
        * bytecode/CodeBlock.h:
        (JSC::CodeBlock::numberOfExceptionHandlers):
        (JSC::CodeBlock::addExceptionHandler):
        (JSC::CodeBlock::exceptionHandler):
        (JSC::CodeBlock::addFunction):
        (JSC::CodeBlock::function):
        (JSC::CodeBlock::addUnexpectedConstant):
        (JSC::CodeBlock::unexpectedConstant):
        (JSC::CodeBlock::addRegExp):
        (JSC::CodeBlock::regexp):
        (JSC::CodeBlock::numberOfImmediateSwitchJumpTables):
        (JSC::CodeBlock::addImmediateSwitchJumpTable):
        (JSC::CodeBlock::immediateSwitchJumpTable):
        (JSC::CodeBlock::numberOfCharacterSwitchJumpTables):
        (JSC::CodeBlock::addCharacterSwitchJumpTable):
        (JSC::CodeBlock::characterSwitchJumpTable):
        (JSC::CodeBlock::numberOfStringSwitchJumpTables):
        (JSC::CodeBlock::addStringSwitchJumpTable):
        (JSC::CodeBlock::stringSwitchJumpTable):
        (JSC::CodeBlock::evalCodeCache):
        (JSC::CodeBlock::createRareDataIfNecessary):

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

12 years agoJavaScriptCore:
pkasting@chromium.org [Tue, 9 Dec 2008 00:35:17 +0000 (00:35 +0000)]
JavaScriptCore:

2008-11-26  Peter Kasting  <pkasting@google.com>

        Reviewed by Anders Carlsson.

        https://bugs.webkit.org/show_bug.cgi?id=16814
        Allow ports to disable ActiveX->NPAPI conversion for Media Player.
        Improve handling of miscellaneous ActiveX objects.

        * wtf/Platform.h: Add another ENABLE(...).

WebCore:

2008-11-26  Peter Kasting  <pkasting@google.com>

        Reviewed by Anders Carlsson.

        https://bugs.webkit.org/show_bug.cgi?id=16814
        Allow ports to disable ActiveX->NPAPI conversion for Media Player.
        Improve handling of miscellaneous ActiveX objects.

        * rendering/RenderPartObject.cpp:
        (WebCore::mapClassIdToServiceType):
        (WebCore::shouldUseChildEmbedOfObject):
        (WebCore::RenderPartObject::updateWidget):

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

12 years agoWebCore:
darin@apple.com [Tue, 9 Dec 2008 00:15:34 +0000 (00:15 +0000)]
WebCore:

2008-12-03  Darin Adler  <darin@apple.com>

        Reviewed by John Sullivan.

        - fix https://bugs.webkit.org/show_bug.cgi?id=22409
          REGRESSION: cmd-shift-left/right don't switch tabs, instead select text

        Tests: editing/execCommand/enabling-and-selection-2.html
               editing/execCommand/enabling-and-selection.html

        * editing/EditorCommand.cpp: Updated table to use these functions by their new names.
        (WebCore::enabledVisibleSelection): Renamed this to reflect its new algorithm.
        An invisible selection with a position that selects no characters doesn't count
        as a visible selection.
        (WebCore::enabledVisibleSelectionAndMark): Ditto.

WebKitTools:

2008-12-08  Darin Adler  <darin@apple.com>

        Reviewed by John Sullivan.

        - test machinery for https://bugs.webkit.org/show_bug.cgi?id=22409
          REGRESSION: cmd-shift-left/right don't switch tabs, instead select text

        * DumpRenderTree/LayoutTestController.cpp:
        (isCommandEnabledCallback): Added.
        (LayoutTestController::staticFunctions): Added "isCommandEnabled".
        * DumpRenderTree/LayoutTestController.h: Ditto.
        * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
        (LayoutTestController::isCommandEnabled): Ditto.
        * DumpRenderTree/mac/LayoutTestControllerMac.mm:
        (-[CommandValidationTarget initWithAction:]): Added. Used to get the
        command validation system to tell us if a comment is enabled.
        (-[CommandValidationTarget action]): Ditto.
        (-[CommandValidationTarget tag]): Ditto.
        (LayoutTestController::isCommandEnabled): Ditto.
        * DumpRenderTree/win/LayoutTestControllerWin.cpp:
        (LayoutTestController::isCommandEnabled): Ditto.

LayoutTests:

2008-12-08  Darin Adler  <darin@apple.com>

        Reviewed by John Sullivan.

        - tests for https://bugs.webkit.org/show_bug.cgi?id=22409
          REGRESSION: cmd-shift-left/right don't switch tabs, instead select text

        * editing/execCommand/enabling-and-selection-2-expected.txt: Added.
        * editing/execCommand/enabling-and-selection-2.html: Added.
        * editing/execCommand/enabling-and-selection-expected.txt: Added.
        * editing/execCommand/enabling-and-selection.html: Added.
        * editing/execCommand/resources: Added.
        * editing/execCommand/resources/TEMPLATE.html: Copied from LayoutTests/fast/js/resources/TEMPLATE.html.
        * editing/execCommand/resources/enabling-and-selection-2.js: Added.
        * editing/execCommand/resources/enabling-and-selection.js: Added.

        * fast/canvas/canvas-setTransform.html: Let make-js-test-wrappers update this.
        * fast/canvas/canvas-strokeRect.html: Ditto.

        * platform/qt/Skipped: Added enabling-and-selection-2 to the skipped list.
        * platform/win/Skipped: Ditto.

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

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

        Reviewed by Mark Rowe.

        Add dumping of CodeBlock member structure usage.

        * bytecode/CodeBlock.cpp:
        (JSC::CodeBlock::dumpStatistics):
        * bytecode/EvalCodeCache.h:
        (JSC::EvalCodeCache::isEmpty):

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

12 years ago Remove duplicate entries from WebCore project.
ddkilzer@apple.com [Tue, 9 Dec 2008 00:11:47 +0000 (00:11 +0000)]
    Remove duplicate entries from WebCore project.

        Reviewed by Eric Seidel.

        Bug 22555: Sort "children" sections in Xcode project files.
        <https://bugs.webkit.org/show_bug.cgi?id=22555>

        Recipe for removing duplicates:
        $ ./WebKitTools/Scripts/sort-Xcode-project-file project.pbxproj
        $ uniq < project.pbxproj | diff -u project.pbxproj - | patch -p0 project.pbxproj

        * WebCore.xcodeproj/project.pbxproj: Removed duplicates.

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

12 years ago2008-12-08 Julien Chaffraix <jchaffraix@webkit.org>
jchaffraix@webkit.org [Tue, 9 Dec 2008 00:06:41 +0000 (00:06 +0000)]
2008-12-08  Julien Chaffraix  <jchaffraix@webkit.org>

        Reviewed by Darin Adler.

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

        Remove setCreatedByParser from the script elements (HTML and SVG).

        * dom/XMLTokenizer.cpp:
        (WebCore::XMLTokenizer::eventuallyMarkAsParserCreated): Removed
        call to setCreatedByParser for the 2 elements.

        * dom/make_names.pl: Modified to call the constructor with
        the createByParser parameter if 'constructorNeedsCreatedByParser'
        is set.

        * html/HTMLElementFactory.cpp:
        (WebCore::scriptConstructor):
        * html/HTMLScriptElement.cpp:
        (WebCore::HTMLScriptElement::HTMLScriptElement):
        * html/HTMLScriptElement.h:
        * html/HTMLTagNames.in: Added constructorNeedsCreatedByParser
        to script.
        * svg/SVGScriptElement.cpp:
        (WebCore::SVGScriptElement::SVGScriptElement):
        * svg/SVGScriptElement.h:
        * svg/svgtags.in: Added constructorNeedsCreatedByParser
        to script.

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

12 years ago2008-12-08 Pamela Greene <pam@chromium.org>
pam@chromium.org [Tue, 9 Dec 2008 00:03:56 +0000 (00:03 +0000)]
2008-12-08  Pamela Greene  <pam@chromium.org>

        Reviewed by Darin Adler.

        https://bugs.webkit.org/show_bug.cgi?id=22739
        Test the sequence of keyboard events generated for a keypress.

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

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

12 years ago Bug 22555: Sort "children" sections in Xcode project files
ddkilzer@apple.com [Tue, 9 Dec 2008 00:01:49 +0000 (00:01 +0000)]
    Bug 22555: Sort "children" sections in Xcode project files

        <https://bugs.webkit.org/show_bug.cgi?id=22555>

        Reviewed by Eric Seidel.

JavaScriptCore:

        * JavaScriptCore.xcodeproj/project.pbxproj: Sorted.

JavaScriptGlue:

        * JavaScriptGlue.xcodeproj/project.pbxproj: Sorted.

WebCore:

        * WebCore.xcodeproj/project.pbxproj: Sorted.
        * manual-tests/NPN_Invoke/NPN_Invoke.xcodeproj/project.pbxproj: Sorted.

WebKit:

        * WebKit.xcodeproj/project.pbxproj: Sorted.

WebKitExamplePlugins:

        * NetscapeCocoaPlugin/NetscapeCocoaPlugin.xcodeproj/project.pbxproj: Sorted.

WebKitTools:

        * DrawTest/DrawTest.xcodeproj/project.pbxproj: Sorted.
        * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj: Sorted.
        * WebKitLauncher/WebKitLauncher.xcodeproj/project.pbxproj: Sorted.

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

12 years ago2008-12-08 Darin Adler <darin@apple.com>
darin@apple.com [Mon, 8 Dec 2008 23:57:40 +0000 (23:57 +0000)]
2008-12-08  Darin Adler  <darin@apple.com>

        * StringsNotToBeLocalized.txt: Updated for recent changes.

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

12 years ago Bug 22555: Sort "children" sections in Xcode project files
ddkilzer@apple.com [Mon, 8 Dec 2008 23:44:27 +0000 (23:44 +0000)]
    Bug 22555: Sort "children" sections in Xcode project files

        <https://bugs.webkit.org/show_bug.cgi?id=22555>

        Reviewed by Timothy Hatcher.

        * Scripts/sort-Xcode-project-file: By popular request, don't sort
        the mainGroup in the project (the list of items below the top-level
        project file).

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

12 years ago2008-12-08 Tony Chang <tony@chromium.org>
eric@webkit.org [Mon, 8 Dec 2008 23:42:32 +0000 (23:42 +0000)]
2008-12-08  Tony Chang  <tony@chromium.org>

        Reviewed by Eric Seidel.

        Enable Pan scrolling only when building on PLATFORM(WIN_OS)
        Previously platforms like Apple Windows WebKit, Cairo Windows WebKit,
        Wx and Chromium were enabling it explicitly, now we just turn it on
        for all WIN_OS, later platforms can turn it off as needed on Windows
        (or turn it on under Linux, etc.)
        https://bugs.webkit.org/show_bug.cgi?id=22698

        * wtf/Platform.h:

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

12 years ago2008-12-08 Tony Chang <tony@chromium.org>
eric@webkit.org [Mon, 8 Dec 2008 23:42:25 +0000 (23:42 +0000)]
2008-12-08  Tony Chang  <tony@chromium.org>

        Reviewed by Eric Seidel.

        Add a bool to GraphicsContext so that shadows can ignore
        transformations.  This is needed by HTML canvas element
        where the spec says shadows are applied w/o transformations.
        https://bugs.webkit.org/show_bug.cgi?id=22580

        No functional changes, thus no tests.

        * html/CanvasRenderingContext2D.cpp:
        (WebCore::CanvasRenderingContext2D::setShadow):
        (WebCore::CanvasRenderingContext2D::applyShadow):
        * html/HTMLCanvasElement.cpp:
        (WebCore::HTMLCanvasElement::createImageBuffer):
        * platform/graphics/GraphicsContext.cpp:
        (WebCore::GraphicsContext::setShadowsIgnoreTransforms):
        * platform/graphics/GraphicsContext.h:
        * platform/graphics/GraphicsContextPrivate.h:
        (WebCore::GraphicsContextState::GraphicsContextState):
        * platform/graphics/cg/GraphicsContextCG.cpp:
        (WebCore::GraphicsContext::setPlatformShadow):

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

12 years agoWebCore:
jchaffraix@webkit.org [Mon, 8 Dec 2008 23:18:20 +0000 (23:18 +0000)]
WebCore:

2008-12-08  Julien Chaffraix  <jchaffraix@webkit.org>

        Reviewed by Darin Adler.

        Bug 17897: Not Rendering Images Imported from XHTML Document
        <rdar://problem/5827614>

        When we were loading document with XMLHttpRequest that contained images, the images
        would not be fetched as they would not be displayed. However if we inserted such
        an image element into a rendered document, we would not fetch the image and thus never
        display it.

        Now we check if the image has been loaded when we insert an HTMLImageElement into a
        document.
        To enable this, the image loader has an error flag. To avoid doing several attempts
        when we know that the image is in error, we store the failed URL.
        However Firefox and Opera ignore errors when the 'src' attribute changes and thus
        we also have an updateFromElementIgnoringPreviousError to match the other browser.

        Tests: http/tests/misc/image-blocked-src-change.html
               http/tests/misc/image-blocked-src-no-change.html
               http/tests/xmlhttprequest/xmlhttprequest-image-not-loaded-svg.svg
               http/tests/xmlhttprequest/xmlhttprequest-image-not-loaded.html

        * html/HTMLEmbedElement.cpp:
        (WebCore::HTMLEmbedElement::parseMappedAttribute): Changed to call updateFromElementIgnoringPreviousError.
        * html/HTMLImageElement.cpp:
        (WebCore::HTMLImageElement::parseMappedAttribute): Ditto.
        (WebCore::HTMLImageElement::insertedIntoDocument): Call updateFromElement if we do not have
        an image.

        * html/HTMLInputElement.cpp:
        (WebCore::HTMLInputElement::parseMappedAttribute): Changed to call updateFromElementIgnoringPreviousError.
        * html/HTMLObjectElement.cpp:
        (WebCore::HTMLObjectElement::parseMappedAttribute): Ditto.
        * html/HTMLVideoElement.cpp:
        (WebCore::HTMLVideoElement::parseMappedAttribute): Ditto.
        * loader/ImageLoader.cpp:
        (WebCore::ImageLoader::setImage): Added an assertion.
        (WebCore::ImageLoader::updateFromElement): Added a check for load error (to avoid displaying
        multiple errors in the console for a single image load).

        (WebCore::ImageLoader::updateFromElementIgnoringPreviousError): This method clears previous error
        before calling updateFromElement.

        (WebCore::ImageLoader::notifyFinished): Added an assertion.
        * loader/ImageLoader.h:
        * svg/SVGImageElement.cpp:
        (WebCore::SVGImageElement::svgAttributeChanged): Changed to call updateFromElementIgnoringPreviousError.

LayoutTests:

2008-12-08  Julien Chaffraix  <jchaffraix@webkit.org>

        Reviewed by Darin Adler.

        Tests cases for bug 17897: Not Rendering Images Imported from XHTML Document
        <rdar://problem/5827614>

        - xmlhttprequest-image-not-loaded*: test that an image loaded by an XMLHttpRequest and inserted into a XHTML or SVG Document
        is properly rendered.

        - image-blocked-src-change.html and image-blocked-src-no-change.html: test that an image that was in error is responding to src attribute change
          (whether it does really change the url or not).

        * http/tests/misc/image-blocked-src-change-expected.txt: Added.
        * http/tests/misc/image-blocked-src-change.html: Added.
        * http/tests/misc/image-blocked-src-no-change-expected.txt: Added.
        * http/tests/misc/image-blocked-src-no-change.html: Added.
        * http/tests/xmlhttprequest/resources/load-icon.svg: Added.
        * http/tests/xmlhttprequest/resources/load-icon.xhtml: Added.
        * http/tests/xmlhttprequest/xmlhttprequest-image-not-loaded-expected.txt: Added.
        * http/tests/xmlhttprequest/xmlhttprequest-image-not-loaded-svg-expected.txt: Added.
        * http/tests/xmlhttprequest/xmlhttprequest-image-not-loaded-svg.svg: Added.
        * http/tests/xmlhttprequest/xmlhttprequest-image-not-loaded.html: Added.

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

12 years ago2008-12-08 David Hyatt <hyatt@apple.com>
hyatt@apple.com [Mon, 8 Dec 2008 22:36:54 +0000 (22:36 +0000)]
2008-12-08  David Hyatt  <hyatt@apple.com>

        Make scrollbar creation virtual on ScrollView so that FrameView can have the capability to create
        custom CSS scrollbars.

        Reviewed by Eric Seidel

        * page/FrameView.cpp:
        (WebCore::FrameView::createScrollbar):
        * page/FrameView.h:
        * platform/ScrollView.cpp:
        (WebCore::ScrollView::setHasHorizontalScrollbar):
        (WebCore::ScrollView::setHasVerticalScrollbar):
        (WebCore::ScrollView::createScrollbar):
        * platform/ScrollView.h:

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

12 years ago2008-12-08 Sam Weinig <sam@webkit.org>
weinig@apple.com [Mon, 8 Dec 2008 21:40:15 +0000 (21:40 +0000)]
2008-12-08  Sam Weinig  <sam@webkit.org>

        Reviewed by Cameron Zwarich.

        Add basic memory statistics dumping for CodeBlock.

        * bytecode/CodeBlock.cpp:
        (JSC::CodeBlock::dumpStatistics):
        (JSC::CodeBlock::CodeBlock):
        (JSC::CodeBlock::~CodeBlock):
        * bytecode/CodeBlock.h:

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

12 years agoDisable the WML tests since no platforms build with WML enabled by default and the...
mrowe@apple.com [Mon, 8 Dec 2008 21:39:44 +0000 (21:39 +0000)]
Disable the WML tests since no platforms build with WML enabled by default and the test failures are annoying.

Rubber-stamped by Sam Weinig.

* wml/variable-reference-invalid-character.html-disabled: Renamed from LayoutTests/wml/variable-reference-invalid-character.html.
* wml/variable-reference-valid.html-disabled: Renamed from LayoutTests/wml/variable-reference-valid.html.

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

12 years agoWebCore:
mitz@apple.com [Mon, 8 Dec 2008 21:18:11 +0000 (21:18 +0000)]
WebCore:

        Reviewed by John Sullivan.

        - WebCore part of tracking the global history item for a WebView

        * loader/FrameLoader.cpp:
        (WebCore::FrameLoader::checkLoadCompleteForThisFrame): Set the page's
        global history item to the current back/forward list item, respecting
        private browsing mode.
        (WebCore::FrameLoader::continueLoadAfterNavigationPolicy): Ditto in this
        case.
        (WebCore::FrameLoader::goToItem): Ditto in this case.
        (WebCore::FrameLoader::updateHistoryForStandardLoad): If this load
        creates a new global history item, set the page's global history item
        to it.
        (WebCore::FrameLoader::updateHistoryForRedirectWithLockedHistory):
        Ditto.
        * page/Page.cpp:
        (WebCore::Page::setGlobalHistoryItem): Added this setter.
        * page/Page.h: Added a m_globalHistoryItem data member.
        (WebCore::Page::globalHistoryItem): Added this getter.

WebKit/mac:

        Reviewed by John Sullivan.

        - WebKit/mac part of tracking the global history item for a WebView

        * WebView/WebView.mm:
        (-[WebView _globalHistoryItem]): Added. Returns the page's global
        history item.
        * WebView/WebViewPrivate.h:

WebKit/win:

        Reviewed by John Sullivan.

        - WebKit/win part of tracking the global history item for a WebView

        * Interfaces/IWebViewPrivate.idl: Declared globalHistoryItem()
        * WebView.cpp:
        (WebView::globalHistoryItem): Added. Gets the page's global history
        item.
        * WebView.h:

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

12 years ago2008-12-08 Antti Koivisto <antti@apple.com>
antti@apple.com [Mon, 8 Dec 2008 19:28:05 +0000 (19:28 +0000)]
2008-12-08  Antti Koivisto  <antti@apple.com>

        Reviewed by Dave Kilzer.

        A few stylistic fixes suggested by Dave Kilzer.

        * css/CSSPrimitiveValue.cpp:
        (WebCore::CSSPrimitiveValue::createIdentifier):
        (WebCore::CSSPrimitiveValue::create):

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

12 years ago Reviewed by Darin Adler.
ap@webkit.org [Mon, 8 Dec 2008 18:36:39 +0000 (18:36 +0000)]
    Reviewed by Darin Adler.

        https://bugs.webkit.org/show_bug.cgi?id=22737
        Try debug version when locating CFNetwork

        * platform/network/cf/ResourceRequestCFNet.cpp:
        (WebCore::findCFNetworkModule):
        (WebCore::findCFURLRequestSetContentDispositionEncodingFallbackArrayFunction):
        (WebCore::findCFURLRequestCopyContentDispositionEncodingFallbackArrayFunction):
        * platform/network/win/CookieJarCFNetWin.cpp:
        (WebCore::findCFNetworkModule):
        (WebCore::findIsHTTPOnlyFunction):

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

12 years ago2008-12-08 Aaron Boodman <aa@chromium.org>
darin@chromium.org [Mon, 8 Dec 2008 18:13:25 +0000 (18:13 +0000)]
2008-12-08  Aaron Boodman  <aa@chromium.org>

        Reviewed by Stephanie Lewis.

        https://bugs.webkit.org/show_bug.cgi?id=22301
        Make dispatchDidFinishLoading() always fire before didFinishLoadForFrame().

        * loader/FrameLoader.cpp:
        (WebCore::FrameLoader::finishedParsing):

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

12 years ago2008-12-08 Simon Hausmann <simon.hausmann@nokia.com>
hausmann@webkit.org [Mon, 8 Dec 2008 16:56:08 +0000 (16:56 +0000)]
2008-12-08  Simon Hausmann  <simon.hausmann@nokia.com>

        Fix the Linux build with newer gcc/glibc.

        * jit/ExecutableAllocatorPosix.cpp: Include unistd.h for
        getpagesize(), according to
        http://opengroup.org/onlinepubs/007908775/xsh/getpagesize.html

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

12 years ago2008-12-08 Simon Hausmann <simon.hausmann@nokia.com>
hausmann@webkit.org [Mon, 8 Dec 2008 16:53:11 +0000 (16:53 +0000)]
2008-12-08  Simon Hausmann  <simon.hausmann@nokia.com>

        Fix the build with Qt on Windows.

        * JavaScriptCore.pri: Compile ExecutableAllocatorWin.cpp on Windows.

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

12 years ago2008-12-08 Trenton Schulz <trenton.schulz@nokia.com>
vestbo@webkit.org [Mon, 8 Dec 2008 13:38:51 +0000 (13:38 +0000)]
2008-12-08  Trenton Schulz <trenton.schulz@nokia.com>

        Rubber-stamped by Tor Arne Vestbø.

        Fix build warning on Mac

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

12 years agoFix the Qt build
hausmann@webkit.org [Mon, 8 Dec 2008 10:42:25 +0000 (10:42 +0000)]
Fix the Qt build

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

12 years agoBug 22398: r39059: Crash when clearing webkitTransitionDuration in webkitTransitionEn...
oliver@apple.com [Mon, 8 Dec 2008 10:35:33 +0000 (10:35 +0000)]
Bug 22398: r39059: Crash when clearing webkitTransitionDuration in webkitTransitionEnd event handler
<rdar://problem/6426245> REGRESSION(r39059): Reproducible crash when clearing webkitTransitionDuration in webkitTransitionEnd event handler (22398)

Reviewed by Alexey Proskuryakov.

This regression was caused by r39059 replacing the protector on the active
animation with a protector on just the composition.  It turns out that both
protectors are necessary.

Test: transitions/transition-duration-cleared-in-transitionend-crash.html

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

12 years ago2008-12-08 Dmitry Titov <dimich@chromium.org>
ap@webkit.org [Mon, 8 Dec 2008 08:54:53 +0000 (08:54 +0000)]
2008-12-08  Dmitry Titov  <dimich@chromium.org>

        Reviewed by Alexey Proskuryakov.

        https://bugs.webkit.org/show_bug.cgi?id=22732
        Remove unused files PausedTimeouts.h,.cpp
        The change that deprecated this code was https://bugs.webkit.org/show_bug.cgi?id=22620

        * GNUmakefile.am:
        * WebCore.pro:
        * WebCore.scons:
        * WebCore.vcproj/WebCore.vcproj:
        * WebCore.xcodeproj/project.pbxproj:
        * WebCoreSources.bkl:
          These are build files which had PausedTimeouts referenced.

        * bindings/js/PausedTimeouts.cpp: Removed.
        * bindings/js/PausedTimeouts.h: Removed.
        * bindings/js/ScriptController.cpp: Removed '#include'
        * page/Chrome.cpp: Removed '#include' and unused variable.

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

12 years ago2008-12-07 Simon Fraser <simon.fraser@apple.com>
simon.fraser@apple.com [Mon, 8 Dec 2008 06:58:57 +0000 (06:58 +0000)]
2008-12-07  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Dan Bernstein

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

        Fix issues which break reading inline style for -webkit-transition
        and -webkit-transform-origin.

        Test: fast/css/transform-inline-style.html

        * css/CSSMutableStyleDeclaration.cpp:
        (WebCore::CSSMutableStyleDeclaration::getPropertyValue): Add cases
        for CSSPropertyWebkitTransformOrigin and CSSPropertyWebkitTransition
        so that these shorthand properties are returned correctly.
        * css/CSSParser.cpp:
        (WebCore::CSSParser::parseAnimationProperty): Create CSSPrimitiveValues
        with the correct CSSValueAll and CSSValueNone identifiers, not the
        RenderStyle-level cAnimateAll, cAnimateNone.
        * css/CSSStyleSelector.cpp:
        (WebCore::CSSStyleSelector::mapAnimationProperty): Special-case CSSValueAll
        and CSSValueNone values to set cAnimateAll and cAnimateNone transition properties.

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

12 years agoFix non-WREC builds
oliver@apple.com [Mon, 8 Dec 2008 04:16:47 +0000 (04:16 +0000)]
Fix non-WREC builds

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

12 years ago2008-12-07 Antti Koivisto <antti@apple.com>
antti@apple.com [Mon, 8 Dec 2008 01:29:53 +0000 (01:29 +0000)]
2008-12-07  Antti Koivisto  <antti@apple.com>

        Reviewed by Darin Adler.

        https://bugs.webkit.org/show_bug.cgi?id=22717
        Make CSS values use less memory

        Share CSSPrimitiveValue objects for commonly used values including
        - idents
        - colors
        - small integers

        This reduces the amount CSSPrimitiveValue instances by > 80%.

        * css/CSSPrimitiveValue.cpp:
        (WebCore::CSSPrimitiveValue::createIdentifier):
        (WebCore::CSSPrimitiveValue::createColor):
        (WebCore::CSSPrimitiveValue::create):
        * css/CSSPrimitiveValue.h:
        (WebCore::CSSPrimitiveValue::create):

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

12 years agoPut ENABLE(ASSEMBLER) guards around use of ExecutableAllocator in global data
oliver@apple.com [Mon, 8 Dec 2008 01:28:48 +0000 (01:28 +0000)]
Put ENABLE(ASSEMBLER) guards around use of ExecutableAllocator in global data
Correct Qt and Gtk project files

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

12 years ago2008-12-07 Antti Koivisto <antti@apple.com>
antti@apple.com [Mon, 8 Dec 2008 01:27:48 +0000 (01:27 +0000)]
2008-12-07  Antti Koivisto  <antti@apple.com>

        Reviewed by Darin Adler.

        https://bugs.webkit.org/show_bug.cgi?id=22717
        Make CSS values use less memory

        Get CSSValues off from the common StyleBase base class. They don't
        need a parent pointer or anything else there and there is no real
        reason to have them in same data structures with other CSSOM objects.

        Disabled (instead of refactoring around the lack of common base) the ability
        to have style declaration blocks as CSS variable values. They don't exist in
        the spec so I wasn't sure if they have future or not. It would not be hard to
        get them back. CSS variables are in any case an experimental feature and
        not enabled by default.

        * css/CSSInitialValue.h:
        (WebCore::CSSInitialValue::createExplicit):
        (WebCore::CSSInitialValue::createImplicit):
        * css/CSSParser.cpp:
        (WebCore::CSSParser::addVariableDeclarationBlock):
        * css/CSSParser.h:
        * css/CSSValue.h:
        (WebCore::CSSValue::~CSSValue):
        (WebCore::CSSValue::parserValue):
        * css/CSSVariablesDeclaration.cpp:
        (WebCore::CSSVariablesDeclaration::CSSVariablesDeclaration):
        (WebCore::CSSVariablesDeclaration::getVariableValue):
        (WebCore::CSSVariablesDeclaration::removeVariable):
        (WebCore::CSSVariablesDeclaration::addParsedVariable):
        (WebCore::CSSVariablesDeclaration::getParsedVariable):
        (WebCore::CSSVariablesDeclaration::getParsedVariableDeclarationBlock):
        * css/CSSVariablesDeclaration.h:
        (WebCore::CSSVariablesDeclaration::create):
        * css/StyleBase.h:

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

12 years agoAdd new files to other projects.
oliver@apple.com [Mon, 8 Dec 2008 00:39:39 +0000 (00:39 +0000)]
Add new files to other projects.

Reviewed by NOBODY (Build fix).

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

12 years agoRename ExecutableAllocatorMMAP to the more sensible ExecutableAllocatorPosix
oliver@apple.com [Mon, 8 Dec 2008 00:35:12 +0000 (00:35 +0000)]
Rename ExecutableAllocatorMMAP to the more sensible ExecutableAllocatorPosix

Rubber stamped by Mark Rowe.

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

12 years ago<rdar://problem/6309878> Need more granular control over allocation of executable...
oliver@apple.com [Sun, 7 Dec 2008 23:55:04 +0000 (23:55 +0000)]
<rdar://problem/6309878> Need more granular control over allocation of executable memory (21783)
<https://bugs.webkit.org/show_bug.cgi?id=21783>

Reviewed by Cameron Zwarich and Sam Weinig

Add a new allocator for use by the JIT that provides executable pages, so
we can get rid of the current hack that makes the entire heap executable.

1-2% progression on SunSpider-v8, 1% on SunSpider.  Reduces memory usage as well!

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

12 years ago[Gtk+] Use glib's unit test facilities to test the WebKit/Gtk+ API
zecke@webkit.org [Sun, 7 Dec 2008 19:16:17 +0000 (19:16 +0000)]
[Gtk+] Use glib's unit test facilities to test the WebKit/Gtk+ API

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

    Add the skeleton to WebKit/gtk/tests and integrate that into the
    buildsystem. Testing support was added in glib 2.16. For versions
    using glib < 2.16 we compile an empty application.

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

12 years ago[GTK] Define ENABLE_JIT_OPTIMIZE_CALL, ENABLE_JIT_OPTIMIZE_PROPERTY_ACCESS, ENABLE_JI...
zecke@webkit.org [Sun, 7 Dec 2008 18:41:46 +0000 (18:41 +0000)]
[GTK] Define ENABLE_JIT_OPTIMIZE_CALL, ENABLE_JIT_OPTIMIZE_PROPERTY_ACCESS, ENABLE_JIT_OPTIMIZE_ARITHMETIC

    When building the jit on i*86 also enable the above optimizations.

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

12 years ago2008-12-07 Dirk Schulze <krit@webkit.org>
krit@webkit.org [Sun, 7 Dec 2008 09:23:17 +0000 (09:23 +0000)]
2008-12-07  Dirk Schulze  <krit@webkit.org>

        Reviewed by Oliver Hunt.

WebCore:

        Add gradient and pattern support for strokeRect on canvas/Cg.

        Canvas strokeRect() doesn't support gradients
        https://bugs.webkit.org/show_bug.cgi?id=19790

        Test: fast/canvas/canvas-strokeRect.html

        * platform/graphics/cg/GraphicsContextCG.cpp:
        (WebCore::GraphicsContext::strokeRect):

LayoutTests:

        Tests strokeRect with patterns and gradients.

        * fast/canvas/canvas-strokeRect-expected.txt: Added.
        * fast/canvas/canvas-strokeRect.html: Added.
        * fast/canvas/resources/canvas-strokeRect.js: Added.

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

12 years ago2008-12-06 Dirk Schulze <krit@webkit.org>
krit@webkit.org [Sun, 7 Dec 2008 07:48:53 +0000 (07:48 +0000)]
2008-12-06  Dirk Schulze  <krit@webkit.org>

        Reviewed by Oliver Hunt.

WebCore:

        Add support for setTransform() in canvas.

        <canvas> lacks transform() and setTransform()
        https://bugs.webkit.org/show_bug.cgi?id=16604

        Test: fast/canvas/canvas-setTransform.html

        * html/CanvasRenderingContext2D.cpp:
        (WebCore::CanvasRenderingContext2D::State::State):
        (WebCore::CanvasRenderingContext2D::setStrokeStyle):
        (WebCore::CanvasRenderingContext2D::setFillStyle):
        (WebCore::CanvasRenderingContext2D::scale):
        (WebCore::CanvasRenderingContext2D::rotate):
        (WebCore::CanvasRenderingContext2D::translate):
        (WebCore::CanvasRenderingContext2D::transform):
        (WebCore::CanvasRenderingContext2D::setTransform):
        (WebCore::CanvasRenderingContext2D::beginPath):
        (WebCore::CanvasRenderingContext2D::closePath):
        (WebCore::CanvasRenderingContext2D::moveTo):
        (WebCore::CanvasRenderingContext2D::lineTo):
        (WebCore::CanvasRenderingContext2D::quadraticCurveTo):
        (WebCore::CanvasRenderingContext2D::bezierCurveTo):
        (WebCore::CanvasRenderingContext2D::arcTo):
        (WebCore::CanvasRenderingContext2D::arc):
        (WebCore::CanvasRenderingContext2D::rect):
        (WebCore::CanvasRenderingContext2D::fill):
        (WebCore::CanvasRenderingContext2D::stroke):
        (WebCore::CanvasRenderingContext2D::clip):
        (WebCore::CanvasRenderingContext2D::isPointInPath):
        (WebCore::CanvasRenderingContext2D::clearRect):
        (WebCore::CanvasRenderingContext2D::fillRect):
        (WebCore::CanvasRenderingContext2D::strokeRect):
        (WebCore::CanvasRenderingContext2D::drawImage):
        (WebCore::CanvasRenderingContext2D::drawImageFromRect):
        (WebCore::CanvasRenderingContext2D::willDraw):
        (WebCore::CanvasRenderingContext2D::drawTextInternal):
        * html/CanvasRenderingContext2D.h:
        * html/CanvasRenderingContext2D.idl:
        * html/HTMLCanvasElement.cpp:
        (WebCore::HTMLCanvasElement::baseTransform):
        * html/HTMLCanvasElement.h:
        * platform/graphics/ImageBuffer.h:
        (WebCore::ImageBuffer::baseTransform):

LayoutTests:

        Added tests for canvas's setTransform() and updated an existing one.

        * fast/canvas/canvas-setTransform-expected.txt: Added.
        * fast/canvas/canvas-setTransform.html: Added.
        * fast/canvas/resources/canvas-setTransform.js: Added.
        * fast/dom/Window/window-properties-expected.txt:

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

12 years ago2008-12-06 Simon Fraser <simon.fraser@apple.com>
simon.fraser@apple.com [Sun, 7 Dec 2008 06:15:49 +0000 (06:15 +0000)]
2008-12-06  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Antti Koivisto, Dan Bernstein

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

        Fix logic related to repainting when transform changes:
        If an object has a layer, and the transform changes, then we need
        to do a repaintIncludingDescendants(), not just a repaint.

        Test: fast/repaint/transform-repaint-descendants.html

        * rendering/RenderObject.cpp:
        (WebCore::RenderObject::styleWillChange):

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

12 years ago2008-12-06 Sam Weinig <sam@webkit.org>
weinig@apple.com [Sun, 7 Dec 2008 04:20:56 +0000 (04:20 +0000)]
2008-12-06  Sam Weinig  <sam@webkit.org>

        Fix the Gtk build.

        * jit/JITPropertyAccess.cpp:
        (JSC::JIT::compileGetByIdHotPath):
        (JSC::JIT::compilePutByIdHotPath):

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

12 years ago2008-12-06 Antti Koivisto <antti@apple.com>
antti@apple.com [Sun, 7 Dec 2008 02:05:19 +0000 (02:05 +0000)]
2008-12-06  Antti Koivisto  <antti@apple.com>

        Reviewed by Darin Adler.

        Also copy m_implicit field. Darin wanted this change commited separately.

        * css/CSSProperty.h:
        (WebCore::CSSProperty::operator=):

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

12 years agoWebCore:
antti@apple.com [Sun, 7 Dec 2008 01:40:31 +0000 (01:40 +0000)]
WebCore:

2008-12-06  Antti Koivisto  <antti@apple.com>

        Reviewed by Darin Adler.

        https://bugs.webkit.org/show_bug.cgi?id=22379
        Make CSSOM use less memory

        Use vector instead of a double linked list for properties in CSSMutableStyleDeclaration.

        Taught setter functions to use existing slots to avoid memory moves, plus some
        other optimizations.

        * WebCore.xcodeproj/project.pbxproj:
        * css/CSSMutableStyleDeclaration.cpp:
        (WebCore::CSSMutableStyleDeclaration::CSSMutableStyleDeclaration):
        (WebCore::CSSMutableStyleDeclaration::operator=):
        (WebCore::CSSMutableStyleDeclaration::getPropertyCSSValue):
        (WebCore::CSSMutableStyleDeclaration::removeShorthandProperty):
        (WebCore::CSSMutableStyleDeclaration::removeProperty):
        (WebCore::CSSMutableStyleDeclaration::getPropertyPriority):
        (WebCore::CSSMutableStyleDeclaration::getPropertyShorthand):
        (WebCore::CSSMutableStyleDeclaration::isPropertyImplicit):
        (WebCore::CSSMutableStyleDeclaration::setProperty):
        (WebCore::CSSMutableStyleDeclaration::setPropertyInternal):
        (WebCore::CSSMutableStyleDeclaration::setStringProperty):
        (WebCore::CSSMutableStyleDeclaration::setImageProperty):
        (WebCore::CSSMutableStyleDeclaration::parseDeclaration):
        (WebCore::CSSMutableStyleDeclaration::addParsedProperties):
        (WebCore::CSSMutableStyleDeclaration::addParsedProperty):
        (WebCore::CSSMutableStyleDeclaration::setLengthProperty):
        (WebCore::CSSMutableStyleDeclaration::length):
        (WebCore::CSSMutableStyleDeclaration::item):
        (WebCore::CSSMutableStyleDeclaration::cssText):
        (WebCore::CSSMutableStyleDeclaration::setCssText):
        (WebCore::CSSMutableStyleDeclaration::merge):
        (WebCore::CSSMutableStyleDeclaration::removePropertiesInSet):
        (WebCore::CSSMutableStyleDeclaration::copy):
        (WebCore::CSSMutableStyleDeclaration::findPropertyWithId):
        * css/CSSMutableStyleDeclaration.h:
        (WebCore::CSSMutableStyleDeclarationConstIterator::operator*):
        (WebCore::CSSMutableStyleDeclarationConstIterator::operator->):
        (WebCore::CSSMutableStyleDeclarationConstIterator::operator!=):
        (WebCore::CSSMutableStyleDeclarationConstIterator::operator==):
        (WebCore::CSSMutableStyleDeclaration::create):
        (WebCore::CSSMutableStyleDeclaration::begin):
        (WebCore::CSSMutableStyleDeclaration::end):
        (WebCore::CSSMutableStyleDeclarationConstIterator::CSSMutableStyleDeclarationConstIterator):
        (WebCore::CSSMutableStyleDeclarationConstIterator::~CSSMutableStyleDeclarationConstIterator):
        (WebCore::CSSMutableStyleDeclarationConstIterator::operator=):
        (WebCore::CSSMutableStyleDeclarationConstIterator::operator++):
        (WebCore::CSSMutableStyleDeclarationConstIterator::operator--):
        * css/CSSProperty.h:
        (WTF::):
        * css/CSSStyleDeclaration.cpp:
        (WebCore::CSSStyleDeclaration::diff):
        (WebCore::CSSStyleDeclaration::copyPropertiesInSet):
        * css/CSSStyleSelector.cpp:
        (WebCore::CSSStyleSelector::resolveVariablesForDeclaration):
        (WebCore::CSSStyleSelector::keyframeStylesForAnimation):
        (WebCore::CSSStyleSelector::applyDeclarations):
        * dom/EventTarget.h:
        * editing/ApplyStyleCommand.cpp:
        (WebCore::StyleChange::init):
        (WebCore::ApplyStyleCommand::isHTMLStyleNode):
        (WebCore::ApplyStyleCommand::removeHTMLFontStyle):
        (WebCore::ApplyStyleCommand::removeCSSStyle):
        * editing/Editor.cpp:
        (WebCore::Editor::selectionStartHasStyle):
        (WebCore::updateState):
        * editing/ReplaceSelectionCommand.cpp:
        (WebCore::ReplaceSelectionCommand::handleStyleSpans):
        * editing/markup.cpp:
        (WebCore::appendStartMarkup):

LayoutTests:

2008-12-06  Antti Koivisto  <antti@apple.com>

        Reusing property slots changed property ordering in this text.

        * editing/pasteboard/5780697-2-expected.txt:

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

12 years ago2008-12-06 Simon Fraser <simon.fraser@apple.com>
simon.fraser@apple.com [Sun, 7 Dec 2008 01:07:56 +0000 (01:07 +0000)]
2008-12-06  Simon Fraser  <simon.fraser@apple.com>

        Update expected image now that the caret renders in transformed
        content.

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

        * platform/mac/fast/forms/search-transformed-expected.checksum:
        * platform/mac/fast/forms/search-transformed-expected.png:

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

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

        Reviewed by Dan Bernstein

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

        When painting the selection on a replaced element, paint
        using local coordinates so that the selection is correctly
        painted for transformed elements.

        Test: fast/replaced/selection-rect-transform.html

        * rendering/RenderReplaced.cpp:
        (WebCore::RenderReplaced::paint):

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

12 years ago2008-12-06 Sam Weinig <sam@webkit.org>
weinig@apple.com [Sat, 6 Dec 2008 22:31:14 +0000 (22:31 +0000)]
2008-12-06  Sam Weinig  <sam@webkit.org>

        Reviewed by Cameron Zwarich,

        Move CodeBlock constructor into the .cpp file.

        Sunspider reports a .7% progression, but I can only assume this
        is noise.

        * bytecode/CodeBlock.cpp:
        (JSC::CodeBlock::CodeBlock):
        * bytecode/CodeBlock.h:

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

12 years ago2008-12-06 Sam Weinig <sam@webkit.org>
weinig@apple.com [Sat, 6 Dec 2008 22:19:22 +0000 (22:19 +0000)]
2008-12-06  Sam Weinig  <sam@webkit.org>

        Reviewed by Cameron Zwarich.

        Split JumpTable code into its own file.

        * GNUmakefile.am:
        * JavaScriptCore.pri:
        * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
        * JavaScriptCore.xcodeproj/project.pbxproj:
        * JavaScriptCoreSources.bkl:
        * bytecode/CodeBlock.cpp:
        * bytecode/CodeBlock.h:
        * bytecode/JumpTable.cpp: Copied from bytecode/CodeBlock.cpp.
        * bytecode/JumpTable.h: Copied from bytecode/CodeBlock.h.

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

12 years ago2008-12-05 Sam Weinig <sam@webkit.org>
weinig@apple.com [Sat, 6 Dec 2008 22:01:05 +0000 (22:01 +0000)]
2008-12-05  Sam Weinig  <sam@webkit.org>

        Reviewed by Cameron Zwarich.

        Fix for https://bugs.webkit.org/show_bug.cgi?id=22715
        Encapsulate more CodeBlock members in preparation
        of moving some of them to a rare data structure.

        * bytecode/CodeBlock.cpp:
        (JSC::locationForOffset):
        (JSC::printConditionalJump):
        (JSC::printGetByIdOp):
        (JSC::printPutByIdOp):
        (JSC::CodeBlock::printStructure):
        (JSC::CodeBlock::printStructures):
        (JSC::CodeBlock::dump):
        (JSC::CodeBlock::~CodeBlock):
        (JSC::CodeBlock::unlinkCallers):
        (JSC::CodeBlock::derefStructures):
        (JSC::CodeBlock::refStructures):
        (JSC::CodeBlock::mark):
        (JSC::CodeBlock::getHandlerForVPC):
        (JSC::CodeBlock::nativeExceptionCodeForHandlerVPC):
        (JSC::CodeBlock::lineNumberForVPC):
        (JSC::CodeBlock::expressionRangeForVPC):
        (JSC::CodeBlock::shrinkToFit):
        * bytecode/CodeBlock.h:
        (JSC::CodeBlock::CodeBlock):
        (JSC::CodeBlock::addCaller):
        (JSC::CodeBlock::removeCaller):
        (JSC::CodeBlock::isKnownNotImmediate):
        (JSC::CodeBlock::isConstantRegisterIndex):
        (JSC::CodeBlock::getConstant):
        (JSC::CodeBlock::isTemporaryRegisterIndex):
        (JSC::CodeBlock::getStubInfo):
        (JSC::CodeBlock::getCallLinkInfo):
        (JSC::CodeBlock::instructions):
        (JSC::CodeBlock::setJITCode):
        (JSC::CodeBlock::jitCode):
        (JSC::CodeBlock::ownerNode):
        (JSC::CodeBlock::setGlobalData):
        (JSC::CodeBlock::setThisRegister):
        (JSC::CodeBlock::thisRegister):
        (JSC::CodeBlock::setNeedsFullScopeChain):
        (JSC::CodeBlock::needsFullScopeChain):
        (JSC::CodeBlock::setUsesEval):
        (JSC::CodeBlock::usesEval):
        (JSC::CodeBlock::setUsesArguments):
        (JSC::CodeBlock::usesArguments):
        (JSC::CodeBlock::codeType):
        (JSC::CodeBlock::source):
        (JSC::CodeBlock::sourceOffset):
        (JSC::CodeBlock::addGlobalResolveInstruction):
        (JSC::CodeBlock::numberOfPropertyAccessInstructions):
        (JSC::CodeBlock::addPropertyAccessInstruction):
        (JSC::CodeBlock::propertyAccessInstruction):
        (JSC::CodeBlock::numberOfCallLinkInfos):
        (JSC::CodeBlock::addCallLinkInfo):
        (JSC::CodeBlock::callLinkInfo):
        (JSC::CodeBlock::numberOfJumpTargets):
        (JSC::CodeBlock::addJumpTarget):
        (JSC::CodeBlock::jumpTarget):
        (JSC::CodeBlock::lastJumpTarget):
        (JSC::CodeBlock::numberOfExceptionHandlers):
        (JSC::CodeBlock::addExceptionHandler):
        (JSC::CodeBlock::exceptionHandler):
        (JSC::CodeBlock::addExpressionInfo):
        (JSC::CodeBlock::numberOfLineInfos):
        (JSC::CodeBlock::addLineInfo):
        (JSC::CodeBlock::lastLineInfo):
        (JSC::CodeBlock::jitReturnAddressVPCMap):
        (JSC::CodeBlock::numberOfIdentifiers):
        (JSC::CodeBlock::addIdentifier):
        (JSC::CodeBlock::identifier):
        (JSC::CodeBlock::numberOfConstantRegisters):
        (JSC::CodeBlock::addConstantRegister):
        (JSC::CodeBlock::constantRegister):
        (JSC::CodeBlock::addFunction):
        (JSC::CodeBlock::function):
        (JSC::CodeBlock::addFunctionExpression):
        (JSC::CodeBlock::functionExpression):
        (JSC::CodeBlock::addUnexpectedConstant):
        (JSC::CodeBlock::unexpectedConstant):
        (JSC::CodeBlock::addRegExp):
        (JSC::CodeBlock::regexp):
        (JSC::CodeBlock::symbolTable):
        (JSC::CodeBlock::evalCodeCache):
        New inline setters/getters.

        (JSC::ProgramCodeBlock::ProgramCodeBlock):
        (JSC::ProgramCodeBlock::~ProgramCodeBlock):
        (JSC::ProgramCodeBlock::clearGlobalObject):
        * bytecode/SamplingTool.cpp:
        (JSC::ScopeSampleRecord::sample):
        (JSC::SamplingTool::dump):
        * bytecompiler/BytecodeGenerator.cpp:
        * bytecompiler/BytecodeGenerator.h:
        * bytecompiler/Label.h:
        * interpreter/CallFrame.cpp:
        * interpreter/Interpreter.cpp:
        * jit/JIT.cpp:
        * jit/JITCall.cpp:
        * jit/JITInlineMethods.h:
        * jit/JITPropertyAccess.cpp:
        * parser/Nodes.cpp:
        * runtime/Arguments.h:
        * runtime/ExceptionHelpers.cpp:
        * runtime/JSActivation.cpp:
        * runtime/JSActivation.h:
        * runtime/JSGlobalObject.cpp:
        Change direct access to use new getter/setters.

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

12 years ago2008-12-06 Simon Fraser <simon.fraser@apple.com>
simon.fraser@apple.com [Sat, 6 Dec 2008 19:58:44 +0000 (19:58 +0000)]
2008-12-06  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Dave Hyatt

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

        Fix caret rendering to behave correctly with transforms:
        * Rename caretRect() methods to localCaretRect() and
          absoluteCaretBounds() as appropriate
        * Fix localCaretRect() methods to return a rect in the
          appropriate coordinates.
        * Pass tx, ty down through the paintCaret() methods, after fixing them
          up to account for differences between contents coords, and renderer-local
          coords (via RenderBlock::offsetForContents()).
        * Remove m_caretPositionOnLayout from SelectionController, and instead
          call invalidateSelection() from RenderLayer::scrollToOffset(), because
          we can no longer assume simple x/y offsets from scrolling with transforms.
        * Move the logic to compute which RenderObject actually paints the caret into
          SelectionController::caretRenderer(), rather than having it in RenderBlock.
        * SelectionController now computes and caches a local caret rect. For invalidation,
          it computes the absolute bounds of that (possibly transformed) local rect.
          The local rect is computed in the coordinate system of the RenderObject that
          will paint the caret (this may require offsetting from the actual renderer
          at the start of the selection).
        * Fix LayoutState(RenderObject* root) to take transforms into account
        * Make offsetFromContainer() a virtual method on RenderObject, and implement
          the RenderObject version. It's used to map from selection start renderer
          to caret renderer.

        Test: fast/transforms/transformed-caret.html

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

12 years agoAdded reference to bugs.webkit.org bug.
ddkilzer@apple.com [Sat, 6 Dec 2008 17:20:55 +0000 (17:20 +0000)]
Added reference to bugs.webkit.org bug.

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

12 years ago BUILD FIX for r39065: Forgot parentheses after "document".
ddkilzer@apple.com [Sat, 6 Dec 2008 17:15:19 +0000 (17:15 +0000)]
    BUILD FIX for r39065: Forgot parentheses after "document".

        Bug 22666: Clean up data structures used when collecting URLs of subresources for webarchives
        <https://bugs.webkit.org/show_bug.cgi?id=22666>

        * svg/SVGFEImageElement.cpp:
        (WebCore::SVGFEImageElement::addSubresourceAttributeURLs): Changed
        document to document().

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

12 years ago2008-12-06 Dmitry Titov <dimich@chromium.org>
ap@webkit.org [Sat, 6 Dec 2008 16:04:36 +0000 (16:04 +0000)]
2008-12-06  Dmitry Titov  <dimich@chromium.org>

        Reviewed by Alexey Proskuryakov.

        https://bugs.webkit.org/show_bug.cgi?id=22710
        Memory leak due to circular reference Document->DOMTimer->ScheduledAction->[JS objects]->Document

        * bindings/js/DOMTimer.cpp:
        (WebCore::DOMTimer::stop): Delete ScheduledAction, which contains a protected object.

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

12 years ago Bug 22666: Clean up data structures used when collecting URLs of subresources...
ddkilzer@apple.com [Sat, 6 Dec 2008 11:54:46 +0000 (11:54 +0000)]
    Bug 22666: Clean up data structures used when collecting URLs of subresources for webarchives

        <https://bugs.webkit.org/show_bug.cgi?id=22666>

        Reviewed by Darin Adler.

WebCore:

        When creating a webarchive from WebCore::LegacyWebArchive::create(),
        HashSet<String>, Vector<KURL> and Vector<String> were all used to
        store a list of URLs for resources found in the document.  Instead
        use a single ListHashSet<KURL> to store the list and resolve the
        relative URLs as they're added.  We use a new inline method called
        WebCore::addSubresourceURL() to add KURL objects to the ListHashSet
        to prevent "null" KURL objects from crashing in the KURL hashing
        function.

        * WebCore.base.exp: Changed export of
        WebCore::Node::getSubresourceURLs() to take a ListHashSet<KURL>
        argument instead of a Vector<KURL>.

        * WebCore.xcodeproj/project.pbxproj: Marked KURLHash.h as a private
        header for use in WebKit.

        * css/CSSStyleSheet.cpp:
        (WebCore::CSSStyleSheet::addSubresourceStyleURLs): Renamed from
        addSubresourceURLStrings().  Changed to use ListHashSet<KURL>
        instead of HashSet<String>.  Cleaned up code.
        * css/CSSStyleSheet.h:
        (WebCore::CSSStyleSheet::addSubresourceStyleURLs): Ditto.
        * css/StyleSheet.h:
        (WebCore::StyleSheet::addSubresourceStyleURLs): Ditto.

        * dom/Node.cpp:
        (WebCore::Node::getSubresourceURLs): Changed to use
        ListHashSet<KURL> instead of Vector<KURL>.  Cleaned up code.
        * dom/Node.h:
        (WebCore::Node::getSubresourceURLs): Ditto.
        (WebCore::Node::addSubresourceAttributeURLs): Renamed from
        getSubresourceAttributeStrings().  Changed to use ListHashSet<KURL>
        instead of Vector<String>.
        (WebCore::addSubresourceURL): Added.  Safely adds new KURL objects
        to a ListHashSet<KURL> object.  A "null" KURL object will cause the
        hash function to crash since it contains a null StringImpl.  Used in
        Node::addSubresourceAttributeURLs() and addSubresourceStyleURLs() in
        the style subsystem.

        * dom/ProcessingInstruction.cpp:
        (WebCore::ProcessingInstruction::addSubresourceAttributeURLs):
        Renamed from getSubresourceAttributeStrings().  Changed to use
        ListHashSet<KURL> instead of Vector<String>.  Use
        WebCore::addSubresourceURL() to add new KURL objects.
        * dom/ProcessingInstruction.h: Ditto.
        * html/HTMLBodyElement.cpp:
        (WebCore::HTMLBodyElement::addSubresourceAttributeURLs): Ditto.
        * html/HTMLBodyElement.h: Ditto.
        * html/HTMLEmbedElement.cpp:
        (WebCore::HTMLEmbedElement::addSubresourceAttributeURLs): Ditto.
        * html/HTMLEmbedElement.h: Ditto.
        * html/HTMLImageElement.cpp:
        (WebCore::HTMLImageElement::addSubresourceAttributeURLs): Ditto.
        * html/HTMLImageElement.h: Ditto.
        * html/HTMLInputElement.cpp:
        (WebCore::HTMLInputElement::addSubresourceAttributeURLs): Ditto.
        * html/HTMLInputElement.h: Ditto.
        * html/HTMLLinkElement.cpp:
        (WebCore::HTMLLinkElement::addSubresourceAttributeURLs): Ditto.
        * html/HTMLLinkElement.h: Ditto.
        * html/HTMLObjectElement.cpp:
        (WebCore::HTMLObjectElement::addSubresourceAttributeURLs): Ditto.
        * html/HTMLObjectElement.h: Ditto.
        * html/HTMLParamElement.cpp:
        (WebCore::HTMLParamElement::addSubresourceAttributeURLs): Ditto.
        * html/HTMLParamElement.h: Ditto.
        * html/HTMLScriptElement.cpp:
        (WebCore::HTMLScriptElement::addSubresourceAttributeURLs): Ditto.
        * html/HTMLScriptElement.h: Ditto.
        * html/HTMLStyleElement.cpp:
        (WebCore::HTMLStyleElement::addSubresourceAttributeURLs): Ditto.
        * html/HTMLStyleElement.h: Ditto.
        * html/HTMLTableCellElement.cpp:
        (WebCore::HTMLTableCellElement::addSubresourceAttributeURLs): Ditto.
        * html/HTMLTableCellElement.h: Ditto.
        * html/HTMLTableElement.cpp:
        (WebCore::HTMLTableElement::addSubresourceAttributeURLs): Ditto.
        * html/HTMLTableElement.h: Ditto.

        * loader/archive/cf/LegacyWebArchive.cpp:
        (WebCore::LegacyWebArchive::create): Changed from using
        HashSet<String> to ListHashSet<KURL> for tracking unique
        subresources.  Changed from using Vector<KURL> to ListHashSet<KURL>
        when calling WebCore::Node::getSubresourceURLs().  Cleaned up code.

        * svg/SVGCursorElement.cpp:
        (WebCore::SVGCursorElement::addSubresourceAttributeURLs): Renamed
        from getSubresourceAttributeStrings().  Changed to use
        ListHashSet<KURL> instead of Vector<String>.  Use
        WebCore::addSubresourceURL() to add new KURL objects.
        * svg/SVGCursorElement.h: Ditto.
        * svg/SVGFEImageElement.cpp:
        (WebCore::SVGFEImageElement::addSubresourceAttributeURLs): Ditto.
        * svg/SVGFEImageElement.h: Ditto.
        * svg/SVGImageElement.cpp:
        (WebCore::SVGImageElement::addSubresourceAttributeURLs): Ditto.
        * svg/SVGImageElement.h: Ditto.
        * svg/SVGScriptElement.cpp:
        (WebCore::SVGScriptElement::addSubresourceAttributeURLs): Ditto.
        * svg/SVGScriptElement.h: Ditto.

WebKit/mac:

        * DOM/WebDOMOperations.mm:
        (-[DOMNode _subresourceURLs]): Changed from using Vector<KURL> to
        ListHashSet<KURL> when calling WebCore::Node::getSubresourceURLs().

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

12 years agoFixed ChangeLog date.
ddkilzer@apple.com [Sat, 6 Dec 2008 11:51:31 +0000 (11:51 +0000)]
Fixed ChangeLog date.

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

12 years agoMis-commit in ChangeLog entry
barraclough@apple.com [Sat, 6 Dec 2008 05:00:05 +0000 (05:00 +0000)]
Mis-commit in ChangeLog entry

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

12 years ago2008-12-05 Gavin Barraclough <barraclough@apple.com>
barraclough@apple.com [Sat, 6 Dec 2008 04:57:19 +0000 (04:57 +0000)]
2008-12-05  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Oliver Hunt.

        Please don't die in a fire while trying to compile Interpreter.cpp on GCC 4.2.
        Added "-fno-var-tracking" compiler flag.

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

        * JavaScriptCore.xcodeproj/project.pbxproj:

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

12 years ago2008-12-05 Gavin Barraclough <barraclough@apple.com>
barraclough@apple.com [Sat, 6 Dec 2008 03:25:23 +0000 (03:25 +0000)]
2008-12-05  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Oliver Hunt.

        Ordering of branch operands in MacroAssembler in unnecessarily  inconsistent.

        je, jg etc take an immediate operand as the second argument, but for the
        equality branches (je, jne) the immediate operand was the first argument.  This
        was unnecessarily inconsistent.  Change je, jne methods to take the immediate
        as the second argument.

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

        * assembler/MacroAssembler.h:
        (JSC::MacroAssembler::je32):
        (JSC::MacroAssembler::jne32):
        * jit/JIT.cpp:
        (JSC::JIT::compileOpStrictEq):
        * wrec/WRECGenerator.cpp:
        (JSC::WREC::Generator::generateEnter):
        (JSC::WREC::Generator::generateNonGreedyQuantifier):
        (JSC::WREC::Generator::generateGreedyQuantifier):
        (JSC::WREC::Generator::generatePatternCharacterPair):
        (JSC::WREC::Generator::generatePatternCharacter):
        (JSC::WREC::Generator::generateCharacterClassInvertedRange):
        (JSC::WREC::Generator::generateCharacterClassInverted):
        (JSC::WREC::Generator::generateAssertionBOL):
        (JSC::WREC::Generator::generateAssertionWordBoundary):

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