⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Timeline



Dec 18, 2008:

11:34 PM Changeset in webkit [39393] by mitz@apple.com
  • 33 edits in trunk

WebCore:

Reviewed by Sam Weinig.

  • avoid using the ResourceHandle-level credential storage, if any, unless the client opts to use it; when use of the credential storage is disallowed, all authentication challenges are sent to the client.
  • let the FrameLoaderClient decide whether to use the credential storage.
  • loader/EmptyClients.h: (WebCore::EmptyFrameLoaderClient::shouldUseCredentialStorage): Added. Returns false.
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::shouldUseCredentialStorage): Added. Calls through to the FrameLoaderClient.
  • loader/FrameLoader.h: Declared shouldUseCredentialStorage().
  • loader/FrameLoaderClient.h: Declared shouldUseCredentialStorage().
  • loader/ResourceLoader.cpp: (WebCore::ResourceLoader::shouldUseCredentialStorage): Added. Calls through to the FrameLoader.
  • loader/ResourceLoader.h: (WebCore::ResourceLoader::shouldUseCredentialStorage): Implemented this ResourceHandleClient method.
  • loader/SubresourceLoader.cpp: (WebCore::SubresourceLoader::shouldUseCredentialStorage): Added. Overrides the ResourceLoader implementation by letting the client supply the return value. If the client does not do this, continues with the ResourceLoader behavior of asking the FrameLoader.
  • loader/SubresourceLoader.h: Removed an unused #include and declared shouldUseCredentialStorage().
  • loader/SubresourceLoaderClient.h: (WebCore::SubresourceLoaderClient::getShouldUseCredentialStorage): Added a default implementation which returns false, meaning the client does not wish to decide whether the credential storage should be used.
  • platform/network/ResourceHandle.h: Removed unused forward declarations. Declared a new member function, shouldUseCredentialStorage(), on Mac and CFNetwork-using builds.
  • platform/network/ResourceHandleClient.h: (WebCore::ResourceHandleClient::shouldUseCredentialStorage): Added this default implementation that returns false.
  • platform/network/cf/ResourceHandleCFNet.cpp: (WebCore::findCFNetworkModule): Added. Returns a handle to the CFNetwork module. (WebCore::cfNetworkVersion): Added. Returns the high word of the CFNetwork library's product version. (WebCore::highestSupportedCFURLConnectionClientVersion): Added. Returns the highest version of the CFURLConnectionClient structure supported by the CFNetwork library. The only reason to check this at runtime is that WebKit may be linking at runtime against an older version of CFNetwork than the one it was built with, as is the case with nightly builds. (WebCore::shouldUseCredentialStorageCallback): Added this CFURLConnection callback which calls through to ResourceHandle::shouldUseCredentialStorage(). (WebCore::ResourceHandle::start): Pass a version 3 CFURLConnectionClient including the shouldUseCredentialStorage callback. At runtime, clamp the client structure version down to the highest supported by CFNetwork. (WebCore::ResourceHandle::shouldUseCredentialStorage): Added. Calls through to the client if there is one. Otherwise returns false.
  • platform/network/mac/ResourceHandleMac.mm: (WebCore::ResourceHandle::shouldUseCredentialStorage): Ditto. (-[WebCoreResourceHandleAsDelegate connectionShouldUseCredentialStorage:]): Added this delegate method which callls through to ResourceHandle::shouldUseCredentialStorage().

WebKit/gtk:

Reviewed by Sam Weinig.

  • stub out FrameLoaderClient::shouldUseCredentialStorage().
  • WebCoreSupport/FrameLoaderClientGtk.cpp: (WebKit::FrameLoaderClient::shouldUseCredentialStorage):
  • WebCoreSupport/FrameLoaderClientGtk.h:

WebKit/mac:

Reviewed by Sam Weinig.

  • implement FrameLoaderClient::shouldUseCredentialStorage() by calling a new resource load delegae method.
  • WebCoreSupport/WebFrameLoaderClient.h:
  • WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::shouldUseCredentialStorage): Added. Calls the delegate method. If the method is unimplemented, returns true for backwards compatibility.
  • WebView/WebView.mm: (-[WebView _cacheResourceLoadDelegateImplementations]): Initialize the shouldUseCredentialStorageFunc member. (CallResourceLoadDelegateReturningBoolean): Added.
  • WebView/WebViewInternal.h:
  • WebView/WebResourceLoadDelegatePrivate.h: Declared the delegate method -webView:resource:shouldUseCredentialStorageForDataSource:.

WebKit/qt:

Reviewed by Sam Weinig.

  • stub out FrameLoaderClient::shouldUseCredentialStorage().
  • WebCoreSupport/FrameLoaderClientQt.cpp: (WebCore::FrameLoaderClientQt::shouldUseCredentialStorage):
  • WebCoreSupport/FrameLoaderClientQt.h:

WebKit/win:

Reviewed by Sam Weinig.

  • implement FrameLoaderClient::shouldUseCredentialStorage() by calling a new resource load delegae method.
  • Interfaces/IWebResourceLoadDelegatePrivate.idl: Added a ne interface, IWebResourceLoadDelegatePrivate2, including a new method, shouldUseCredentialStorage().
  • WebCoreSupport/WebFrameLoaderClient.cpp: (WebFrameLoaderClient::shouldUseCredentialStorage): Added. Calls the delegate method. If the method is unimplemented, returns true for backwards compatibility.
  • WebCoreSupport/WebFrameLoaderClient.h:

WebKit/wx:

