Timeline


and

12/03/07:

23:35 Changeset [28381] by pewtermoose@webkit.org

Rubberstamped by Tim.

Make the bullets lickable.

  • wwwroot/planetwebkit.css:
23:19 Changeset [28380] by pewtermoose@webkit.org

Reviewed by Adam.

Make it sexy with awesome icon and tweaks from Tim.

  • templates/index.html.tmpl:
  • wwwroot/ie.css: Added.
  • wwwroot/images/ie-nav-blue.png: Added.
  • wwwroot/planetwebkit.css: Added.
22:59 Changeset [28379] by ddkilzer@apple.com

Added bug reference.

21:35 Changeset [28378] by aroben@apple.com

New tag.

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

Move JavaScriptCore thread testing code to pthread specific directory
and remove the dependance on CoreFoundation by using WTF::HashSet.

Reviewed by Geoff and Oliver.

  • DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
  • DumpRenderTree/ForwardingHeaders/wtf/HashMap.h: Added.
  • DumpRenderTree/ForwardingHeaders/wtf/HashSet.h: Added.
  • DumpRenderTree/ForwardingHeaders/wtf/Vector.h: Added.
  • DumpRenderTree/JavaScriptThreading.h: Copied from DumpRenderTree/mac/JavaScriptThreading.h.
  • DumpRenderTree/mac/JavaScriptThreading.cpp: Removed.
  • DumpRenderTree/mac/JavaScriptThreading.h: Removed.
  • DumpRenderTree/pthreads: Added.
  • DumpRenderTree/pthreads/JavaScriptThreadingPthreads.cpp: Copied from DumpRenderTree/mac/JavaScriptThreading.cpp. (javaScriptThreads): (runJavaScriptThread): (startJavaScriptThreads): (stopJavaScriptThreads):
20:59 Changeset [28376] by aroben@apple.com

New tag.

20:57 Changeset [28375] by aroben@apple.com

Versioning.

17:08 Changeset [28374] by mitz@apple.com

2007-12-03 Andrew Bonventre <andybons@google.com>

Reviewed by Darin Adler.

  • Drosera/debugger.js: Fixed javascript error where document property should have been used instead of contentDocument in switchFunction that was breaking the select symbol dropdown menu. This is because window.frames will return a Window object and not a frame object like the author was originally expecting.
16:44 Changeset [28373] by sfalken@apple.com

Build fix.

16:28 Changeset [28372] by mitz@apple.com

WebCore:

Reviewed by Darin Adler.

  • fix <rdar://problem/5134044> fast/frames/frame-src-attribute.html fails on Windows
  • platform/win/ScrollViewWin.cpp: (WebCore::ScrollView::visibleWidth): Do not return negative values. (WebCore::ScrollView::visibleHeight): Ditto.

LayoutTests:

Reviewed by Darin Adler.

  • remove passing test
  • platform/win/Skipped:
16:25 Changeset [28371] by mitz@apple.com

WebCore:

Reviewed by Dave Hyatt.

  • fix <rdar://problem/5346452> Resize event doesn't fire on body element inside a frame

Test: fast/events/resize-subframe.html

  • page/FrameView.cpp: (WebCore::FrameViewPrivate::FrameViewPrivate): Added a timer used when deferring tasks that need to be done after layout. (WebCore::FrameViewPrivate::reset): (WebCore::FrameView::~FrameView): (WebCore::FrameView::layout): Moved the updating of widget positions, loading plug-ins and sending events queued up during layout into performPostLayoutTasks(). performPostLayoutTasks() is called after layout unless the layout was triggered by a previous layout's post- layout tasks. In the latter case, performPostLayoutTasks() is scheduled to run later. (WebCore::FrameView::performPostLayoutTasks): Performs work that needs to be done after layout but which can result in arbitrary code execution and therefore may re-invalidate the layout. This includes updating widget positions, loading plug-ins, and dispatching layout- related DOM events (scroll, overflow and resize). (WebCore::FrameView::postLayoutTimerFired): (WebCore::FrameView::dispatchScheduledEvents):
  • page/FrameView.h:
  • page/mac/WebCoreFrameBridge.h:
  • page/mac/WebCoreFrameBridge.mm: Removed -sendResizeEvent since this is handled by FrameView now.

WebKit/gtk:

Reviewed by Dave Hyatt.

  • fix <rdar://problem/5346452> Resize event doesn't fire on body element inside a frame
  • WebView/webkitwebview.cpp: Remove the call to sendResizeEvent() since FrameView sends it now.

WebKit/mac:

Reviewed by Dave Hyatt.

  • fix <rdar://problem/5346452> Resize event doesn't fire on body element inside a frame
  • WebView/WebHTMLView.mm: (-[WebHTMLView layoutToMinimumPageWidth:maximumPageWidth:adjustingViewSize:]): Removed the code that checked if the view had resized and sent the resize event, since FrameView sends resize events now.
  • WebView/WebHTMLViewInternal.h:

WebKit/win:

Reviewed by Dave Hyatt.

  • fix <rdar://problem/5346452> Resize event doesn't fire on body element inside a frame
  • WebView.cpp: (WebViewWndProc): Removed call to sendResizeEvent() since FrameView sends them now.

LayoutTests:

Reviewed by Dave Hyatt.

  • test for <rdar://problem/5346452> Resize event doesn't fire on body element inside a frame
  • fast/events/resize-subframe-expected.txt: Added.
  • fast/events/resize-subframe.html: Added.
14:56 Changeset [28370] by darin@apple.com

JavaScriptCore:

Reviewed by Geoff.

Test: fast/js/recursion-limit-equal.html

  • kjs/operations.cpp: (KJS::equal): Check the exception from toPrimitive.

LayoutTests:

Reviewed by Geoff.

  • fast/js/recursion-limit-equal-expected.txt: Added.
  • fast/js/recursion-limit-equal.html: Added.
  • fast/js/resources/recursion-limit-equal.js: Added.
14:15 Changeset [28369] by kmccullough@apple.com

WebKit/win:

Reviewed by Adam.

  • <rdar://5618942> Drosera: Console window does not process everything correctly.
  • <rdar://5619005> Drosera: could be sped up by moving the WebScriptScope stuff into the WebScriptCallFrame.
  • Now the console can correctly process objects and does not receive notifications from JavaScriptCore about the JavaScript in Drosera's own process.
  • Interfaces/IWebScriptCallFrame.idl: Moved the variable lookup functions from WebScriptScope to here.
  • Interfaces/WebKit.idl: Removed WebScriptScope.
  • WebKit.vcproj/Interfaces.vcproj: Ditto.
  • WebKit.vcproj/WebKit.vcproj: Ditto.
  • WebKit.vcproj/WebKitGUID.vcproj: Ditto.
  • WebScriptCallFrame.cpp: Moved WebScriptScope functionality into here. (WebScriptCallFrame::stringByEvaluatingJavaScriptFromString): Now returns a string value for things that are not strings. (WebScriptCallFrame::variableNames): Moved from WebScriptScope. (WebScriptCallFrame::valueForVariable): Moved from WebScriptScope. (WebScriptCallFrame::jsValueToString): Helper functions that converts any JSValue to a String.
  • WebScriptCallFrame.h: Moved WebScriptScope functionality into here.
  • WebScriptDebugger.cpp: Added nested guards so that Drosera does not receive notifications about JavaScript that Drosera is running just the JavaScript WebKit is running. (WebScriptDebugger::WebScriptDebugger): (WebScriptDebugger::sourceParsed): (WebScriptDebugger::callEvent): (WebScriptDebugger::atStatement): (WebScriptDebugger::returnEvent): (WebScriptDebugger::exception):
  • WebScriptDebugger.h: Ditto.
  • WebScriptScope.cpp: Removed.
  • WebScriptScope.h: Removed.

WebKitTools:

Reviewed by Adam.

  • <rdar://5618942> Drosera: Console window does not process everything correctly.
  • <rdar://5619005> Drosera: could be sped up by moving the WebScriptScope stuff into the WebScriptCallFrame.
  • Now the console can correctly process objects and does not receive notifications from JavaScriptCore about the JavaScript in Drosera's own process.
  • Drosera/win/DebuggerDocumentPlatform.cpp: (DebuggerDocument::getPlatformLocalScopeVariableNamesForCallFrame): (DebuggerDocument::platformValueForScopeVariableNamed):
14:14 Changeset [28368] by mitz@apple.com
  • fix a copy-and-paste-o
  • bindings/npruntime.cpp: (_NPN_GetIntIdentifier):
14:12 Changeset [28367] by slewis@apple.com

Check to see if we are building a debug root

  • Scripts/check-for-global-initializers:
14:07 Changeset [28366] by mitz@apple.com

JavaScriptCore:

Reviewed by Darin Adler.

  • fix an ASSERT when getIntIdentifier is called with 0 or -1
  • bindings/npruntime.cpp: (_NPN_GetIntIdentifier): We cannot use the hashmap for 0 and -1 since they are the empty value and the deleted value. Instead, keep the identifiers for those two integers in a static array.

WebKitTools:

Reviewed by Darin Adler.

  • added a testGetIntIdentifier() method to TestNetscapePlugIn
  • DumpRenderTree/TestNetscapePlugIn.subproj/PluginObject.c: (pluginInvoke):

LayoutTests:

Reviewed by Darin Adler.

  • added a test of the behavior of getIntIdentifier with the integers 0 and -1
  • plugins/getintidentifier-special-values-expected.txt: Added.
  • plugins/getintidentifier-special-values.html: Added.
13:43 Changeset [28365] by timothy@apple.com

Reviewed by Darin.

Change WebViewGetResourceLoadDelegateImplementations and WebViewGetFrameLoadDelegateImplementations
to return a pointer to the implementation struct instead of a copy of the struct. This changes
all of the callers to dereference the pointer to access the struct fields.

  • Plugins/WebNullPluginView.mm: (-[WebNullPluginView reportFailure]):
  • WebCoreSupport/WebFrameBridge.mm:
  • WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::dispatchDidLoadResourceFromMemoryCache): (WebFrameLoaderClient::assignIdentifierToInitialRequest): (WebFrameLoaderClient::dispatchWillSendRequest): (WebFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge): (WebFrameLoaderClient::dispatchDidCancelAuthenticationChallenge): (WebFrameLoaderClient::dispatchDidReceiveResponse): (WebFrameLoaderClient::willCacheResponse): (WebFrameLoaderClient::dispatchDidReceiveContentLength): (WebFrameLoaderClient::dispatchDidFinishLoading): (WebFrameLoaderClient::dispatchDidFailLoading): (WebFrameLoaderClient::dispatchDidHandleOnloadEvents): (WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad): (WebFrameLoaderClient::dispatchDidCancelClientRedirect): (WebFrameLoaderClient::dispatchWillPerformClientRedirect): (WebFrameLoaderClient::dispatchDidChangeLocationWithinPage): (WebFrameLoaderClient::dispatchWillClose): (WebFrameLoaderClient::dispatchDidStartProvisionalLoad): (WebFrameLoaderClient::dispatchDidReceiveTitle): (WebFrameLoaderClient::dispatchDidCommitLoad): (WebFrameLoaderClient::dispatchDidFailProvisionalLoad): (WebFrameLoaderClient::dispatchDidFailLoad): (WebFrameLoaderClient::dispatchDidFinishDocumentLoad): (WebFrameLoaderClient::dispatchDidFinishLoad): (WebFrameLoaderClient::dispatchDidFirstLayout):
  • WebView/WebView.mm: (WebViewGetResourceLoadDelegateImplementations): (WebViewGetFrameLoadDelegateImplementations): (-[WebView _dispatchDidReceiveIconFromWebFrame:]):
  • WebView/WebViewInternal.h:
13:37 Changeset [28364] by timothy@apple.com

Fix the build, move JSDOMWindow.h to the Copy Generated Headers phase.

13:25 Changeset [28363] by rwlbuis@webkit.org

Reviewed by Darin.

http://bugs.webkit.org/show_bug.cgi?id=15767
Text decorations do not respect "visibility" property

Only paint decorations if visibility is "visible".

12:35 Changeset [28362] by timothy@apple.com

Reviewed by Brady Eidson.

<rdar://problem/5539913> 188 crashes in WebViewGetFrameLoadDelegateImplementations
<rdar://problem/5586095> CrashTracer: [USER] 5000+ crashes in Safari and Dashboard in dispatchDidFailLoading
<rdar://problem/5607081> CrashTracer: [USER] 2150 crashes in Safari at com.apple.WebKit:
WebViewGetResourceLoadDelegateImplementations + 28

  • WebView/WebView.mm: (-[WebView _cacheResourceLoadDelegateImplementations]): If the delegate is nil, bzero the implementation cache. This just prevents us from calling getMethod() multiple times just to zero. (-[WebView _cacheFrameLoadDelegateImplementations]): Ditto. (WebViewGetResourceLoadDelegateImplementations): Return a zeroed implementations struct if the WebView is nil. This fixes the crashes. (WebViewGetFrameLoadDelegateImplementations): Ditto.
12:24 Changeset [28361] by alice.liu@apple.com

Removing passing tests

  • platform/win/Skipped:
11:55 Changeset [28360] by sfalken@apple.com

Fix build.

  • WebCore.vcproj/WebCore.vcproj:
11:47 Changeset [28359] by kdecker@apple.com

i Reviewed by Darin.

Fixed: <rdar://problem/5586978> REGRESSION (Safari 2-3): WebKit sometimes doesn't invoke Flash's NPP_SetWindow function and causes a hang

The CG-based Flash player would sometimes hang because (for CoreGraphics-based plug-ins) our code would only call into the NPP_SetWindow()
function when we tell the plug-in to draw. This created havoc with Flash because Flash expects the browser to call NPP_SetWindow()
and provide a valid graphics context regardless of whether or not it actually needs to draw.


  • Plugins/WebBaseNetscapePluginView.mm: (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]): Removed an incorrect comment and toned down an ASSERT that was too strict. (-[WebBaseNetscapePluginView updateAndSetWindow]): Removed an early return for CoreGraphics-based plug-ins which would sometimes altogether prevent updating the PortState and calling into a plug-ins NPP_SetWindow() function.
11:19 Changeset [28358] by sfalken@apple.com

Bump version.

10:57 Changeset [28357] by zimmermann@webkit.org

Reviewed by David.

Fixes: http://bugs.webkit.org/show_bug.cgi?id=15645
Don't allow selectors to interfere with the SVG shadow tree (<use> internal non-exposed tree).

10:44 Changeset [28356] by zimmermann@webkit.org

Rubber stamped by Mark.
Commit missing layout test results from my last commit (fix for bug 15403)

10:09 Changeset [28355] by zecke@webkit.org

