Timeline



Jun 8, 2009:

11:52 PM Changeset in webkit [44523] by barraclough@apple.com
  • 8 edits in trunk/JavaScriptCore

2009-06-08 Gavin Barraclough <barraclough@apple.com>

Reviewed by Geoff Garen.

Enable JS language JIT for ARM thumb2 platforms. Add ARMv7 specific
asm & constants, add appropriate configuration switches to Platform.h.

Landing this disabled until jump linking is completed (see YARR jit patch).

  • assembler/MacroAssemblerARMv7.h: (JSC::MacroAssemblerARMv7::load32):

Fix: should load pointer with ImmPtr not Imm32.

(JSC::MacroAssemblerARMv7::store32):

Fix: should load pointer with ImmPtr not Imm32.

(JSC::MacroAssemblerARMv7::move):

Fix: When moving an Imm32 that is actually a pointer, should call movT3()
not mov(), to ensure code generation is repeatable (for exception handling).

  • jit/JIT.cpp: (JSC::JIT::privateCompileCTIMachineTrampolines):

Disable JIT_OPTIMIZE_NATIVE_CALL specific code generation if the optimization is not enabled.

  • jit/JIT.h:

Add ARMv7 specific values of constants & register names.

  • jit/JITInlineMethods.h: (JSC::JIT::preverveReturnAddressAfterCall): (JSC::JIT::restoreReturnAddressBeforeReturn): (JSC::JIT::restoreArgumentReferenceForTrampoline):

Implement for ARMv7 (move value to/from lr).

  • jit/JITStubs.cpp:

Add JIT entry/thow trampolines, add macro to add thunk wrapper around stub routines.

  • jit/JITStubs.h: (JSC::JITStackFrame::returnAddressSlot):

Add ARMv7 stack frame object.

  • wtf/Platform.h:

Add changes necessary to allow JIT to build on this platform, disabled.

11:24 PM Changeset in webkit [44522] by oliver@apple.com
  • 12 edits
    6 deletes in trunk

Revert r44521 as it causes regressions on windows for some reason.

11:02 PM Changeset in webkit [44521] by oliver@apple.com
  • 12 edits
    6 adds in trunk

Bug 26249: Support JSON.stringify
<https://bugs.webkit.org/show_bug.cgi?id=26249>

Reviewed by Sam Weinig.

Implement JSON.stringify. This patch handles all the semantics of the ES5
JSON.stringify function, including replacer functions and arrays and both
string and numeric gap arguments.

Currently uses a clamped recursive algorithm basically identical to the spec
description but with a few minor tweaks for performance and corrected semantics
discussed in the es-discuss mailing list.

10:27 PM Changeset in webkit [44520] by mitz@apple.com
  • 3 edits
    6 moves in trunk/WebKit

WebKit:

Rubber-stamped by Mark Rowe.

  • updated the project after giving Objective-C++ the .mm extension
  • WebKit.xcodeproj/project.pbxproj:

WebKit/mac:

Rubber-stamped by Mark Rowe.

  • gave Objective-C++ files the .mm extension
  • Carbon/HIWebView.m: Removed.
  • Carbon/HIWebView.mm: Copied from WebKit/mac/Carbon/HIWebView.m.
  • Misc/WebKitNSStringExtras.m: Removed.
  • Misc/WebKitNSStringExtras.mm: Copied from WebKit/mac/Misc/WebKitNSStringExtras.m.
  • Misc/WebStringTruncator.m: Removed.
  • Misc/WebStringTruncator.mm: Copied from WebKit/mac/Misc/WebStringTruncator.m.
  • WebInspector/WebNodeHighlight.m: Removed.
  • WebInspector/WebNodeHighlight.mm: Copied from WebKit/mac/WebInspector/WebNodeHighlight.m.
  • WebInspector/WebNodeHighlightView.m: Removed.
  • WebInspector/WebNodeHighlightView.mm: Copied from WebKit/mac/WebInspector/WebNodeHighlightView.m.
  • WebView/WebDynamicScrollBarsView.m: Removed.
  • WebView/WebDynamicScrollBarsView.mm: Copied from WebKit/mac/WebView/WebDynamicScrollBarsView.m.
10:11 PM Changeset in webkit [44519] by beidson@apple.com
  • 15 edits
    4 adds in trunk

WebCore:

2009-06-08 Brady Eidson <beidson@apple.com>

Reviewed by Antti Koivisto

<rdar://problem/6727495> Repro crash in WebCore::Loader::Host::servePendingRequests() and dupes.

Test: http/tests/loading/deleted-host-in-resource-load-delegate-callback.html

Loader::Host objects were manually managed via new/delete.
There's a variety of circumstances where a Host might've been deleted while it was still in the middle
of a resource load delegate callback.
Changing them to be RefCounted then adding protectors in the callbacks makes this possibility disappear.

At the same time, remove ProcessingResource which was an earlier fix for this same problem that wasn't
fully implemented.

  • loader/loader.cpp: (WebCore::Loader::Loader): (WebCore::Loader::load): (WebCore::Loader::servePendingRequests): (WebCore::Loader::resumePendingRequests): (WebCore::Loader::cancelRequests): (WebCore::Loader::Host::didFinishLoading): (WebCore::Loader::Host::didFail): (WebCore::Loader::Host::didReceiveResponse): (WebCore::Loader::Host::didReceiveData):
  • loader/loader.h: (WebCore::Loader::Host::create):

WebKitTools:

2009-06-08 Brady Eidson <beidson@apple.com>

Reviewed by Antti Koivisto

Add dispatchPendingLoadRequests() to test fix for <rdar://problem/6727495>

  • DumpRenderTree/LayoutTestController.cpp: (dispatchPendingLoadRequestsCallback): (LayoutTestController::staticFunctions):
  • DumpRenderTree/LayoutTestController.h:
  • DumpRenderTree/mac/LayoutTestControllerMac.mm: (LayoutTestController::dispatchPendingLoadRequests): Implement using [WebView _dispatchPendingLoadRequests] SPI
  • DumpRenderTree/gtk/LayoutTestControllerGtk.cpp: (LayoutTestController::dispatchPendingLoadRequests): Need implementations.
  • DumpRenderTree/qt/jsobjects.cpp: (LayoutTestController::dispatchPendingLoadRequests): Ditto.
  • DumpRenderTree/win/LayoutTestControllerWin.cpp: (LayoutTestController::dispatchPendingLoadRequests): Ditto.
  • DumpRenderTree/wx/LayoutTestControllerWx.cpp: (LayoutTestController::dispatchPendingLoadRequests): Ditto.

LayoutTests:

2009-06-08 Brady Eidson <beidson@apple.com>

Reviewed by Antti Koivisto

<rdar://problem/6727495> Repro crash in WebCore::Loader::Host::servePendingRequests() and dupes.

Note this "Loader::Host deleted while still in use" could come up in a variety of ways but this layout
test only covers the single most reproducible way we know that *could* be tested by DRT.

  • http/tests/loading/deleted-host-in-resource-load-delegate-callback-expected.txt: Added.
  • http/tests/loading/deleted-host-in-resource-load-delegate-callback.html: Added.
  • http/tests/loading/resources/snow-shoes-vs-pie-copy.png: Added.
  • http/tests/loading/resources/snow-shoes-vs-pie.png: Added.
  • platform/gtk/Skipped:
  • platform/qt/Skipped:
  • platform/win/Skipped:
9:48 PM Changeset in webkit [44518] by mrowe@apple.com
  • 2 edits in trunk/JavaScriptCore

Speculative GTK build fix.

  • wtf/DateMath.cpp:
9:20 PM Changeset in webkit [44517] by barraclough@apple.com
  • 2 edits in trunk/JavaScriptCore

2009-06-08 Gavin Barraclough <barraclough@apple.com>

Reviewed by Mark Rowe.

Previous patch caused a regression.

Restructure so no new (empty, inline) function calls are added on x86.

  • jit/ExecutableAllocator.h: (JSC::ExecutableAllocator::makeWritable): (JSC::ExecutableAllocator::makeExecutable): (JSC::ExecutableAllocator::reprotectRegion): (JSC::ExecutableAllocator::cacheFlush):
8:56 PM Changeset in webkit [44516] by Dimitri Glazkov
  • 2 edits in trunk/JavaScriptCore

2009-06-08 Dimitri Glazkov <Dimitri Glazkov>

Unreviewed, GTK build fix (thanks, bdash).

  • GNUmakefile.am: Moved DateMath with all other wtf kin.
8:01 PM Changeset in webkit [44515] by dimich@chromium.org
  • 13 edits
    1 copy in trunk/WebCore

2009-06-08 Dmitry Titov <dimich@chromium.org>

Reviewed by David Levin.

https://bugs.webkit.org/show_bug.cgi?id=26126
Refactor methods of WorkerMessagingProxy used to talk to main-thread loader into new interface.

Split a couple of methods used to schedule cross-thread tasks between worker thread and loader thread
implemented on WorkerMessagingProxy into a separate interface so the loading can be implemented in
Chromium's workers.

No changes in functionality so no tests added.

  • GNUmakefile.am:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj: Added WorkerLoaderProxy.h to the bulid.
  • bindings/js/WorkerScriptController.cpp: (WebCore::WorkerScriptController::evaluate): WorkerThread::workerObjectProxy() now returns & instead of *
  • bindings/v8/WorkerScriptController.cpp: (WebCore::WorkerScriptController::evaluate): same.
  • workers/WorkerContext.cpp: (WebCore::WorkerContext::~WorkerContext): same. (WebCore::WorkerContext::reportException): same. (WebCore::WorkerContext::addMessage): same. (WebCore::WorkerContext::postMessage): same.
  • loader/WorkerThreadableLoader.cpp: (WebCore::WorkerThreadableLoader::WorkerThreadableLoader): (WebCore::WorkerThreadableLoader::MainThreadBridge::MainThreadBridge): (WebCore::WorkerThreadableLoader::MainThreadBridge::destroy): (WebCore::WorkerThreadableLoader::MainThreadBridge::cancel): (WebCore::WorkerThreadableLoader::MainThreadBridge::didSendData): (WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveResponse): (WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveData): (WebCore::WorkerThreadableLoader::MainThreadBridge::didFinishLoading): (WebCore::WorkerThreadableLoader::MainThreadBridge::didFail): (WebCore::WorkerThreadableLoader::MainThreadBridge::didFailRedirectCheck): (WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveAuthenticationCancellation): Use WorkerLoaderProxy instead of WorkerMessagingProxy for the MainThreadBridge. Mostly rename.

(WebCore::WorkerThreadableLoader::MainThreadBridge::mainThreadCreateLoader):
In addition to using WorkerLoaderProxy instead of WorkerMessagingProxy, the check for
AskedToTerminate is removed. It seems to be an optimization for a very small number of cases
when worker termination is requested a very short time before the request to load something
(XHR or importScript) was dispatched on the main thread.

  • loader/WorkerThreadableLoader.h: Now keeps a pointer to WorkerLoaderProxy rather then to a WorkerMessagingProxy. This allows to implement WorkerThreadableLoader for Chromium.
  • workers/WorkerLoaderProxy.h: Added. (WebCore::WorkerLoaderProxy::~WorkerLoaderProxy):
  • workers/WorkerMessagingProxy.cpp: (WebCore::WorkerMessagingProxy::startWorkerContext): (WebCore::WorkerMessagingProxy::postTaskToLoader): Added ASSERT since this needs to be implemented for nested workers.
  • workers/WorkerMessagingProxy.h: Derived from WorkerLoaderProxy, the methods for posting tasks cross-thread are now virtual. Removed unused postTaskToWorkerContext() method.
  • workers/WorkerThread.cpp: (WebCore::WorkerThread::create): (WebCore::WorkerThread::WorkerThread):
  • workers/WorkerThread.h: (WebCore::WorkerThread::workerLoaderProxy):
  • workers/WorkerThread.cpp: (WebCore::WorkerThread::create): (WebCore::WorkerThread::WorkerThread): (WebCore::WorkerThread::workerThread):
  • workers/WorkerThread.h: (WebCore::WorkerThread::workerLoaderProxy): (WebCore::WorkerThread::workerObjectProxy): WorkerThread gets a new member of type WorkerLoaderProxy&, and accessor. Also, existing WorkerObjectProxy* member is now WorkerObjectProxy& because it can't be null.