Reviewed by Sam Weinig.

  • stub out FrameLoaderClient::shouldUseCredentialStorage().
  • WebKitSupport/FrameLoaderClientWx.cpp: (WebCore::FrameLoaderClientWx::shouldUseCredentialStorage):
  • WebKitSupport/FrameLoaderClientWx.h:
10:54 PM Changeset in webkit [39392] by cwzwarich@webkit.org
  • 2 edits in trunk/WebKit/mac

2008-12-18 Cameron Zwarich <zwarich@apple.com>

Reviewed by Jonathan Honeycutt.

Fix an apparent typo in r39385 that is causing lots of crashes.

  • WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::dispatchDidFirstVisuallyNonEmptyLayout):
7:21 PM Changeset in webkit [39391] by barraclough@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-12-18 Gavin Barraclough <barraclough@apple.com>

Reviewed by Sam Weinig.

Same as last revision, adding cases for pre & post inc & dec.

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

  • jit/JIT.cpp: (JSC::JIT::privateCompileMainPass):
6:58 PM Changeset in webkit [39390] by abarth@webkit.org
  • 2 deletes in trunk/LayoutTests/fast/dom

Revert 39363 because the test doesn't pass.

6:30 PM Changeset in webkit [39389] by barraclough@apple.com
  • 5 edits in trunk/JavaScriptCore

2008-12-18 Gavin Barraclough <barraclough@apple.com>

Reviewed by Sam Weinig.

Fixes for the JIT's handling of JSImmediate values on x86-64.
On 64-bit systems, the code in JSImmediate.h relies on the upper
bits of a JSImmediate being a sign extension of the low 32-bits.
This was not being enforced by the JIT, since a number of inline
operations were being performed on 32-bit values in registers, and
when a 32-bit result is written to a register on x86-64 the value
is zero-extended to 64-bits.


This fix honors previous behavoir. A better fix in the long run
(when the JIT is enabled by default) may be to change JSImmediate.h
so it no longer relies on the upper bits of the pointer,... though
if we're going to change JSImmediate.h for 64-bit, we probably may
as well change the format so that the full range of 32-bit ints can
be stored, rather than just 31-bits.

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

  • assembler/MacroAssembler.h: (JSC::MacroAssembler::addPtr): (JSC::MacroAssembler::andPtr): (JSC::MacroAssembler::orPtr): (JSC::MacroAssembler::or32): (JSC::MacroAssembler::xor32): (JSC::MacroAssembler::xorPtr): (JSC::MacroAssembler::signExtend32ToPtr):
  • assembler/X86Assembler.h: (JSC::X86Assembler::): (JSC::X86Assembler::andq_rr): (JSC::X86Assembler::andq_ir): (JSC::X86Assembler::orq_rr): (JSC::X86Assembler::xorq_ir): (JSC::X86Assembler::movsxd_rr):
  • jit/JIT.cpp: (JSC::JIT::privateCompileMainPass):
  • jit/JITInlineMethods.h: (JSC::JIT::emitFastArithReTagImmediate): (JSC::JIT::emitFastArithPotentiallyReTagImmediate): (JSC::JIT::emitFastArithImmToInt):
5:51 PM Changeset in webkit [39388] by ddkilzer@apple.com
  • 2 edits in trunk/WebCore

Reset role to "Private" on 6 header files to fix clean builds after r39378

Reviewed by BUILD FIX.

  • WebCore.xcodeproj/project.pbxproj: Added back "Private" role that was lost on 6 headers when they were "moved": AffineTransform.h, Animation.h, AnimationList.h, TimingFunction.h, TransformOperation.h and TransformOperations.h.
5:49 PM Changeset in webkit [39387] by pam@chromium.org
  • 2 edits in trunk/WebCore

2008-12-18 Pamela Greene <pam@chromium.org>

Reviewed by Dan Bernstein.

Add initializer for m_textDirectionSubmenuInclusionBehavior.
https://bugs.webkit.org/show_bug.cgi?id=22926

  • page/Settings.cpp: (WebCore::Settings::Settings): Initialize m_textDirectionSubmenuInclusionBehavior
5:37 PM Changeset in webkit [39386] by beidson@apple.com
  • 4 edits in trunk/WebKit/mac

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

Reviewed by John Sullivan

Initial visit to a website creates history items that start with a visit count of
zero instead of one

  • History/WebHistory.mm: (-[WebHistoryPrivate visitedURL:withTitle:]): Set the visit count on new items
  • History/WebHistoryItem.mm: (-[WebHistoryItem _setVisitCount:]): Call through to the WebCore item
  • History/WebHistoryItemInternal.h:
5:15 PM Changeset in webkit [39385] by weinig@apple.com
  • 29 edits in trunk

WebCore:

2008-12-18 Sam Weinig <sam@webkit.org>

Reviewed by John Sullivan.

Add new FrameLoaderClient method to indicate the first visually
non-empty layout based on an heuristic. Right now that heuristic
is the first layout after an image, text or plugin has been added
to the render tree, but I can imagine it becoming much smarter.

  • loader/EmptyClients.h: (WebCore::EmptyFrameLoaderClient::dispatchDidFirstVisuallyNonEmptyLayout):
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::didFirstVisuallyNonEmptyLayout):
  • loader/FrameLoader.h:
  • loader/FrameLoaderClient.h:
  • page/FrameView.cpp: (WebCore::FrameViewPrivate::reset): (WebCore::FrameView::layout): (WebCore::FrameView::performPostLayoutTasks): (WebCore::FrameView::setIsVisuallyNonEmpty):
  • page/FrameView.h:
  • rendering/RenderImage.cpp: (WebCore::RenderImage::RenderImage):
  • rendering/RenderPartObject.cpp: (WebCore::RenderPartObject::RenderPartObject):
  • rendering/RenderText.cpp: (WebCore::RenderText::RenderText):