2007-12-03 Holger Hans Peter Freyther <holger.freyther@trolltech.com>

Rubber stamped by Mark.

Always include config.h at the beginning of the file.

  • Api/qwebsettings.cpp:
10:09 Changeset [28354] by mitz@apple.com

WebCore:

Reviewed by Adam Roben.

  • fix <rdar://problem/5538651> REGRESSSION: domfuzz: null deref in WebCore::Document::canReplaceChild

Test: fast/dom/Document/replaceChild-null-oldChild.html

  • dom/Document.cpp: (WebCore::Document::canReplaceChild):

LayoutTests:

Reviewed by Adam Roben.

  • test for <rdar://problem/5538651> REGRESSSION: domfuzz: null deref in WebCore::Document::canReplaceChild
  • fast/dom/Document/replaceChild-null-oldChild-expected.txt: Added.
  • fast/dom/Document/replaceChild-null-oldChild.html: Added.
  • fast/dom/Document/resources/replaceChild-null-oldChild.js: Added.
10:05 Changeset [28353] by zecke@webkit.org
  • Avoid crashes by making sure everything is layouted before we start painting. This avoids a crash in Widget::invalidateRect because QPainter::begin would fail
  • The QWebFrame::layout() methods and calls are left untouched because this would be an API decision.

Signed-off-by: Simon

10:02 Changeset [28352] by zecke@webkit.org
  • Implement GraphicsContext::fillRoundedRect similiar to the CoreGraphics implementation only addPath is not called this seems to be only needed for CoreGraphics.

Signed-off-by: Simon

10:01 Changeset [28351] by zecke@webkit.org
  • SubClass QWebPage to handle hide and close events.
  • Forward these events to the InspectorController
  • The other options would have been using an eventFilter on the webpage and making InspectorClient a QObject or creating a QObject Observer.
  • Provide a simple QWebPage* createWindow implementation. This is needed to make FrameLoaderClientQt::dispatchCreatePage stop crashing in the case of the inspector client.

Signed-off-by: Simon

10:01 Changeset [28350] by zecke@webkit.org
  • Coding Style fixes

Signed-off-by: Simon

10:00 Changeset [28349] by zecke@webkit.org
  • Implement the InspectorClient for the Qt port
  • It does not support highlighting of nodes yet
  • Use QRC to open the internal page. The important thing is the '/' in the URL to make WebCore::Document::completeURL behave the way we want.
  • To make the InspectorClient work we will have to mark qrc as secure.

Signed-off-by: Simon

09:58 Changeset [28348] by zecke@webkit.org
  • Allow adding the Inspect ContextMenuItem to our Menu
  • Open the Inspector when Inspect was activated. This requires that we keep the innerNonSharedNode from the HitTest around. This forces us to include <wtf/RefPtr.h> in the private header. It is the first non Qt header but should be okay.

Signed-off-by: Simon

09:57 Changeset [28347] by zecke@webkit.org
  • Add the Developer Extras to the WebAttribute and propagate it to WebCore::Settings. This will enable the Inspect Element menu item
  • CodingStyle fixes in QWebSettings
  • Enable the Developer Extras in the QtLauncher

Signed-off-by: Simon

07:46 Changeset [28346] by darin@apple.com

JavaScriptCore:

Reviewed by Mitz.

Test: fast/js/sparse-array.html

  • kjs/array_instance.cpp: (KJS::ArrayInstance::inlineGetOwnPropertySlot): Check sparse array cutoff before looking in hash map. Can't avoid the branch because we can't look for 0 in the hash. (KJS::ArrayInstance::deleteProperty): Ditto.

LayoutTests:

Reviewed by Mitz.

  • fast/js/resources/sparse-array.js: Added.
  • fast/js/sparse-array-expected.txt: Added.
  • fast/js/sparse-array.html: Added.
04:57 Changeset [28345] by alp@webkit.org

2007-12-03 Alp Toker <alp@atoker.com>

Reviewed by Mark Rowe.

Don't delete the decoder if it's already been created. The one we have
is fine.

Cairo image cleanups. Nothing substantial.

Notify ImageObservers where appropriate.

  • platform/graphics/cairo/ImageCairo.cpp: (WebCore::BitmapImage::draw): (WebCore::Image::drawPattern):
  • platform/graphics/cairo/ImageSourceCairo.cpp: (WebCore::ImageSource::setData):
  • platform/graphics/gtk/ImageGtk.cpp:
04:04 Changeset [28344] by hausmann@webkit.org

Fixed crash when rendering form elements with Qt 4.4

QPainter::device() is not guaranteed to return a QWidget, so do the safe "cast" with the
help of QPaintDevice::devType().
Also fall back to the QApplication::style() if we don't have a widget.

02:36 Changeset [28343] by zecke@webkit.org

2007-12-02 Holger Hans Peter Freyther <holger.freyther@trolltech.com>

Reviewed by Sam Weinig.

  • Add FrameLoader::shouldTreatSchemeAsLocal which is similar to shouldTreatURLAsLocal.
  • Make use of FrameLoader::shouldTreatSchemeAsLocal in SecurityOrigin and do not hardcode "file". This is needed for the WebKit/qt port to make the Web Inspector work as it using the qrc protocol instead of file.
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::shouldTreatSchemeAsLocal):
  • loader/FrameLoader.h:
  • platform/SecurityOrigin.cpp: (WebCore::SecurityOrigin::isSecureTransitionTo):
02:34 Changeset [28342] by zecke@webkit.org

2007-12-02 Holger Hans Peter Freyther <holger.freyther@trolltech.com>

Rubber stamped by Sam Weinig.

Only add applewebdata to the localSchemes when building for the
mac. This is in preparation of adding qrc for the Qt port there
as well and http://bugs.webkit.org/show_bug.cgi?id=15938.

According to Anders applewebdata is not used on the win port.

  • loader/FrameLoader.cpp: (WebCore::localSchemes):
02:33 Changeset [28341] by zecke@webkit.org

2007-12-02 Holger Hans Peter Freyther <holger.freyther@trolltech.com>

Rubber stamped by Sam Weinig.

Fix a typo. It is contains and not containts

  • loader/FrameLoader.cpp:
01:25 Changeset [28340] by mrowe@apple.com

2007-12-03 Mark Rowe <mrowe@apple.com>

Speculative Windows build fix.

  • WebScriptCallFrame.cpp: (WebScriptCallFrame::valueByEvaluatingJavaScriptFromString):
01:19 Changeset [28339] by mrowe@apple.com

2007-12-03 Mark Rowe <mrowe@apple.com>

wx build fix.

  • WebView.cpp: (wxWebView::RunScript):
01:10 Changeset [28338] by ap@webkit.org

Reviewed by Oliver.

Added eventSender.dispatchMessage() - will be used to test Windows keyboard input
in a more fine-grained manner than eventSender.keyDown().

  • DumpRenderTree/win/EventSender.cpp: (getConstantCallback): (dispatchMessageCallback):
01:05 Changeset [28337] by aroben@apple.com

Another speculative Windows build fix

  • WebScriptCallFrame.cpp: (WebScriptCallFrame::valueByEvaluatingJavaScriptFromString):
00:58 Changeset [28336] by alp@webkit.org

2007-12-03 Alp Toker <alp@atoker.com>

Add another missing DEPENDPATH.

Noticed when fixing the build.

  • WebCore.pro:
00:52 Changeset [28335] by aroben@apple.com

Speculative Windows build fix

  • plugins/win/PluginViewWin.cpp: (WebCore::getString):
00:43 Changeset [28334] by aroben@apple.com

Speculative Windows build fix

  • WebFrame.cpp: (WebFrame::globalContext): (WebFrame::windowObjectCleared):
  • WebScriptDebugger.cpp: (WebScriptDebugger::WebScriptDebugger):
00:13 Changeset [28333] by ggaren@apple.com

Removed unnecessary and possibly incorrect #include from my last
check-in.

  • Api/qwebframe.cpp:
00:10 Changeset [28332] by ggaren@apple.com

GTK Build fix: get globalExec from the right place.

  • WebView/webkitwebframe.cpp:
00:06 Changeset [28331] by ggaren@apple.com

Qt build fix: Get globalExec() from the right place.

00:02 Changeset [28330] by ggaren@apple.com

Build fix: added symbols to the right .exp file.

  • WebCore.base.exp:

12/02/07:

23:53 Changeset [28329] by ggaren@apple.com

Build fix: added an #include.

  • kjs/collector.cpp:
23:43 Changeset [28328] by ggaren@apple.com

JavaScriptCore:

Reviewed by Eric Seidel.

Second step in refactoring JSGlobalObject: moved virtual functions from
Interpreter to JSGlobalObject.


Layout and JS tests pass. SunSpider reports a .7% speedup -- don't
believe his lies.

JavaScriptGlue:

Reviewed by Eric Seidel.

Updated to match the JavaScriptCore change to move virtual methods from
Interpreter to JSGlobalObject.


  • JSRun.cpp:
  • JSRun.h:
  • JSValueWrapper.cpp: (getThreadGlobalExecState):
  • JavaScriptGlue.cpp: (JSRunCopyGlobalObject): (JSRunEvaluate):

WebCore:

Reviewed by Eric Seidel.

Updated to match the JavaScriptCore change to move virtual methods from
Interpreter to JSGlobalObject.


Moved virtual ScriptInterpreter functions to Window.

WebKit/mac:

Reviewed by Eric Seidel.

Updated to match the JavaScriptCore change to move virtual methods from
Interpreter to JSGlobalObject.

  • WebView/WebFrame.mm: (-[WebFrame globalContext]): Use the toRef function instead of manually casting.
21:52 QtWebKitContrib edited by hausmann@webkit.org
(diff)
20:57 Changeset [28327] by darin@apple.com

WebCore:

Reviewed by Mitz.

There were two problems here:

1) Incorrect HTMLCollection behavior led to us trying to insert a

new row inside an existing row instead of next to it. The fix for
this is to make HTMLCollection work better for table-related
collections.

2) HTMLTableRowElement::insertCell would return a bad pointer if

the insertion failed. The code should have failed, but not crashed,
so it's worth fixing that too.

While fixing the HTMLCollection issues, I did some clean-up of that
class and its derived classes.

Test: fast/dom/HTMLTableElement/rows.html
Test: fast/dom/HTMLTableElement/tBodies.html
Test: fast/dom/HTMLTableRowElement/cells.html
Test: fast/dom/HTMLTableRowElement/insertCell.html
Test: fast/dom/HTMLTableSectionElement/rows.html

  • bindings/js/JSHTMLCollectionCustom.cpp: (WebCore::toJS): Updated because collectionType() was renamed to type().
  • html/HTMLCollection.cpp: (WebCore::HTMLCollection::HTMLCollection): Updated for data member name changes. Also added a protected constructor for use by derived classes that pass in a CollectionInfo. (WebCore::HTMLCollection::CollectionInfo::copyCacheMap): Moved out of the header. (WebCore::isTableSection): Added. (WebCore::HTMLCollection::itemAfter): Renamed from traverseNextItem, because the old name was grammatically incorrect and thus a bit confusing. Changed to operate on Element* instead of Node*, and use 0 to start rather than passing in the base node (required since the base node can be a document, which is not an element). Generalized the code that made NodeChildren not descend into deeper descendants so it can be used for TRCells, TSectionRows, TableTBodies, and TableRows. Reformatted the switch statement and got rid of the "found" boolean since we can just return when we find something. Got rid of the default case, and instead listed all the enum values. Also changed to use a for loop for clarity. (WebCore::HTMLCollection::calcLength): Updated for itemAfter changes. (WebCore::HTMLCollection::item): Ditto. (WebCore::HTMLCollection::nextItem): Ditto. (WebCore::HTMLCollection::checkForNameMatch): Updated to take an Element instead of a Node pointer. (WebCore::HTMLCollection::namedItem): More of the same. (WebCore::HTMLCollection::updateNameCache): Ditto. (WebCore::HTMLCollection::namedItems): Ditto. (WebCore::HTMLCollection::nextNamedItem): Ditto. (WebCore::HTMLCollection::tags): Ditto.
  • html/HTMLCollection.h: Added a type FormElements, so that the HTMLFormCollection would not have a type of DocImages, which is what it previously did. Changed the base parameter to be a PassRefPtr to make it clear we take ownership of it. Added a comment explaining why we should change the name CollectionInfo. Made a lot more members private instead of protected. Renamed traverseNextItem to itemAfter. Changed most functions to take Element* instead of Node*.
  • html/HTMLFormCollection.cpp: (WebCore::HTMLFormCollection::formCollectionInfo): Added. (WebCore::HTMLFormCollection::HTMLFormCollection): Updated to pass collection info into the base class. (WebCore::HTMLFormCollection::calcLength): Updated to use base() so we don't need to get at m_base directly. (WebCore::HTMLFormCollection::item): Same, but for info(). (WebCore::HTMLFormCollection::getNamedItem): Removed unused first argument. (WebCore::HTMLFormCollection::getNamedFormItem): Got rid of unneeded checks that the base is still an element and still a form, since that's guaranteed. (WebCore::HTMLFormCollection::nextItem): Use info(). (WebCore::HTMLFormCollection::nextNamedItemInternal): Node instead of Element, some name changes. (WebCore::HTMLFormCollection::namedItem): Update for changes elsewhere. (WebCore::HTMLFormCollection::nextNamedItem): Ditto, also rewrote loop to be much simpler. (WebCore::HTMLFormCollection::updateNameCache): More of the same.
  • html/HTMLFormCollection.h: Changed constructor to take an HTMLFormElement, using a PassRefPtr to communicate transfer of ownership. Made everything private instead of protected. Removed unneeded override of firstItem. Made getNamedItem and nextNamedItemInternal non-virtual. Removed unused first argument of getNamedItem. Added declaration of formCollectionInfo.
  • html/HTMLNameCollection.cpp: (WebCore::HTMLNameCollection::HTMLNameCollection): Updated to pass collection info into the base class. (WebCore::HTMLNameCollection::itemAfter): Reformatted a bit and changed into a for loop.
  • html/HTMLNameCollection.h: Updated for name changes. Made function private instead of public. Used PassRefPtr in constructor.
  • html/HTMLOptionsCollection.cpp: (WebCore::HTMLOptionsCollection::HTMLOptionsCollection): Updated to pass collection info into the base class. (WebCore::HTMLOptionsCollection::add): Updated for public/private changes in the base class. (WebCore::HTMLOptionsCollection::selectedIndex): Ditto. (WebCore::HTMLOptionsCollection::setSelectedIndex): Ditto. (WebCore::HTMLOptionsCollection::setLength): Ditto.
  • html/HTMLOptionsCollection.h: Changed constructor parameter to be a PassRefPtr.
  • html/HTMLTableRowElement.cpp: (WebCore::HTMLTableRowElement::insertCell): Changed code to use RefPtr and PassRefPtr since this creates a new object. This alone fixed the crash. Also cleaned up logic a bit to be more readable.
  • html/HTMLTableRowElement.h: Changed insertCell to return a PassRefPtr. Also reordered functions a bit to make things a little more logical and removed the unused ncols data member.
  • html/HTMLTableSectionElement.cpp: (WebCore::HTMLTableSectionElement::rows): Pass TSectionRows, not TableRows. This mistake was harmless before because TableRows and TSectionRows were handled identically inside HTMLCollection, but that is no longer the case with this fix.
  • bindings/scripts/CodeGeneratorJS.pm: Add an include to cope with the fact that HTMLOptionsCollection no longer includes HTMLOptionElement. I don't think this really should be a special case -- might be worth returning later to see if this can be optimized.