6:40 PM Changeset in webkit [44514] by barraclough@apple.com
  • 8 edits
    2 adds in trunk/JavaScriptCore

2009-06-08 Gavin Barraclough <barraclough@apple.com>

Reviewed by Geoff Garen.

Add (incomplete) support to YARR for running with the jit enabled
on Arm thumb2 platforms. Adds new Assembler/MacroAssembler classes,
along with cache flushing support, tweaks to MacroAssemblerCodePtr
to support decorated thumb code pointers, and new enter/exit code
to YARR jit for the platform.

Support for this platform is still under development - the assembler
currrently only supports planting and linking jumps with a 16Mb range.
As such, initially commiting in a disabled state.

Add new assembler files.

  • assembler/ARMv7Assembler.h: Added.

Add new Assembler.

  • assembler/AbstractMacroAssembler.h:

Tweaks to ensure sizes of pointer values planted in JIT code do not change.

  • assembler/MacroAssembler.h:

On ARMv7 platforms use MacroAssemblerARMv7.

  • assembler/MacroAssemblerARMv7.h: Added.

Add new MacroAssembler.

  • assembler/MacroAssemblerCodeRef.h: (JSC::FunctionPtr::FunctionPtr):

Add better ASSERT.

(JSC::ReturnAddressPtr::ReturnAddressPtr):

Add better ASSERT.

(JSC::MacroAssemblerCodePtr::MacroAssemblerCodePtr):

On ARMv7, MacroAssemblerCodePtr's mush be 'decorated' with a low bit set,
to indicate to the processor that the code is thumb code, not traditional
32-bit ARM.

(JSC::MacroAssemblerCodePtr::dataLocation):

On ARMv7, decoration must be removed.

  • jit/ExecutableAllocator.h: (JSC::ExecutableAllocator::makeWritable):

Reformatted, no change.

(JSC::ExecutableAllocator::makeExecutable):

When marking code executable also cache flush it, where necessary.

(JSC::ExecutableAllocator::MakeWritable::MakeWritable):

Only use the null implementation of this class if both !ASSEMBLER_WX_EXCLUSIVE
and running on x86(_64) - on other platforms we may also need ensure that
makeExecutable is called at the end to flush caches.

(JSC::ExecutableAllocator::reprotectRegion):

Reformatted, no change.

(JSC::ExecutableAllocator::cacheFlush):

Cache flush a region of memory, or platforms where this is necessary.

  • wtf/Platform.h:

Add changes necessary to allow YARR jit to build on this platform, disabled.

  • yarr/RegexJIT.cpp: (JSC::Yarr::RegexGenerator::generateEnter): (JSC::Yarr::RegexGenerator::generateReturn):

Add support to these methods for ARMv7.

5:37 PM WebKit Team edited by levin@chromium.org
(diff)
4:59 PM Changeset in webkit [44513] by Dimitri Glazkov
  • 2 edits in trunk/JavaScriptCore

2009-06-08 Dimitri Glazkov <Dimitri Glazkov>

Unreviewed, fix my previous fix.

  • runtime/DateInstance.cpp: (JSC::DateInstance::msToGregorianDateTime): Use WTF namespace qualifier to

disambiguate func signatures.

4:52 PM Changeset in webkit [44512] by Dimitri Glazkov
  • 3 edits in trunk/JavaScriptCore

2009-06-08 Dimitri Glazkov <Dimitri Glazkov>

Unreviewed, another Windows build fix.

4:48 PM Changeset in webkit [44511] by mrowe@apple.com
  • 2 edits in trunk/JavaScriptCore

Attempt to fix the Tiger build.

  • wtf/Platform.h: Only test the value of the macro once we know it is defined.
4:16 PM Changeset in webkit [44510] by Dimitri Glazkov
  • 3 edits in trunk/JavaScriptCore

2009-06-08 Dimitri Glazkov <Dimitri Glazkov>

Unreviewed, projectile-fixing Windows build.

  • runtime/DateConversion.cpp: Added StringExtras include.
  • wtf/DateMath.cpp: Replaced math with algorithm include (looking for std::min def for Windows).
4:01 PM Changeset in webkit [44509] by Dimitri Glazkov
  • 5 edits in trunk/JavaScriptCore

2009-06-08 Dimitri Glazkov <Dimitri Glazkov>

Unreviewed, Windows build fix.

  • runtime/DateConstructor.cpp: Changed to use WTF namespace.
  • runtime/DateConversion.cpp: Added UString include.
  • runtime/DateInstance.cpp: Changed to use WTF namespace.
  • wtf/DateMath.cpp: Added math include.
3:37 PM Changeset in webkit [44508] by Dimitri Glazkov
  • 20 edits
    2 copies
    3 moves in trunk

JavaScriptCore:

2009-06-08 Dimitri Glazkov <Dimitri Glazkov>

Reviewed by Eric Seidel.

https://bugs.webkit.org/show_bug.cgi?id=26238
Move most of runtime/DateMath functions to wtf/DateMath, and split off conversion-related
helpers to DateConversion.

  • AllInOneFile.cpp: Changed DateMath->DateConversion.
  • GNUmakefile.am: Ditto and added DateMath.
  • JavaScriptCore.exp: Ditto.
  • JavaScriptCore.pri: Ditto.
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj: Ditto.
  • JavaScriptCore.vcproj/WTF/WTF.vcproj: Added DateMath.
  • JavaScriptCore.xcodeproj/project.pbxproj: Ditto.
  • JavaScriptCoreSources.bkl: Ditto.
  • pcre/pcre_exec.cpp: Changed to use DateMath.
  • profiler/ProfileNode.cpp: (JSC::getCount): Changed to use DateConversion.
  • runtime/DateConstructor.cpp: Ditto.
  • runtime/DateConversion.cpp: Copied from JavaScriptCore/runtime/DateMath.cpp. (JSC::parseDate): Refactored to use null-terminated characters as input.
  • runtime/DateConversion.h: Copied from JavaScriptCore/runtime/DateMath.h.
  • runtime/DateInstance.cpp: Changed to use wtf/DateMath.
  • runtime/DateInstance.h: Ditto.
  • runtime/DateMath.cpp: Removed.
  • runtime/DateMath.h: Removed.
  • runtime/DatePrototype.cpp: Ditto.
  • runtime/InitializeThreading.cpp: Ditto.
  • wtf/DateMath.cpp: Copied from JavaScriptCore/runtime/DateMath.cpp.
  • wtf/DateMath.h: Copied from JavaScriptCore/runtime/DateMath.h.

WebCore:

2009-06-08 Dimitri Glazkov <Dimitri Glazkov>

Reviewed by Eric Seidel.

https://bugs.webkit.org/show_bug.cgi?id=26238
Add parseDate helper to HTTPParsers, which uses WTF::parseDateFromNullTerminatedCharacters.

  • ForwardingHeaders/runtime/DateMath.h: Removed.
  • ForwardingHeaders/wtf/DateMath.h: Copied from WebCore/ForwardingHeaders/runtime/DateMath.h.
  • platform/network/HTTPParsers.cpp: (WebCore::parseDate): Added.
  • platform/network/HTTPParsers.h:
  • platform/network/ResourceResponseBase.cpp: (WebCore::parseDateValueInHeader): Changed to use the new helper.
2:43 PM Changeset in webkit [44507] by sfalken@apple.com
  • 2 edits in tags/Safari-6530.17.1/JavaScriptCore

Merge r44506.

2:38 PM Changeset in webkit [44506] by sfalken@apple.com
  • 2 edits in trunk/JavaScriptCore

Windows build fix.

2:18 PM Changeset in webkit [44505] by sfalken@apple.com
  • 1 copy in tags/Safari-6530.17.1

New tag.

1:47 PM Changeset in webkit [44504] by barraclough@apple.com
  • 9 edits in trunk/JavaScriptCore

2009-06-07 David Kilzer <ddkilzer@apple.com>

Make JavaScriptCore compile for iPhone and iPhone Simulator

Reviewed by Gavin Barraclough.

  • Configurations/Base.xcconfig: Split GCC_ENABLE_OBJC_GC on $(REAL_PLATFORM_NAME). Added $(ARCHS_UNIVERSAL_IPHONE_OS) to VALID_ARCHS. Added REAL_PLATFORM_NAME_iphoneos, REAL_PLATFORM_NAME_iphonesimulator, HAVE_DTRACE_iphoneos and HAVE_DTRACE_iphonesimulator variables.
  • Configurations/DebugRelase.xcconfig: Split ARCHS definition on $(REAL_PLATFORM_NAME).
  • Configurations/JavaScriptCore.xcconfig: Added EXPORTED_SYMBOLS_FILE_armv6 and EXPORTED_SYMBOLS_FILE_armv7 variables. Split OTHER_LDFLAGS into OTHER_LDFLAGS_BASE and OTHER_LDFLAGS_$(REAL_PLATFORM_NAME) since CoreServices.framework is only linked to on Mac OS X.
  • JavaScriptCore.xcodeproj/project.pbxproj: Removed references to CoreServices.framework since it's linked using OTHER_LDFLAGS in JavaScriptCore.xcconfig.
  • profiler/ProfilerServer.mm: Added #import for iPhone Simulator. (-[ProfilerServer init]): Conditionalize use of NSDistributedNotificationCenter to non-iPhone or iPhone Simulator.
  • wtf/FastMalloc.cpp: (WTF::TCMallocStats::): Build fix for iPhone and iPhone Simulator.
  • wtf/Platform.h: Defined PLATFORM(IPHONE) and PLATFORM(IPHONE_SIMULATOR).
  • wtf/ThreadingPthreads.cpp: (WTF::setThreadNameInternal): Build fix for iPhone and iPhone Simulator.
10:52 AM Changeset in webkit [44503] by agl@chromium.org
  • 5 edits
    1 add in trunk/WebCore

2009-06-08 Adam Langley <agl@google.com>

Reviewed by Eric Siedel.

Chromium Linux ignored the background color on <select>s. Rather
than encode magic colours, we start with a base color (specified
via CSS) and derive the other colors from it. Thus, setting the
CSS background-color now correctly changes the colour of the
control.

This should not change the appearence controls without
background-colors. However, <select>s with a background-color
will now renderer correctly, which may require rebaselining
pixel tests in the Chromium tree.

https://bugs.webkit.org/show_bug.cgi?id=26030
http://code.google.com/p/chromium/issues/detail?id=12596

  • platform/graphics/Color.cpp: (WebCore::Color::getHSL): new member
  • platform/graphics/Color.h:
  • rendering/RenderThemeChromiumLinux.cpp: (WebCore::RenderThemeChromiumLinux::systemColor): (WebCore::brightenColor): (WebCore::paintButtonLike):
10:19 AM Changeset in webkit [44502] by kov@webkit.org
  • 2 edits in trunk/WebKit/gtk

2009-06-08 Gustavo Noronha Silva <Gustavo Noronha Silva>

Reviewed by Jan Alonzo.

https://bugs.webkit.org/show_bug.cgi?id=26240
[GTK] Try again button loses query strings