WebKit/gtk:

2008-12-18 Sam Weinig <sam@webkit.org>

Reviewed by John Sullivan.

Stub out FrameLoaderClient::dispatchDidFirstVisuallyNonEmptyLayout()

  • WebCoreSupport/FrameLoaderClientGtk.cpp: (WebKit::FrameLoaderClient::dispatchDidFirstVisuallyNonEmptyLayout):
  • WebCoreSupport/FrameLoaderClientGtk.h:

WebKit/mac:

2008-12-18 Sam Weinig <sam@webkit.org>

Reviewed by John Sullivan.

Implement FrameLoaderClient::dispatchDidFirstVisuallyNonEmptyLayout() by calling
a new private frame load delegate method.

  • WebCoreSupport/WebFrameLoaderClient.h:
  • WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::dispatchDidFirstVisuallyNonEmptyLayout):
  • WebView/WebView.mm: (-[WebView _cacheFrameLoadDelegateImplementations]):
  • WebView/WebViewInternal.h:
  • WebView/WebViewPrivate.h:

WebKit/qt:

2008-12-18 Sam Weinig <sam@webkit.org>

Reviewed by John Sullivan.

Stub out FrameLoaderClient::dispatchDidFirstVisuallyNonEmptyLayout()

  • WebCoreSupport/FrameLoaderClientQt.cpp: (WebCore::FrameLoaderClientQt::dispatchDidFirstVisuallyNonEmptyLayout):
  • WebCoreSupport/FrameLoaderClientQt.h:

WebKit/win:

2008-12-18 Sam Weinig <sam@webkit.org>

Reviewed by John Sullivan.

Implement FrameLoaderClient::dispatchDidFirstVisuallyNonEmptyLayout() by calling
a new private frame load delegate method.

  • Interfaces/IWebFrameLoadDelegatePrivate.idl:
  • WebCoreSupport/WebFrameLoaderClient.cpp: (WebFrameLoaderClient::dispatchDidFirstVisuallyNonEmptyLayout):
  • WebCoreSupport/WebFrameLoaderClient.h:

WebKit/wx:

2008-12-18 Sam Weinig <sam@webkit.org>

Reviewed by John Sullivan.

Stub out FrameLoaderClient::dispatchDidFirstVisuallyNonEmptyLayout()

  • WebKitSupport/FrameLoaderClientWx.cpp: (WebCore::FrameLoaderClientWx::dispatchDidFirstVisuallyNonEmptyLayout):
  • WebKitSupport/FrameLoaderClientWx.h:
4:39 PM Changeset in webkit [39384] by pol@apple.com
  • 35 edits
    3 moves
    1 add in trunk/LayoutTests

2008-12-18 Pierre-Olivier Latour <pol@apple.com>

Reviewed by Darin Adler.

Rewrote some of the transition layout tests that were using setTimeout() to use the transition pause API in DRT when available.

Rewrote the transition layout tests that were specifically testing the transition end event to use common JS code from transition-end-event-helpers.js.

Fixed some typos.

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

  • transitions/end-event-helpers.js: Removed.
  • transitions/interrupt-transform-transition-expected.txt:
  • transitions/interrupt-transform-transition.html:
  • transitions/opacity-transition-zindex.html:
  • transitions/start-transform-transition.html:
  • transitions/transform-op-list-match-expected.txt:
  • transitions/transform-op-list-match.html:
  • transitions/transform-op-list-no-match-expected.txt:
  • transitions/transform-op-list-no-match.html:
  • transitions/transition-end-event-all-properties-expected.txt:
  • transitions/transition-end-event-all-properties.html:
  • transitions/transition-end-event-attributes-expected.txt:
  • transitions/transition-end-event-attributes.html:
  • transitions/transition-end-event-container-expected.txt:
  • transitions/transition-end-event-container.html:
  • transitions/transition-end-event-helpers.js: Copied from LayoutTests/transitions/end-event-helpers.js. (recordTransitionEndEvent): (runTransitionTest.processEndEvents.compareEventInfo): (runTransitionTest.processEndEvents.examineResults): (runTransitionTest.processEndEvents): (runTransitionTest.startTest): (runTransitionTest.window): (runTransitionTest):
  • transitions/transition-end-event-left-expected.txt:
  • transitions/transition-end-event-left.html:
  • transitions/transition-end-event-multiple-01-expected.txt:
  • transitions/transition-end-event-multiple-01.html:
  • transitions/transition-end-event-multiple-02-expected.txt:
  • transitions/transition-end-event-multiple-02.html:
  • transitions/transition-end-event-multiple-03-expected.txt:
  • transitions/transition-end-event-multiple-03.html:
  • transitions/transition-end-event-multiple-04-expected.txt:
  • transitions/transition-end-event-multiple-04.html:
  • transitions/transition-end-event-nested-expected.txt:
  • transitions/transition-end-event-nested.html:
  • transitions/transition-end-event-set-none-expected.txt:
  • transitions/transition-end-event-set-none.html:
  • transitions/transition-end-event-transform-expected.txt:
  • transitions/transition-end-event-transform.html:
  • transitions/transition-end-event-window-expected.txt:
  • transitions/transition-end-event-window.html:
  • transitions/transition-test-helpers.js: Added. (runTransitionTest.isCloseEnough): (runTransitionTest.checkExpectedValue): (runTransitionTest.endTest): (runTransitionTest.runTest): (runTransitionTest.startTest): (runTransitionTest.if):
  • transitions/transition-timing-function-expected.txt: Copied from LayoutTests/transitions/transition-timing-function-software-expected.txt.
  • transitions/transition-timing-function-software-expected.txt: Removed.
  • transitions/transition-timing-function-software.html: Removed.
  • transitions/transition-timing-function.html: Copied from LayoutTests/transitions/transition-timing-function-software.html.
  • transitions/zero-duration-in-list-expected.txt:
  • transitions/zero-duration-in-list.html:
3:58 PM Changeset in webkit [39383] by Darin Adler
  • 4 edits in trunk/WebCore

2008-12-18 Darin Adler <Darin Adler>

Reviewed by Sam Weinig.

  • fix <rdar://problem/6449841> reduce memory use of ResourceResponseBase by removing two maps

We were parsing the cache-control and pragma header field values into maps.
I changed that so instead we only cache two bits with the data we were actually
using. Later we might want to move this responsibility out of this class entirely;
we can cache it at the higher level instead.

  • loader/CachedResource.cpp: (WebCore::CachedResource::mustRevalidate): Changed to call a specific API to get at the bits in quest instead of a general "cache control directives" API.
  • platform/network/ResourceResponseBase.cpp: (WebCore::ResourceResponseBase::setHTTPHeaderField): Remove the logic for the pragma header field since no one is using this for now. (WebCore::ResourceResponseBase::parseCacheControlDirectives): Eliminated the return value and made this function have side effects only. Changed it so it's the caller's responsibility to check m_haveParsedCacheControl. Set m_cacheControlContainsNoCache and m_cacheControlContainsMustRevalidate rather than keeping a map around.
  • platform/network/ResourceResponseBase.h: (WebCore::ResourceResponseBase::cacheControlContainsNoCache): Added. (WebCore::ResourceResponseBase::cacheControlContainsMustRevalidate): Added. (WebCore::ResourceResponseBase::ResourceResponseBase): Updated since I removed m_haveParsedCacheControl and renamed m_haveParsedCacheControlHeader to remove the imprecise use of the term "header".
3:07 PM Changeset in webkit [39382] by sfalken@apple.com
  • 22 edits in trunk/WebCore

Build fix.
Delete 2nd copy of code in these files.

  • platform/animation/Animation.cpp:
  • platform/animation/Animation.h:
  • platform/animation/AnimationList.cpp:
  • platform/animation/AnimationList.h:
  • platform/animation/TimingFunction.h:
  • platform/graphics/transforms/AffineTransform.cpp:
  • platform/graphics/transforms/AffineTransform.h:
  • platform/graphics/transforms/IdentityTransformOperation.h:
  • platform/graphics/transforms/MatrixTransformOperation.cpp:
  • platform/graphics/transforms/MatrixTransformOperation.h:
  • platform/graphics/transforms/RotateTransformOperation.cpp:
  • platform/graphics/transforms/RotateTransformOperation.h:
  • platform/graphics/transforms/ScaleTransformOperation.cpp:
  • platform/graphics/transforms/ScaleTransformOperation.h:
  • platform/graphics/transforms/SkewTransformOperation.cpp:
  • platform/graphics/transforms/SkewTransformOperation.h:
  • platform/graphics/transforms/TransformOperation.h:
  • platform/graphics/transforms/TransformOperations.cpp:
  • platform/graphics/transforms/TransformOperations.h:
  • platform/graphics/transforms/TranslateTransformOperation.cpp:
  • platform/graphics/transforms/TranslateTransformOperation.h:
2:51 PM Changeset in webkit [39381] by sfalken@apple.com
  • 1 edit in trunk/WebCore/WebCore.vcproj/WebCore.vcproj

Partial build fix.

2:14 PM Changeset in webkit [39380] by barraclough@apple.com
  • 7 edits in trunk/JavaScriptCore

2008-12-18 Gavin Barraclough <barraclough@apple.com>

Reviewed by Sam Weinig.