LayoutTests:

Reviewed by Mitz.

  • fast/dom/HTMLTableElement/resources: Added.
  • fast/dom/HTMLTableElement/resources/TEMPLATE.html: Added.
  • fast/dom/HTMLTableElement/resources/rows.js: Added.
  • fast/dom/HTMLTableElement/resources/tBodies.js: Added.
  • fast/dom/HTMLTableElement/rows-expected.txt: Added.
  • fast/dom/HTMLTableElement/rows.html: Added.
  • fast/dom/HTMLTableElement/tBodies-expected.txt: Added.
  • fast/dom/HTMLTableElement/tBodies.html: Added.
  • fast/dom/HTMLTableRowElement: Added.
  • fast/dom/HTMLTableRowElement/cells-expected.txt: Added.
  • fast/dom/HTMLTableRowElement/cells.html: Added.
  • fast/dom/HTMLTableRowElement/insertCell-expected.txt: Added.
  • fast/dom/HTMLTableRowElement/insertCell.html: Added.
  • fast/dom/HTMLTableRowElement/resources: Added.
  • fast/dom/HTMLTableRowElement/resources/TEMPLATE.html: Added.
  • fast/dom/HTMLTableRowElement/resources/cells.js: Added.
  • fast/dom/HTMLTableSectionElement: Added.
  • fast/dom/HTMLTableSectionElement/resources: Added.
  • fast/dom/HTMLTableSectionElement/resources/TEMPLATE.html: Added.
  • fast/dom/HTMLTableSectionElement/resources/rows.js: Added.
  • fast/dom/HTMLTableSectionElement/rows-expected.txt: Added.
  • fast/dom/HTMLTableSectionElement/rows.html: Added.
20:41 Changeset [28326] by darin@apple.com
  • Scripts/do-webcore-rename: More planned renaming.
17:05 Changeset [28325] by zimmermann@webkit.org

Reviewed by Adam.

RenderSVGViewportContainer sets wrong width/height.
Share code with RenderSVGContainer in a central calcBounds() function.

Fixes:

15:40 Changeset [28324] by weinig@apple.com

Rubber stamped by Anders.

Use [NSURL absoluteString] instead of [NSURL description] in order to get
more uniform results cross platform.

  • DumpRenderTree/mac/ResourceLoadDelegate.mm: (-[NSURL _drt_descriptionSuitableForTestResult]):
15:32 Changeset [28323] by weinig@apple.com

Rubber stamped by Niko.

Rename FrameLoaderDelegate.h/cpp to FrameLoadDelegate.h/cpp.

  • DumpRenderTree/win/DumpRenderTree.cpp:
  • DumpRenderTree/win/DumpRenderTree.vcproj:
  • DumpRenderTree/win/FrameLoadDelegate.cpp: Copied from DumpRenderTree/win/FrameLoaderDelegate.cpp.
  • DumpRenderTree/win/FrameLoadDelegate.h: Copied from DumpRenderTree/win/FrameLoaderDelegate.h.
  • DumpRenderTree/win/FrameLoaderDelegate.cpp: Removed.
  • DumpRenderTree/win/FrameLoaderDelegate.h: Removed.
12:20 Changeset [28322] by beidson@apple.com

Reviewed by Darin

databaseChanged notifications were being sent out on the database thread - they need to be on the main thread
like all other notifications we send out!

  • platform/SecurityOriginData.cpp: (WebCore::SecurityOriginData::copy): Add a deep copy method, for when an object thread hops
  • platform/SecurityOriginData.h:
  • storage/DatabaseTracker.cpp: (WebCore::notificationMutex): (WebCore::notificationQueue): (WebCore::DatabaseTracker::scheduleNotifyDatabaseChanged): Add the origin/name pair to a queue (WebCore::DatabaseTracker::scheduleForNotification): Schedule to deliver this queue of notifications on the main thread (WebCore::DatabaseTracker::notifyDatabasesChanged): Deliver all notifications in the queue
  • storage/DatabaseTracker.h:
  • storage/SQLTransaction.cpp: (WebCore::SQLTransaction::postflightAndCommit): scheduleNotifyDatabaseChanged() instead of "notify now!" (WebCore::SQLTransaction::cleanupAfterTransactionErrorCallback): Ditto
12:18 WebKit Team edited by rwlbuis@webkit.org
(diff)
11:32 Changeset [28321] by rwlbuis@webkit.org

Reviewed by Darin.

http://bugs.webkit.org/show_bug.cgi?id=16002
Load SVG (and other) UA StyleSheets dynamically when needed

Load svg sheet when needed.

06:13 QtWebKitTodo edited by hausmann@webkit.org
(diff)
04:59 Changeset [28320] by mrowe@apple.com

Speculative Windows build fix.

04:02 Changeset [28319] by zimmermann@webkit.org

Rubber stamped by Eric.

Move platform/graphics/svg to graphics/svg as discussed on webkit-dev.
Updated all project files.

03:22 Changeset [28318] by zimmermann@webkit.org

Reviewed by Maciej.
Fix IDL lookup in subdirectories. Missing 'my' prefix for the 'thisDir' variable.

03:08 BuildingGtk edited by alp@atoker.com
Mention the Debian WebKit packaging team and its mailing lists (diff)
00:32 Changeset [28317] by aroben@apple.com

Add another screenshot

  • blog-files/InspectElementMenu.png: Added.
00:16 Changeset [28316] by alp@webkit.org

2007-12-01 Alp Toker <alp@atoker.com>

Reviewed by Adam Roben.

Wrap type definitions in webkitdefines.h with G_BEGIN_DECLS, which
takes care of extern "C".

Introduce a webkit.h convenience header.

Remove another left-over from the old API.

00:07 Changeset [28315] by aroben@apple.com

Add some Inspector screenshots for an upcoming blog post

Rubberstamped by Mark Rowe.

  • blog-files/InspectorCSSEditing.png: Added.
  • blog-files/InspectorFonts.png: Added.

12/01/07:

23:56 Changeset [28314] by beidson@apple.com

Reviewed by Tim

Added a default database quota of 5mb to the default WebPreferences

  • WebView/WebPreferences.m: (+[WebPreferences initialize]):
22:43 Changeset [28313] by alp@webkit.org

2007-12-01 Alp Toker <alp@atoker.com>

Reviewed by Adam Roben.

http://bugs.webkit.org/show_bug.cgi?id=15687
[Gtk] Allow API clients to interact with JavaScript in web pages

Include the necessary JavaScriptCore headers directly in the public
API headers.

This is the last of a series of changes needed to allow GTK+
applications to access the JS API.

Until http://bugs.webkit.org/show_bug.cgi?id=16029 is resolved,
developers will still have to include the individual JS API headers
individually if they want to use it in their applications.

Patch also removes some old legacy use of GDK that was in
WebKitWebFrame. No ABI change.

  • WebView/webkitdefines.h:
  • WebView/webkitwebframe.h:
  • WebView/webkitwebview.h:
22:14 Changeset [28312] by antti@apple.com

WebCore:

Reviewed by Adam.


  • Fix a crash when removing a loading media element from the tree.
  • Follow the spec by invoking pause() when element is removed from the tree instead of unloading.

Tests: http/tests/media/remove-while-loading.html

media/remove-from-document.html

  • html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::removedFromDocument):

LayoutTests:

Reviewed by Adam.


Test that removing a media element when it is loading does not crash.
Test that media is paused when it is removed from the tree.

  • http/tests/media/remove-while-loading-expected.txt: Added.
  • http/tests/media/remove-while-loading.html: Added.
  • media/remove-from-document-expected.txt: Added.
  • media/remove-from-document.html: Added.
21:24 Changeset [28311] by alp@webkit.org

2007-12-01 Alp Toker <alp@atoker.com>

Reviewed by Adam Roben.

http://bugs.webkit.org/show_bug.cgi?id=16228
kJSClassDefinitionEmpty is not exported with JS_EXPORT

Add JS_EXPORT to kJSClassDefinitionEmpty.

Make the gcc compiler check take precedence over the WIN32
_WIN32

check to ensure that symbols are exported on Windows when using gcc.