Only trigger reload, when try again is clicked, this way we do not
lose the query strings, like we did when also triggering a form
submission.

  • resources/error.html:
9:24 AM Changeset in webkit [44501] by Dimitri Glazkov
  • 1 edit in trunk/WebCore/ChangeLog

Fixed the name in the ChangeLog

9:23 AM Changeset in webkit [44500] by Dimitri Glazkov
  • 2 edits
    2 adds in trunk/WebCore

2009-06-08 victorw <victorw@chromium.org>

Reviewed by Dimitri Glazkov.

https://bugs.webkit.org/show_bug.cgi?id=26087
Bug 26087: Removing element in JS crashes Chrome tab if it fired the change event

Fix tab crash caused by destroying the popup list that fired the change event on abandon.

If a popup list is abandoned (press a key to jump to an item
and then use tab or mouse to get away from the select box),
the current code fires a change event in PopupListBox::updateFromElemt().
The JS that listens to this event may destroy the object and cause the
rest of popup list code crashes.

The updateFromElement() is called before abandon() and this causes
the selected index to be discarded after updateFromElement(). From
the code comments, this appears to be the reason why valueChanged is
called in updateFromElement.

Fix the issue by removing the valueChanged call in updateFromElement,
saving the selected index that we should accept on abandon and pass
it to the valueChange in abandon().

A manual test has been added.

  • manual-tests/chromium: Added.
  • manual-tests/chromium/onchange-reload-popup.html: Added.
  • platform/chromium/PopupMenuChromium.cpp: (WebCore::PopupListBox::PopupListBox): (WebCore::PopupListBox::handleKeyEvent): (WebCore::PopupListBox::abandon): (WebCore::PopupListBox::updateFromElement):
8:53 AM Changeset in webkit [44499] by vestbo@webkit.org
  • 2 edits in trunk/WebCore

2009-06-08 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>

Reviewed by Simon Hausmann.

[Qt] Disable a few warnings on Windows

8:53 AM QtWebKitTodo edited by Simon Hausmann
(diff)
8:51 AM Changeset in webkit [44498] by Simon Hausmann
  • 6 edits in trunk/WebKit/qt

2009-06-08 Simon Hausmann <simon.hausmann@nokia.com>

Reviewed by Holger Freyther.

Renamed QWebElement::enclosingBlock to enclosingBlockElement
and changed the return type to QWebElement, as discussed in
the API review. This API is more generic and through
QWebElement's geometry() it is possible to retrieve the
same information.

8:38 AM Changeset in webkit [44497] by vestbo@webkit.org
  • 2 edits in trunk/WebCore

2009-06-08 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>

Reviewed by Simon Hausmann.

[Qt] Don't enable ENABLE_PLUGIN_PACKAGE_SIMPLE_HASH on Windows

This define was brought in after refactoring some code from
PluginPackage(Qt|Gtk).cpp into the shared PluginPackage.cpp.

8:23 AM QtWebKitTodo edited by Simon Hausmann
(diff)
8:14 AM QtWebKitTodo edited by Simon Hausmann
(diff)
8:13 AM QtWebKitTodo edited by Simon Hausmann
(diff)
8:10 AM QtWebKitTodo edited by Simon Hausmann
(diff)
7:35 AM Changeset in webkit [44496] by vestbo@webkit.org
  • 6 edits in trunk

2009-06-08 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>

Reviewed by Simon Hausmann.

[Qt] Use $QMAKE_PATH_SEP instead of hardcoded / to fix Windows build

7:35 AM QtWebKitTodo edited by Simon Hausmann
(diff)
7:17 AM QtWebKitTodo edited by Simon Hausmann
(diff)
6:25 AM QtWebKitTodo edited by Simon Hausmann
(diff)
5:56 AM QtWebKitTodo edited by Simon Hausmann
(diff)
5:05 AM Changeset in webkit [44495] by ariya@webkit.org
  • 4 edits in trunk/WebCore

2009-06-08 Laszlo Gombos <Laszlo Gombos>

Reviewed by Ariya Hidayat.

[Qt] Build fix when NETSCAPE_PLUGIN_API support is turned off
https://bugs.webkit.org/show_bug.cgi?id=26244

  • WebCore.pro: Define PLUGIN_PACKAGE_SIMPLE_HASH only if NETSCAPE_PLUGIN_API is turned on
  • plugins/PluginPackage.cpp: Guard initializeBrowserFuncs()
  • plugins/PluginViewNone.cpp: Match guards with PluginView.h

Jun 7, 2009:

11:38 PM Changeset in webkit [44494] by jmalonzo@webkit.org
  • 5 edits in trunk

Revert "2009-06-05 WANG Lu <coolwanglu@gmail.com>"

Revert commit r44479 as we need to workout first what the best option is for adding
optional features like this.

9:28 PM Changeset in webkit [44493] by barraclough@apple.com
  • 2 edits in trunk/JavaScriptCore

2009-06-07 Gavin Barraclough <barraclough@apple.com>

RS by Sam Weinig.

Remove bonus bogus \n from last commit.

  • jit/JITStubs.cpp: (JSC::):
9:23 PM Changeset in webkit [44492] by barraclough@apple.com
  • 4 edits in trunk/JavaScriptCore

2009-06-07 Gavin Barraclough <barraclough@apple.com>

Reviewed by Sam Weinig.

Change the implementation of op_throw so the stub function always modifies its
return address - if it doesn't find a 'catch' it will switch to a trampoline
to force a return from JIT execution. This saves memory, by avoiding the need
for a unique return for every op_throw.

  • jit/JITOpcodes.cpp: (JSC::JIT::emit_op_throw):

JITStubs::cti_op_throw now always changes its return address,
remove return code generated after the stub call (this is now
handled by ctiOpThrowNotCaught).

  • jit/JITStubs.cpp: (JSC::):

Add ctiOpThrowNotCaught definitions.

(JSC::JITStubs::DEFINE_STUB_FUNCTION):

Change cti_op_throw to always change its return address.

  • jit/JITStubs.h:

Add ctiOpThrowNotCaught declaration.

7:19 PM Changeset in webkit [44491] by mitz@apple.com
  • 2 edits in trunk/WebCore

Reviewed by Sam Weinig.

  • fix <rdar://problem/6931661> -[WebView _selectionIsAll] returns YES when the selection is inside a text field.
  • editing/VisibleSelection.cpp: (WebCore::VisibleSelection::isAll): Return false if the selection is in a shadow tree.
1:25 PM Changeset in webkit [44490] by kov@webkit.org
  • 2 edits in trunk/WebCore

2009-06-07 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Reviewed by Holger Freyther.

https://bugs.webkit.org/show_bug.cgi?id=26106
[GTK] Crashes when you keep a combo open during a page transition, then close it

Hide the combo popup and disconnect from its signals during
PopupMenu destruction to handle this exceptional case with no
crash.

  • platform/gtk/PopupMenuGtk.cpp: (WebCore::PopupMenu::~PopupMenu): (WebCore::PopupMenu::menuUnmapped):
1:55 AM Changeset in webkit [44489] by mrowe@apple.com
  • 2 edits in trunk/WebKitTools

Delete the AccessibilityController that we allocated in -init.

Rubber-stamped by Cameron Zwarich.

  • DumpRenderTree/mac/FrameLoadDelegate.mm:

(-[FrameLoadDelegate dealloc]):

Jun 6, 2009:

10:45 PM Changeset in webkit [44488] by mrowe@apple.com
  • 2 edits in trunk/WebKitTools

Factor out the code to check whether a library contains a given symbol in to a helper function.

Reviewed by Dan Bernstein.

  • Scripts/webkitdirs.pm:
10:25 PM Changeset in webkit [44487] by mrowe@apple.com
  • 8 edits in trunk

Detect when XHTML MP and WCSS are disabled and skip their associated regression tests.

Reviewed by Sam Weinig.

  • Scripts/run-webkit-tests:
  • Scripts/webkitdirs.pm:

Remove XHTML MP and WCSS tests from the skipped lists as run-webkit-tests
now treats them like our other optional features and will skip them automatically
when the feature is not compiled in.

  • platform/gtk/Skipped:
  • platform/mac/Skipped:
  • platform/qt/Skipped:
  • platform/win/Skipped:
8:09 PM Changeset in webkit [44486] by mrowe@apple.com
  • 2 edits in trunk/LayoutTests

Unskip two more tests that now pass.

  • platform/mac-snowleopard/Skipped:
6:38 PM Changeset in webkit [44485] by kov@webkit.org
  • 2 edits in trunk/WebKit/gtk

2009-06-06 Gustavo Noronha Silva <Gustavo Noronha Silva>

Reviewed by Xan Lopez.

https://bugs.webkit.org/show_bug.cgi?id=26175
[GTK] Download progress notification should be throttled, for the benefit of download managers

Throttle notifications for the 'progress' property of the Download
object, and update documentation to note the fact that this is
being done, and how to get all notifications if you really care
about them.

  • webkit/webkitdownload.cpp: (webkit_download_class_init): (webkit_download_received_data):
6:10 PM Changeset in webkit [44484] by mrowe@apple.com
  • 2 edits in trunk/LayoutTests

Unskip some tests now that they pass.

  • platform/mac-snowleopard/Skipped:
6:10 PM Changeset in webkit [44483] by mrowe@apple.com
  • 4 edits in trunk

<rdar://problem/6778101> Four SSL-related test failures

Reviewed by Brady Eidson.

With newer versions of CFNetwork we receive a NSURLErrorServerCertificateUntrusted error
code rather than the more specific NSURLErrorServerCertificateHasUnknownRoot that DumpRenderTree
was looking for. Update DumpRenderTree to accommodate the different error code.

  • DumpRenderTree/mac/FrameLoadDelegate.mm:

(-[FrameLoadDelegate webView:didFailProvisionalLoadWithError:forFrame:]):

  • platform/mac-snowleopard/Skipped: Unskip the tests.
5:20 PM Changeset in webkit [44482] by weinig@apple.com
  • 3 edits
    2 adds in trunk

WebCore:

2009-06-06 Sam Weinig <sam@webkit.org>

Reviewed by Dan Bernstein.

Fix for <rdar://problem/6930540>
REGRESSION (r43797): Serif and fantasy font-family names are wrong in result of getComputedStyle

Test: fast/css/font-family-builtins.html

  • css/CSSComputedStyleDeclaration.cpp: (WebCore::identifierForFamily): Fix typo. Fantasy family should be -webkit-fantasy not, -webkit-serif.

LayoutTests:

2009-06-06 Sam Weinig <sam@webkit.org>

Reviewed by Dan Bernstein.

Test for <rdar://problem/6930540>
REGRESSION (r43797): Serif and fantasy font-family names are wrong in result of getComputedStyle

  • fast/css/font-family-builtins-expected.txt: Added.
  • fast/css/font-family-builtins.html: Added.
3:17 PM Changeset in webkit [44481] by weinig@apple.com
  • 13 edits in trunk

WebCore:

2009-06-06 Sam Weinig <sam@webkit.org>

Reviewed by Brady Eidson.

Fix for <rdar://problem/6936235>
Need to support StorageEvent.storageArea to meet the Web Storage spec

  • storage/LocalStorageArea.cpp: (WebCore::LocalStorageArea::dispatchStorageEvent): Pass the localStorage for the frame being dispatched to.
  • storage/SessionStorageArea.cpp: (WebCore::SessionStorageArea::dispatchStorageEvent): Ditto, only for sessionStorage.
  • storage/StorageEvent.cpp: (WebCore::StorageEvent::StorageEvent): (WebCore::StorageEvent::initStorageEvent):
  • storage/StorageEvent.h: (WebCore::StorageEvent::create): (WebCore::StorageEvent::storageArea):
  • storage/StorageEvent.idl: Add storageArea member.

