Timeline


and

07/07/08:

21:17 Changeset [35057] by weinig@apple.com

2008-07-07 Sam Weinig <sam@webkit.org>

Reviewed by Anders Carlsson.

Remove extraneous null check.

  • dom/Node.cpp: (WebCore::Node::querySelector): (WebCore::Node::querySelectorAll):
21:15 Changeset [35056] by weinig@apple.com

WebCore:

2008-07-07 Sam Weinig <sam@webkit.org>

Reviewed by Anders Carlsson.

Fix for https://bugs.webkit.org/show_bug.cgi?id=19928
Use of CSS3 Namespaces syntax in Selectors API should throw an exception

  • Throw an NAMESPACE_ERR exception if a non-null or "*" namespace is used in a selector passed to querySelector or querySelectorAll.

Test: fast/dom/SelectorAPI/not-supported-namespace-in-selector.html

  • dom/Node.cpp: (WebCore::selectorNeedsNamespaceResolution): (WebCore::Node::querySelector): (WebCore::Node::querySelectorAll):

LayoutTests:

2008-07-07 Sam Weinig <sam@webkit.org>

Reviewed by Anders Carlsson.

Fix for https://bugs.webkit.org/show_bug.cgi?id=19928
Use of CSS3 Namespaces syntax in Selectors API should throw an exception

  • fast/dom/SelectorAPI/not-supported-namespace-in-selector-expected.txt: Added.
  • fast/dom/SelectorAPI/not-supported-namespace-in-selector.html: Added.
20:30 Changeset [35055] by ddkilzer@apple.com

releaseFastMallocFreeMemory() should always be defined

Reviewed by Darin.

  • JavaScriptCore.exp: Changed to export C++ binding for WTF::releaseFastMallocFreeMemory() instead of C binding for releaseFastMallocFreeMemory().
  • wtf/FastMalloc.cpp: Moved definitions of releaseFastMallocFreeMemory() to be in the WTF namespace regardless whether FORCE_SYSTEM_MALLOC is defined.
  • wtf/FastMalloc.h: Moved releaseFastMallocFreeMemory() from extern "C" binding to WTF::releaseFastMallocFreeMemory().
20:19 Changeset [35054] by dino@apple.com

2008-07-07 Simon Fraser <simon.fraser@apple.com>

Reviewed by Darin.

Fix for https://bugs.webkit.org/show_bug.cgi?id=19933
nodeIterator with filter fails on documents not in a frame

Tests: traversal/node-iterator-009.html

traversal/tree-walker-006.html

  • bindings/js/JSNodeFilterCondition.cpp:
  • bindings/js/JSNodeFilterCondition.h:
  • bindings/js/JSNodeFilterCustom.cpp:
  • bindings/js/JSNodeIteratorCustom.cpp:
  • bindings/js/JSTreeWalkerCustom.cpp:
  • bindings/objc/DOM.mm:
  • dom/NodeFilter.cpp:
  • dom/NodeFilter.h:
  • dom/NodeFilterCondition.cpp:
  • dom/NodeFilterCondition.h:
  • dom/NodeIterator.cpp:
  • dom/NodeIterator.h:
  • dom/Traversal.cpp:
  • dom/Traversal.h:
  • dom/TreeWalker.cpp:
  • dom/TreeWalker.h:


18:25 Changeset [35053] by cwzwarich@webkit.org

2008-07-07 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Geoff.

Bug 19926: URL causes crash within a minute
<https://bugs.webkit.org/show_bug.cgi?id=19926>

Add a check that lastGlobalObject is non-null in Machine::execute()
before copying its globals to the current register file.

In theory, it is possible to make a test case for this, but it will
take a while to get it right.

  • VM/Machine.cpp: (KJS::Machine::execute):
18:13 Changeset [35052] by adele@apple.com

WebCore:

2008-07-07 Adele Peterson <adele@apple.com>

Reviewed by Dan Bernstein.

Fix for https://bugs.webkit.org/show_bug.cgi?id=19924
<rdar://problem/6057160> Disabled file input element updates its displayed file info when a file is dropped from the Finder.

  • page/DragController.cpp: (WebCore::DragController::concludeDrag): Check that the file control is enabled before taking dropped files.

LayoutTests:

2008-07-07 Adele Peterson <adele@apple.com>

Reviewed by Dan Bernstein.

Test for https://bugs.webkit.org/show_bug.cgi?id=19924
<rdar://problem/6057160> Disabled file input element updates its displayed file info when a file is dropped from the Finder.

  • fast/forms/dragging-to-disabled-file-input-expected.txt: Added.
  • fast/forms/dragging-to-disabled-file-input.html: Added.
17:46 Changeset [35051] by adele@apple.com

WebCore:

2008-07-07 Adele Peterson <adele@apple.com>

Reviewed by Beth.

Fix for <rdar://problem/5860507> <AUDIO> playback noticeably more quiet than QuickTime

Change default volume setting to 1.0.

  • html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::HTMLMediaElement):
  • platform/graphics/MediaPlayer.cpp: (WebCore::MediaPlayer::MediaPlayer):

LayoutTests:

2008-07-07 Adele Peterson <adele@apple.com>

Reviewed by Beth.

Test for <rdar://problem/5860507> <AUDIO> playback noticeably more quiet than QuickTime

  • media/video-volume-expected.txt:
  • media/video-volume.html:
17:29 Changeset [35050] by darin@apple.com

2008-07-07 Darin Adler <darin@apple.com>

Reviewed by Mark Rowe.

  • fix <rdar://problem/6020441> REGRESSION: Layers on NWA.com render ugly