Add a TODO referencing the bug about JS_EXPORT in the Win build
(http://bugs.webkit.org/show_bug.cgi?id=16227)

Don't define JS_EXPORT as 'extern' when the compiler is unknown since
it would result in the incorrect expansion:

extern extern const JSClassDefinition kJSClassDefinitionEmpty;

(This was something we inherited from CFBase.h that doesn't make sense
for JSBase.h)

  • API/JSBase.h:
  • API/JSObjectRef.h:
15:59 Changeset [28310] by ggaren@apple.com

Reviewed by Beth Dakin.

Restored the test string in this test.

  • manual-tests/window-open-features-parsing.html:
15:56 Changeset [28309] by ggaren@apple.com

JavaScriptCore:

Reviewed by Beth Dakin.


Reversed the ownership relationship between Interpreter and JSGlobalObject.
Now, the JSGlobalObject owns the Interpreter, and top-level objects
that need the two to persist just protect the JSGlobalObject from GC.


Global object bootstrapping looks a little odd right now, but it will
make much more sense soon, after further rounds of refactoring.

  • bindings/runtime_root.h: Made this class inherit from RefCounted, to avoid code duplication.
  • kjs/collector.cpp: (KJS::Collector::collect): No need to give special GC treatment to Interpreters, since we mark their global objects, which mark them.
  • kjs/interpreter.cpp: (KJS::Interpreter::mark): No need to mark our global object, since it marks us.
  • kjs/interpreter.h: Don't inherit from RefCounted -- JSGlobalObject owns us directly.
  • kjs/testkjs.cpp: Modified to follow the new rules. (createGlobalObject): (runWithScripts):

JavaScriptGlue:

Reviewed by Beth Dakin.


Modified to follow new JSGlobalObject/Interpreter ownership rules
in JavaScriptCore.

  • JSRun.cpp: (JSRun::JSRun): (JSRun::GetInterpreter): (JSRun::Evaluate): (JSRun::CheckSyntax):
  • JSRun.h:
  • JSValueWrapper.cpp: (unprotectGlobalObject): (initializeGlobalObjectKey): (getThreadGlobalExecState):

WebCore:

Reviewed by Beth Dakin.


Modified WebCore to follow the new JSGlobalObject/Interpreter ownership
rules in JavaScriptCore.

  • bindings/js/kjs_binding.cpp:
  • bindings/js/kjs_binding.h: Removed stale, unused interpreterForGlobalObject().
  • bindings/js/kjs_proxy.cpp: Changed to store a global object, rather than an interpreter. (WebCore::KJSProxy::finishedWithEvent): Need to NULL check m_globalObject here because we no longer unnecessarily instantiate it.
  • bindings/js/kjs_window.cpp: (KJS::ScheduledAction::execute):
  • bindings/js/kjs_window.h: Removed redundant and less efficient interpreter() function -- global objects have direct access to their interpreters now.

Changed these functions to pass around JSGlobalObjects instead of
Interpreters:

  • page/Frame.cpp: (WebCore::Frame::bindingRootObject): (WebCore::Frame::createRootObject):
  • page/Frame.h:
  • page/mac/WebCoreFrameBridge.mm: (createRootObject):
15:35 Changeset [28308] by treat@webkit.org
  • Check to see if the directory exists and exit if not.
14:32 BuildingGtk edited by alp@atoker.com
Add links to distribution packages (diff)
14:29 Changeset [28307] by weinig@apple.com

Rename IWebViewPrivate::selectionImageRect to IWebViewPrivate::selectionRect.

Rubber stamped by Adam Roben.

  • Interfaces/IWebViewPrivate.idl:
  • WebView.cpp: (WebView::selectionRect):
  • WebView.h:
14:15 Changeset [28306] by mitz@apple.com

Reviewed by Mark Rowe.

  • config.ini: Correct blog name.
13:08 Changeset [28305] by timothy@apple.com

Update StringsNotToBeLocalized.txt.

11:43 UsingGitWithWebKit edited by aroben@apple.com
(diff)
11:04 Changeset [28304] by darin@apple.com

Reviewed by Mitz.

  • fix problem tracked by these bugs: http://bugs.webkit.org/show_bug.cgi?id=16097 <rdar://problem/5619305> Safari crashes during load of LexisNexis search results <rdar://problem/5510779> CrashTracer: [USER] 25 crashes in Safari at WebCore::DocumentLoader::isLoadingMultipartContent const
  • loader/ImageDocument.cpp: (WebCore::ImageDocument::createDocumentStructure): Create an ImageDocumentElement instead of an HTMLImageElement. (WebCore::ImageDocument::scale): Added a null check for m_imageElement. (WebCore::ImageDocument::resizeImageToFit): Ditto. (WebCore::ImageDocument::restoreImageSize): Ditto. (WebCore::ImageDocument::imageFitsInWindow): Ditto. (WebCore::ImageDocument::windowSizeChanged): Ditto. (WebCore::ImageDocumentElement::~ImageDocumentElement): Call disconnectImageElement so m_imageElement will be set to 0 if we're still connected to the document. (WebCore::ImageDocumentElement::willMoveToNewOwnerDocument): Ditto.
  • loader/ImageDocument.h: Changed image element type to be ImageDocumentElement instead of HTMLImageElement. Also added a disconnectImageElement function that sets m_imageElement to 0.
10:44 Changeset [28303] by darin@apple.com
  • remove the empty directories
  • ksvg2: Removed.
  • ksvg2/css: Removed.
  • ksvg2/events: Removed.
  • ksvg2/misc: Removed.
  • ksvg2/scripts: Removed.
10:09 Changeset [28302] by darin@apple.com

Ignore another file that's now part of hosted SunSpider.

08:51 Changeset [28301] by mrowe@apple.com

2007-12-01 Julien Chaffraix <julien.chaffraix@gmail.com>

Bug 16189: XMLHttpRequest::setRequestHeader() should not set certain headers

Reviewed by Darin Adler.

  • xml/XMLHttpRequest.cpp: (WebCore::canSetRequestHeader):

Test: http/tests/xmlhttprequest/set-dangerous-headers.html

2007-12-01 Julien Chaffraix <julien.chaffraix@gmail.com>

Bug 16189: XMLHttpRequest::setRequestHeader() should not set certain headers

Reviewed by Darin Adler.

  • http/tests/xmlhttprequest/set-dangerous-headers-expected.txt:
  • http/tests/xmlhttprequest/set-dangerous-headers.html: Added tests for new headers
08:41 Changeset [28300] by mrowe@apple.com

2007-12-01 Rahul Abrol <ra5ul@comcast.net>

Reviewed by Adam Roben.

http://bugs.webkit.org/show_bug.cgi?id=16128
Ignore resizable=no for window.open().

  • bindings/js/kjs_window.cpp: (KJS::setWindowFeature): (KJS::parseWindowFeatures):
  • manual-tests/window-open-features-parsing.html:
08:33 Changeset [28299] by mitz@apple.com

WebCore:

Reviewed by Darin Adler.

  • fix <rdar://problem/5619240> REGRESSION (Leopard-r28069): Reproducible crash with a Mootools-based calendar picker (jump to null in FrameView::layout)

Test: fast/dynamic/subtree-common-root.html

  • page/FrameView.cpp: (WebCore::FrameView::layoutRoot): Added a parameter to let this method return the layout root for a pending layout as well. (WebCore::FrameView::scheduleRelayoutOfSubtree): Pass the new root to markContainingBlocksForLayout(). Otherwise, markContainingBlocksForLayout() could mark past the new root, if it had previously been marked as having a normal child needing layout and then was reached via a positioned child.
  • page/FrameView.h:
  • rendering/RenderBox.cpp: (WebCore::RenderBox::calcWidth):
  • rendering/RenderObject.cpp: (WebCore::RenderObject::~RenderObject): Fixed the ASSERT so that it would really catch deletion of the layout root. (WebCore::RenderObject::markContainingBlocksForLayout): Added the newRoot parameter, which tells this method where to stop marking.
  • rendering/RenderObject.h:

LayoutTests:

Reviewed by Darin Adler.

  • test for <rdar://problem/5619240> REGRESSION (Leopard-r28069): Reproducible crash with a Mootools-based calendar picker (jump to null in FrameView::layout)
  • fast/dynamic/subtree-common-root-expected.txt: Added.
  • fast/dynamic/subtree-common-root.html: Added.
08:28 Changeset [28298] by mitz@apple.com

Reviewed by Darin Adler.

  • fold FontStyle into TextRun
  • WebCore.xcodeproj/project.pbxproj:
  • platform/graphics/Font.cpp: (WebCore::WidthIterator::WidthIterator): (WebCore::WidthIterator::advance): (WebCore::Font::width): (WebCore::Font::drawSimpleText): (WebCore::Font::drawGlyphBuffer): (WebCore::Font::drawText): (WebCore::Font::floatWidth): (WebCore::Font::floatWidthForSimpleText): (WebCore::Font::selectionRectForText): (WebCore::Font::selectionRectForSimpleText): (WebCore::Font::offsetForPosition): (WebCore::Font::offsetForPositionForSimpleText):
  • platform/graphics/Font.h: (WebCore::TextRun::TextRun): (WebCore::TextRun::setText): (WebCore::TextRun::allowTabs): (WebCore::TextRun::xPos): (WebCore::TextRun::padding): (WebCore::TextRun::rtl): (WebCore::TextRun::ltr): (WebCore::TextRun::directionalOverride): (WebCore::TextRun::applyRunRounding): (WebCore::TextRun::applyWordRounding): (WebCore::TextRun::spacingDisabled): (WebCore::TextRun::disableSpacing): (WebCore::TextRun::disableRoundingHacks): (WebCore::TextRun::setRTL): (WebCore::TextRun::setDirectionalOverride):
  • platform/graphics/FontStyle.h: Removed.
  • platform/graphics/GraphicsContext.cpp: (WebCore::GraphicsContext::drawText): (WebCore::GraphicsContext::drawBidiText): (WebCore::GraphicsContext::drawHighlightForText):
  • platform/graphics/GraphicsContext.h:
  • platform/graphics/StringTruncator.cpp: (WebCore::stringWidth):
  • platform/graphics/gtk/FontGtk.cpp: (WebCore::Font::drawComplexText): (WebCore::Font::floatWidthForComplexText): (WebCore::Font::offsetForPositionForComplexText): (WebCore::Font::selectionRectForComplexText):
  • platform/graphics/mac/FontMac.mm: (WebCore::ATSULayoutParameters::ATSULayoutParameters): (WebCore::addDirectionalOverride): (WebCore::overrideLayoutOperation): (WebCore::ATSULayoutParameters::initialize): (WebCore::Font::selectionRectForComplexText): (WebCore::Font::drawComplexText): (WebCore::Font::floatWidthForComplexText): (WebCore::Font::offsetForPositionForComplexText):
  • platform/graphics/qt/FontQt.cpp: (WebCore::generateComponents): (WebCore::Font::drawText): (WebCore::Font::width): (WebCore::Font::offsetForPosition): (WebCore::cursorToX): (WebCore::Font::selectionRectForText):
  • platform/graphics/win/FontWin.cpp: (WebCore::Font::selectionRectForComplexText): (WebCore::Font::drawComplexText): (WebCore::Font::floatWidthForComplexText): (WebCore::Font::offsetForPositionForComplexText):
  • platform/graphics/wx/FontWx.cpp: (WebCore::Font::selectionRectForComplexText): (WebCore::Font::drawComplexText): (WebCore::Font::floatWidthForComplexText): (WebCore::Font::offsetForPositionForComplexText):
  • platform/mac/WebCoreTextRenderer.mm: (WebCoreDrawTextAtPoint): (WebCoreTextFloatWidth):
  • platform/win/PopupMenuWin.cpp: (WebCore::PopupMenu::paint):
  • platform/win/UniscribeController.cpp: (WebCore::UniscribeController::UniscribeController): (WebCore::UniscribeController::offsetForPosition): (WebCore::UniscribeController::advance): (WebCore::UniscribeController::itemizeShapeAndPlace): (WebCore::UniscribeController::resetControlAndState): (WebCore::UniscribeController::shapeAndPlaceItem):
  • platform/win/UniscribeController.h:
  • platform/win/WebCoreTextRenderer.cpp: (WebCore::doDrawTextAtPoint):
  • rendering/EllipsisBox.cpp: (WebCore::EllipsisBox::paint):
  • rendering/InlineTextBox.cpp: (WebCore::InlineTextBox::selectionRect): (WebCore::InlineTextBox::paint): (WebCore::InlineTextBox::paintSelection): (WebCore::InlineTextBox::paintCompositionBackground): (WebCore::InlineTextBox::paintSpellingOrGrammarMarker): (WebCore::InlineTextBox::paintTextMatchMarker): (WebCore::InlineTextBox::offsetForPosition): (WebCore::InlineTextBox::positionForOffset):
  • rendering/RenderFileUploadControl.cpp: (WebCore::RenderFileUploadControl::paintObject): (WebCore::RenderFileUploadControl::calcPrefWidths):
  • rendering/RenderImage.cpp:
  • rendering/RenderListBox.cpp: (WebCore::RenderListBox::updateFromElement): (WebCore::RenderListBox::paintItemForeground):
  • rendering/RenderMenuList.cpp: (WebCore::RenderMenuList::updateOptionsWidth):
  • rendering/RenderText.cpp: (WebCore::RenderText::widthFromCache): (WebCore::RenderText::calcPrefWidths): (WebCore::RenderText::width):
  • rendering/RenderText.h: (WebCore::RenderText::allowTabs):
  • rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::calcPrefWidths):
  • rendering/SVGInlineTextBox.cpp: (WebCore::SVGInlineTextBox::calculateGlyphWidth): (WebCore::SVGInlineTextBox::paintCharacters): (WebCore::SVGInlineTextBox::paintSelection):
  • rendering/SVGRootInlineBox.cpp: (WebCore::SVGRootInlineBoxPaintWalker::chunkPortionCallback): (WebCore::cummulatedWidthOfInlineBoxCharacterRange): (WebCore::svgTextRunForInlineTextBox):
  • rendering/SVGRootInlineBox.h:
04:58 Changeset [28297] by mrowe@apple.com

Merge r26782 to Safari-3-branch.

04:34 Changeset [28296] by mrowe@apple.com

Versioning.

04:33 Changeset [28295] by mrowe@apple.com

Merge r28225.

04:31 Changeset [28294] by mrowe@apple.com

Merge r28056.

04:29 Changeset [28293] by mrowe@apple.com

Merge r27433.

04:27 Changeset [28292] by mrowe@apple.com

Merge r26780.

04:22 Changeset [28291] by mrowe@apple.com

Versioning.

04:21 Changeset [28290] by mrowe@apple.com

Merge r28225.

04:19 Changeset [28289] by mrowe@apple.com

Merge r28056.

04:17 Changeset [28288] by mrowe@apple.com

Merge r27433.

04:15 Changeset [28287] by mrowe@apple.com

Merge r26780.

04:07 Changeset [28286] by mrowe@apple.com

Merge r28225 to Safari-3-branch.

04:04 Changeset [28285] by mrowe@apple.com

Merge r28056 to Safari-3-branch.

04:01 Changeset [28284] by mrowe@apple.com

Merge r27433 to Safari-3-branch.

03:59 Changeset [28283] by mrowe@apple.com

Merge r26780 to Safari-3-branch.

03:08 Changeset [28282] by mrowe@apple.com

New tag.

03:07 Changeset [28281] by mrowe@apple.com

Remove bogus tag.

03:05 Changeset [28280] by mrowe@apple.com

New tag.

03:04 Changeset [28279] by mrowe@apple.com

New tag.

11/30/07:

22:56 Changeset [28278] by aroben@apple.com

Add another feed

  • config.ini:
22:48 Changeset [28277] by aroben@apple.com

Add a simple script to update the site

  • update.pl: Added.
22:41 HackingGtk edited by alp@atoker.com
More fixes to track the latest WebKit/GTK+ API change (diff)
22:34 Changeset [28276] by aroben@apple.com

Include all WebKit posts from Trolltech Labs

  • config.ini:
21:46 Changeset [28275] by hausmann@webkit.org
  • Don't hide symbols when in Debug mode
  • On Linux (glibc) provide a backtrace in the test output for debugging purposes

Signed-off-by: Simon

21:29 Changeset [28274] by alp@webkit.org

2007-11-30 Jan Michael Alonzo <jmalonzo@unpluggable.com>

Fix for GTK+ Debug build breakage introduced in r28273.

  • WebView/webkitprivate.cpp: (WebKit::kit):
21:04 HackingGtk edited by alp@atoker.com
Update to track API changes (diff)
20:24 Changeset [28273] by alp@webkit.org

2007-11-30 Alp Toker <alp@atoker.com>

Reviewed by Adam Roben.

http://bugs.webkit.org/show_bug.cgi?id=15691
[GTK] Public API does not follow GTK+ conventions

Refactor the WebKit/GTK+ public API. Changes:

WebKitPage -> WebKitWebView
WebKitFrame -> WebKitWebFrame

Public API source and header names have been updated to mirror the API
changes.

The API is now kept in WebKit/gtk/WebView to match other ports in the
same class such as Mac and Win.

API/ABI-breaking change.

20:10 BuildingOnWindows edited by bfulgham@macports.org
(diff)
18:25 Changeset [28272] by aroben@apple.com

Reviewed by Eric.

  • ChangeLog:
  • pcre/pcre_compile.cpp: (compile_branch):
17:57 Changeset [28271] by pewtermoose@webkit.org

Reviewed by Adam.

Link to the commit and review policy.

  • coding/contributing.html:
  • nav.inc:
17:47 Changeset [28270] by darin@apple.com
  • coding/commit-review-policy.html: A couple more typos and very minor grammatical stuff. No substantive change.
17:42 Changeset [28269] by darin@apple.com
  • coding/commit-review-policy.html: Fixed a typo, added a footer.
17:37 Changeset [28268] by aroben@apple.com

Initial checkin of Planet WebKit

Rubberstamped by Sam.

  • README: Added.
  • config.ini: Added.
  • planet/AUTHORS: Added.
  • planet/INSTALL: Added.
  • planet/LICENCE: Added.
  • planet/NEWS: Added.
  • planet/PKG-INFO: Added.
  • planet/README: Added.
  • planet/THANKS: Added.
  • planet/TODO: Added.
  • planet/examples/atom.xml.tmpl: Added.
  • planet/examples/basic/config.ini: Added.
  • planet/examples/basic/index.html.tmpl: Added.
  • planet/examples/fancy/config.ini: Added.
  • planet/examples/fancy/index.html.tmpl: Added.
  • planet/examples/foafroll.xml.tmpl: Added.
  • planet/examples/opml.xml.tmpl: Added.
  • planet/examples/output/images/edd.png: Added.
  • planet/examples/output/images/evolution.png: Added.
  • planet/examples/output/images/feed-icon-10x10.png: Added.
  • planet/examples/output/images/jdub.png: Added.
  • planet/examples/output/images/keybuk.png: Added.
  • planet/examples/output/images/logo.png: Added.
  • planet/examples/output/images/opml.png: Added.
  • planet/examples/output/images/planet.png: Added.
  • planet/examples/output/images/thom.png: Added.
  • planet/examples/output/planet.css: Added.
  • planet/examples/rss10.xml.tmpl: Added.
  • planet/examples/rss20.xml.tmpl: Added.
  • planet/planet-cache.py: Added.
  • planet/planet.py: Added.
  • planet/planet/init.py: Added.
  • planet/planet/atomstyler.py: Added.
  • planet/planet/cache.py: Added.
  • planet/planet/compat_logging/init.py: Added.
  • planet/planet/compat_logging/config.py: Added.
  • planet/planet/compat_logging/handlers.py: Added.
  • planet/planet/feedparser.py: Added.
  • planet/planet/htmltmpl.py: Added.
  • planet/planet/sanitize.py: Added.
  • planet/planet/tests/init.py: Added.
  • planet/planet/tests/data/simple.tmpl: Added.
  • planet/planet/tests/data/simple2.tmpl: Added.
  • planet/planet/tests/test_channel.py: Added.
  • planet/planet/tests/test_main.py: Added.
  • planet/planet/tests/test_sanitize.py: Added.
  • planet/planet/tests/test_sub.py: Added.
  • planet/planet/timeoutsocket.py: Added.
  • planet/runtests.py: Added.
  • planet/setup.py: Added.
  • templates/atom.xml.tmpl: Added.
  • templates/foafroll.xml.tmpl: Added.
  • templates/index.html.tmpl: Added.
  • templates/opml.xml.tmpl: Added.
  • templates/rss10.xml.tmpl: Added.
  • templates/rss20.xml.tmpl: Added.
  • wwwroot/images/feed-icon-10x10.png: Added.
  • wwwroot/images/planet.png: Added.
  • wwwroot/planet.css: Added.