LayoutTests:

2009-06-06 Sam Weinig <sam@webkit.org>

Reviewed by Brady Eidson.

Update tests for <rdar://problem/6936235>
Need to support StorageEvent.storageArea to meet the Web Storage spec

Test StorageEvent.uri, StorageEvent.source and StorageEvent.storageArea.

  • storage/domstorage/localstorage/iframe-events-expected.txt:
  • storage/domstorage/localstorage/iframe-events.html:
  • storage/domstorage/localstorage/resources/iframe-events-second.html:
  • storage/domstorage/sessionstorage/iframe-events-expected.txt:
  • storage/domstorage/sessionstorage/iframe-events.html:
  • storage/domstorage/sessionstorage/resources/iframe-events-second.html:
9:53 AM Changeset in webkit [44480] by Nikolas Zimmermann
  • 11 edits in trunk

Reviewed by Anders Carlsson.

Force initialization of the WML variable state, right after the dynamically created WML elements have been added to the tree.
Note that "regular WML" doesn't support JavaScript at all, in a normal WML document WMLDocument::finishedParsing() takes care of that.

Jun 5, 2009:

9:49 PM Changeset in webkit [44479] by jmalonzo@webkit.org
  • 5 edits in trunk

2009-06-05 WANG Lu <coolwanglu@gmail.com>

Reviewed by Jan Alonzo.

[Gtk] WebKit GTK with libsoup won't recognize proxies
https://bugs.webkit.org/show_bug.cgi?id=25263

Added --with-libsoup-gnome (default=no) to enable GNOME-specific
features of libsoup, an important one of which is the proxy-resolver
feature.

  • configure.ac:

2009-06-05 WANG Lu <coolwanglu@gmail.com>

Reviewed by Jan Alonzo.

[Gtk] WebKit GTK with libsoup won't recognize proxies
https://bugs.webkit.org/show_bug.cgi?id=25263

If libsoup-gnome is enabled, proper parameters are added when creating
a new soup session, in order to enable GNOME-specific features of
libsoup.

  • GNUmakefile.am:
  • platform/network/soup/ResourceHandleSoup.cpp: (WebCore::createSoupSession):
7:54 PM Changeset in webkit [44478] by barraclough@apple.com
  • 2 edits in trunk/JavaScriptCore

2009-06-05 Gavin Barraclough <barraclough@apple.com>

Rudder stamped by Sam Weinig.

Add missing ASSERT.

  • assembler/X86Assembler.h: (JSC::X86Assembler::getRelocatedAddress):
7:39 PM Changeset in webkit [44477] by barraclough@apple.com
  • 5 edits in trunk/JavaScriptCore

2009-06-05 Gavin Barraclough <barraclough@apple.com>

Reviewed by Sam Weinig.

Switch storePtrWithPatch to take the initial immediate value as an argument.

  • assembler/MacroAssemblerX86.h: (JSC::MacroAssemblerX86::storePtrWithPatch):
  • assembler/MacroAssemblerX86_64.h: (JSC::MacroAssemblerX86_64::storePtrWithPatch):
  • jit/JITOpcodes.cpp: (JSC::JIT::emit_op_jsr):
5:08 PM Changeset in webkit [44476] by barraclough@apple.com
  • 5 edits in trunk/JavaScriptCore

2009-06-05 Gavin Barraclough <barraclough@apple.com>

Reviewed by Sam Weinig.

Remove patchLength..tByIdExternalLoadPrefix magic numbers from JIT.h.

These aren't really suitable values to be tracking within common code
of the JIT, since they are not (and realistically cannot) be checked
by ASSERTs, as the other repatch offsets are. Move this functionality
(skipping the REX prefix when patching load instructions to LEAs on
x86-64) into the X86Assembler.

  • assembler/AbstractMacroAssembler.h: (JSC::AbstractMacroAssembler::CodeLocationInstruction::repatchLoadPtrToLEA):
  • assembler/X86Assembler.h: (JSC::X86Assembler::repatchLoadPtrToLEA):
  • jit/JIT.h:
  • jit/JITPropertyAccess.cpp: (JSC::JIT::patchGetByIdSelf): (JSC::JIT::patchPutByIdReplace):
4:24 PM Changeset in webkit [44475] by weinig@apple.com
  • 3 edits in trunk/WebCore

2009-06-05 Sam Weinig <sam@webkit.org>

Reviewed by Anders Carlsson.

Add ononline and onoffline attributes for the <body> element.

  • html/HTMLAttributeNames.in: Added ononlineAttr and onofflineAttr.
  • html/HTMLBodyElement.cpp: (WebCore::HTMLBodyElement::parseMappedAttribute): Map ononlineAttr and onofflineAttr to window event listeners.
1:22 PM Changeset in webkit [44474] by hyatt@apple.com
  • 2 edits in trunk/WebKit/mac

2009-06-05 David Hyatt <hyatt@apple.com>

Reviewed by Mark Rowe.

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

Update a WebView's active state when it moves to a different window.

  • WebView/WebView.mm: (-[WebView viewDidMoveToWindow]):
10:43 AM Changeset in webkit [44473] by ddkilzer@apple.com
  • 2 edits in trunk/WebKitSite

2009-06-05 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.com>

Bug 26188: Clarify some of the cases in the coding style guide

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

Reviewed and tweaked by David Kilzer.

Changed the coding style document to clarify some cases of ambiguity.

  • coding/coding-style.html:
9:02 AM Changeset in webkit [44472] by vestbo@webkit.org
  • 9 edits in trunk

2009-06-05 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>

Reviewed by Simon Hausmann.

[Qt] Add missing includes of config.h

7:53 AM Changeset in webkit [44471] by Dimitri Glazkov
  • 2 edits in trunk/WebCore

2009-06-05 Fumitoshi Ukai <ukai@google.com>

Reviewed by Dimitri Glazkov.

https://bugs.webkit.org/show_bug.cgi?id=26215
Try to fix the Chromium build.

  • platform/graphics/chromium/GlyphPageTreeNodeChromiumWin.cpp: (WebCore::fillBMPGlyphs): (WebCore::fillNonBMPGlyphs):
7:53 AM QtWebKitTodo edited by ariya@webkit.org
(diff)
7:43 AM Changeset in webkit [44470] by ddkilzer@apple.com
  • 4 edits in trunk

JavaScriptCore:

2009-06-05 Shinichiro Hamaji <hamaji@chromium.org>

Bug 26160: Compile fails in MacOSX when GNU fileutils are installed

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

Reviewed by Alexey Proskuryakov.

Use /bin/ln instead of ln for cases where this command is used with -h option.
As this option is not supported by GNU fileutils, this change helps users
who have GNU fileutils in their PATH.

WebCore:

2009-06-05 Shinichiro Hamaji <hamaji@chromium.org>

Bug 26160: Compile fails in MacOSX when GNU fileutils are installed

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

Reviewed by Alexey Proskuryakov.

Use /bin/ln instead of ln for cases where this command is used with -h option.
As this option is not supported by GNU fileutils, this change helps users
who have GNU fileutils in their PATH.

  • WebCore.xcodeproj/project.pbxproj:
7:10 AM Changeset in webkit [44469] by vestbo@webkit.org
  • 1 edit in trunk/WebKit/qt/Api/qwebsettings.cpp

Fix the Qt build after r44413

7:00 AM Changeset in webkit [44468] by oliver@apple.com
  • 9 edits
    2 adds in trunk

2009-06-03 Ben Murdoch <benm@google.com>

<https://bugs.webkit.org/show_bug.cgi?id=25710> HTML5 Database stops executing transactions if the URL hash changes while a transaction is open and an XHR is in progress.

Reviewed by Alexey Proskuryakov.

Fix a bug that causes database transactions to fail if a history navigation to a hash fragment of the same document is made while resources (e.g. an XHR) are loading
https://bugs.webkit.org/show_bug.cgi?id=25710

Test: storage/hash-change-with-xhr.html

  • loader/DocumentLoader.cpp: (WebCore::DocumentLoader::stopLoading):
  • loader/DocumentLoader.h:
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::stopLoading): (WebCore::FrameLoader::stopAllLoaders):
  • loader/FrameLoader.h:
  • loader/FrameLoaderTypes.h: (WebCore::):
  • page/Page.cpp: (WebCore::Page::goToItem):
  • WebCore.base.exp:
5:12 AM Changeset in webkit [44467] by vestbo@webkit.org
  • 2 edits in trunk/WebCore

2009-06-03 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>

Reviewed by Simon Hausmann.

[Qt] Make sure the correct config.h is included when shadow-building

5:05 AM Changeset in webkit [44466] by vestbo@webkit.org
  • 2 edits in trunk/WebKitTools

2009-06-03 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>

Rubber-stamped by Simon Hausmann.

[Qt] Fix Perl warning when calling chdir with an empty/undefined path

This happened when the included makespec was in the same directory as
the parent makespec, so the relative path between the two was empty.

5:03 AM Changeset in webkit [44465] by vestbo@webkit.org
  • 3 edits in trunk/WebCore

2009-06-05 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>

Reviewed by Simon Hausmann.

Fix Qt build after r44452

4:27 AM Changeset in webkit [44464] by vestbo@webkit.org
  • 1 edit in trunk/WebCore/ChangeLog

Add missing changelog for r44462

4:24 AM Changeset in webkit [44463] by vestbo@webkit.org
  • 1 edit in trunk/WebCore/WebCore.pro

Fix the Qt build (missing symbols)

4:24 AM Changeset in webkit [44462] by vestbo@webkit.org
  • 3 edits
    1 delete in trunk/WebCore

[Qt] Remove some dead code (MenuEventProxy)

3:58 AM Changeset in webkit [44461] by barraclough@apple.com
  • 2 edits in trunk/JavaScriptCore

2009-06-05 Gavin Barraclough <barraclough@apple.com>

Reviewed by Oliver Hunt.

Remove DoubleNotEqual floating point comparison condition for now -
it is not used, and it is unclear the semantics are correct (I think
this comparison would actually give you not-equal-or-unordered, which
might be what is wanted... we can revisit this interface & get it
right when required).

Also, fix asserts in branchArith32 ops. All adds & subs can check
for Signed, multiply only sets OF so can only check for overflow.

  • assembler/MacroAssemblerX86Common.h: (JSC::MacroAssemblerX86Common::): (JSC::MacroAssemblerX86Common::branchAdd32): (JSC::MacroAssemblerX86Common::branchMul32): (JSC::MacroAssemblerX86Common::branchSub32):
3:46 AM Changeset in webkit [44460] by barraclough@apple.com
  • 3 edits in trunk/JavaScriptCore

2009-06-05 Gavin Barraclough <barraclough@apple.com>

Reviewed by Oliver Hunt.

Minor tidy up in JITStubs.

  • jit/JITStubs.cpp: (JSC::StackHack::StackHack):
  • jit/JITStubs.h:
3:15 AM Changeset in webkit [44459] by xan@webkit.org
  • 2 edits in trunk/JavaScriptCore

2009-06-05 Koen Kooi <koen@dominion.thruhere.net>

Reviewed by Xan Lopez.

Build fix for glib unicode backend.

  • wtf/unicode/glib/UnicodeMacrosFromICU.h:
2:31 AM Changeset in webkit [44458] by xan@webkit.org
  • 2 edits in trunk/WebCore

2009-06-05 Xan Lopez <xlopez@igalia.com>

More build fixes.

  • platform/graphics/gtk/GlyphPageTreeNodePango.cpp: (WebCore::GlyphPage::fill):
2:19 AM Changeset in webkit [44457] by barraclough@apple.com
  • 5 edits in trunk/JavaScriptCore

2009-06-05 Gavin Barraclough <barraclough@apple.com>