The old version of the OpenCube QuickMenu library used on this site still has code
that detects Netscape 4 by checking appVersion to see if it has the substring "4."
in it. We decided to special-case the filename of the script and tweak the appVersion
for files with that name.

  • bindings/js/ScriptController.cpp: (WebCore::ScriptController::ScriptController): Replace m_processingInlineCode with m_sourceURL. Use false instead of 0 to initialize a boolean. (WebCore::ScriptController::evaluate): Call argument sourceURL, not filename. Store current sourceURL in m_sourceURL. This fixes a mistake in the code that maintained the value of m_processingInlineCode, since the old code set it to false rather than restoring it. Renamed a local variable named sourceURL to exceptionSourceURL for clarity. (WebCore::ScriptController::processingUserGesture): Code that formerly used m_processingInlineCode to detect that it was evaluating code with no URL now uses m_sourceURL to do the same check.
  • bindings/js/ScriptController.h: Renamed filename argument to sourceURL; it has always been a URL, not a file path. Added a public sourceURL function and m_sourceURL and removed m_processingInlineCode.
  • page/Navigator.cpp: (WebCore::shouldHideFourDot): Added. Returns true if the currently running script has a source URL ending in "/dqm_script.js" and if the settings say we should do site-specific quirks (really JavaScript-library-specific in this case). (WebCore::Navigator::appVersion): Replace "4." with "4_" if shouldHideFourDot is true.
16:51 Changeset [35049] by cwzwarich@webkit.org

2008-07-07 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Geoff.

Bug 19907: REGRESSION(r34824-r34941): Reproducible crash trying to log in to MediaTemple.net Account Center
<https://bugs.webkit.org/show_bug.cgi?id=19907>

Clear exceptions set on ExecStates before returning from NPAPI
callbacks, in order to avoid causing problems for the next script that
executes.

While fixing this bug, the question was raised of whether we are
correctly propagating exception information back to the caller:

Bug 19936: Correctly propagate exception information from NPAPI callbacks
<https://bugs.webkit.org/show_bug.cgi?id=19936>

  • bridge/NP_jsobject.cpp: (_NPN_InvokeDefault): (_NPN_Invoke): (_NPN_Evaluate): (_NPN_GetProperty): (_NPN_SetProperty): (_NPN_RemoveProperty): (_NPN_HasProperty): (_NPN_HasMethod): (_NPN_Enumerate):
16:26 Changeset [35048] by bdakin@apple.com

WebKitTools:

2008-07-07 Beth Dakin <bdakin@apple.com>

Reviewed by Anders.

This patch extends DRT accessibility tests to add the ability to
query the intValue, minValue, and maxValue of the focused element.

  • DumpRenderTree/AccessibilityController.cpp: (intValueOfFocusedElementCallback): (minValueOfFocusedElementCallback): (maxValueOfFocusedElementCallback): (AccessibilityController::staticFunctions):
  • DumpRenderTree/AccessibilityController.h:
  • DumpRenderTree/mac/AccessibilityControllerMac.mm: (AccessibilityController::intValueOfFocusedElement): (AccessibilityController::minValueOfFocusedElement): (AccessibilityController::maxValueOfFocusedElement):

LayoutTests:

2008-07-07 Beth Dakin <bdakin@apple.com>

Reviewed by Anders.

New test that uses the ability to query int value, min value, and
max value in the accessibility tests.

  • accessibility/aria-range-value-expected.txt: Added.
  • accessibility/aria-range-value.html: Added.
16:07 Changeset [35047] by mitz@apple.com

Reviewed by Darin Adler.

  • fix <rdar://problem/6057650> REGRESSION (r35025): Crash beneath FontCache::invalidate() when activating Safari with no windows open
  • css/CSSFontFaceSource.cpp: (WebCore::CSSFontFaceSource::getFontData): Added a null check because docLoader() can return 0 now.
  • css/CSSFontSelector.cpp: (WebCore::CSSFontSelector::docLoader): Added a null check of m_document. (WebCore::CSSFontSelector::addFontFaceRule): Ditto. (WebCore::CSSFontSelector::fontLoaded): Ditto. (WebCore::CSSFontSelector::fontCacheInvalidated): Ditto. (WebCore::fontDataForGenericFamily): Added a null check of document.
  • css/CSSFontSelector.h: (WebCore::CSSFontSelector::clearDocument): Added.
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::~CSSStyleSelector): Added a call to CSSFontSelector::clearDocument(). When the style selector is destroyed, there is no guarantee that the document will continue to exist.
15:39 Changeset [35046] by darin@apple.com

2008-07-07 Darin Adler <darin@apple.com>

Rubber stamped by Adele.

  • VM/Machine.cpp: (KJS::Machine::privateExecute): Fix a typo in a comment.
15:38 Changeset [35045] by jchaffraix@webkit.org

WebCore:

2008-07-07 Julien Chaffraix <jchaffraix@webkit.org>

Not reviewed.

No svg build fix.

  • DerivedSources.make: Add JSSVGElementWrapperFactory.cpp target.
  • svg/animation/SMILTimeContainer.cpp: Add ENABLE(SVG) guard.
15:33 Changeset [35044] by sfalken@apple.com

JavaScriptCore:

2008-07-07 Steve Falkenburg <sfalken@apple.com>

Build fixes.

WebKitTools:

2008-07-07 Steve Falkenburg <sfalken@apple.com>

Fix build.

  • DumpRenderTree/win/ImageDiff.vcproj:
15:02 Changeset [35043] by andersca@apple.com

2008-07-07 Anders Carlsson <andersca@apple.com>

Reviewed by Darin.

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


Set _private->closed to YES before calling -[WebPluginController destroyAllPlugins].


My theory is that the plug-in destruction callbacks could end up rescheduling timers or re-adding notifications.
This is usually protected by _private->closed, but in this case it might still be false.

  • WebView/WebHTMLView.mm: (-[WebHTMLView close]):
14:34 Changeset [35042] by adele@apple.com

WebCore:

2008-07-07 Michelangelo De Simone <m.des@mac.com>

Reviewed by Adele.

Support for CSS3 :read-only and :read-write pseudoclasses for readonly text controls.

URL: http://www.w3.org/TR/web-forms-2/#relation

Tests: fast/css/readonly-pseudoclass-opera-001.html