16:48 Changeset [28267] by pewtermoose@webkit.org

Reviewed by Maciej.

Clean up a couple of typos from Maciej's last patch.

  • coding/commit-review-policy.html:
16:47 Changeset [28266] by adachan@apple.com

<rdar://problem/5621373> Added a way for the client to clear undo/redo
operations from a WebView.

Reviewed by Steve.

  • Interfaces/IWebViewPrivate.idl:
  • WebView.cpp: (WebView::clearUndoRedoOperations):
  • WebView.h:
16:27 Changeset [28265] by mjs@apple.com

Reviewed by Bertrand.


New commit and review policy.

  • coding/commit-review-policy.html: Added.
16:18 Changeset [28264] by andersca@apple.com

Add platform/text project group.


  • WebCore.vcproj/WebCore.vcproj:
16:05 Changeset [28263] by eric@webkit.org

2007-11-30 Eric Seidel <eric@webkit.org>

No review, build fix only.

Fix uninitialized var warnings in release build.

  • JavaScriptCore.xcodeproj/project.pbxproj:
  • pcre/pcre_compile.cpp: (compile_regex):
15:57 Changeset [28262] by andersca@apple.com

Remove extra </Filter> tag which prevented the vcproj from being parsed correctly.


  • WebCore.vcproj/WebCore.vcproj:
15:47 Changeset [28261] by sullivan@apple.com

Reviewed by Geoff Garen


Added another symbol for WebDatabaseManager clients

  • WebKit.exp: added .objc_class_name_WebSecurityOrigin
15:43 Changeset [28260] by eric@webkit.org

2007-11-30 Eric Seidel <eric@webkit.org>

Reviewed by darin.

PCRE crashes under GuardMalloc
http://bugs.webkit.org/show_bug.cgi?id=16127
check against patternEnd to make sure we don't walk off the end of the string

  • pcre/pcre_compile.cpp: (compile_branch): (calculateCompiledPatternLengthAndFlags):
15:25 Changeset [28259] by zimmermann@webkit.org

Not reviewed. Try to fix qt/gtk build.

15:19 Changeset [28258] by zimmermann@webkit.org

Rubber stamped by Eric.

Final integration of ksvg2 in WebKit. Moving ksvg2/ to svg/ and killing all it's subdirectories,
by moving the files into approriate locations (css, rendering, ...) - as dicsussed on the
mailing list and on IRC with David/Darin & Eric.

Updated all build files - though I can't guarantee it builds on non-mac. Need buildbot to verify.

14:22 Changeset [28257] by kevino@webkit.org

wx build fix. Add WebCore/platform/graphics/wx to includes.

14:08 Changeset [28256] by beidson@apple.com

Reviewed by Geoff

Further hookup of Database API
With this change, any database operation that writes to the database (UPDATE, INSERT, CREATE, etc) will
result in a didModifyDatabase notification when the transaction is successfully committed

  • storage/DatabaseAuthorizer.cpp: Global rename of "m_lastActionIncreasedSize" to "m_lastActionChangedDatabase" (WebCore::DatabaseAuthorizer::reset): (WebCore::DatabaseAuthorizer::createTable): (WebCore::DatabaseAuthorizer::allowAlterTable): (WebCore::DatabaseAuthorizer::createIndex): (WebCore::DatabaseAuthorizer::createTrigger): (WebCore::DatabaseAuthorizer::createVTable): (WebCore::DatabaseAuthorizer::allowInsert): (WebCore::DatabaseAuthorizer::allowUpdate):
  • storage/DatabaseAuthorizer.h: (WebCore::DatabaseAuthorizer::lastActionChangedDatabase):
  • storage/DatabaseTracker.cpp: (WebCore::DatabaseTracker::notifyDatabaseChanged): Added. Allow external entities (SQLTransaction) to be able to request a didModifyDatabase notification to the delegate
  • storage/DatabaseTracker.h:
  • storage/SQLTransaction.cpp: Added m_modifiedDatabase flag which tracks if any statement over the course of a transaction resulted in a change to the database. (WebCore::SQLTransaction::SQLTransaction): (WebCore::SQLTransaction::runCurrentStatement): Set m_modifiedDatabase to true if the authorizer reports a mutation statement occurred (WebCore::SQLTransaction::postflightAndCommit): If the transaction successfully commits, call DatabaseTracker::notifyDatabaseChanged (WebCore::SQLTransaction::cleanupAfterTransactionErrorCallback): Ditto
  • storage/SQLTransaction.h:
14:04 Changeset [28255] by beidson@apple.com

Reviewed by Geoff

Add isEqual operator to WebSecurityOrigin

  • Storage/WebSecurityOrigin.mm: (-[WebSecurityOrigin isEqual:]):
13:55 Changeset [28254] by aroben@apple.com

Hopefully the final build fix

  • Drosera/win/Drosera.vcproj/Drosera.vcproj: Link against WTF.lib to pull in WTF's assertion/logging functions.
13:44 Changeset [28253] by aroben@apple.com

Another build fix

  • Drosera/win/Drosera.vcproj/Drosera.vcproj: Use the right suffix for WebKit.lib.
13:27 Changeset [28252] by aroben@apple.com

Debug build fix

  • Drosera/win/Drosera.vcproj/Drosera.vcproj: Added a Debug_Internal configuration.
  • Drosera/win/Drosera.vcproj/debug.vsprops: Updated to match other projects.
  • Drosera/win/Drosera.vcproj/release.vsprops: Ditto.
  • Drosera/win/Drosera.vcproj/debug_internal.vsprops: Copied from WebKitTools/DumpRenderTree/win/debug_internal.vsprops.
12:35 Changeset [28251] by zimmermann@webkit.org

Rubber stamped by David.

Next round of moves - platform reorganization.
Move text/font/glyph related files from the individual port directories
into platform/text/<port> or platform/graphics/<port>.

12:15 Changeset [28250] by kevino@webkit.org

Other wx port fixes needed to restore the build bot.

12:11 Changeset [28249] by weinig@apple.com

Reviewed by Adam Roben.

Fix drawSelectionRect to actually draw the selection rect.

  • DumpRenderTree/cg/PixelDumpSupportCG.cpp: (drawSelectionRect):
11:33 Changeset [28248] by hausmann@webkit.org

Fix the build with DATABASE=0.

11:32 Changeset [28247] by aroben@apple.com

Copy some cross-platform results into platform/win to avoid picking up the platform/mac versions

  • platform/win/fast/dom/Window/window-resize-expected.txt: Copied from LayoutTests/fast/dom/Window/window-resize-expected.txt.
  • platform/win/fast/dom/wrapper-classes-expected.txt: Copied from LayoutTests/fast/dom/wrapper-classes-expected.txt.
11:21 Changeset [28246] by zimmermann@webkit.org

Rubber stamped by Darin.

Fix misplaced file. The name "FontStyle" is not correct though - it probably
needs yet another move - but this time inside platform/graphics - as soon
as we agree on a better name.

11:04 Changeset [28245] by sullivan@apple.com

Reviewed by Darin


Tweaks to newly-declared NSString * constants to make them usable from clients

  • Storage/WebDatabaseManagerPrivate.h:
  • Storage/WebDatabaseManager.mm: removed "const" from new NSNotification names and userInfo keys; these generate compiler warnings when used


  • WebKit.exp: export new NSNotification names and userInfo keys so clients can use them
11:02 QtWebKitTodo edited by hausmann@webkit.org
(diff)
10:56 Changeset [28244] by aroben@apple.com

Merge r26734

10:54 Changeset [28243] by darin@apple.com

JavaScriptCore:

Reviewed by Adam Roben.

SunSpider says this is 5.5% faster on the regexp test, 0.4% faste overall.

Test: fast/js/regexp-non-bmp.html

Renamed ANY_CHAR to NOT_NEWLINE to more-accurately reflect its meaning.

  • pcre/pcre_compile.cpp: (compile_branch): Removed calls to the UTF-16 character accessor functions, replacing them with simple pointer dereferences in some cases, and no code at all in others. (calculateCompiledPatternLengthAndFlags): Ditto.
  • pcre/pcre_exec.cpp: (match): Fixed indentation of some case labels (including all the BEGIN_OPCODE). Removed calls to the UTF-16 character accessor functions, replacing them with simple pointer dereferences in some cases, and no code at all in others. Also removed some explicit UTF-16 support code in a few cases. Removed the unneeded "UTF-8" code path in the ANY_CHAR repeat code, and in another case, eliminated the code to check against end_subject in because it is already done outside the loop. (jsRegExpExecute):
  • pcre/pcre_internal.h: Removed all the UTF-16 helper functions.

LayoutTests:

Reviewed by Adam Roben.

  • fast/js/regexp-non-bmp-expected.txt: Added.
  • fast/js/regexp-non-bmp.html: Added.
  • fast/js/resources/regexp-non-bmp.js: Added.
10:47 Changeset [28242] by darin@apple.com
  • Scripts/do-webcore-rename: WildFox already did the TextStyle -> FontStyle one.
10:44 Changeset [28241] by kevino@webkit.org

Build fix after platform/text changes.

10:43 Changeset [28240] by zimmermann@webkit.org

Reviewed by Sam.

Rename "FontStyle FontStyle(...)" to "FontStyle fontStyle(...)".
I scripted a bit too much while doing the TextStyle -> FontStyle change.

10:38 Changeset [28239] by alp@webkit.org

2007-11-30 Alp Toker <alp@atoker.com>

GTK+ build fix following the recent text reorganization.

  • WebCore.pro:
10:30 QtWebKitContrib edited by hausmann@webkit.org
(diff)
10:08 Changeset [28238] by jhoneycutt@apple.com

2007-11-29 Jon Honeycutt <jhoneycutt@apple.com>

Reviewed by Adam.

Part of <rdar://problem/5506522> Seed: cannot type into text box in
Facebook, don't see plugin content (Adobe Flash)

  • plugins/win/PluginViewWin.cpp: (WebCore::PluginViewWin::handleMouseEvent): Focus the plugin's parent frame
10:06 Changeset [28237] by darin@apple.com
  • Scripts/do-webcore-rename: Get ready for some future renaming.
10:03 Changeset [28236] by kmccullough@apple.com

Reviewed by Adam.

  • Removed some unnecessary functions and changed an unused return type.
  • Drosera/win/DebuggerClient.cpp: (registerConsoleClass):
  • Drosera/win/DebuggerClient.h:
  • Drosera/win/Drosera.cpp: (registerDroseraClass):
09:54 Changeset [28235] by zimmermann@webkit.org

Not reviewed. Trying to fix gtk/qt/wx build. (I expected problems because of the moves)

09:41 Changeset [28234] by zimmermann@webkit.org

Rubber stamped by Brady.

Started platform reorganization (platform/text addition).
Moving string/text/font related classes into new places - as discussed on webkit-dev.

In a follow-up commit I'll move classes out of platform/{mac,win,...} into
platform/text/{mac,win,...}, and also do the ksvg2/ -> svg/ move.

09:02 Changeset [28233] by adele@apple.com

WebCore:

Reviewed by Darin.

Fix for http://bugs.webkit.org/show_bug.cgi?id=16072
<rdar://problem/5463821> REGRESSION: Mousemove event isn't fired when mouse moves over scrollbar with pressed button (16072)

Test: fast/events/mousemove-after-drag-over-scrollbar.html

  • page/EventHandler.cpp: (WebCore::EventHandler::handleMouseMoveEvent): If the mouse is pressed, and we've moved over a new scrollbar, then we can clear m_lastScrollbarUnderMouse. We should only need to show the hover effect when the mouse isn't pressed.

LayoutTests:

Reviewed by Darin.

Test for http://bugs.webkit.org/show_bug.cgi?id=16072
<rdar://problem/5463821> REGRESSION: Mousemove event isn't fired when mouse moves over scrollbar with pressed button

  • fast/events/mousemove-after-drag-over-scrollbar-expected.txt: Added.
  • fast/events/mousemove-after-drag-over-scrollbar.html: Added.
06:12 Changeset [28232] by ap@webkit.org
  • platform/win/Skipped: Added editing/selection/5241148.html, which crashes for me.
04:40 Changeset [28231] by alp@webkit.org

2007-11-28 Alp Toker <alp@atoker.com>

Reviewed by Timothy Hatcher.

http://bugs.webkit.org/show_bug.cgi?id=16174
[GTK] Use "URI" not "URL" in public API

Replace use of the term "URL" with "URI" in public headers,
documentation and some internal code to match GLib/GTK+ convention.

This is now mentioned in the API guidelines:

http://trac.webkit.org/projects/webkit/wiki/HackingGtk

API/ABI-breaking change.

01:34 Changeset [28230] by zecke@webkit.org
  • Self destruct the clients like the ohter ports do

Signed-off-by: Simon

00:49 Changeset [28229] by eric@webkit.org

2007-11-30 Eric Seidel <eric@webkit.org>

Reviewed by Maciej.

Fix layout test regressions caused by r28186
http://bugs.webkit.org/show_bug.cgi?id=16195
change first_byte and req_byte back to shorts instead of chars
(I think PCRE stuffs information in the high bits)

  • pcre/pcre_internal.h:
00:44 QtWebKit edited by hausmann@webkit.org
(diff)

11/29/07:

23:01 Changeset [28228] by beidson@apple.com

Reviewed by Tim

Part of <rdar://problem/5556377> - Need to accurately track and enforce database quota

SQLite has the ability to enforce the page usage for databases. This gives us bulletproof
enforcement of the database size limit with reasonable granularity (within 1023 bytes by
default on OS X with SQLite 3.4.0)

This also involved enhancing the ability to install/remove the authorizer to run the PRAGMA
statements involved

Note this patch does not actually use the new maximumSize() functionality of the
SQLiteDatabase class - that can be reviewed/landed seperately


  • platform/sql/SQLiteDatabase.cpp: (WebCore::SQLiteDatabase::SQLiteDatabase): (WebCore::SQLiteDatabase::maximumSize): Return the current maximum size in bytes (WebCore::SQLiteDatabase::setMaximumSize): Based on m_pageSize, set the maximum page count to enforce the maximum size in bytes (WebCore::SQLiteDatabase::pageSize): Fetch m_pageSize if it hasn't been fetched, or return the cached value (WebCore::SQLiteDatabase::setAuthorizer): Use enableAuthorizer for the sqlite_* level authorizer setup (WebCore::SQLiteDatabase::enableAuthorizer): Install or remove the sqlite authorizer handler
  • platform/sql/SQLiteDatabase.h: Add the m_pageSize member so we only have to fetch it once