Reviewed by Oliver Hunt.

3 tiny cleanups:

  • assembler/MacroAssemblerX86.h:
  • assembler/MacroAssemblerX86_64.h: (JSC::MacroAssemblerX86_64::storePtrWithPatch):

store*() methods should take an ImplicitAddress, rather than an Address.

  • assembler/X86Assembler.h:

Make patchPointer private.

  • jit/JITOpcodes.cpp: (JSC::JIT::emit_op_ret):

Remove empty line at end of function.

2:16 AM Changeset in webkit [44456] by xan@webkit.org
  • 4 edits in trunk/WebCore

2009-06-05 Xan Lopez <xlopez@igalia.com>

Fix the GTK+ build.

  • GNUmakefile.am:
  • platform/graphics/gtk/FontCacheGtk.cpp: (WebCore::FontCache::getFontDataForCharacters):
  • platform/graphics/gtk/GlyphPageTreeNodeGtk.cpp: (WebCore::GlyphPage::fill):
12:55 AM Changeset in webkit [44455] by barraclough@apple.com
  • 13 edits in trunk/JavaScriptCore

2009-06-05 Gavin Barraclough <barraclough@apple.com>

Reviewed by Oliver Hunt.

Encapsulate many uses of void* in the assembler & jit with types that provide
more semantic information. The new types are:


  • MacroAssemblerCodePtr - this wraps a pointer into JIT generated code.
  • FunctionPtr - this wraps a pointer to a C/C++ function in JSC.
  • ReturnAddressPtr - this wraps a return address resulting from a 'call' instruction.

Wrapping these types allows for stronger type-checking than is possible with everything
represented a void*. For example, it is now enforced by the type system that near
calls can only be linked to JIT code and not to C functions in JSC (this was previously
required, but could not be enforced on the interface).

  • assembler/AbstractMacroAssembler.h: (JSC::AbstractMacroAssembler::CodeLocationCommon::CodeLocationCommon): (JSC::AbstractMacroAssembler::CodeLocationCommon::dataLocation): (JSC::AbstractMacroAssembler::CodeLocationCommon::executableAddress): (JSC::AbstractMacroAssembler::CodeLocationCommon::reset): (JSC::AbstractMacroAssembler::CodeLocationInstruction::repatchLoadToLEA): (JSC::AbstractMacroAssembler::CodeLocationInstruction::CodeLocationInstruction): (JSC::AbstractMacroAssembler::CodeLocationLabel::addressForSwitch): (JSC::AbstractMacroAssembler::CodeLocationLabel::addressForExceptionHandler): (JSC::AbstractMacroAssembler::CodeLocationLabel::addressForJSR): (JSC::AbstractMacroAssembler::CodeLocationLabel::operator!): (JSC::AbstractMacroAssembler::CodeLocationLabel::reset): (JSC::AbstractMacroAssembler::CodeLocationLabel::CodeLocationLabel): (JSC::AbstractMacroAssembler::CodeLocationLabel::getJumpDestination): (JSC::AbstractMacroAssembler::CodeLocationJump::relink): (JSC::AbstractMacroAssembler::CodeLocationJump::CodeLocationJump): (JSC::AbstractMacroAssembler::CodeLocationCall::relink): (JSC::AbstractMacroAssembler::CodeLocationCall::calleeReturnAddressValue): (JSC::AbstractMacroAssembler::CodeLocationCall::CodeLocationCall): (JSC::AbstractMacroAssembler::CodeLocationNearCall::relink): (JSC::AbstractMacroAssembler::CodeLocationNearCall::calleeReturnAddressValue): (JSC::AbstractMacroAssembler::CodeLocationNearCall::CodeLocationNearCall): (JSC::AbstractMacroAssembler::CodeLocationDataLabel32::repatch): (JSC::AbstractMacroAssembler::CodeLocationDataLabel32::CodeLocationDataLabel32): (JSC::AbstractMacroAssembler::CodeLocationDataLabelPtr::repatch): (JSC::AbstractMacroAssembler::CodeLocationDataLabelPtr::CodeLocationDataLabelPtr): (JSC::AbstractMacroAssembler::ProcessorReturnAddress::relinkCallerToTrampoline): (JSC::AbstractMacroAssembler::ProcessorReturnAddress::relinkCallerToFunction): (JSC::AbstractMacroAssembler::ProcessorReturnAddress::relinkNearCallerToTrampoline): (JSC::AbstractMacroAssembler::ProcessorReturnAddress::addressForLookup): (JSC::AbstractMacroAssembler::trampolineAt): (JSC::AbstractMacroAssembler::PatchBuffer::link): (JSC::AbstractMacroAssembler::PatchBuffer::performFinalization): (JSC::::CodeLocationCommon::instructionAtOffset): (JSC::::CodeLocationCommon::labelAtOffset): (JSC::::CodeLocationCommon::jumpAtOffset): (JSC::::CodeLocationCommon::callAtOffset): (JSC::::CodeLocationCommon::nearCallAtOffset): (JSC::::CodeLocationCommon::dataLabelPtrAtOffset): (JSC::::CodeLocationCommon::dataLabel32AtOffset):
  • assembler/MacroAssemblerCodeRef.h: (JSC::FunctionPtr::FunctionPtr): (JSC::FunctionPtr::value): (JSC::FunctionPtr::executableAddress): (JSC::ReturnAddressPtr::ReturnAddressPtr): (JSC::ReturnAddressPtr::value): (JSC::MacroAssemblerCodePtr::MacroAssemblerCodePtr): (JSC::MacroAssemblerCodePtr::executableAddress): (JSC::MacroAssemblerCodePtr::dataLocation): (JSC::MacroAssemblerCodeRef::MacroAssemblerCodeRef):
  • assembler/X86Assembler.h: (JSC::X86Assembler::patchPointerForCall):
  • jit/JIT.cpp: (JSC::ctiPatchNearCallByReturnAddress): (JSC::ctiPatchCallByReturnAddress): (JSC::JIT::privateCompile): (JSC::JIT::privateCompileCTIMachineTrampolines):
  • jit/JIT.h: (JSC::JIT::compileCTIMachineTrampolines):
  • jit/JITCall.cpp: (JSC::JIT::compileOpCall):
  • jit/JITCode.h: (JSC::JITCode::operator !): (JSC::JITCode::addressForCall): (JSC::JITCode::offsetOf): (JSC::JITCode::execute): (JSC::JITCode::size): (JSC::JITCode::HostFunction):
  • jit/JITInlineMethods.h: (JSC::JIT::emitNakedCall):
  • jit/JITPropertyAccess.cpp: (JSC::JIT::privateCompilePutByIdTransition): (JSC::JIT::patchGetByIdSelf): (JSC::JIT::patchPutByIdReplace): (JSC::JIT::privateCompilePatchGetArrayLength): (JSC::JIT::privateCompileGetByIdProto): (JSC::JIT::privateCompileGetByIdChain):
  • jit/JITStubs.cpp: (JSC::JITThunks::JITThunks): (JSC::JITThunks::tryCachePutByID): (JSC::JITThunks::tryCacheGetByID): (JSC::JITStubs::DEFINE_STUB_FUNCTION):
  • jit/JITStubs.h: (JSC::JITThunks::ctiArrayLengthTrampoline): (JSC::JITThunks::ctiStringLengthTrampoline): (JSC::JITThunks::ctiVirtualCallPreLink): (JSC::JITThunks::ctiVirtualCallLink): (JSC::JITThunks::ctiVirtualCall): (JSC::JITThunks::ctiNativeCallThunk):
  • yarr/RegexJIT.h: (JSC::Yarr::RegexCodeBlock::operator!): (JSC::Yarr::RegexCodeBlock::execute):
12:51 AM Changeset in webkit [44454] by Antti Koivisto
  • 3 edits in trunk/JavaScriptCore

2009-06-05 Antti Koivisto <Antti Koivisto>

Try to unbreak Windows build.

12:36 AM Changeset in webkit [44453] by Antti Koivisto
  • 5 edits in trunk/WebCore

2009-06-05 Antti Koivisto <Antti Koivisto>

Try to fix Windows (and possibly other platforms) build.

Restore ResourceResponseBase::lastModifiedDate() and setLastModifiedDate() removed in previous commit.
for now since PluginStream used on some platforms expects them and calculations differ from plain
Last-modified header value.


Also include <wtf/MathExtras.h> to get isfinite().

  • platform/network/ResourceResponseBase.cpp: (WebCore::ResourceResponseBase::adopt): (WebCore::ResourceResponseBase::copyData): (WebCore::ResourceResponseBase::setLastModifiedDate): (WebCore::ResourceResponseBase::lastModifiedDate):
  • platform/network/ResourceResponseBase.h:
  • platform/network/cf/ResourceResponseCFNet.cpp: (WebCore::ResourceResponse::platformLazyInit):

Jun 4, 2009:

11:24 PM Changeset in webkit [44452] by Antti Koivisto
  • 13 edits
    8 adds in trunk

JavaScriptCore:

2009-06-03 Antti Koivisto <Antti Koivisto>

Reviewed by Dave Kilzer.


https://bugs.webkit.org/show_bug.cgi?id=13128
Safari not obeying cache header


Export JSC::parseDate()

WebCore:

2009-06-03 Antti Koivisto <Antti Koivisto>

Reviewed by Dave Kilzer.

https://bugs.webkit.org/show_bug.cgi?id=13128
Safari not obeying cache header


Implement RFC 2616 cache expiration calculations in WebKit instead of
relying on the networking layer.

  • ForwardingHeaders/runtime/DateMath.h: Added.
  • WebCore.base.exp:
  • loader/Cache.cpp: (WebCore::Cache::revalidationSucceeded):
  • loader/CachedResource.cpp: (WebCore::CachedResource::CachedResource): (WebCore::CachedResource::isExpired): (WebCore::CachedResource::currentAge): (WebCore::CachedResource::freshnessLifetime): (WebCore::CachedResource::setResponse): (WebCore::CachedResource::updateResponseAfterRevalidation): (WebCore::CachedResource::mustRevalidate):
  • loader/CachedResource.h:
  • platform/network/ResourceResponseBase.cpp: (WebCore::ResourceResponseBase::ResourceResponseBase): (WebCore::ResourceResponseBase::adopt): (WebCore::ResourceResponseBase::copyData): (WebCore::ResourceResponseBase::setHTTPHeaderField): (WebCore::ResourceResponseBase::parseCacheControlDirectives): (WebCore::ResourceResponseBase::cacheControlContainsNoCache): (WebCore::ResourceResponseBase::cacheControlContainsMustRevalidate): (WebCore::ResourceResponseBase::cacheControlMaxAge): (WebCore::parseDateValueInHeader): (WebCore::ResourceResponseBase::date): (WebCore::ResourceResponseBase::age): (WebCore::ResourceResponseBase::expires): (WebCore::ResourceResponseBase::lastModified): (WebCore::ResourceResponseBase::isAttachment): (WebCore::ResourceResponseBase::compare):
  • platform/network/ResourceResponseBase.h:
  • platform/network/cf/ResourceResponseCFNet.cpp: (WebCore::ResourceResponse::platformLazyInit):
  • platform/network/mac/ResourceResponseMac.mm: (WebCore::ResourceResponse::platformLazyInit):

LayoutTests:

2009-06-03 Antti Koivisto <Antti Koivisto>

Reviewed by Dave Kilzer.


https://bugs.webkit.org/show_bug.cgi?id=13128
Safari not obeying cache header