Just a tidy up - rename & refactor some the #defines configuring the JIT.

  • interpreter/Interpreter.cpp: (JSC::Interpreter::cti_op_convert_this): (JSC::Interpreter::cti_op_end): (JSC::Interpreter::cti_op_add): (JSC::Interpreter::cti_op_pre_inc): (JSC::Interpreter::cti_timeout_check): (JSC::Interpreter::cti_register_file_check): (JSC::Interpreter::cti_op_loop_if_less): (JSC::Interpreter::cti_op_loop_if_lesseq): (JSC::Interpreter::cti_op_new_object): (JSC::Interpreter::cti_op_put_by_id_generic): (JSC::Interpreter::cti_op_get_by_id_generic): (JSC::Interpreter::cti_op_put_by_id): (JSC::Interpreter::cti_op_put_by_id_second): (JSC::Interpreter::cti_op_put_by_id_fail): (JSC::Interpreter::cti_op_get_by_id): (JSC::Interpreter::cti_op_get_by_id_second): (JSC::Interpreter::cti_op_get_by_id_self_fail): (JSC::Interpreter::cti_op_get_by_id_proto_list): (JSC::Interpreter::cti_op_get_by_id_proto_list_full): (JSC::Interpreter::cti_op_get_by_id_proto_fail): (JSC::Interpreter::cti_op_get_by_id_array_fail): (JSC::Interpreter::cti_op_get_by_id_string_fail): (JSC::Interpreter::cti_op_instanceof): (JSC::Interpreter::cti_op_del_by_id): (JSC::Interpreter::cti_op_mul): (JSC::Interpreter::cti_op_new_func): (JSC::Interpreter::cti_op_call_JSFunction): (JSC::Interpreter::cti_op_call_arityCheck): (JSC::Interpreter::cti_vm_dontLazyLinkCall): (JSC::Interpreter::cti_vm_lazyLinkCall): (JSC::Interpreter::cti_op_push_activation): (JSC::Interpreter::cti_op_call_NotJSFunction): (JSC::Interpreter::cti_op_create_arguments): (JSC::Interpreter::cti_op_create_arguments_no_params): (JSC::Interpreter::cti_op_tear_off_activation): (JSC::Interpreter::cti_op_tear_off_arguments): (JSC::Interpreter::cti_op_profile_will_call): (JSC::Interpreter::cti_op_profile_did_call): (JSC::Interpreter::cti_op_ret_scopeChain): (JSC::Interpreter::cti_op_new_array): (JSC::Interpreter::cti_op_resolve): (JSC::Interpreter::cti_op_construct_JSConstruct): (JSC::Interpreter::cti_op_construct_NotJSConstruct): (JSC::Interpreter::cti_op_get_by_val): (JSC::Interpreter::cti_op_resolve_func): (JSC::Interpreter::cti_op_sub): (JSC::Interpreter::cti_op_put_by_val): (JSC::Interpreter::cti_op_put_by_val_array): (JSC::Interpreter::cti_op_lesseq): (JSC::Interpreter::cti_op_loop_if_true): (JSC::Interpreter::cti_op_negate): (JSC::Interpreter::cti_op_resolve_base): (JSC::Interpreter::cti_op_resolve_skip): (JSC::Interpreter::cti_op_resolve_global): (JSC::Interpreter::cti_op_div): (JSC::Interpreter::cti_op_pre_dec): (JSC::Interpreter::cti_op_jless): (JSC::Interpreter::cti_op_not): (JSC::Interpreter::cti_op_jtrue): (JSC::Interpreter::cti_op_post_inc): (JSC::Interpreter::cti_op_eq): (JSC::Interpreter::cti_op_lshift): (JSC::Interpreter::cti_op_bitand): (JSC::Interpreter::cti_op_rshift): (JSC::Interpreter::cti_op_bitnot): (JSC::Interpreter::cti_op_resolve_with_base): (JSC::Interpreter::cti_op_new_func_exp): (JSC::Interpreter::cti_op_mod): (JSC::Interpreter::cti_op_less): (JSC::Interpreter::cti_op_neq): (JSC::Interpreter::cti_op_post_dec): (JSC::Interpreter::cti_op_urshift): (JSC::Interpreter::cti_op_bitxor): (JSC::Interpreter::cti_op_new_regexp): (JSC::Interpreter::cti_op_bitor): (JSC::Interpreter::cti_op_call_eval): (JSC::Interpreter::cti_op_throw): (JSC::Interpreter::cti_op_get_pnames): (JSC::Interpreter::cti_op_next_pname): (JSC::Interpreter::cti_op_push_scope): (JSC::Interpreter::cti_op_pop_scope): (JSC::Interpreter::cti_op_typeof): (JSC::Interpreter::cti_op_is_undefined): (JSC::Interpreter::cti_op_is_boolean): (JSC::Interpreter::cti_op_is_number): (JSC::Interpreter::cti_op_is_string): (JSC::Interpreter::cti_op_is_object): (JSC::Interpreter::cti_op_is_function): (JSC::Interpreter::cti_op_stricteq): (JSC::Interpreter::cti_op_nstricteq): (JSC::Interpreter::cti_op_to_jsnumber): (JSC::Interpreter::cti_op_in): (JSC::Interpreter::cti_op_push_new_scope): (JSC::Interpreter::cti_op_jmp_scopes): (JSC::Interpreter::cti_op_put_by_index): (JSC::Interpreter::cti_op_switch_imm): (JSC::Interpreter::cti_op_switch_char): (JSC::Interpreter::cti_op_switch_string): (JSC::Interpreter::cti_op_del_by_val): (JSC::Interpreter::cti_op_put_getter): (JSC::Interpreter::cti_op_put_setter): (JSC::Interpreter::cti_op_new_error): (JSC::Interpreter::cti_op_debug): (JSC::Interpreter::cti_vm_throw):
  • interpreter/Interpreter.h:
  • jit/JIT.cpp: (JSC::): (JSC::JIT::privateCompileMainPass): (JSC::JIT::privateCompile):
  • jit/JIT.h:
  • jit/JITInlineMethods.h: (JSC::JIT::restoreArgumentReference): (JSC::JIT::restoreArgumentReferenceForTrampoline):
  • wtf/Platform.h:
1:21 PM Changeset in webkit [39379] by darin@chromium.org
  • 7 edits
    2 adds in trunk/WebCore

2008-12-18 Dimitri Glazkov <Dimitri Glazkov>

Reviewed by Geoffrey Garen.

https://bugs.webkit.org/show_bug.cgi?id=22859
Abstract away the use of JSDOMWindow in CachedPage and introduce
ScriptCachedPageData abstraction.

  • GNUmakefile.am: Added ScriptCachedPageData to project.
  • WebCore.pro: Added ScriptCachedPageData to project.
  • WebCore.vcproj/WebCore.vcproj: Added ScriptCachedPageData to project.
  • WebCore.xcodeproj/project.pbxproj: Added ScriptCachedPageData to