fast/css/readonly-pseudoclass-opera-002.html
fast/css/readonly-pseudoclass-opera-003.html
fast/css/readonly-pseudoclass-opera-004.html
fast/css/readonly-pseudoclass-opera-005.html

  • css/CSSSelector.cpp: (WebCore::CSSSelector::extractPseudoType): Added "read-only" and "read-write" values for PseudoType extraction.
  • css/CSSSelector.h: (WebCore::CSSSelector::): Added PseudoReadOnly and PseudoReadWrite entries in PseudoType enum.
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): Checks to determine whether to match :read-only and :read-write pseudoclasses on text controls.

LayoutTests:

2008-07-07 Michelangelo De Simone <m.des@mac.com>

Reviewed by Adele.

Test suite for :read-only and :read-write pseudoclasses, imported from
Opera.

  • fast/css/readonly-pseudoclass-opera-001-expected.txt: Added.
  • fast/css/readonly-pseudoclass-opera-001.html: Added.
  • fast/css/readonly-pseudoclass-opera-002-expected.txt: Added.
  • fast/css/readonly-pseudoclass-opera-002.html: Added.
  • fast/css/readonly-pseudoclass-opera-003-expected.txt: Added.
  • fast/css/readonly-pseudoclass-opera-003.html: Added.
  • fast/css/readonly-pseudoclass-opera-004-expected.txt: Added.
  • fast/css/readonly-pseudoclass-opera-004.html: Added.
  • fast/css/readonly-pseudoclass-opera-005-expected.txt: Added.
  • fast/css/readonly-pseudoclass-opera-005.html: Added.
14:29 Changeset [35041] by weinig@apple.com

WebCore:

2008-07-07 Sam Weinig <sam@webkit.org>

Reviewed by Geoffrey Garen.

Fix for https://bugs.webkit.org/show_bug.cgi?id=19928
querySelectorAll should throw an exception if a NSResolver is passed in.

  • Throw an NOT_SUPPORTED_ERR if a non-null or undefined parameter is passed as the second argument to querySelector or querySelectorAll.

Test: fast/dom/SelectorAPI/not-supported-NSResolver.html

  • bindings/js/JSDocumentCustom.cpp: (WebCore::JSDocument::querySelector): (WebCore::JSDocument::querySelectorAll):
  • bindings/js/JSElementCustom.cpp: (WebCore::JSElement::querySelector): (WebCore::JSElement::querySelectorAll):
  • dom/Document.idl:
  • dom/Element.idl:

LayoutTests:

2008-07-07 Sam Weinig <sam@webkit.org>

Reviewed by Geoffrey Garen.

Fix for https://bugs.webkit.org/show_bug.cgi?id=19928
querySelectorAll should throw an exception if a NSResolver is passed in.

  • fast/dom/SelectorAPI/not-supported-NSResolver-expected.txt: Added.
  • fast/dom/SelectorAPI/not-supported-NSResolver.html: Added.
13:35 Changeset [35040] by beidson@apple.com

WebCore:

2008-07-07 Brady Eidson <beidson@apple.com>

Reviewed by Mitz and Geoff

Test: fast/loader/empty-ref-versus-no-ref.html

Fix for https://bugs.webkit.org/show_bug.cgi?id=18951 and <rdar://problem/5921760>
"all DOM operations stop working when location.hash set to '#'"

The underlying problem is that KURL didn't really know the difference between "empty ref"
and "no ref at all" when changing the ref. So changing to the empty ref in JS ended up
affecting removal of the ref, which ended up causing an infinite load load, also killing
javascript.

  • platform/KURL.cpp: (WebCore::KURL::setRef): Changed "isEmpty()" to "isNull()", since NULL has the special meaning of "no ref at all" while empty means "empty ref"

LayoutTests:

2008-07-07 Brady Eidson <beidson@apple.com>

Reviewed by Mitz and Geoff

Test the fix for https://bugs.webkit.org/show_bug.cgi?id=18951 and <rdar://problem/5921760>

  • fast/loader/empty-ref-versus-no-ref-expected.txt: Added.
  • fast/loader/empty-ref-versus-no-ref.html: Added.
11:12 Changeset [35039] by kmccullough@apple.com

JavaScriptCore:

2008-07-07 Kevin McCullough <kmccullough@apple.com>

Reviewed by Darin.

When the profiler is running it gathers information and creates a
Profile. After it finishes the Profile can be sorted and have other
data refinements run over it. Both of these were done in the same class
before. Now I split the gathering operations into a new class called
ProfileGenerator.

  • JavaScriptCore.xcodeproj/project.pbxproj:
  • profiler/Profile.cpp: Removed code related to the gather stage of a Profile's creation. (KJS::Profile::create): (KJS::Profile::Profile):
  • profiler/Profile.h: Ditto. (KJS::Profile::title): (KJS::Profile::callTree): (KJS::Profile::setHead):
  • profiler/ProfileGenerator.cpp: Added. This is the class that will handle the stage of creating a Profile. Once the Profile is finished being created, this class goes away. (KJS::ProfileGenerator::create): (KJS::ProfileGenerator::ProfileGenerator): (KJS::ProfileGenerator::title): (KJS::ProfileGenerator::willExecute): (KJS::ProfileGenerator::didExecute): (KJS::ProfileGenerator::stopProfiling): (KJS::ProfileGenerator::didFinishAllExecution): (KJS::ProfileGenerator::removeProfileStart): (KJS::ProfileGenerator::removeProfileEnd):
  • profiler/ProfileGenerator.h: Added. (KJS::ProfileGenerator::profile): (KJS::ProfileGenerator::originatingGlobalExec): (KJS::ProfileGenerator::pageGroupIdentifier): (KJS::ProfileGenerator::client): (KJS::ProfileGenerator::stoppedProfiling):
  • profiler/Profiler.cpp: Now operates with the ProfileGenerator instead of the Profile. (KJS::Profiler::startProfiling): (KJS::Profiler::stopProfiling): (KJS::Profiler::didFinishAllExecution): It is here that the Profile is handed off to its client and the Profile Generator is no longer needed. (KJS::dispatchFunctionToProfiles): (KJS::Profiler::willExecute): (KJS::Profiler::didExecute):
  • profiler/Profiler.h: Cleaned up the includes and subsequently the forward declarations. Also use the new ProfileGenerator. (KJS::ProfilerClient::~ProfilerClient): (KJS::Profiler::currentProfiles):
  • profiler/TreeProfile.cpp: Use Profile's new interface. (KJS::TreeProfile::create): (KJS::TreeProfile::TreeProfile):
  • profiler/TreeProfile.h:

WebCore:

2008-07-07 Kevin McCullough <kmccullough@apple.com>

Reviewed by Darin.

Because profiler.h no longer #includes profile.h we need to explicitly
include it in console.cpp.

  • page/Console.cpp:
10:59 Changeset [35038] by zimmermann@webkit.org

Not reviewed. Build fix.
Fix --svg-filters build (affects Qt build, mac/win don't have it on by default)

09:01 Changeset [35037] by weinig@apple.com

2008-07-07 Sam Weinig <sam@webkit.org>

Reviewed by Cameron Zwarich.

Third step in broad cleanup effort.

[ File list elided ]

07:28 Changeset [35036] by mrowe@apple.com

Fix references to WebRenderNode.h and WebRenderNode.mm in Xcode project so that they don't have an unnecessary ".." in the path.

07:12 Changeset [35035] by zimmermann@webkit.org

Reviewed by Antti.

Fixes: http://bugs.webkit.org/show_bug.cgi?id=17779 (SVG 1.1 Errata demands "SVG JavaScript Liveness" support)

Revised version of the patch, not using pointer-to-member function callbacks anymore - after discussion with Adam Roben.
Remove unneccessary parameters of all macros. Hopefully build on Windows works as expected now, watching build bot...

05:55 Changeset [35034] by zimmermann@webkit.org

Reviewed by Oliver.

Working on: http://bugs.webkit.org/show_bug.cgi?id=17779 (SVG 1.1 Errata demands "SVG JavaScript Liveness" support)

Splitting up large patch in small chunk: Land valueAsString() implementation on it's own.

Added valueAsString() conversion for all SVG primitive types, needed by the SVG<->XML synchronization layer.
Unify "null value for a SVG animated type" concept, which was implemented in SVGDocumentExtensions before, in SVGAnimatedTemplate.

02:33 Changeset [35033] by jchaffraix@webkit.org

WebCore:

2008-07-07 Julien Chaffraix <jchaffraix@webkit.org>

Reviewed by Eric.

Disable renderer creation for XBLElement and
XBLDocument.

  • xbl/XBLDocument.h: (WebCore::XBLDocument::XBLDocument):
  • xbl/XBLElement.h: (WebCore::XBLElement::createRendererIfNeeded):
01:14 Changeset [35032] by jchaffraix@webkit.org

WebCore:

2008-07-07 Julien Chaffraix <jchaffraix@webkit.org>

Reviewed by Eric.

Bug 19918: [XBL] Add XBLDocument.

  • WebCore.xcodeproj/project.pbxproj:
  • dom/DOMImplementation.cpp: (WebCore::DOMImplementation::createDocument): Added XBLDocument creation.
  • dom/Document.h: (WebCore::Document::isXBLDocument):
  • xbl/XBLDocument.h: Added. (WebCore::XBLDocument::create): (WebCore::XBLDocument::isXBLDocument): (WebCore::XBLDocument::XBLDocument):

07/06/08:

23:14 Changeset [35031] by weinig@apple.com

WebCore:

2008-07-06 Sam Weinig <sam@webkit.org>

Reviewed by Dan Bernstein.

Rename "Access-Contol-Origin" to "Origin" to match the latest
Access Control for Cross-Site Request draft. (Editor's Draft 25 May 2008)

  • xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::makeSimpleCrossSiteAccessRequest): (WebCore::XMLHttpRequest::makeCrossSiteAccessRequestWithPreflight): (WebCore::XMLHttpRequest::handleAsynchronousPreflightResult):

LayoutTests:

2008-07-06 Sam Weinig <sam@webkit.org>

Reviewed by Dan Bernstein.

Rename "Access-Contol-Origin" to "Origin" to match the latest
Access Control for Cross-Site Request draft. (Editor's Draft 25 May 2008)

  • http/tests/xmlhttprequest/access-control-basic-allow-access-control-origin-header-data-url-expected.txt:
  • http/tests/xmlhttprequest/access-control-basic-allow-access-control-origin-header-expected.txt:
  • http/tests/xmlhttprequest/resources/access-control-basic-allow-access-control-origin-header.cgi:
21:17 Changeset [35030] by mitz@apple.com
  • try to fix the Windows build
  • WebCore.vcproj/WebCore.vcproj:
20:10 Changeset [35029] by mitz@apple.com
  • add missing brace
  • platform/graphics/qt/FontCacheQt.cpp:
20:08 Changeset [35028] by mitz@apple.com
  • try to fix the Qt build
  • platform/graphics/qt/FontCacheQt.cpp: (WebCore::FontCache::addClient): (WebCore::FontCache::removeClient):
19:49 Changeset [35027] by weinig@apple.com

JavaScriptCore:

2008-07-06 Sam Weinig <sam@webkit.org>

Reviewed by Cameron Zwarich.

Second step in broad cleanup effort.

[ File list elided ]

WebCore:

2008-07-06 Sam Weinig <sam@webkit.org>

Reviewed by Cameron Zwarich.

Add #include for kjs/protect.h.

  • xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::loadRequestAsynchronously):
19:40 Changeset [35026] by ddkilzer@apple.com

Save a few more bits in RenderStyle

Reviewed by Darin.

No test cases added since there is no change in behavior.

This changes WebCore::StyleMarqueeData from using 6 bits to 5 bits,
WebCore::RenderStyle::inherited_flags from using 36 bits to 35 bits,
and WebCore::RenderStyle::noninherited_flags from using 49 bits to
47 bits.

  • rendering/style/RenderStyle.h: (WebCore::StyleMarqueeData::behavior): Reduce from 3 bits to 2 bits since EMarqueeBehavior has 4 items. (WebCore::RenderStyle::inherited_flags._text_align): Reduce from 4 bits to 3 bits since ETextAlign has 8 items. (WebCore::RenderStyle::noninherited_flags._overflowX): Reduce from 4 bits to 3 bits since EOverflow has 6 items. (WebCore::RenderStyle::noninherited_flags._overflowY): Ditto.
17:00 Changeset [35025] by mitz@apple.com

Reviewed by Darin Adler.

  • fix <rdar://problem/5735163> WebCore caching makes text look wrong after font changes; need to respond appropriately instead
  • css/CSSFontSelector.cpp: (WebCore::CSSFontSelector::CSSFontSelector): Added a call to FontCache::addClient(). (WebCore::CSSFontSelector::~CSSFontSelector): Added a call to FontCache::removeClient(). (WebCore::CSSFontSelector::fontCacheInvalidated): Added. Called by the font cache when it is invalidated, and ensures that the document is updated.
  • css/CSSFontSelector.h:
  • platform/graphics/Font.cpp: (WebCore::Font::operator==): Added code to compare the font fallback lists' font cache generations.
  • platform/graphics/FontCache.cpp: (WebCore::FontCache::addClient): Added. (WebCore::FontCache::removeClient): Added. (WebCore::FontCache::generation): Added. (WebCore::FontCache::invalidate): Added. Deletes the platform data cache, increments the generation counter, and notifies all clients.
  • platform/graphics/FontCache.h:
  • platform/graphics/FontFallbackList.cpp: (WebCore::FontFallbackList::FontFallbackList): Added initialization of m_generation. (WebCore::FontFallbackList::invalidate): Added code to reset m_generation. (WebCore::FontFallbackList::fontDataAt): Added an assertion. (WebCore::FontFallbackList::fontDataForCharacters): Ditto. (WebCore::FontFallbackList::setPlatformFont): Ditto.
  • platform/graphics/FontFallbackList.h: (WebCore::FontFallbackList::generation): Added. Returns the font cache generation used to populate the list.
  • platform/graphics/FontSelector.h: (WebCore::FontSelector::fontCacheInvalidated): Added.
  • platform/graphics/mac/FontCacheMac.mm: (WebCore::fontCacheATSNotificationCallback): Added. Calls FontCache::invalidate(). (WebCore::FontCache::platformInit): Added code to register for ATS notifications.
  • svg/SVGFontFaceElement.cpp: Removed unneeded #inlcudes.

07/05/08:

22:35 Changeset [35024] by mrowe@apple.com

Remove WebSearchableTextView as it has been unused for some time now.

Reviewed by John Sullivan.

22:35 Changeset [35023] by mrowe@apple.com

Don't leak the result of WKCopyCFLocalizationPreferredName when running under GC.

Reviewed by John Sullivan.

22:26 Changeset [35022] by weinig@apple.com

2008-07-05 Sam Weinig <sam@webkit.org>

Reviewed by Cameron Zwarich.

First step in broad cleanup effort.

[ File list elided ]

17:10 Changeset [35021] by weinig@apple.com

JavaScriptCore:

2008-07-05 Sam Weinig <sam@webkit.org>

Rubber-stamped by Cameron Zwarich.

Rename list.h/cpp to ArgList.h/cpp.

  • GNUmakefile.am:
  • JavaScriptCore.pri:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • JavaScriptCoreSources.bkl:
  • VM/Machine.h:
  • kjs/AllInOneFile.cpp:
  • kjs/ArgList.cpp: Copied from JavaScriptCore/kjs/list.cpp.
  • kjs/ArgList.h: Copied from JavaScriptCore/kjs/list.h.
  • kjs/IndexToNameMap.cpp:
  • kjs/JSGlobalData.cpp:
  • kjs/JSGlobalData.h:
  • kjs/JSObject.h:
  • kjs/collector.cpp:
  • kjs/list.cpp: Removed.
  • kjs/list.h: Removed.

WebCore:

2008-07-05 Sam Weinig <sam@webkit.org>

Rubber-stamped by Cameron Zwarich.

Rename list.h/cpp to ArgList.h/cpp.

  • ForwardingHeaders/kjs/ArgList.h: Copied from WebCore/ForwardingHeaders/kjs/list.h.
  • ForwardingHeaders/kjs/list.h: Removed.
  • WebCore.vcproj/WebCore.vcproj:
  • bridge/qt/qt_instance.cpp:
  • page/Console.cpp:
16:40 Changeset [35020] by weinig@apple.com

2008-07-05 Sam Weinig <sam@webkit.org>

Fix non-AllInOne builds again.

  • kjs/BooleanPrototype.cpp:
  • kjs/ErrorPrototype.cpp:
  • kjs/FunctionPrototype.cpp:
  • kjs/NumberPrototype.cpp:
  • kjs/ObjectPrototype.cpp:
16:36 Changeset [35019] by weinig@apple.com

2008-07-05 Sam Weinig <sam@webkit.org>

Fix build on case-sensitive build systems.

  • kjs/IndexToNameMap.cpp:
16:32 Changeset [35018] by weinig@apple.com

2008-07-05 Sam Weinig <sam@webkit.org>

Fix build.

  • kjs/Arguments.cpp:
  • kjs/BooleanPrototype.cpp:
  • kjs/DateConstructor.cpp:
  • kjs/ErrorPrototype.cpp:
  • kjs/FunctionPrototype.cpp:
  • kjs/NumberPrototype.cpp:
  • kjs/ObjectPrototype.cpp:
  • kjs/RegExpPrototype.cpp:
  • kjs/StringConstructor.cpp:
  • kjs/lookup.cpp:
16:26 Changeset [35017] by weinig@apple.com

2008-07-05 Sam Weinig <sam@webkit.org>

Fix non-AllInOne build.

  • kjs/JSGlobalObject.cpp:
16:19 Changeset [35016] by weinig@apple.com

JavaScriptCore:

2008-07-05 Sam Weinig <sam@webkit.org>

Rubber-stamped by Cameron Zwarich.

Split Arguments, IndexToNameMap, PrototypeFunction, GlobalEvalFunction and
the functions on the global object out of JSFunction.h/cpp.

  • GNUmakefile.am:
  • JavaScriptCore.pri:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • JavaScriptCoreSources.bkl:
  • VM/Machine.cpp:
  • kjs/AllInOneFile.cpp:
  • kjs/Arguments.cpp: Copied from JavaScriptCore/kjs/JSFunction.cpp.
  • kjs/Arguments.h: Copied from JavaScriptCore/kjs/JSFunction.h.
  • kjs/GlobalEvalFunction.cpp: Copied from JavaScriptCore/kjs/JSFunction.cpp.
  • kjs/GlobalEvalFunction.h: Copied from JavaScriptCore/kjs/JSFunction.h.
  • kjs/IndexToNameMap.cpp: Copied from JavaScriptCore/kjs/JSFunction.cpp.
  • kjs/IndexToNameMap.h: Copied from JavaScriptCore/kjs/JSFunction.h.
  • kjs/JSActivation.cpp:
  • kjs/JSFunction.cpp:
  • kjs/JSFunction.h:
  • kjs/JSGlobalObject.cpp:
  • kjs/JSGlobalObjectFunctions.cpp: Copied from JavaScriptCore/kjs/JSFunction.cpp.
  • kjs/JSGlobalObjectFunctions.h: Copied from JavaScriptCore/kjs/JSFunction.h. The functions on the global object should be in JSGlobalObject.cpp, but putting them there was a 0.5% regression.
  • kjs/PrototypeFunction.cpp: Copied from JavaScriptCore/kjs/JSFunction.cpp.
  • kjs/PrototypeFunction.h: Copied from JavaScriptCore/kjs/JSFunction.h.
  • kjs/Shell.cpp:
  • kjs/lexer.cpp:
  • kjs/ustring.cpp:

WebCore:

2008-07-05 Sam Weinig <sam@webkit.org>

Rubber-stamped by Cameron Zwarich.

Split Arguments, IndexToNameMap, PrototypeFunction, GlobalEvalFunction and
the functions on the global object out of JSFunction.h/cpp.

  • ForwardingHeaders/kjs/PrototypeFunction.h: Added.
  • bindings/js/JSDOMBinding.cpp:
13:44 Changeset [35015] by mitz@apple.com

Rubber-stamped by Sam Weinig.

  • rename BidiIterator and BidiState

Renamed BidiIterator to InlineIterator and BidiState
to InlineBidiResolver. Renamed variables of type InlineBidiResolver{*,&}
to "resolver".

  • rendering/RenderBlock.h:
  • rendering/RootInlineBox.h:
  • rendering/bidi.cpp: (WebCore::InlineIterator::InlineIterator): (WebCore::operator==): (WebCore::operator!=): (WebCore::bidiNext): (WebCore::bidiFirst): (WebCore::InlineIterator::increment): (WebCore::InlineBidiResolver::increment): (WebCore::InlineIterator::atEnd): (WebCore::InlineIterator::current): (WebCore::InlineIterator::direction): (WebCore::chopMidpointsAt): (WebCore::checkMidpoints): (WebCore::addMidpoint): (WebCore::appendRunsForObject): (WebCore::InlineBidiResolver::appendRun): (WebCore::RenderBlock::bidiReorderLine): (WebCore::buildCompactRuns): (WebCore::RenderBlock::layoutInlineChildren): (WebCore::RenderBlock::determineStartPosition): (WebCore::RenderBlock::determineEndPosition): (WebCore::RenderBlock::matchedEndLine): (WebCore::skipNonBreakingSpace): (WebCore::requiresLineBox): (WebCore::RenderBlock::generatesLineBoxesForInlineChild): (WebCore::RenderBlock::skipWhitespace): (WebCore::shouldSkipWhitespaceAfterStartObject): (WebCore::RenderBlock::findNextLineBreak):
10:57 Changeset [35014] by ddkilzer@apple.com

Fixed ChangeLog entry for r35006.

03:35 Changeset [35013] by jmalonzo@webkit.org

2008-07-05 Jan Michael Alonzo <jmalonzo@webkit.org>

Rubber-stamped by Oliver Hunt

Coding style fix

  • html/CanvasRenderingContext2D.cpp: Indentation fix

07/04/08:

23:44 Changeset [35012] by oliver@apple.com

Fix windows build

23:18 Changeset [35011] by weinig@apple.com

2008-07-04 Sam Weinig <sam@webkit.org>

Really fix the mac build.

22:59 Changeset [35010] by weinig@apple.com

2008-07-04 Sam Weinig <sam@webkit.org>

Fix Qt build.

  • bridge/qt/qt_instance.cpp:
22:47 Changeset [35009] by weinig@apple.com

2008-07-04 Sam Weinig <sam@webkit.org>

Fix mac build.

22:44 Changeset [35008] by weinig@apple.com

2008-07-04 Sam Weinig <sam@webkit.org>

Fix non-AllInOne builds.

  • kjs/Error.cpp:
  • kjs/GetterSetter.cpp:
  • kjs/JSImmediate.cpp:
  • kjs/operations.cpp:
22:35 Changeset [35007] by weinig@apple.com

JavaScriptCore:

2008-07-04 Sam Weinig <sam@webkit.org>

Rubber-stamped by Dan Bernstein.

Split Error and GetterSetter out of JSObject.h.

  • API/JSCallbackObjectFunctions.h:
  • GNUmakefile.am:
  • JavaScriptCore.pri:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • JavaScriptCoreSources.bkl:
  • kjs/AllInOneFile.cpp:
  • kjs/ClassInfo.h: Copied from JavaScriptCore/kjs/JSObject.h.
  • kjs/Error.cpp: Copied from JavaScriptCore/kjs/JSObject.cpp.
  • kjs/Error.h: Copied from JavaScriptCore/kjs/JSObject.h.
  • kjs/GetterSetter.cpp:
  • kjs/GetterSetter.h: Copied from JavaScriptCore/kjs/JSObject.h.
  • kjs/JSObject.cpp:
  • kjs/JSObject.h:
  • kjs/nodes.h:

JavaScriptGlue:

2008-07-04 Sam Weinig <sam@webkit.org>

Rubber-stamped by Dan Bernstein.

  • JSObject.h: Rename the header guard as it now conflicts with the JSObject in JavaScriptCore.

WebCore:

2008-07-04 Sam Weinig <sam@webkit.org>

Rubber-stamped by Dan Bernstein.

Split Error and GetterSetter out of JSObject.h.

  • ForwardingHeaders/kjs/Error.h: Added.
  • bindings/js/JSCanvasRenderingContext2DCustom.cpp:
  • bindings/js/JSClipboardCustom.cpp:
  • bindings/js/JSDOMWindowBase.cpp:
  • bindings/js/JSEventTargetBase.cpp:
  • bindings/js/JSHTMLDocumentCustom.cpp:
  • bindings/js/JSXMLHttpRequestCustom.cpp:
  • bindings/scripts/CodeGeneratorJS.pm:
  • bridge/NP_jsobject.cpp:
  • bridge/jni/jni_instance.cpp:
  • bridge/jni/jni_runtime.cpp:
  • bridge/objc/objc_instance.mm:
  • bridge/objc/objc_runtime.mm:
  • bridge/objc/objc_utility.h:
  • bridge/runtime_array.cpp:
  • bridge/runtime_method.cpp:
  • bridge/runtime_object.cpp:
21:51 Changeset [35006] by ddkilzer@apple.com

WebCore:

Bug 15290: REGRESSION (r14184-r14216): Duplicate DOCTYPE definitions when saving files as webarchives

<https://bugs.webkit.org/show_bug.cgi?id=15290>
<rdar://problem/5509173>

Reviewed by Dan Bernstein.

Tests: webarchive/archive-empty-frame-dom-expected.txt

webarchive/doctype.html

  • editing/markup.cpp: (WebCore::createFullMarkup): If the Node is a Document or a DocumentType, don't prepend the <!DOCTYPE> tag since that will cause it to be duplicated.
  • loader/archive/cf/LegacyWebArchive.cpp: (WebCore::LegacyWebArchive::create): Ditto.

LayoutTests:

Bug 15290: REGRESSION (r14184-r14216): Duplicate DOCTYPE definitions when saving files as webarchives

<https://bugs.webkit.org/show_bug.cgi?id=15290>
<rdar://problem/5509173>

Reviewed by Dan Bernstein.

  • webarchive/archive-empty-frame-dom-expected.txt: Updated test results now that we don't emit two <!DOCTYPE> tags.
  • webarchive/doctype-expected.txt: Added.
  • webarchive/doctype.html: Added.
21:34 Changeset [35005] by jmalonzo@webkit.org

2008-07-04 Jan Michael Alonzo <jmalonzo@webkit.org>

Gtk build fix

  • GNUmakefile.am:
15:43 Changeset [35004] by cwzwarich@webkit.org

2008-07-04 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Eric Seidel.

Bring our implementation of the Netscape plugin API closer to current
code style guidelines.

  • bridge/NP_jsobject.cpp: (getListFromVariantArgs): (jsAllocate): (jsDeallocate): (_NPN_CreateScriptObject): (_NPN_CreateNoScriptObject): (_NPN_InvokeDefault): (_NPN_Invoke): (_NPN_Evaluate): (_NPN_GetProperty): (_NPN_SetProperty): (_NPN_RemoveProperty): (_NPN_HasProperty): (_NPN_HasMethod): (_NPN_Enumerate):
  • bridge/npruntime_impl.h:
05:04 Changeset [35003] by hausmann@webkit.org

Fix the Qt/Windows build.

04:37 Changeset [35002] by hausmann@webkit.org

Fix the Mac build for real, don't define listDirectory() twice.

03:55 Changeset [35001] by hausmann@webkit.org

Prospective Mac build fix.

03:41 Changeset [35000] by hausmann@webkit.org

2008-07-04 Tor Arne Vestbø <tavestbo@trolltech.com>

Reviewed by Simon.

Move duplicated code from each PluginDatabaseXX-implementation
to PluginDabase.cpp -- ifdefed based on the XP_PLATFORM we are
compiling plugins for.

This make the code cleaner and we can share common patterns.
The only implementation left which is specific is the Win
implementation (also used by QtWebKit/Win), but we might
want to move that too.

03:41 Changeset [34999] by hausmann@webkit.org

2008-06-25 Tor Arne Vestbø <tavestbo@trolltech.com>

Reviewed by Simon.

Add an abstraction for listing files in a directory to FileSystem.h.

Currently this is only implemented for the Qt and GTK port. The other
ports have a default implementations which call notImplemented().

03:10 Changeset [34998] by hausmann@webkit.org

2008-07-04 Benjamin C Meyer <ben@meyerhome.net>

Reviewed by Simon.

Update the webkit version in the QtWebKit useragent string to match trunk

01:28 Changeset [34997] by hausmann@webkit.org

Fix the Wx build

00:46 Changeset [34996] by hausmann@webkit.org

Fix the Gtk build, adapt to renamed files.

00:37 Changeset [34995] by hausmann@webkit.org

Fix the Qt build, adapt to renamed files.

00:25 Changeset [34994] by mrowe@apple.com

Fix output path of recently-added script phase to reference the correct file.
This prevents Xcode from running the script phase unnecessarily, which caused
the generated header to be recreated and lead to AllInOneFile.cpp rebuilding.

Reviewed by Oliver Hunt.

07/03/08:

22:21 Changeset [34993] by oliver@apple.com

Move filter implementations to platform directory.

Reviewed by Eric Seidel

18:10 Changeset [34992] by oliver@apple.com

2008-07-03 Alex Mathews <possessedpenguinbob@gmail.com>

Reviewed by Oliver Hunt.

Bug 19835: WebKit needs cross-platform filter system
<https://bugs.webkit.org/show_bug.cgi?id=19835>

More class refactoring in preparation for cross-platform filter
implementation.

17:06 Changeset [34991] by mrowe@apple.com

Follow-up to the 64-bit build fix. Use intptr_t rather than ssize_t as the latter is non-standard and does not exist on Windows.

16:22 Changeset [34990] by mrowe@apple.com

Fix the 64-bit build.

14:37 Changeset [34989] by mitz@apple.com

WebCore:

Reviewed by John Sullivan.

  • fix <rdar://problem/6020930> Bidi Problem When Resizing Window

Test: fast/text/international/bidi-AN-after-empty-run.html

  • platform/text/BidiResolver.h: (WebCore::::appendRun): Changed to reset the current direction and "end of run" direction even in the empty run case.
  • rendering/bidi.cpp: (WebCore::BidiState::appendRun): Ditto.

LayoutTests:

Reviewed by John Sullivan.

  • test for <rdar://problem/6020930> Bidi Problem When Resizing Window
  • fast/text/international/bidi-AN-after-empty-run.html: Added.
  • platform/mac/fast/text/international/bidi-AN-after-empty-run-expected.checksum: Added.
  • platform/mac/fast/text/international/bidi-AN-after-empty-run-expected.png: Added.
  • platform/mac/fast/text/international/bidi-AN-after-empty-run-expected.txt: Added.
13:52 Changeset [34988] by jhoneycutt@apple.com

<rdar://5983747> Safari crashes trying to load the SilverLight plugin

If a plug-in returned an error code from NPP_NewStream, we would call
NPP_DestroyStream while cleaning up the request. We now only call
NPP_DestroyStream if NPP_NewStream was successful, matching Firefox.

Reviewed by Anders.

12:35 Changeset [34987] by hyatt@apple.com

2008-07-03 David Hyatt <hyatt@apple.com>

Revise Dan's fix for an assert on Windows, since layoutIfNeededRecursive doesn't exist on the
Mac. Revert updateControlTints and add the layout call outside of it in the already-existing
!PLATFORM(MAC) ifdef in FocusController's setActive method.

Reviewed by ggaren, weinig

  • page/FocusController.cpp: (WebCore::FocusController::setActive):
  • page/FrameView.cpp: (WebCore::FrameView::updateControlTints):
12:13 Changeset [34986] by ap@webkit.org

Reviewed by Darin.

https://bugs.webkit.org/show_bug.cgi?id=19884
Locating a store at www.366.ru doesn't work

Test: fast/forms/submit-with-base.html

  • html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::submit): Treat empty action the same as missing one - ignore base URL.