Test subresource caching and expiration.

  • http/tests/cache: Added.
  • http/tests/cache/resources: Added.
  • http/tests/cache/resources/cache-simulator.cgi: Added.
  • http/tests/cache/resources/subresource-test.js: Added. (frame1.onload): (frame2.onload): (loadTestFrame.scr.onload): (nextTest): (testComplete): (runTests):
  • http/tests/cache/resources/test-frame.html: Added.
  • http/tests/cache/subresource-expiration-expected.txt: Added.
  • http/tests/cache/subresource-expiration.html: Added.
10:29 PM Changeset in webkit [44451] by weinig@apple.com
  • 14 edits
    1 copy
    1 move in trunk/WebKit

WebKit:

2009-06-04 Sam Weinig <sam@webkit.org>

Reviewed by Alice Liu.

Move WebView internal data into WebViewData.h/mm.

  • WebKit.xcodeproj/project.pbxproj:

WebKit/mac:

2009-06-04 Sam Weinig <sam@webkit.org>

Reviewed by Alice Liu.

Move WebView internal data into WebViewData.h/mm.

  • WebView/WebDelegateImplementationCaching.mm:
  • WebView/WebView.mm:
  • WebView/WebViewData.h: Copied from mac/WebView/WebViewInternal.h.
  • WebView/WebViewData.mm: Copied from mac/WebView/WebViewInternal.mm.
  • WebView/WebViewInternal.h:
  • WebView/WebViewInternal.mm: Removed.
8:45 PM Changeset in webkit [44450] by eric@webkit.org
  • 2 edits in trunk/WebCore

2009-06-04 Roland Steiner <rolandsteiner@google.com>

Reviewed by Eric Seidel.

Bug 26201: Remove superfluous 'if' statements in RenderTable::addChild
https://bugs.webkit.org/show_bug.cgi?id=26201

  • rendering/RenderTable.cpp: (WebCore::RenderTable::addChild): remove superfluous 'if' statements
8:31 PM Changeset in webkit [44449] by eric@webkit.org
  • 2 edits in trunk/WebCore

2009-06-04 Roland Steiner <rolandsteiner@google.com>

Reviewed by Eric Seidel.

Bug 26202: add macros for primitive values to simplify CSSStyleSelector::applyProperty
https://bugs.webkit.org/show_bug.cgi?id=26202

  • css/CSSStyleSelector.cpp: add HANDLE_INHERIT_AND_INITIAL_AND_PRIMITIVE[_WITH_VALUE] macros (WebCore::CSSStyleSelector::applyProperty): use new macros
8:30 PM Changeset in webkit [44448] by eric@webkit.org
  • 3 edits in trunk/WebCore

2009-06-04 Roland Steiner <rolandsteiner@google.com>

Reviewed by Eric Seidel

Bug 26203: Move parsing of 'attr(X)' values to own method
https://bugs.webkit.org/show_bug.cgi?id=26203

  • css/CSSParser.cpp: (WebCore::CSSParser::parseAttr): new method (WebCore::CSSParser::parseContent): use new parseAttr method
  • css/CSSParser.h: (WebCore::CSSParser::parseAttr): new method
8:25 PM Changeset in webkit [44447] by eric@webkit.org
  • 2 edits in trunk/WebCore

2009-06-04 Roland Steiner <rolandsteiner@google.com>

Reviewed by Eric Seidel.

Bug 26205: RenderTableSection::addChild : correct comment
https://bugs.webkit.org/show_bug.cgi?id=26205

  • rendering/RenderTableSection.cpp: (WebCore::RenderTableSection::addChild): correct comment
8:22 PM Changeset in webkit [44446] by eric@webkit.org
  • 3 edits in trunk/WebCore

2009-06-04 Roland Steiner <rolandsteiner@google.com>

Reviewed by Eric Seidel.

Bug 26204: RenderBlock : simplify handleSpecialChild, comment correction
https://bugs.webkit.org/show_bug.cgi?id=26204

  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::handleSpecialChild): simplify usage (WebCore::RenderBlock::handlePositionedChild): simplify usage (WebCore::RenderBlock::handleFloatingChild): simplify usage (WebCore::RenderBlock::handleRunInChild): simplify usage (WebCore::RenderBlock::layoutBlock): correct comment (WebCore::RenderBlock::layoutBlockChildren): simplify loop, change call to handleSpecialChild
  • rendering/RenderBlock.h: (WebCore::RenderBlock::handleSpecialChild): change signature (WebCore::RenderBlock::handlePositionedChild): change signature (WebCore::RenderBlock::handleFloatingChild): change signature (WebCore::RenderBlock::handleRunInChild): change signature
6:27 PM Changeset in webkit [44445] by oliver@apple.com
  • 7 edits in trunk

Bug in property caching of getters and setters.

Reviewed by Gavin Barraclough

Make sure that the transition logic accounts for getters and setters.
If we don't we end up screwing up the transition tables so that some
transitions will start incorrectly believing that they need to check
for getters and setters.

5:58 PM Changeset in webkit [44444] by mitz@apple.com
  • 2 edits in trunk/WebCore
  • retry to fix the Tiger build
  • platform/graphics/mac/SimpleFontDataMac.mm: (WebCore::initFontData):
5:36 PM Changeset in webkit [44443] by barraclough@apple.com
  • 2 edits in trunk/JavaScriptCore

2009-06-04 Gavin Barraclough <barraclough@apple.com>

Reviewed by Sam Weinig.

Minor tweak to PatchBuffer, change it so it no longer holds a CodeRef, and instead
holds a separate code pointer and executable pool. Since it now always holds its
own copy of the code size, and to simplify the construction sequence, it's neater
this way.

  • assembler/AbstractMacroAssembler.h: (JSC::AbstractMacroAssembler::PatchBuffer::PatchBuffer): (JSC::AbstractMacroAssembler::PatchBuffer::finalizeCode): (JSC::AbstractMacroAssembler::PatchBuffer::code): (JSC::AbstractMacroAssembler::PatchBuffer::performFinalization):
5:36 PM Changeset in webkit [44442] by mitz@apple.com
  • 2 edits in trunk/WebCore
  • try to fix the Tiger build
  • platform/graphics/SimpleFontData.h:
5:26 PM Changeset in webkit [44441] by mitz@apple.com
  • 2 edits in trunk/WebCore
  • try to fix the Leopard and Tiger builds
  • platform/graphics/SimpleFontData.h:
5:24 PM Changeset in webkit [44440] by mitz@apple.com
  • 2 edits in trunk/WebCore
  • try to fix the Windows build
  • platform/graphics/win/UniscribeController.cpp: (WebCore::UniscribeController::shapeAndPlaceItem):
5:11 PM Changeset in webkit [44439] by mitz@apple.com
  • 21 edits in trunk/WebCore

Reviewed by Sam Weinig.

  • make SimpleFontData's data members private
  • rename SimpleFontData's m_font member to m_platformData
  • platform/graphics/Font.h: (WebCore::Font::spaceWidth):
  • platform/graphics/SimpleFontData.cpp: (WebCore::SimpleFontData::SimpleFontData):
  • platform/graphics/SimpleFontData.h: (WebCore::SimpleFontData::platformData): (WebCore::SimpleFontData::spaceWidth): (WebCore::SimpleFontData::adjustedSpaceWidth): (WebCore::SimpleFontData::syntheticBoldOffset): (WebCore::SimpleFontData::spaceGlyph): (WebCore::SimpleFontData::getNSFont): (WebCore::SimpleFontData::getQtFont): (WebCore::SimpleFontData::getWxFont):
  • platform/graphics/WidthIterator.cpp: (WebCore::WidthIterator::advance):
  • platform/graphics/cairo/FontCairo.cpp: (WebCore::Font::drawGlyphs):
  • platform/graphics/chromium/SimpleFontDataChromiumWin.cpp: (WebCore::SimpleFontData::platformInit): (WebCore::SimpleFontData::smallCapsFontData): (WebCore::SimpleFontData::determinePitch): (WebCore::SimpleFontData::platformWidthForGlyph):
  • platform/graphics/chromium/SimpleFontDataLinux.cpp: (WebCore::SimpleFontData::platformInit): (WebCore::SimpleFontData::smallCapsFontData): (WebCore::SimpleFontData::containsCharacters): (WebCore::SimpleFontData::platformWidthForGlyph):
  • platform/graphics/gtk/FontGtk.cpp: (WebCore::setPangoAttributes):
  • platform/graphics/gtk/SimpleFontDataGtk.cpp: (WebCore::SimpleFontData::platformInit): (WebCore::SimpleFontData::containsCharacters): (WebCore::SimpleFontData::determinePitch): (WebCore::SimpleFontData::platformWidthForGlyph): (WebCore::SimpleFontData::setFont):
  • platform/graphics/gtk/SimpleFontDataPango.cpp: (WebCore::SimpleFontData::platformInit): (WebCore::SimpleFontData::containsCharacters): (WebCore::SimpleFontData::determinePitch): (WebCore::SimpleFontData::platformWidthForGlyph): (WebCore::SimpleFontData::setFont):
  • platform/graphics/mac/CoreTextController.cpp: (WebCore::CoreTextController::adjustGlyphsAndAdvances):
  • platform/graphics/mac/FontMac.mm: (WebCore::Font::drawGlyphs):
  • platform/graphics/mac/FontMacATSUI.mm: (WebCore::initializeATSUStyle): (WebCore::overrideLayoutOperation): (WebCore::ATSULayoutParameters::initialize):
  • platform/graphics/mac/SimpleFontDataMac.mm: (WebCore::initFontData): (WebCore::SimpleFontData::platformInit): (WebCore::SimpleFontData::platformCharWidthInit): (WebCore::SimpleFontData::smallCapsFontData): (WebCore::SimpleFontData::containsCharacters): (WebCore::SimpleFontData::determinePitch): (WebCore::SimpleFontData::platformWidthForGlyph): (WebCore::SimpleFontData::checkShapesArabic): (WebCore::SimpleFontData::getCTFont):
  • platform/graphics/qt/SimpleFontDataQt.cpp: (WebCore::SimpleFontData::determinePitch): (WebCore::SimpleFontData::platformInit): (WebCore::SimpleFontData::platformCharWidthInit):
  • platform/graphics/win/FontCGWin.cpp: (WebCore::drawGDIGlyphs): (WebCore::Font::drawGlyphs):
  • platform/graphics/win/SimpleFontDataCGWin.cpp: (WebCore::SimpleFontData::platformInit): (WebCore::SimpleFontData::platformCharWidthInit): (WebCore::SimpleFontData::platformWidthForGlyph):
  • platform/graphics/win/SimpleFontDataCairoWin.cpp: (WebCore::SimpleFontData::platformInit): (WebCore::SimpleFontData::platformDestroy): (WebCore::SimpleFontData::platformWidthForGlyph): (WebCore::SimpleFontData::setFont):
  • platform/graphics/win/SimpleFontDataWin.cpp: (WebCore::SimpleFontData::initGDIFont): (WebCore::SimpleFontData::smallCapsFontData): (WebCore::SimpleFontData::containsCharacters): (WebCore::SimpleFontData::determinePitch): (WebCore::SimpleFontData::widthForGDIGlyph): (WebCore::SimpleFontData::scriptFontProperties):
  • platform/graphics/wx/SimpleFontDataWx.cpp: (WebCore::SimpleFontData::platformInit): (WebCore::SimpleFontData::determinePitch): (WebCore::SimpleFontData::platformWidthForGlyph):
4:01 PM Changeset in webkit [44438] by eric@webkit.org
  • 2 edits
    1 add in trunk/WebCore

2009-06-04 Paul Godavari <paul@chromium.org>

Reviewed by Eric Seidel.

Initialize the width of PopupMenuListBox properly for Mac Chromium.