project.

  • bindings/js/ScriptCachedPageData.cpp: Added. (WebCore::ScriptCachedPageData::ScriptCachedPageData): (WebCore::ScriptCachedPageData::~ScriptCachedPageData): (WebCore::ScriptCachedPageData::restore): (WebCore::ScriptCachedPageData::clear):
  • bindings/js/ScriptCachedPageData.h: Added.
  • history/CachedPage.cpp: Replaced JSDOMWindow and ProtectedPtr with

ScriptCachedPageData.

(WebCore::CachedPage::CachedPage):
(WebCore::CachedPage::domWindow):
(WebCore::CachedPage::restore):
(WebCore::CachedPage::clear):

  • history/CachedPage.h: Replaced JSDOMWindow and ProtectedPtr with

ScriptCachedPageData.

1:06 PM Changeset in webkit [39378] by cmarrin@apple.com
  • 2 edits
    23 adds
    21 deletes in trunk/WebCore

Reviewed by Dave Hyatt.

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

To avoid future dependency issues, all the TransformOperations and Animation related files need to be moved to platform

10:19 AM Changeset in webkit [39377] by cwzwarich@webkit.org
  • 12 edits
    3 adds in trunk

2008-12-18 Cameron Zwarich <zwarich@apple.com>

Reviewed by Geoff Garen.

Bug 21855: REGRESSION (r37323): Gmail complains about popup blocking when opening a link
<https://bugs.webkit.org/show_bug.cgi?id=21855>
<rdar://problem/6278244>

If JavaScript is not currently executing, the handleEvent member function
of JSAbstractEventListener should set the dynamic global object to the
global object of the context in which the event occurred.


If this is not set, then JavaScriptCore will simply take the global object
of the context where the event handler function was created, which may be
a different frame. This will cause the popup blocker to incorrectly block
windows opened from onclick events inside of an iframe whose handler was
created in the outer frame, as it will check the outer frame and see that
it is not processing any events.

JavaScriptCore:

  • interpreter/Interpreter.cpp:
  • runtime/JSGlobalObject.h: (JSC::DynamicGlobalObjectScope::DynamicGlobalObjectScope): (JSC::DynamicGlobalObjectScope::~DynamicGlobalObjectScope):

WebCore:

  • bindings/js/JSEventListener.cpp: (WebCore::JSAbstractEventListener::handleEvent):

WebKitTools:

  • DumpRenderTree/mac/EventSendingController.h:
  • DumpRenderTree/mac/EventSendingController.mm: (+[EventSendingController isSelectorExcludedFromWebScript:]): Expose scheduleAsynchronousClick to JavaScript. (-[EventSendingController scheduleAsynchronousClick]): Add.

LayoutTests:

  • fast/events/popup-blocking-click-in-iframe-expected.txt: Added.
  • fast/events/popup-blocking-click-in-iframe.html: Added.
  • fast/events/resources/popup-blocking-click-in-iframe-otherFrame.html: Added.
  • platform/gtk/Skipped:
  • platform/qt/Skipped:
  • platform/win/Skipped:
10:02 AM Changeset in webkit [39376] by pam@chromium.org
  • 1 edit
    1 delete in trunk

2008-12-18 Pamela Greene <pam@chromium.org>

Submitted without review.
Right, remove the whole misplaced directory, not just the tests.

  • fast: Removed.
  • fast/dom: Removed.
9:56 AM Changeset in webkit [39375] by pam@chromium.org
  • 2 edits
    2 moves in trunk

Root level:

2008-12-18 Pamela Greene <pam@chromium.org>

Submitted without review.
Moving layout test into LayoutTests where it belongs.

  • fast/dom/setter-type-enforcement-expected.txt: Removed.
  • fast/dom/setter-type-enforcement.html: Removed.

LayoutTests:

2008-12-18 Pamela Greene <pam@chromium.org>

Submitted without review.
Moving layout test from root level into LayoutTests where it belongs.

  • fast/dom/setter-type-enforcement-expected.txt: Copied from fast/dom/setter-type-enforcement-expected.txt.
  • fast/dom/setter-type-enforcement.html: Copied from fast/dom/setter-type-enforcement.html.
9:45 AM Changeset in webkit [39374] by ggaren@apple.com
  • 3 edits
    3 adds in trunk

JavaScriptCore:

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

Reviewed by Gavin Barraclough.


Fixed https://bugs.webkit.org/show_bug.cgi?id=22393
Segfault when caching property accesses to primitive cells.


Changed some asObject casts to asCell casts in cases where a primitive
value may be a cell and not an object.


Re-enabled property caching for primitives in cases where it had been
disabled because of this bug.


Updated a comment to better explain something Darin thought needed
explaining in an old patch review.

  • interpreter/Interpreter.cpp: (JSC::countPrototypeChainEntriesAndCheckForProxies): (JSC::Interpreter::tryCacheGetByID): (JSC::Interpreter::tryCTICacheGetByID): (JSC::Interpreter::cti_op_get_by_id_self_fail): (JSC::Interpreter::cti_op_get_by_id_proto_list):

LayoutTests:

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

Reviewed by Gavin Barraclough.


Added a test for https://bugs.webkit.org/show_bug.cgi?id=22393
Segfault when caching property accesses to primitive cells.

  • fast/js/primitive-property-access-edge-cases-expected.txt: Added.
  • fast/js/primitive-property-access-edge-cases.html: Added.
  • fast/js/resources/primitive-property-access-edge-cases.js: Added. ():