12:06 Changeset [34985] by ggaren@apple.com

2008-07-03 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Removed checking for the array get/put fast case from the array code.
Callers who want the fast case should call getIndex and/or setIndex
instead. (get_by_val and put_by_val already do this.)


SunSpider reports no change overall, but a 1.4% speedup on fannkuch and
a 3.6% speedup on nsieve.

11:51 Changeset [34984] by mitz@apple.com

Reviewed by John Sullivan.

  • fix <rdar://problem/6048904> Assert in WebCore::Frame::paint in Windows
  • page/FrameView.cpp: (WebCore::FrameView::updateControlTints): Changed to update layout recursively and not just for the top-level frame.
11:26 Changeset [34983] by mitz@apple.com

Windows build fix

11:13 Changeset [34982] by cwzwarich@webkit.org

2008-07-03 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Geoff.

Bug 19853: REGRESSION (r34838): Crash when visiting http://www.thewebsiteisdown.com/salesguy.html
https://bugs.webkit.org/show_bug.cgi?id=19853

Remove the body of _NPN_SetException(), because it was simply calling
throwError(), which sets an exception on an ExecState but does not
actually handle it. The presence of an exception on the global ExecState
causes assertions that there is no exception set on that ExecState to
fail, as well as causing Machine::execute() to mistakingly return 0 in
some cases, as it assumes the presence of an exception implies that it
has run out of memory.

  • bridge/NP_jsobject.cpp: (_NPN_SetException):