Added a test that works only with this patch applied. The test is
a manual one, since the hit testing infrastructure in the layout
tests sends keyboard and mouse events to the main window and not
the cocoa control that implements the popup up, which means we can't
select items from the popup up.

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

  • manual-tests/select-narrow-width.html: Added.
  • platform/chromium/PopupMenuChromium.cpp: (WebCore::PopupListBox::PopupListBox): (WebCore::PopupContainer::showExternal):
3:52 PM Changeset in webkit [44437] by barraclough@apple.com
  • 6 edits in trunk/JavaScriptCore

2009-06-04 Gavin Barraclough <barraclough@apple.com>

Reviewed by Oliver Hunt.

Remove 'JIT_STUB_ARGUMENT_STACK' this is unused and untested.

This just leaves JIT_STUB_ARGUMENT_REGISTER and JIT_STUB_ARGUMENT_VA_LIST.
Since JIT_STUB_ARGUMENT_REGISTER is the sensible configuration on most platforms,
remove this define and make this the default behaviour.
Platforms must now define JIT_STUB_ARGUMENT_VA_LIST to get crazy va_list voodoo,
if they so desire.

(Refactoring of #ifdefs only, no functional change, no performance impact.)

  • jit/JIT.h:
  • jit/JITInlineMethods.h: (JSC::JIT::restoreArgumentReference): (JSC::JIT::restoreArgumentReferenceForTrampoline):
  • jit/JITStubs.cpp: (JSC::):
  • jit/JITStubs.h:
  • wtf/Platform.h:
3:34 PM Changeset in webkit [44436] by bfulgham@webkit.org
  • 2 edits in trunk/WebCore

2009-06-04 Brent Fulgham <bfulgham@webkit.org>

Unreviewed Windows build correction.

  • WebCore.vcproj/WebCore.vcproj: Add missing 'ReplaceNodeWithSpanCommand.cpp' and 'ReplaceNodeWithSpanCommand.h'
3:17 PM Changeset in webkit [44435] by eric@webkit.org
  • 10 edits
    5 adds in trunk

2009-02-03 Eric Seidel <eric@webkit.org>

Reviewed by Justin Garcia.

Make sure execCommand("bold") on <b style="text-decoration: underline">test</b>
only removes the bold and not the underline.
https://bugs.webkit.org/show_bug.cgi?id=23496

Test: editing/execCommand/convert-style-elements-to-spans.html

  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSStyleDeclaration.h: (WebCore::CSSStyleDeclaration::isEmpty):
  • dom/NamedAttrMap.h: (WebCore::NamedAttrMap::isEmpty):
  • editing/ApplyStyleCommand.cpp: (WebCore::isUnstyledStyleSpan): (WebCore::isSpanWithoutAttributesOrUnstyleStyleSpan): (WebCore::ApplyStyleCommand::applyBlockStyle): (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange): (WebCore::ApplyStyleCommand::implicitlyStyledElementShouldBeRemovedWhenApplyingStyle): (WebCore::ApplyStyleCommand::replaceWithSpanOrRemoveIfWithoutAttributes): (WebCore::ApplyStyleCommand::removeCSSStyle): (WebCore::ApplyStyleCommand::applyTextDecorationStyle): (WebCore::ApplyStyleCommand::removeInlineStyle): (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded):
  • editing/ApplyStyleCommand.h:
  • editing/CompositeEditCommand.cpp: (WebCore::CompositeEditCommand::replaceNodeWithSpanPreservingChildrenAndAttributes):
  • editing/CompositeEditCommand.h:
  • editing/RemoveNodePreservingChildrenCommand.cpp: (WebCore::RemoveNodePreservingChildrenCommand::RemoveNodePreservingChildrenCommand):
  • editing/ReplaceNodeWithSpanCommand.cpp: Added. (WebCore::ReplaceNodeWithSpanCommand::ReplaceNodeWithSpanCommand): (WebCore::swapInNodePreservingAttributesAndChildren): (WebCore::ReplaceNodeWithSpanCommand::doApply): (WebCore::ReplaceNodeWithSpanCommand::doUnapply):
  • editing/ReplaceNodeWithSpanCommand.h: Added. (WebCore::ReplaceNodeWithSpanCommand::create):
2:51 PM Changeset in webkit [44434] by bfulgham@webkit.org
  • 2 edits in trunk/WebCore

2009-06-04 Brent Fulgham <bfulgham@webkit.org>

Unreviewed build fix for Windows Cairo target.

Add missing post-build command to copy history/cf contents
to output directory.

  • WebCore.vcproj/WebCore.vcproj: Update Debug_Cairo and Release_Cairo target post-build steps with copy commands.
2:51 PM Changeset in webkit [44433] by barraclough@apple.com
  • 2 edits in trunk/JavaScriptCore

2009-06-04 Gavin Barraclough <barraclough@apple.com>

Rubber stamped by Sam Weinig.

  • jit/JITArithmetic.cpp:

Remove some redundant typedefs, unused since arithmetic was added to the MacroAssembler interface.

2:31 PM Changeset in webkit [44432] by eric.carlson@apple.com
  • 2 edits in trunk/WebCore

2009-06-04 Eric Carlson <eric.carlson@apple.com>

Reviewed by Simon Fraser.

<rdar://problem/6854695> Movie controller thumb fails to scale with full page zoom


Account for zoom level when drawing media controller thumb on Windows.

  • rendering/RenderMediaControls.cpp: (WebCore::RenderMediaControls::adjustMediaSliderThumbSize):
2:00 PM Changeset in webkit [44431] by mrowe@apple.com
  • 4 edits in branches/WWDC-2009-branch

Versioning.

1:59 PM Changeset in webkit [44430] by mrowe@apple.com
  • 1 copy in tags/Safari-6530.17

New tag.

1:55 PM Changeset in webkit [44429] by hyatt@apple.com
  • 10 edits in trunk

WebCore:

2009-06-04 David Hyatt <hyatt@apple.com>

Reviewed by Sam Weinig.

Move DOM window focus/blur out of SelectionController and into FocusController. Make sure it
fires on the focused frame when the page activation state changes also. This is covered by an existing
layout test (albeit badly). I have modified the test to be correct.

  • editing/SelectionController.cpp: (WebCore::SelectionController::setFocused):
  • page/FocusController.cpp: (WebCore::FocusController::setFocusedFrame): (WebCore::FocusController::setActive):

WebKit/mac:

2009-06-04 David Hyatt <hyatt@apple.com>

Reviewed by Sam Weinig.

Remove _updateFocusedStateForFrame, since it's actually not even necessary now that I made
setFocusedFrame get called explicitly from become/ResignFirstResponder. setFocusedFrame does
the work of focusing the selection already.

  • WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::transitionToCommittedForNewPage):
  • WebView/WebHTMLView.mm: (-[WebHTMLView becomeFirstResponder]): (-[WebHTMLView resignFirstResponder]):
  • WebView/WebView.mm:
  • WebView/WebViewInternal.h:

LayoutTests:

2009-06-04 David Hyatt <hyatt@apple.com>

Reviewed by Sam Weinig.

Fix the Window focus test to not resign first responder, since that actually made the test
incorrect. An unfocused WebHTMLView's DOM window should not receive focus/blur events when the activation
changes.

Now the test just checks that a first responder WebHTMLView will actually fire focus/blur on the DOM window
as the window gains/loses key.

  • fast/dom/Window/window-onFocus.html:
1:47 PM Changeset in webkit [44428] by mrowe@apple.com
  • 4 edits in branches/WWDC-2009-branch

Versioning.

1:47 PM Changeset in webkit [44427] by mrowe@apple.com
  • 2 edits in branches/WWDC-2009-branch/JavaScriptCore

Merge r44286.

1:44 PM Changeset in webkit [44426] by eric@webkit.org
  • 1 edit
    2 adds in trunk/WebCore

2009-06-04 Albert J. Wong <ajwong@chromium.org>

Reviewed by Eric Seidel.

https://bugs.webkit.org/show_bug.cgi?id=26148
Adding in empty files to stage the extract of RenderThemeChromiumSkia
from RenderThemeChromiumLinux and RenderThemeChromiumWindows.

  • rendering/RenderThemeChromiumSkia.cpp: Added.
  • rendering/RenderThemeChromiumSkia.h: Added.
1:39 PM Changeset in webkit [44425] by Darin Adler
  • 3 edits in trunk/WebKitTools

2009-06-04 Darin Adler <Darin Adler>

Reviewed by Tim Hatcher.

Fix crashes due to unbalanced start/stop observer calls.

  • DumpRenderTree/mac/DumpRenderTreeWindow.h: Added observingWebView.
  • DumpRenderTree/mac/DumpRenderTreeWindow.mm: (-[DumpRenderTreeWindow startObservingWebView]): Call stopObservingWebView in case we're already observing some other WebView. Set observingWebView. (-[DumpRenderTreeWindow stopObservingWebView]): Do nothing if observingWebView is already NO. Clear observingWebView.
1:07 PM Changeset in webkit [44424] by bfulgham@webkit.org
  • 5 edits in trunk/WebCore

2009-06-04 Andrei Popescu <andreip@google.com>

Reviewed by Alexey Proskuryakov.

https://bugs.webkit.org/show_bug.cgi?id=25562
Potential crash after ApplicationCacheStorage::storeNewestCache() fails

Fix the crash by checking the return value of cacheStorage().storeNewestCache(this)
in WebCore::ApplicationCacheGroup::checkIfLoadIsComplete. If storeNewestCache failed,
we run the cache failure steps:

  1. Fire the error events to all pending master entries, as well any other cache hosts currently associated with a cache in this group.
  2. Disassociate the pending master entries from the failed new cache.
  3. Reinstate the old "newest cache", if there was one.

We also introduce two other changes:

  1. a mechanism to rollback storageID changes to the in-memory resource objects when the storing of an ApplicationCache object fails.
  1. defer removing the pending master entries from the list of pending master entries until the entire load is complete. This matches the HTML 5 spec better. To track if the load is complete we now introduce a counter for those pending master entries that haven't yet finshed downloading.
  • loader/appcache/ApplicationCacheGroup.cpp: (WebCore::ApplicationCacheGroup::ApplicationCacheGroup): initializes the new counter to 0 (WebCore::ApplicationCacheGroup::selectCache): increments the counter when a new pending master entry is added. (WebCore::ApplicationCacheGroup::finishedLoadingMainResource): decrements the counter instead of removing the pending master entry. (WebCore::ApplicationCacheGroup::failedLoadingMainResource): decrements the counter instead of removing the pending master entry. (WebCore::ApplicationCacheGroup::setNewestCache): removes an assertion that no longer holds true. In particular, the newest cache is not necessarily new anymore. We can set an old cache as the new cache. This can happen if we failed to store a newly downloaded cache to the database and we are now reinstating the former newest cache. (WebCore::ApplicationCacheGroup::manifestNotFound): resets the counter to 0. (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete): check if the loading is complete based on the counter instead of the list of pending master entries. Empty the list of master entries if the load is complete.
  • loader/appcache/ApplicationCacheGroup.h: add the new counter.
  • loader/appcache/ApplicationCacheStorage.cpp: introduce the journaling mechanism for in-memory resource objects. (WebCore::ResourceStorageIDJournal::~ResourceStorageIDJournal): (WebCore::ResourceStorageIDJournal::add): (WebCore::ResourceStorageIDJournal::commit): (WebCore::ResourceStorageIDJournal::Record::Record): (WebCore::ResourceStorageIDJournal::Record::restore): (WebCore::ApplicationCacheStorage::store): log the changes to the in-memory resource objects. (WebCore::ApplicationCacheStorage::storeNewestCache): create the journal object.
  • loader/appcache/ApplicationCacheStorage.h: modify the signature of bool store(ApplicationCache*) to add a pointer to the logger object used to trace the changes to the storageID of the resource objects.