21:50 Changeset [28227] by zecke@webkit.org
  • Fix fast/events/mousedown_in_scrollbar.html
  • This test used to crash in PlatformScrollbarQt::mouse*Event due parent() returning 0.
  • Extend the current check that the scrollbar in the mev can be go away. This happens if we destroy a RenderLayer as the result of a click. In the case of Qt we can have this scrollbar in m_lastScrollbarUnderMouse. The RenderLayer is the ScrollbarClient, m_lastScrollbarUnderMouse is a RefPtr and keeps the last reference. When calling into this scrollbar the m_client pointer is a dangling pointer. We extend the check to set m_lastScrollbarUnderMouse back to zero when it was the scrollbar in the old mev and is gone in the new one.
  • This happens only on the Qt port because we send more/different move events.
21:25 Changeset [28226] by antti@apple.com

WebCore:

Reviewed by Mitz.

Fix aspect ratio calculation of video.


Video should always be treated as a replaced element in size calculation.


Test: media/video-aspect-ratio.html

  • rendering/RenderBox.cpp: (WebCore::RenderBox::calcWidth): (WebCore::RenderBox::calcHeight):
  • rendering/RenderBox.h: (WebCore::RenderBox::shouldCalculateSizeAsReplaced):
  • rendering/RenderMedia.h: (WebCore::RenderMedia::shouldCalculateSizeAsReplaced):

LayoutTests:

Reviewed by Mitz.


Test for video aspect ratio calculation.

  • media/video-aspect-ratio.html: Added.
  • platform/mac/media: Added.
  • platform/mac/media/video-aspect-ratio-expected.checksum: Added.
  • platform/mac/media/video-aspect-ratio-expected.png: Added.
  • platform/mac/media/video-aspect-ratio-expected.txt: Added.
21:20 Changeset [28225] by weinig@apple.com

Reviewed by Oliver.

Additional fix for <rdar://problem/5592988> / http://bugs.webkit.org/show_bug.cgi?id=15936

  • More closely match IE's policy for frame navigation.
  • bindings/js/kjs_window.cpp: (KJS::WindowProtoFuncOpen::callAsFunction):
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::shouldAllowNavigation):
  • page/FrameTree.cpp: (WebCore::FrameTree::top):
  • page/FrameTree.h:
20:34 Changeset [28224] by mitz@apple.com

Reviewed by Adam Roben and John Sullivan.

  • make the recent searches popup extend only along the straight part of the search field (unless it needs to be wider).
  • platform/PopupMenuClient.h: Added clientInsetLeft() and clientInsetRight() for clients to specify desired horizontal insets for the menu.
  • platform/win/PopupMenuWin.cpp: (WebCore::PopupMenu::calculatePositionAndSize): (WebCore::PopupMenu::paint):
  • rendering/RenderMenuList.cpp: (WebCore::RenderMenuList::clientInsetLeft): Added. Returns 0. (WebCore::RenderMenuList::clientInsetRight): Ditto.
  • rendering/RenderMenuList.h:
  • rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::clientInsetLeft): Added. Returns half the control's height, which is the radius of the cap on the left. (WebCore::RenderTextControl::clientInsetRight): Added.
  • rendering/RenderTextControl.h:
19:02 Changeset [28223] by oliver@apple.com

Make the JS collector work with multiple threads

Reviewed by Maciej and Darin.

Under heavy contention it was possible the GC to suspend other
threads inside the pthread spinlock, which could lead to the GC
thread blocking on the pthread spinlock itself.

We now determine and store each thread's stack base when it is
registered, thus removing the need for any calls to pthread_get_stackaddr_np
that needed the pthread spinlock.

18:42 Changeset [28222] by andersca@apple.com

WebKitTools:

Reviewed by Sam.

<rdar://problem/5230478>
FrameLoadDelegate callbacks are not dumped in DRT.


  • DumpRenderTree/win/DumpRenderTree.cpp: (shouldLogFrameLoadDelegates): (runTest): (main):
  • DumpRenderTree/win/FrameLoaderDelegate.cpp: (BSTRtoString): (descriptionSuitableForTestResult): (FrameLoadDelegate::QueryInterface): (FrameLoadDelegate::didStartProvisionalLoadForFrame): (FrameLoadDelegate::didFailProvisionalLoadWithError): (FrameLoadDelegate::didCommitLoadForFrame): (FrameLoadDelegate::didFinishLoadForFrame): (FrameLoadDelegate::willCloseFrame): (FrameLoadDelegate::didClearWindowObject): (FrameLoadDelegate::didFinishDocumentLoadForFrame): (FrameLoadDelegate::didHandleOnloadEventsForFrame):
  • DumpRenderTree/win/FrameLoaderDelegate.h: (FrameLoadDelegate::windowScriptObjectAvailable): (FrameLoadDelegate::didFirstLayoutInFrame):

LayoutTests:

Reviewed by Sam.

<rdar://problem/5230478>
FrameLoadDelegate callbacks are not dumped in DRT.

Remove now passing tests.

  • platform/win/Skipped:
18:38 Changeset [28221] by andersca@apple.com

Reviewed by Sam.

Add an IWebFrameLoadDelegate2 interface with a didClearWindowObject method
that passes in the frame whose window has been cleared. This matches a newly
added delegate method on the Mac.


  • Interfaces/IWebFrameLoadDelegate.idl:
  • WebFrame.cpp: (WebFrame::windowObjectCleared):
18:26 Changeset [28220] by alice.liu@apple.com

Reviewed by Adam.

  • platform/win/Skipped: Removed two Mac-specific tests.
18:21 Changeset [28219] by alice.liu@apple.com

Move incorrect, Mac-specific results of fast/dom/Window/window-resize.html into platform/mac and replace them with non-Mac results

The incorrect results are tracked by <rdar://5563578>.

Reviewed by Adam.

  • fast/dom/Window/window-resize-expected.txt: Replaced.
  • platform/mac/fast/dom/Window/window-resize-expected.txt: Copied from fast/dom/Window/window-resize-expected.txt.
  • platform/win/Skipped: Removed window-resize tests.
18:19 Changeset [28218] by weinig@apple.com

WebKitTools:

Reviewed by Anders.

Add database quota UIDelegates methods to DRT UIDelegate.

  • DumpRenderTree/mac/UIDelegate.mm: (-[UIDelegate webView:quotaForSecurityOrigin:toCreateDatabase:withEstimatedSize:]): (-[UIDelegate webView:quotaForSecurityOrigin:fromProposedQuota:database:]):

LayoutTests:

Reviewed by Anders.

Revert r28213 which added an error callback that was not needed and changed
the results.

  • storage/transaction_callback_exception_crash.html:
18:07 Changeset [28217] by alice.liu@apple.com

Reviewed by Adam.

  • platform/win/Skipped: Removed a passing test.
18:01 Changeset [28216] by alice.liu@apple.com

Group failures related to dumpResourceLoadCallbacks being unimplemented

Reviewed by Adam.

  • platform/win/Skipped:
18:00 Changeset [28215] by alp@webkit.org

2007-11-30 Alp Toker <alp@atoker.com>

Reviewed by Maciej.

http://bugs.webkit.org/show_bug.cgi?id=16173
Licensing change

Change license from BSD to LGPL.

This is being done to encourage vendors to contribute their fixes back
upstream.

17:44 Changeset [28214] by alice.liu@apple.com

Group failures related to using Cygwin paths

Reviewed by Adam.

  • platform/win/Skipped:
17:02 Changeset [28213] by beidson@apple.com

Not reviewed.

Fixed a hang in the layout tests.
My checkin earlier today broke things such that the transaction call errors out instead of succeeds.
Therefore LayoutTestController is never notified that the test is done.


This changes modifies the test such that the controller is notified of completion even if
there's a transaction error.

The net effect of this fix is to transform the hang to a single layout test failure, so people
and the bots don't have their run-webkit-tests hang while I try to fix the real regression.

  • storage/transaction_callback_exception_crash.html:
16:53 Changeset [28212] by darin@apple.com

WebCore:

Reviewed by Adele.

Test: fast/forms/input-radio-checked-tab.html

  • html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::CheckedRadioButtons::addButton): Fix this code so that it doesn't call setChecked(false) until after the map has been updated. Otherwise, we can end up deallocating the map before manipulating it. As long as I was changing the function, I decided to make it do only a single hash table lookup.
  • html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::setChecked): Remove the button from the radio buttons set before changing the checked state. This matches the idiom used elsewhere and fixes the problem where setting checked to false would not remove it from the set.

LayoutTests:

Reviewed by Adele.

  • fast/forms/input-radio-checked-tab-expected.txt: Added.
  • fast/forms/input-radio-checked-tab.html: Added.
16:50 Changeset [28211] by alice.liu@apple.com

Move Mac-specific results of fast/dom/wrapper-classes.html into platform/mac and replace them with non-Mac results

Reviewed by Adam.

  • fast/dom/wrapper-classes-expected.txt: Replaced.
  • platform/mac/fast/dom/wrapper-classes-expected.txt: Copied from fast/dom/wrapper-classes-expected.txt.
16:43 Changeset [28210] by alice.liu@apple.com

Group drag-n-drop related failures under one bug

We don't know the specific causes of these failures, but we believe
they're due to bugs in DRT's drag-n-drop implementation.

Reviewed by Adam.

  • platform/win/Skipped:
16:36 Changeset [28209] by kmccullough@apple.com

WebKit/win:

Reviewed by Sam.

  • <rdar://5618976> Drosera: should listen for the WebScriptDebugServer dying and vice versa.
  • Interfaces/IWebScriptDebugListener.idl: Added the new function to the interface.
  • WebKit.vcproj/WebKit.def: Added the new function to the def file so Safari can tell WebKit when the server is dying.
  • WebKit.vcproj/WebKit_debug.def: Ditto.
  • WebKitDLL.cpp: Added the new function for Safari to call. (RunAsLocalServer): (LocalServerDidDie):
  • WebScriptDebugServer.cpp: (WebScriptDebugServer::WebScriptDebugServer): Removed unused member. (WebScriptDebugServer::sharedWebScriptDebugServer): Ditto, and added new member to prevent adding or removing listeners when the server is dying. (WebScriptDebugServer::addListener): Don't let new listeners be added when the server is dying. (WebScriptDebugServer::removeListener): Don't let listeners remove themselves when the server is dying. The server will remove them all anyways. (WebScriptDebugServer::serverDidDie): Notify all listeners that the server is dying and remove all listeners.
  • WebScriptDebugServer.h: Added the new method and removed an unused member.

WebKitTools:

Reviewed by Sam.

  • <rdar://5618976> Drosera: should listen for the WebScriptDebugServer dying and vice versa.
  • This fix will allow Drosera and Safari to reconnect if either of them closes correctly, but does not fix the case where one of them dies silently.
  • Drosera/win/ServerConnection.cpp: (ServerConnection::attemptToCreateServerConnection): Added a safety check, because it's possilbe to try to connect to a server that's dying. (ServerConnection::serverDidDie): Implemented. This resets Drosera when the server has died.
  • Drosera/win/ServerConnection.h: Added the new function and removed an unnecessary member.
16:29 Changeset [28208] by alice.liu@apple.com

Reviewed by Adam.

  • platform/win/Skipped: Removed another passing test.
16:26 Changeset [28207] by alice.liu@apple.com

Reviewed by Adam.

  • platform/win/Skipped: Recategorized one failing test and removed a passing test.
16:26 Changeset [28206] by justin.garcia@apple.com

Reviewed by Darin Adler.

<rdar://problem/5620093> Brief hang when Safari caches page text of XML document

  • editing/TextIterator.cpp: (WebCore::TextIterator::representNodeOffsetZero): When we haven't been emitting any characters, shouldRepresentNodeOffsetZero() can create VisiblePositions, which is expensive. So, we perform the inexpensive checks on m_node to see if it necessitates emitting a character first and will early return before encountering shouldRepresentNodeOffsetZero()s worse case behavior.
16:23 Changeset [28205] by andersca@apple.com
  • DumpRenderTree/win/DumpRenderTree.vcproj: Add shlwapi.lib to all configurations.
15:30 Changeset [28204] by alice.liu@apple.com

Removing <rdar://5507350> from skipped list because it's not failing.

  • platform/win/Skipped:
14:15 Changeset [28203] by andersca@apple.com

Reviewed by Alexey.

Move Mac-specific tests to platform/mac.


  • fast/events/objc-event-api-expected.txt: Removed.
  • fast/events/objc-event-api.html: Removed.
  • fast/events/objc-keyboard-event-creation-expected.txt: Removed.
  • fast/events/objc-keyboard-event-creation.html: Removed.
  • platform/mac/fast/events/objc-event-api-expected.txt: Copied from fast/events/objc-event-api-expected.txt.
  • platform/mac/fast/events/objc-event-api.html: Copied from fast/events/objc-event-api.html.
  • platform/mac/fast/events/objc-keyboard-event-creation-expected.txt: Copied from fast/events/objc-keyboard-event-creation-expected.txt.
  • platform/mac/fast/events/objc-keyboard-event-creation.html: Copied from fast/events/objc-keyboard-event-creation.html.
14:10 Changeset [28202] by andersca@apple.com

Reviewed by John.

Rename WebKitShrinksStandaloneImagesToFitKey to WebKitShrinksStandaloneImagesToFit.


This is safe to do because the preference is off by default and Safari 3, which is the only client that turns it on,
is using the setter and not messing around with NSUserDefaults.


  • WebView/WebPreferenceKeysPrivate.h:
  • WebView/WebPreferences.m: (+[WebPreferences initialize]): (-[WebPreferences shrinksStandaloneImagesToFit]): (-[WebPreferences setShrinksStandaloneImagesToFit:]):
13:57 Changeset [28201] by aroben@apple.com

Windows build fix

Removed some unreachable code (ironically, the code was some
ASSERT_NOT_REACHED()s).

  • pcre/pcre_compile.cpp: (compile_branch):
  • pcre/pcre_exec.cpp: (match):
13:53 Changeset [28200] by andersca@apple.com

Reviewed by Sam.

Don't install event handlers or set the zoom cursor if auto-shrink has been disabled.

  • loader/ImageDocument.cpp: (WebCore::ImageDocument::createDocumentStructure): (WebCore::ImageDocument::imageChanged):
13:51 Changeset [28199] by alice.liu@apple.com

Removing some fixed tests

  • platform/win/Skipped:
13:49 Changeset [28198] by beidson@apple.com

Build fix that works...?

  • WebChromeClient.h:
13:26 Changeset [28197] by kmccullough@apple.com
  • Build fix. Added additional includes for VS Express to the Release project.
  • Drosera/win/Drosera.vcproj/Drosera.vcproj:
13:13 Changeset [28196] by beidson@apple.com

Better build fix for Gtk

  • WebCoreSupport/ChromeClientGtk.h:
13:09 Changeset [28195] by beidson@apple.com

Build fix

  • WebChromeClient.cpp: (WebChromeClient::requestQuotaIncreaseForNewDatabase): (WebChromeClient::requestQuotaIncreaseForDatabaseOperation):
11:53 Changeset [28194] by andersca@apple.com

WebKitTools:

Reviewed by Adam.

<rdar://problem/5132005>
setUserStyleSheetEnabled is not fully implemented in Windows DRT.


  • DumpRenderTree/win/DumpRenderTree.vcproj: Add shlwapi.lib


  • DumpRenderTree/win/LayoutTestControllerWin.cpp: (LayoutTestController::setUserStyleSheetEnabled): Implement this.


(appendComponentToPath):
New method which wraps the Win32 API PathAppend.


(followShortcuts):
New method which checks if a file points to a shortcut and
follows the shortcut.


(resolveCygwinPath):
New method that takes a cygwin unix-style path and returns the Win32 path.


(cfStringRefToWString):


(LayoutTestController::setUserStyleSheetLocation):
Implement this.

LayoutTests:

Reviewed by Adam.

<rdar://problem/5132005>
setUserStyleSheetEnabled is not fully implemented in Windows DRT.


  • platform/win/Skipped:
11:38 Changeset [28193] by bdakin@apple.com

Reviewed by Geoff.

Fix for <rdar://problem/5620151> Disable JavaScript for SVG as
image for <img> and CSS images

  • platform/graphics/svg/SVGImage.cpp: (WebCore::SVGImage::dataChanged): When we create the empty clients, explicitly disable JavaScript in the settings.
11:29 Changeset [28192] by beidson@apple.com

WebCore:

Reviewed by Anders

Support for <rdar://problem/5556381> and <rdar://problem/5556379>

The Database feature in the engine needs to support delegate calls for policy decisions and
also provide notifications when origins and databases change their state.

This patch also polishes off the missing features of the management API

  • page/Chrome.cpp: Implement the two UIDelegate methods (WebCore::Chrome::requestQuotaIncreaseForNewDatabase): Ask for more space to create a new database if it won't fit (WebCore::Chrome::requestQuotaIncreaseForDatabaseOperation): Ask for more space to complete an in-progress operation
  • page/Chrome.h:
  • page/ChromeClient.h:
  • platform/graphics/svg/SVGImageEmptyClients.h: (WebCore::SVGEmptyChromeClient::requestQuotaIncreaseForNewDatabase): (WebCore::SVGEmptyChromeClient::requestQuotaIncreaseForDatabaseOperation):
  • storage/Database.cpp: (WebCore::Database::openDatabase): Check to see if this database can be opened - the quota must be high enough and if it isn't, the UIDelegate should have a change to bump the quota. Also update the UI-relevant details (display name and estimated size) upon successful opening of the database
  • storage/DatabaseDetails.h: Remove the version parameter as it is a programatic detail of a site database and is not important to API clients (WebCore::DatabaseDetails::DatabaseDetails): (WebCore::DatabaseDetails::isValid): (WebCore::DatabaseDetails::name):
  • storage/DatabaseTracker.cpp: (WebCore::DatabaseTracker::openTrackerDatabase): Tweaked the schema here - there was a horrible bug with the old schema that would prevent you from having two databases of the same name from two different origins. Also simplify the origin-management schema (WebCore::DatabaseTracker::canEstablishDatabase): Added. Does some estimated size vs quota checks, and asks the UI delegate for more space if necessary (WebCore::DatabaseTracker::hasEntryForOrigin): (WebCore::DatabaseTracker::establishEntryForOrigin): Establishes a tracker entry for the given origin with the current default quota Also notifies the client of the new origin (WebCore::DatabaseTracker::setDatabaseDetails): Update the display name and estimated size for the given database (WebCore::DatabaseTracker::fullPathForDatabase): Tweak to add the ability to get the path without creating it - for management purposes (WebCore::DatabaseTracker::populateOrigins): Populate origins from the Origins table instead of the Databases table (WebCore::DatabaseTracker::origins): (WebCore::DatabaseTracker::detailsForNameAndOrigin): For API management (WebCore::DatabaseTracker::usageForDatabase): (WebCore::DatabaseTracker::usageForOrigin): (WebCore::DatabaseTracker::quotaForOrigin): (WebCore::DatabaseTracker::setQuota): Notify the client (WebCore::DatabaseTracker::addDatabase): Notify the client (WebCore::DatabaseTracker::deleteAllDatabases): (WebCore::DatabaseTracker::deleteDatabasesWithOrigin): (WebCore::DatabaseTracker::deleteDatabase): (WebCore::DatabaseTracker::deleteDatabaseFile):
  • storage/DatabaseTracker.h:

WebKit/gtk:

Keep it building with new client method

  • WebCoreSupport/ChromeClientGtk.cpp: (WebKit::ChromeClient::requestQuotaIncreaseForNewDatabase): (WebKit::ChromeClient::requestQuotaIncreaseForDatabaseOperation):
  • WebCoreSupport/ChromeClientGtk.h:

WebKit/mac:

Reviewed by Anders

Support for <rdar://problem/5556381> and <rdar://problem/5556379>

Hook up UI Delegate calls for the database engine feature and other small tweaks

  • Storage/WebDatabaseManager.mm: (-[WebDatabaseManager detailsForDatabase:withOrigin:]): Renamed databaseName parameter to databaseIdentifier for clarity (-[WebDatabaseManager deleteDatabase:withOrigin:]): Renamed databaseName parameter to databaseIdentifier for clarity
  • Storage/WebDatabaseManagerPrivate.h:
  • Storage/WebDatabaseTrackerClient.h:
  • Storage/WebDatabaseTrackerClient.mm: (WebDatabaseTrackerClient::dispatchDidModifyDatabase): Renamed databaseName parameter to databaseIdentifier for clarity
  • WebCoreSupport/WebChromeClient.h:
  • WebCoreSupport/WebChromeClient.mm: (WebChromeClient::requestQuotaIncreaseForNewDatabase): Call through to the UI Delegate (WebChromeClient::requestQuotaIncreaseForDatabaseOperation): Ditto
  • WebView/WebUIDelegatePrivate.h: Added the two UI Delegate methods
  • WebView/WebView.mm: (CallDelegateReturningUnsignedLongLong): (CallUIDelegateReturningUnsignedLongLong):
  • WebView/WebViewInternal.h:

WebKit/qt:

Keep it building with new client method

  • WebCoreSupport/ChromeClientQt.cpp: (WebCore::ChromeClientQt::requestQuotaIncreaseForNewDatabase): (WebCore::ChromeClientQt::requestQuotaIncreaseForDatabaseOperation):
  • WebCoreSupport/ChromeClientQt.h:

WebKit/win:

Keep it building with new client method

  • WebChromeClient.cpp: (ChromeClient::requestQuotaIncreaseForNewDatabase): (ChromeClient::requestQuotaIncreaseForDatabaseOperation):
  • WebChromeClient.h:

WebKit/wx:

Keep it building with new client method

  • WebKitSupport/ChromeClientWx.cpp: (WebCore::ChromeClient::requestQuotaIncreaseForNewDatabase): (WebCore::ChromeClient::requestQuotaIncreaseForDatabaseOperation):
  • WebKitSupport/ChromeClientWx.h:
11:21 Changeset [28191] by alice.liu@apple.com

Reviewed by Adam.

Fixed <rdar://5133828> fast/frames/iframe-window-focus.html output is lowercase

  • DumpRenderTree/win/EventSender.cpp: (keyDownCallback): uppercase letters were being sent as lowercase letters without the shift key down.
10:56 Drosera edited by kmccullough@apple.com
Added new information about the design of Drosera, specifically to add … (diff)
10:48 Changeset [28190] by mitz@apple.com

Fix typo

10:46 Changeset [28189] by kmccullough@apple.com
  • Windows build fix. VS express needs some love.
  • Drosera/win/Drosera.vcproj/Drosera.vcproj:
10:45 Changeset [28188] by mitz@apple.com

WebCore:

Reviewed by Beth Dakin and Darin Adler.

  • manual test for <rdar://problem/5346394> Contextmenu event doesn't fire on body element inside frame
  • manual-tests/context-click-unfocused-frame.html: Added.

WebKit/win:

Reviewed by Beth Dakin and Darin Adler.

  • fix <rdar://problem/5346394> Contextmenu event doesn't fire on body element inside frame
  • WebView.cpp: (WebView::handleContextMenuEvent): Send the context menu event to the frame containing the node that was hit.
10:36 Changeset [28187] by kmccullough@apple.com

Reviewed by Sam.

  • Added recursive runloop guards.
  • DefaultDelegates/WebScriptDebugServer.m: (-[WebScriptDebugServer suspendProcessIfPaused]):
06:48 BuildingGtk edited by hendry@iki.fi
let people know about ccache (diff)
06:38 UsingGitWithWebKit edited by hendry@iki.fi
initial setup (diff)
04:49 Changeset [28186] by eric@webkit.org

2007-11-29 Eric Seidel <eric@webkit.org>

Reviewed by Mark Rowe.

Fix for --guard crash of fast/js/regexp-charclass-crash introduced by r28151.

  • pcre/pcre_compile.cpp: (is_anchored):
03:57 Changeset [28185] by mrowe@apple.com

Gtk build fix.

03:44 Changeset [28184] by eric@webkit.org

2007-11-29 Eric Seidel <eric@webkit.org>

Reviewed by Mark Rowe.


Attempt to fix non-mac builds after PCRE cleanup.

  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCoreSources.bkl:
  • pcre/pcre.pri:
03:39 Changeset [28183] by eric@webkit.org

2007-11-26 Eric Seidel <eric@webkit.org>

Reviewed by Sam.

Give consistent naming to the RegExp options/compile flags

  • pcre/pcre_compile.cpp: (compile_branch): (is_anchored): (find_firstassertedchar): (printCompiledRegExp): (jsRegExpCompile):
  • pcre/pcre_exec.cpp: (jsRegExpExecute):
  • pcre/pcre_internal.h:
03:38 Changeset [28182] by eric@webkit.org

2007-11-26 Eric Seidel <eric@webkit.org>

Reviewed by Sam.

Give consistent naming to the RegExp options/compile flags

  • pcre/pcre_compile.cpp: (compile_branch): (is_anchored): (find_firstassertedchar): (printCompiledRegExp): (jsRegExpCompile):
  • pcre/pcre_exec.cpp: (jsRegExpExecute):
  • pcre/pcre_internal.h:
03:37 Changeset [28181] by eric@webkit.org

2007-11-26 Eric Seidel <eric@webkit.org>

Reviewed by Sam.

Pull first_byte and req_byte optimizations out into separate static funtions, SunSpider reported this as a win.

  • pcre/pcre_exec.cpp: (tryFirstByteOptimization): (tryRequiredByteOptimization): (jsRegExpExecute):
  • pcre/pcre_internal.h:
03:37 Changeset [28180] by eric@webkit.org

2007-11-26 Eric Seidel <eric@webkit.org>

Reviewed by Maciej.

give PCRE_MULTILINE a better name: OptionMatchAcrossMultipleLines

  • pcre/pcre_compile.cpp: (compile_branch): (is_anchored): (printCompiledRegExp): (jsRegExpCompile):
  • pcre/pcre_exec.cpp: (jsRegExpExecute):
  • pcre/pcre_internal.h:
03:35 Changeset [28179] by eric@webkit.org

2007-11-26 Eric Seidel <eric@webkit.org>

Reviewed by Oliver.

Deprecate jsRegExpExecute's offset-vector fallback code

  • pcre/pcre_exec.cpp: (jsRegExpExecute):
03:34 Changeset [28178] by eric@webkit.org

2007-11-28 Eric Seidel <eric@webkit.org>

Reviewed by Maciej.

Centralize code for subjectPtr adjustments using inlines, only ever check for a single trailing surrogate (as UTF16

only allows one), possibly fix PCRE bugs involving char classes and garbled UTF16 strings.

  • pcre/pcre_exec.cpp: (match): (jsRegExpExecute):
  • pcre/pcre_internal.h: (getPreviousChar): (movePtrToPreviousChar): (movePtrToNextChar): (movePtrToStartOfCurrentChar):
03:33 Changeset [28177] by eric@webkit.org

2007-11-26 Eric Seidel <eric@webkit.org>

Reviewed by Maciej.

Make cur_is_word and prev_is_word locals, and change OP_ANY to OP_ANY_CHAR for clarity

  • pcre/pcre_compile.cpp: (find_fixedlength): (compile_branch): (canApplyFirstCharOptimization):
  • pcre/pcre_exec.cpp: (match):
  • pcre/pcre_internal.h:
03:32 Changeset [28176] by eric@webkit.org

2007-11-26 Eric Seidel <eric@webkit.org>

Reviewed by Mitz & Maciej.

Change _NC operators to use _IGNORING_CASE for clarity

  • pcre/pcre_compile.cpp: (find_fixedlength): (compile_branch): (find_firstassertedchar):
  • pcre/pcre_exec.cpp: (match):
  • pcre/pcre_internal.h:
03:32 Changeset [28175] by eric@webkit.org

2007-11-26 Eric Seidel <eric@webkit.org>

Reviewed by Mitz.

Remove branch from return

  • pcre/pcre_compile.cpp: (compile_branch):
  • pcre/pcre_exec.cpp: (match):
03:31 Changeset [28174] by eric@webkit.org

2007-11-26 Eric Seidel <eric@webkit.org>

Reviewed by Maciej.

Add repeatInformationFromInstructionOffset inline

  • pcre/pcre_exec.cpp: (repeatInformationFromInstructionOffset): (match):
03:30 Changeset [28173] by eric@webkit.org

2007-11-26 Eric Seidel <eric@webkit.org>

Reviewed by Maciej.

Remove no longer used error code JSRegExpErrorMatchLimit

  • kjs/regexp.cpp: (KJS::RegExp::match):
  • pcre/pcre.h:
  • pcre/pcre_internal.h:
03:30 Changeset [28172] by eric@webkit.org

2007-11-28 Eric Seidel <eric@webkit.org>

Reviewed by Maciej.

change getChar* functions to return result and push 'c' into local scopes for clarity

  • pcre/pcre_compile.cpp: (compile_branch): (calculateCompiledPatternLengthAndFlags):
  • pcre/pcre_exec.cpp: (match):
  • pcre/pcre_internal.h: (getChar): (getCharAndAdvance): (getCharAndLength): (getCharAndAdvanceIfSurrogate):