9:42 AM Changeset in webkit [39373] by Simon Fraser
  • 5 edits
    4 adds in trunk

2008-12-17 Simon Fraser <Simon Fraser>

Reviewed by Dave Hyatt

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

Add the ability to compute clip rects independently from
caching them on the RenderLayer. When painting reflections, use
such temporarily computed clipRects, otherwise the layer may cache
clipRects which are invalid, since they have been computed with
a rootLayer that is not the one usually used to paint.

Test: fast/reflections/reflection-overflow-hidden.html

6:37 AM Changeset in webkit [39372] by vestbo@webkit.org
  • 2 edits in trunk/WebCore

2008-12-17 Laszlo Gombos <Laszlo Gombos>

Reviewed by Simon Hausmann.

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

Fix MinGW QtWebKit linking problems and also make the
QtWebKit build system more robust.

Dec 17, 2008:

11:02 PM Changeset in webkit [39371] by barraclough@apple.com
  • 7 edits in trunk/JavaScriptCore

2008-12-17 Gavin Barraclough <barraclough@apple.com>

Reviewed by Cameron Zwarich.

Fixes for Sunspider failures with the JIT enabled on x86-64.

  • assembler/MacroAssembler.h:

Switch the order of the RegisterID & Address form of je32, to keep it consistent with jne32.

  • jit/JIT.cpp:
  • jit/JIT.h:
  • jit/JITInlineMethods.h:

Port the m_ctiVirtualCall tramopline generation to use the MacroAssembler interface.

  • jit/JITCall.cpp:

Fix bug in the non-optimizing code path, vptr check should have been to the memory address pointer
to by the register, not to the register itself.

  • wrec/WRECGenerator.cpp:

See assembler/MacroAssembler.h, above.

7:38 PM Changeset in webkit [39370] by barraclough@apple.com
  • 9 edits in trunk/JavaScriptCore

2008-12-17 Gavin Barraclough <barraclough@apple.com>

Reviewed by Sam Weinig.

print("Hello, 64-bit jitted world!");
Get hello-world working through the JIT, on x86-64.

  • assembler/X86Assembler.h:

Fix encoding of opcode + RegisterID format instructions for 64-bit.

  • interpreter/Interpreter.cpp:
  • interpreter/Interpreter.h:

Make VoidPtrPair actually be a pair of void*s.
(Possibly should make this change for 32-bit Mac platforms, too - but won't change 32-bit behaviour in this patch).

  • jit/JIT.cpp:
  • jit/JIT.h:

Provide names for the timeoutCheckRegister & callFrameRegister on x86-64,
force x86-64 ctiTrampoline arguments onto the stack,
implement the asm trampolines for x86-64,
implement the restoreArgumentReference methods for x86-64 calling conventions.

  • jit/JITCall.cpp:
  • jit/JITInlineMethods.h:
  • wtf/Platform.h:

Add switch settings to ENABLE(JIT), on PLATFORM(X86_64) (currently still disabled).

5:56 PM Changeset in webkit [39369] by Nikolas Zimmermann
  • 21 edits in trunk

Reviewed by Maciej Stachowiak.

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

wml.css is based on an older copy of html4.css. Synchronize them.
Remove all entries, that are irrelevant for WML.

Fix <do> appearance: should behave like HTMLs <button>.

4:00 PM Changeset in webkit [39368] by weinig@apple.com
  • 2 edits in trunk/JavaScriptCore

2008-12-17 Sam Weinig <sam@webkit.org>

Reviewed by Gavin Barraclough.

Add more CodeBlock statistics.

  • bytecode/CodeBlock.cpp: (JSC::CodeBlock::dumpStatistics):
2:16 PM Changeset in webkit [39367] by abarth@webkit.org
  • 6 edits in trunk/WebCore

2008-12-17 Yury Semikhatsky <yurys@google.com>

Reviewed by Timothy Hatcher.
Landed by Adam Barth.

Added more checks that WebInspector.panels.{resources,scripts} are
defined where they are accessed from other panels and WebInspector
(some panels are not yet supported in Chrome).

  • inspector/front-end/Console.js: (WebInspector.Console.prototype.addMessage): (WebInspector.Console.prototype.clearMessages): (WebInspector.Console.prototype.completions):
  • inspector/front-end/ObjectPropertiesSection.js: (WebInspector.ObjectPropertyTreeElement.prototype.evaluateExpression):
  • inspector/front-end/ScriptsPanel.js: (WebInspector.ScriptsPanel.prototype.get searchableViews): (WebInspector.ScriptsPanel.prototype._sourceViewForScriptOrResource): (WebInspector.ScriptsPanel.prototype._sourceFrameForScriptOrResource): (WebInspector.ScriptsPanel.prototype._showScriptOrResource):
  • inspector/front-end/SourceView.js: (WebInspector.SourceView.prototype._addBreakpoint):
  • inspector/front-end/inspector.js: (WebInspector.addResource): (WebInspector.removeResource): (WebInspector.showResourceForURL):
1:25 PM Changeset in webkit [39366] by weinig@apple.com
  • 5 edits in trunk/JavaScriptCore

2008-12-17 Sam Weinig <sam@webkit.org>

Reviewed by Darin Adler.

Fix for https://bugs.webkit.org/show_bug.cgi?id=22897
<rdar://problem/6428342>
Look into feasibility of discarding bytecode after native codegen

Clear the bytecode Instruction vector at the end JIT generation.

Saves 4.8 MB on Membuster head.

  • bytecode/CodeBlock.cpp: (JSC::CodeBlock::dump): Add logging for the case that someone tries to dump the instructions of a CodeBlock that has had its bytecode vector cleared. (JSC::CodeBlock::CodeBlock): Initialize the instructionCount (JSC::CodeBlock::handlerForBytecodeOffset): Use instructionCount instead of the size of the instruction vector in the assertion. (JSC::CodeBlock::lineNumberForBytecodeOffset): Ditto. (JSC::CodeBlock::expressionRangeForBytecodeOffset): Ditto. (JSC::CodeBlock::getByIdExceptionInfoForBytecodeOffset): Ditto. (JSC::CodeBlock::functionRegisterForBytecodeOffset): Ditto.
  • bytecode/CodeBlock.h: (JSC::CodeBlock::setInstructionCount): Store the instruction vector size in debug builds for assertions.
  • bytecompiler/BytecodeGenerator.cpp: (JSC::BytecodeGenerator::generate):
  • jit/JIT.cpp: (JSC::JIT::privateCompile): Clear the bytecode vector unless we have compiled with Opcode sampling where we will continue to require it
1:12 PM Changeset in webkit [39365] by abarth@webkit.org
  • 3 edits in trunk/LayoutTests

2008-12-17 Feng Qian <feng@chromium.org>

Reviewed by Alexey Proskuryakov.
Landed by Adam Barth.

https://bugs.webkit.org/show_bug.cgi?id=21948
Change two tests to use the host url in XMLHttpRequest so that
it does not fail because of Chrome's file URL security policy.
It does not affect the expected behaviors of tests.

  • fast/dom/null-document-xmlhttprequest-open.html:
  • fast/dom/xmlhttprequest-invalid-values.html:
1:12 PM Changeset in webkit [39364] by abarth@webkit.org
  • 1 edit
    2 adds in trunk/LayoutTests

2008-12-17 Pamela Greene <pam@chromium.org>

Reviewed by Darin Adler.
Landed by Adam Barth.

https://bugs.webkit.org/show_bug.cgi?id=22577
Add a test to ensure that checkboxes and radio buttons with duplicate
names map to a collection.

  • fast/dom/HTMLInputElement/duplicate-element-names-expected.txt: Added.
  • fast/dom/HTMLInputElement/duplicate-element-names.html: Added.
1:11 PM Changeset in webkit [39363] by abarth@webkit.org
  • 1 edit
    4 adds in trunk

2008-12-17 Pamela Greene <pam@chromium.org>

Reviewed by Darin Adler.
Landed by Adam Barth.

https://bugs.webkit.org/show_bug.cgi?id=22612
Add test to verify type enforcement in DOM setters.

  • fast/dom/setter-type-enforcement-expected.txt: Added.
  • fast/dom/setter-type-enforcement.html: Added.
1:11 PM Changeset in webkit [39362] by abarth@webkit.org
  • 4 edits in trunk

WebCore:

2008-12-17 Cary Clark < caryclark@google.com>

Reviewed by Darin Adler.
Landed by Adam Barth.

Add ENABLE_TEXT_CARET to permit the ANDROID platform
to invalidate and draw the caret in a separate thread.

  • page/Frame.cpp: (WebCore::Frame::clearCaretRectIfNeeded): Body of function does nothing if text caret is disabled. (WebCore::Frame::selectionLayoutChanged): Do nothing if text caret is disabled and the caret only blinked. (WebCore::Frame::caretBlinkTimerFired): (WebCore::Frame::paintCaret): (WebCore::Frame::paintDragCaret): Body of functions does nothing if text caret is disabled.

JavaScriptCore:

2008-12-17 Cary Clark <caryclark@google.com>

Reviewed by Darin Adler.
Landed by Adam Barth.

Add ENABLE_TEXT_CARET to permit the ANDROID platform
to invalidate and draw the caret in a separate thread.

  • wtf/Platform.h: Default ENABLE_TEXT_CARET to 1.
11:01 AM Changeset in webkit [39361] by Nikolas Zimmermann
  • 9 edits in trunk/LayoutTests

Rubber-stamped by Timothy Hatcher.

Fix wml/ tests, by doing s/</\&lt;/ and s/>/\&gt;/.
Not sure why this problem wasn't visible before, something has changed.

10:10 AM Changeset in webkit [39360] by ap@webkit.org
  • 2 edits in trunk/JavaScriptCore

Reviewed by Darin Adler.

Don't use unique context group in JSGlobalContextCreate() on Tiger or Leopard, take two.

  • API/JSContextRef.cpp: The previous patch that claimed to do this was making Tiger and Leopard always use unique context group instead.
5:41 AM Changeset in webkit [39359] by Simon Hausmann
  • 7 edits in trunk

2008-12-16 Simon Hausmann <Simon Hausmann>

Reviewed by Holger Freyther.

Added support for unload event counting to the Qt DRT.

5:41 AM Changeset in webkit [39358] by Simon Hausmann
  • 2 edits in trunk/LayoutTests

2008-12-16 Simon Hausmann <Simon Hausmann>

Reviewed by Holger Freyther.

Added mac API specific loader test to the skip list for the Qt DRT.

4:15 AM Changeset in webkit [39357] by Antti Koivisto
  • 3 edits in trunk/WebKit/mac

2008-12-16 Antti Koivisto <Antti Koivisto>

Reviewed by John Sullivan.


Add version check for shift-reload behavior.

  • Misc/WebKitVersionChecks.h:
  • WebView/WebFrame.mm: (-[WebFrame reload]):
Note: See TracTimeline for information about the timeline view.