12:29 PM Changeset in webkit [44423] by bfulgham@webkit.org
  • 2 edits in trunk/WebCore

2009-06-04 Jeremy Orlow <jorlow@chromium.org>

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=26154
Allow underscores in the hostnames we parse out of databaseIdentifiers.
This code is used for HTML 5 database support.

  • page/SecurityOrigin.cpp: (WebCore::SecurityOrigin::createFromDatabaseIdentifier):
11:44 AM Changeset in webkit [44422] by bfulgham@webkit.org
  • 2 edits
    1 add in trunk/WebCore

2009-06-04 Mihnea Ovidenie <mihnea@adobe.com>

Reviewed by Darin Adler.

Bug 26084: Multiple missing images in webkit-mask-image prevent rendering
https://bugs.webkit.org/show_bug.cgi?id=26084

When painting multiple images, make sure that at least one image is valid before pushing a transparency layer.

Added a manual test.

  • manual-tests/mask-composite-missing-images.html: Added.
  • rendering/RenderBox.cpp: (WebCore::RenderBox::paintMaskImages):
11:40 AM Changeset in webkit [44421] by mitz@apple.com
  • 2 edits in trunk/WebKit/mac
  • build fix
  • WebView/WebViewInternal.mm:
11:34 AM Changeset in webkit [44420] by bfulgham@webkit.org
  • 2 edits in trunk/WebCore

2009-06-04 Jeremy Orlow <jorlow@chromium.org>

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=26180
Add a fast path for SecurityOrigin::equal. If "other == this" (where
other is the other security origin), then we really don't need to do
all the other (expensive) comparisons. We know it's equal.

  • page/SecurityOrigin.cpp: (WebCore::SecurityOrigin::equal):
11:03 AM Changeset in webkit [44419] by dimich@chromium.org
  • 3 edits in trunk/LayoutTests

2009-06-05 Dmitry Titov <dimich@chromium.org>

Reviewed by Eric Seidel.

https://bugs.webkit.org/show_bug.cgi?id=26192
Fix the expected results for editing/execCommand/list-wrapping-image-crash.html

  • editing/execCommand/list-wrapping-image-crash-expected.txt:
  • editing/execCommand/list-wrapping-image-crash.html:
10:44 AM Changeset in webkit [44418] by bfulgham@webkit.org
  • 2 edits in trunk/JavaScriptCore

2009-06-04 Brent Fulgham <bfulgham@webkit.org>

Build fix due to header include problem.

  • interpreter/Interpreter.h: Remove wtf from includes so that compile can find the headers in expected places.
10:30 AM Changeset in webkit [44417] by bfulgham@webkit.org
  • 4 edits in trunk/JavaScriptCore

2009-06-04 Zoltan Horvath <hzoltan@inf.u-szeged.hu>

Reviewed by Darin Adler.

HashTable class (JavaScriptCore/wtf/HashTable.h) doesn't instantiated by 'new', so
inheritance was removed. HashTable struct has been instantiated by operator new in
JSGlobalData.cpp:106.
HashTable couldn't inherited from FastAllocBase since struct with inheritance is
no longer POD, so HashTable struct has been instantiated by fastNew, destroyed by
fastDelete.

  • interpreter/Interpreter.h:
  • runtime/JSGlobalData.cpp: (JSC::JSGlobalData::JSGlobalData): (JSC::JSGlobalData::~JSGlobalData):
  • wtf/HashTable.h:
9:16 AM Changeset in webkit [44416] by hyatt@apple.com
  • 16 edits in trunk

WebCore:

2009-06-03 David Hyatt <hyatt@apple.com>

Reviewed by Sam Weinig.

Improvements in how selection behaves with focus/activation and a reversion back to using isActive
in the scrollbar theme code to remove a Chromium ifdef.

  • editing/SelectionController.cpp: (WebCore::SelectionController::SelectionController): Make the controller set its focused state correctly upon initial creation.

(WebCore::SelectionController::setSelection):
Make selection willing to shift the focus node if the selection is focused even if the
selection is not active. Whether or not the Page is active is irrelevant to focus changes.

(WebCore::SelectionController::setFocused):

  • editing/SelectionController.h: (WebCore::SelectionController::isFocused): Add a new isFocused() method so that code can check if the Selection is focused without caring about the active state.
  • page/Frame.cpp: (WebCore::Frame::setFocusedNodeIfNeeded): Allow focus shifts even when the selection is not active.
  • platform/mac/ScrollbarThemeMac.mm: (WebCore::ScrollbarThemeMac::paint): Revert Dan's change to directly talk to AppKit for checking active state. Now that the WebCore isActive method works, ditch the Chromium-specific #ifdef and go back to the original code.

WebKit/mac:

2009-06-03 David Hyatt <hyatt@apple.com>

Reviewed by Sam Weinig.

Reworking of focus and active state updating for WebHTMLViews so that it actually works instead of reporting wrong answers.

  • WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::transitionToCommittedForNewPage): WebHTMLViews become first responders before they are able to reach their Frames/Pages. This happens because the NSClipView becomes first responder when the WebHTMLView gets destroyed, and then we transfer the responder state back to the new WebHTMLView when it is first connected. Once we have transitioned to a new page and have the Frame/Page available, go ahead and explicitly focus the frame in WebCore and update our focused state. This change allows us to remove the updateFocusedActive timer and the code from viewDidMoveToWindow.


  • WebView/WebHTMLView.mm: (-[WebHTMLView close]): (-[WebHTMLView addWindowObservers]): (-[WebHTMLView viewWillMoveToWindow:]): (-[WebHTMLView viewDidMoveToWindow]): (-[WebHTMLView _removeWindowObservers]): Remove all the updateFocusedActiveState timer code, since it no longer exists.

(-[WebHTMLView windowDidBecomeKey:]):
(-[WebHTMLView windowDidResignKey:]):
Active state updating is no longer done by WebHTMLViews. It is handled by the WebView instead.


(-[WebHTMLView becomeFirstResponder]):
(-[WebHTMLView resignFirstResponder]):
Reworking of WebHTMLView's code for gaining/losing responder status. No longer update active state here, since the active state
can never change just because of responder changes. Make sure that the focused frame gets updated properly (and most importantly
actually cleared when a WebHTMLView resigns responder status).

  • WebView/WebHTMLViewInternal.h:
  • WebView/WebHTMLViewPrivate.h: State updating for focused and active states has been made independent.
  • WebView/WebView.mm: (-[WebView _updateActiveState]): WebView now handles updating of active state in _updateActiveState. It is now purely based off whether the window is key and nothing else.

(-[WebView addWindowObserversForWindow:]):
(-[WebView removeWindowObservers]):
Start listening for the window becoming/losing key even in the usesDocumentViews case.

(-[WebView _updateFocusedStateForFrame:]):
Focused state updating is split into its own method now and called when WebHTMLViews gain and lose responder status.

(-[WebView _windowDidBecomeKey:]):
(-[WebView _windowDidResignKey:]):
Make sure to call _updateActiveState as the window gains/loses key.

(-[WebView _windowWillOrderOnScreen:]):
Run this code now that WebHTMLView no longer does it.

  • WebView/WebViewInternal.h:
  • WebView/WebViewPrivate.h: Updating for the split of focused and active state updating into separate methods.

WebKitTools:

2009-06-03 David Hyatt <hyatt@apple.com>

Reviewed by Sam Weinig.

  • DumpRenderTree/mac/FrameLoadDelegate.mm: (-[FrameLoadDelegate webView:didCommitLoadForFrame:]):
  • DumpRenderTree/mac/LayoutTestControllerMac.mm: (LayoutTestController::setMainFrameIsFirstResponder): Remove explicit calls to _updateFocusedActiveState when the view is made first responder. Focused state already properly updates when views become first responders, so these calls are unnecessary.

(LayoutTestController::setWindowIsKey):
Explicitly call _updateActiveState when our window becomes key, since we're just faking it
and the notification won't be sent.

9:04 AM Changeset in webkit [44415] by eric.carlson@apple.com
  • 3 edits
    2 adds in trunk

2009-06-04 Pierre d'Herbemont <pdherbemont@apple.com>

Reviewed by Darin Adler.

Test: media/before-load-member-access.html


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

  • html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::played): Ensure that if m_playedTimeRanges, is not initialized we return a valid range, and don't attempt to use it.

2009-06-04 Pierre d'Herbemont <pdherbemont@apple.com>

Reviewed by Darin Adler.

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

  • media/before-load-member-access-expected.txt: Added.
  • media/before-load-member-access.html: Test access for property accessed before loading occurs. That tests for 26081 crasher specifically.
8:11 AM Changeset in webkit [44414] by ariya@webkit.org
  • 1 edit
    1 add in trunk/LayoutTests

2009-06-04 Ariya Hidayat <ariya.hidayat@nokia.com>

Rubber-stamped by Tor Arne Vestbø.

Added Qt-specific expected result for Canvas pointInPath's test.

Qt's QPainterPath::contains(point) returns false if the point is
exactly along one of the edges (except the origin). Until we
find a workaround for this, compensate it in the expected result.

  • platform/qt/fast/canvas/pointInPath-expected.txt: Added.
5:44 AM Changeset in webkit [44413] by Simon Hausmann
  • 5 edits in trunk

2009-06-03 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org>

Reviewed by Simon Hausmann.

Add API to make it possible to clear all memory caches used by
QtWebKit.

  • Api/qwebsettings.cpp: (QWebSettings::clearMemoryCaches):
  • Api/qwebsettings.h:

2009-06-03 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org>

Reviewed by Simon Hausmann.

Implement a way to invalidate the FontCache used by the Qt port.

  • platform/graphics/qt/FontCacheQt.cpp: (WebCore::FontCache::invalidate):
4:00 AM Changeset in webkit [44412] by barraclough@apple.com
  • 8 edits in trunk/JavaScriptCore

2009-06-04 Gavin Barraclough <barraclough@apple.com>

Reviewed by Oliver Hunt.

Wrap the code that plants pushes/pops planted by JIT in explanatorily named
methods; move property storage reallocation into a standard stub function.

~No performance impact (possible <1% progression on x86-64, likely just noise).

  • jit/JIT.cpp: (JSC::JIT::privateCompile): (JSC::JIT::privateCompileCTIMachineTrampolines):

Wrap calls to push/pop.

  • jit/JIT.h:

Declare the new wrapper methods.

  • jit/JITInlineMethods.h: (JSC::JIT::preverveReturnAddressAfterCall): (JSC::JIT::restoreReturnAddressBeforeReturn):

Define the new wrapper methods.

  • jit/JITOpcodes.cpp: (JSC::JIT::emit_op_end): (JSC::JIT::emit_op_ret):

Wrap calls to push/pop.

  • jit/JITPropertyAccess.cpp: (JSC::JIT::privateCompilePutByIdTransition):

Move property storage reallocation into a standard stub function.

  • jit/JITStubs.cpp: (JSC::JITStubs::DEFINE_STUB_FUNCTION):
  • jit/JITStubs.h: (JSC::JITStubs::):
1:58 AM Changeset in webkit [44411] by ariya@webkit.org
  • 4 edits in trunk

2009-06-04 Laszlo Gombos <Laszlo Gombos>

Reviewed by Ariya Hidayat.

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

[Qt] Single-threaded QtWebKit configuration

Turn off Database, DOM storage, icon database and Web Workers support
when ENABLE_SINGLE_THREADED is turned on.

Set SQLITE_THREADSAFE to false to turn off SQLite mutexes
when ENABLE_SINGLE_THREADED is turned on.

  • WebCore.pro:
1:22 AM Changeset in webkit [44410] by mrowe@apple.com
  • 2 edits in trunk/WebKit/mac

Speculative Tiger build fix.

Note: See TracTimeline for information about the timeline view.