10:57 Changeset [34981] by mitz@apple.com

Reviewed by Anders Carlsson.

  • Windows build fix
  • VM/Machine.cpp: (KJS::Machine::Machine):
06:01 Changeset [34980] by jmalonzo@webkit.org

2008-07-03 Maciej Katafiasz <mathrick@gmail.com>

Gtk build fix with SVG filters enabled

  • GNUmakefile.am: Include missing SVG filter sources
01:06 Changeset [34979] by hausmann@webkit.org

2008-07-03 Simon Hausmann <hausmann@webkit.org>

Reviewed by Alexey Proskuryakov.

Fix the non-threaded build.

00:54 Changeset [34978] by hausmann@webkit.org

Fix the Qt build

00:44 Changeset [34977] by ap@webkit.org

Reviewed by Geoff.

Don't create unnecessary JSGlobalData instances.

  • kjs/JSGlobalData.h:
  • kjs/JSGlobalData.cpp: (KJS::JSGlobalData::threadInstanceExists): (KJS::JSGlobalData::sharedInstanceExists): (KJS::JSGlobalData::threadInstance): (KJS::JSGlobalData::sharedInstance): (KJS::JSGlobalData::threadInstanceInternal): (KJS::JSGlobalData::sharedInstanceInternal): Added methods to query instance existence.
  • kjs/InitializeThreading.cpp: (KJS::initializeThreadingOnce): Initialize thread instance static in a new way.
  • API/JSBase.cpp: (JSGarbageCollect):
  • kjs/collector.cpp: (KJS::Heap::collect): Check for instance existence before accessing it.
00:10 Changeset [34976] by ggaren@apple.com

2008-07-03 Geoffrey Garen <ggaren@apple.com>

Reviewed by Mark Rowe.


Updated this test result to match our new, smaller recursion limit.
With the new limit, an exception is thrown on entry to the document.write
script, which is why you see an exception logged to the console, instead
of caught inside the script.

  • fast/js/global-recursion-on-full-stack-expected.txt:
Note: See TracTimeline for information about the timeline view.