03:29 Changeset [28171] by eric@webkit.org

2007-11-26 Eric Seidel <eric@webkit.org>

Reviewed by Sam.

Make i locally scoped for better code clarity

  • pcre/pcre_exec.cpp: (match):
03:29 Changeset [28170] by eric@webkit.org

2007-11-28 Eric Seidel <eric@webkit.org>

Reviewed by Sam.

Comment cleanup

  • pcre/pcre_exec.cpp: (match):
03:28 Changeset [28169] by eric@webkit.org

2007-11-26 Eric Seidel <eric@webkit.org>

Reviewed by Maciej.

Give subjectPtr and instructionPtr sane names, reduce size of MatchFrame for a 0.2% speedup.

  • pcre/pcre_compile.cpp: (compile_branch): (calculateCompiledPatternLengthAndFlags):
  • pcre/pcre_exec.cpp: (match_ref): (MatchStack::pushNewFrame): (getUTF8CharAndIncrementLength): (match):
  • pcre/pcre_internal.h: (getChar): (getCharAndAdvance): (getCharAndLength): (getCharAndAdvanceIfSurrogate):
  • pcre/pcre_xclass.cpp: (getUTF8CharAndAdvancePointer):
03:27 Changeset [28168] by eric@webkit.org

2007-11-26 Eric Seidel <eric@webkit.org>

Reviewed by Sam.

Small speedup (0.7%) by simplifying canUseStackBufferForNextFrame() check

  • pcre/pcre_exec.cpp: (MatchStack::MatchStack): (MatchStack::popCurrentFrame):
03:27 Changeset [28167] by eric@webkit.org

2007-11-25 Eric Seidel <eric@webkit.org>

Reviewed by Sam.

Lower MATCH_LIMIT_RECURSION to more sane levels to prevent hangs on run-javascriptcore-tests

  • pcre/pcre_internal.h:
03:26 Changeset [28166] by eric@webkit.org

2007-11-25 Eric Seidel <eric@webkit.org>

Reviewed by Maciej.

Remove match_is_group variable for another 5% speedup

  • pcre/pcre_compile.cpp:
  • pcre/pcre_exec.cpp: (startNewGroup): (match):
03:25 Changeset [28165] by eric@webkit.org

2007-11-24 Eric Seidel <eric@webkit.org>

Reviewed by Sam.

Remove redundant eptrblock struct

  • pcre/pcre_exec.cpp: (MatchStack::pushNewFrame): (match):
03:25 Changeset [28164] by eric@webkit.org

2007-11-24 Eric Seidel <eric@webkit.org>

Reviewed by Maciej.

Remove redundant match_call_count and move recursion check out of super-hot code path
SunSpider says this is at least an 8% speedup for regexp.

  • pcre/pcre_exec.cpp: (MatchStack::MatchStack): (MatchStack::pushNewFrame): (MatchStack::popCurrentFrame): (MatchStack::popAllFrames): (match): (jsRegExpExecute):
  • pcre/pcre_internal.h:
03:24 Changeset [28163] by eric@webkit.org

2007-11-24 Eric Seidel <eric@webkit.org>

Reviewed by Sam.

Get rid of GETCHAR* macros, replacing them with better named inlines

  • pcre/pcre_compile.cpp: (compile_branch): (calculateCompiledPatternLengthAndFlags):
  • pcre/pcre_exec.cpp: (match):
  • pcre/pcre_internal.h: (getCharAndAdvance): (getCharAndLength): (getCharAndAdvanceIfSurrogate):
03:24 Changeset [28162] by eric@webkit.org

2007-11-24 Eric Seidel <eric@webkit.org>

Reviewed by Sam.

Further cleanup GET/PUT inlines

  • pcre/pcre_internal.h: (putOpcodeValueAtOffset): (getOpcodeValueAtOffset): (putOpcodeValueAtOffsetAndAdvance): (put2ByteOpcodeValueAtOffset): (get2ByteOpcodeValueAtOffset): (put2ByteOpcodeValueAtOffsetAndAdvance):
03:23 Changeset [28161] by eric@webkit.org

2007-11-24 Eric Seidel <eric@webkit.org>

Reviewed by Sam.

Give GET, PUT better names, and add (poor) moveOpcodePtrPastAnyAlternateBranches

  • pcre/pcre_compile.cpp: (firstSignificantOpCodeSkippingAssertions): (find_fixedlength): (complete_callout): (compile_branch): (compile_regex): (is_anchored): (canApplyFirstCharOptimization): (find_firstassertedchar):
  • pcre/pcre_exec.cpp: (match):
  • pcre/pcre_internal.h: (putOpcodeValueAtOffset): (getOpcodeValueAtOffset): (putOpcodeValueAtOffsetAndAdvance): (put2ByteOpcodeValueAtOffset): (get2ByteOpcodeValueAtOffset): (moveOpcodePtrPastAnyAlternateBranches):
  • pcre/pcre_ucp_searchfuncs.cpp: (_pcre_ucp_othercase):
03:22 Changeset [28160] by eric@webkit.org

2007-11-24 Eric Seidel <eric@webkit.org>

Reviewed by Sam.

Add inlines for toLowerCase, isWordChar, isSpaceChar for further regexp speedup

  • pcre/pcre_compile.cpp: (compile_branch): (jsRegExpCompile):
  • pcre/pcre_exec.cpp: (match): (jsRegExpExecute):
  • pcre/pcre_internal.h: (toLowerCase): (flipCase): (classBitmapForChar): (charTypeForChar): (isWordChar): (isSpaceChar): (CompileData::CompileData):
  • pcre/pcre_xclass.cpp: (_pcre_xclass):
03:21 Changeset [28159] by eric@webkit.org

2007-11-24 Eric Seidel <eric@webkit.org>

Reviewed by Sam.

cleanup _pcre_ucp_othercase

  • pcre/pcre_ucp_searchfuncs.cpp: (_pcre_ucp_othercase):
03:21 Changeset [28158] by eric@webkit.org

2007-11-28 Eric Seidel <eric@webkit.org>

Reviewed by Sam.

Abstract frame variables into locals and args

  • pcre/pcre_compile.cpp: (compile_branch):
  • pcre/pcre_exec.cpp: (match):
  • pcre/pcre_internal.h:
03:20 Changeset [28157] by eric@webkit.org

2007-11-28 Eric Seidel <eric@webkit.org>

Reviewed by Sam.

Section off MatchData arguments into args struct

  • pcre/pcre_exec.cpp: (MatchStack::pushNewFrame): (match):
03:19 Changeset [28156] by eric@webkit.org

2007-11-24 Eric Seidel <eric@webkit.org>

Reviewed by Sam.

split first_significant_code into two simpler functions

  • pcre/pcre_compile.cpp: (firstSignificantOpCode): (firstSignificantOpCodeSkippingAssertions): (is_anchored): (canApplyFirstCharOptimization): (find_firstassertedchar):
03:18 Changeset [28155] by eric@webkit.org

2007-11-24 Eric Seidel <eric@webkit.org>

Reviewed by Sam.

split first_significant_code into two simpler functions

  • pcre/pcre_compile.cpp: (firstSignificantOpCode): (firstSignificantOpCodeSkippingAssertions): (is_anchored): (canApplyFirstCharOptimization): (find_firstassertedchar):
03:18 Changeset [28154] by eric@webkit.org

2007-11-24 Eric Seidel <eric@webkit.org>

Reviewed by Sam.

clean up is_counted_repeat

  • pcre/pcre_compile.cpp: (is_counted_repeat):
03:17 Changeset [28153] by eric@webkit.org

2007-11-24 Eric Seidel <eric@webkit.org>

Reviewed by Sam.

clean up check_escape

  • pcre/pcre_compile.cpp: (check_escape):
03:16 Changeset [28152] by eric@webkit.org

2007-11-24 Eric Seidel <eric@webkit.org>

Reviewed by Sam.

Reformat find_fixedlength

  • pcre/pcre_compile.cpp: (find_fixedlength):
03:16 Changeset [28151] by eric@webkit.org

2007-11-24 Eric Seidel <eric@webkit.org>

Reviewed by Sam.

reformat is_anchored

  • pcre/pcre_compile.cpp: (is_anchored):
03:15 Changeset [28150] by eric@webkit.org

2007-11-24 Eric Seidel <eric@webkit.org>

Reviewed by Maciej.

Remove unused function could_be_empty_branch

  • pcre/pcre_compile.cpp: (first_significant_code): (find_fixedlength): (compile_branch): (canApplyFirstCharOptimization):
03:14 Changeset [28149] by eric@webkit.org

2007-11-24 Eric Seidel <eric@webkit.org>

Reviewed by Sam.

Pass around MatchData objects by reference

  • pcre/pcre_exec.cpp: (pchars): (match_ref): (match): (jsRegExpExecute):
03:13 Changeset [28148] by eric@webkit.org

2007-11-24 Eric Seidel <eric@webkit.org>

Reviewed by Sam.

give PCRE_STARTLINE a better name and rename match_data to MatchData

  • pcre/pcre_compile.cpp: (compile_branch): (canApplyFirstCharOptimization): (find_firstassertedchar): (printCompiledRegExp): (jsRegExpCompile):
  • pcre/pcre_exec.cpp: (pchars): (jsRegExpExecute):
  • pcre/pcre_internal.h:
03:12 Changeset [28147] by eric@webkit.org

2007-11-24 Eric Seidel <eric@webkit.org>

Reviewed by Sam.

Clean up find_firstassertedchar

  • pcre/pcre_compile.cpp: (get_othercase_range): (find_firstassertedchar): (calculateCompiledPatternLengthAndFlags):
03:11 Changeset [28146] by eric@webkit.org

2007-11-24 Eric Seidel <eric@webkit.org>

Reviewed by Tim Hatcher.

Pass around CompileData& instead of CompileData*

  • pcre/pcre_compile.cpp: (compile_branch): (jsRegExpCompile):
03:10 Changeset [28145] by eric@webkit.org

2007-11-24 Eric Seidel <eric@webkit.org>

Reviewed by Sam.

Clean up compile_branch, move _pcre_ord2utf8, and rename CompileData

  • JavaScriptCore.xcodeproj/project.pbxproj:
  • pcre/pcre_compile.cpp: (_pcre_ord2utf8): (calculateCompiledPatternLengthAndFlags): (jsRegExpCompile):
  • pcre/pcre_internal.h:
  • pcre/pcre_ord2utf8.cpp: Removed.
03:09 Changeset [28144] by eric@webkit.org

2007-11-24 Eric Seidel <eric@webkit.org>

Reviewed by Sam.

removing more macros

  • pcre/pcre_compile.cpp: (could_be_empty_branch): (compile_branch): (calculateCompiledPatternLengthAndFlags):
  • pcre/pcre_exec.cpp: (match): (jsRegExpExecute):
  • pcre/pcre_internal.h:
  • pcre/pcre_xclass.cpp:
03:08 Changeset [28143] by eric@webkit.org

2007-11-24 Eric Seidel <eric@webkit.org>

Reviewed by Maciej.

clean up formating in compile_branch

  • pcre/pcre_compile.cpp: (compile_branch):
03:07 Changeset [28142] by eric@webkit.org

2007-11-24 Eric Seidel <eric@webkit.org>

Reviewed by Sam.

Fix spacing for read_repeat_counts

  • pcre/pcre_compile.cpp: (read_repeat_counts):
03:06 Changeset [28141] by eric@webkit.org

2007-11-24 Eric Seidel <eric@webkit.org>

Reviewed by Sam.

Get rid of PCRE custom char types

  • pcre/pcre_compile.cpp: (check_escape): (complete_callout): (compile_branch): (compile_regex): (calculateCompiledPatternLengthAndFlags): (jsRegExpCompile):
  • pcre/pcre_exec.cpp: (match_ref): (match): (jsRegExpExecute):
  • pcre/pcre_internal.h:
03:06 Changeset [28140] by eric@webkit.org

2007-11-24 Eric Seidel <eric@webkit.org>

Reviewed by Sam.

reformat get_othercase_range

  • pcre/pcre_compile.cpp: (get_othercase_range):
03:05 Changeset [28139] by eric@webkit.org

2007-11-24 Eric Seidel <eric@webkit.org>

Reviewed by Maciej.

Remove register keyword and more cleanup

  • pcre/pcre_compile.cpp: (find_fixedlength): (compile_branch): (is_anchored): (is_startline): (find_firstassertedchar): (calculateCompiledPatternLengthAndFlags): (jsRegExpCompile):
  • pcre/pcre_exec.cpp: (MatchStack::canUseStackBufferForNextFrame): (MatchStack::allocateNextFrame): (MatchStack::pushNewFrame): (MatchStack::frameIsStackAllocated): (MatchStack::popCurrentFrame): (MatchStack::unrollAnyHeapAllocatedFrames): (getUTF8CharAndIncrementLength): (match): (jsRegExpExecute):
  • pcre/pcre_internal.h: (PUT2INC): (isLeadingSurrogate): (isTrailingSurrogate): (decodeSurrogatePair): (getChar):
  • pcre/pcre_ord2utf8.cpp: (_pcre_ord2utf8):
  • pcre/pcre_xclass.cpp: (getUTF8CharAndAdvancePointer): (_pcre_xclass):
03:04 Changeset [28138] by eric@webkit.org

2007-11-24 Eric Seidel <eric@webkit.org>

Reviewed by Maciej.

Clean up jsRegExpExecute

  • pcre/pcre_compile.cpp: (returnError): (jsRegExpCompile):
  • pcre/pcre_exec.cpp: (jsRegExpExecute):
  • pcre/pcre_internal.h:
02:16 Changeset [28137] by mrowe@apple.com

Fix REGRESSION(r27885): Installer hits assertion failure in JavaScriptGlue.

Reviewed by Maciej.

  • JSValueWrapper.cpp:

(getThreadGlobalExecState): Set the global object on the Interpreter before using it.

01:05 Changeset [28136] by mrowe@apple.com

Fix an assertion failure seen on the layout tests, and when closing the window after visiting <http://www.coudal.com/losalamos/>.

Reviewed by Oliver Hunt.

  • Plugins/WebBaseNetscapePluginStream.mm:

(-[WebBaseNetscapePluginStream _destroyStream]): Unlink the file and close the file
descriptor even when the stream is being destroyed without the load completing. This
avoids leaking the path and file descriptor, and leaving the temporary file on disk.

00:46 Changeset [28135] by oliver@apple.com

Merging updated system alloc and spinlock code from r38 of TCMalloc.

Reviewed by Geoff

This is needed as a precursor to the merge of TCMalloc proper.

00:44 template.svg attached to IconContestIdeas by aroben@apple.com
Preliminary entry template
Note: See TracTimeline for information about the timeline view.