Timeline


and

05/22/09:

23:25 Changeset [44082] by krit@webkit.org

2009-05-22 Dirk Schulze <krit@webkit.org>

Unreviewed build-fix for gtk. Breakage caused by a wrong call of ImageBuffer.

  • platform/graphics/cairo/ImageCairo.cpp: (WebCore::Image::drawPattern):
23:00 Changeset [44081] by krit@webkit.org

2009-05-22 Dirk Schulze <vbs85@gmx.de>

Reviewed by Eric Seidel.

Added the use of tileRect() for a correct drawing of
border-images.

Testcases for border-image are in fast/borders like
border-image-01.html and will be activated for cairo, once
gtk supports pixel tests.

https://bugs.webkit.org/show_bug.cgi?id=19652
[CAIRO] wrong drawing of border-image

  • platform/graphics/cairo/ImageCairo.cpp: (WebCore::Image::drawPattern):
22:47 Changeset [44080] by mrowe@apple.com

Part two of an attempted Windows build fix.

22:47 Changeset [44079] by zecke@webkit.org

Ask the Scrollbar for the orientation.

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

Use Scrollbar::orientation to figure out the
direction of scrolling.

22:13 Changeset [44078] by mrowe@apple.com

Part one of an attempted Windows build fix.

21:51 Changeset [44077] by kov@webkit.org

Improve network request docs

18:48 Changeset [44076] by barraclough@apple.com

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

Reviewed by Geoff Garen.

op_method_check

Optimize method calls, by caching specific function values within the Structure.
The new opcode is used almost like an x86 opcode prefix byte to optimize op_get_by_id,
where the property access is being used to read a function to be passed to op-call (i.e.
'foo.bar();'). This patch modifies the Structure class such that when a property is
put to an object for the first time we will check if the value is a function. If it is,
we will cache the function value on the Structure. A Structure in such a state guarantees
that not only does a property with the given identifier exist on the object, but also that
its value is unchanged. Upon any further attempt to put a property with the same identifier
(but a different value) to the object, it will transition back to a normal Structure (where
it will guarantee the presence but not the value of the property).

op_method_check makes use of the new information made available by the Structure, by
augmenting the functionality of op_get_by_id. Upon generating a FunctionCallDotNode a
check will be emitted prior to the property access reading the function value, and the JIT
will generate an extra (initially unlinked but patchable) set of checks prior to the regular
JIT code for get_by_id. The new code will do inline structure and prototype structure check
(unlike a regular get_by_id, which can only handle 'self' accesses inline), and then performs
an immediate load of the function value, rather than using memory accesses to load the value
from the obejct's property storage array. If the method check fails it will revert, or if
the access is polymorphic, the op_get_by_id will continue to operate - and optimize itself -
just as any other regular op_get_by_id would.

~2.5% on v8-tests, due to a ~9% progression on richards.

  • API/JSCallbackObjectFunctions.h: (JSC::::put): (JSC::::staticFunctionGetter):
  • API/JSObjectRef.cpp: (JSObjectMakeConstructor):
  • JavaScriptCore.exp:
  • assembler/AbstractMacroAssembler.h: (JSC::AbstractMacroAssembler::differenceBetween):
  • assembler/MacroAssemblerX86.h: (JSC::MacroAssemblerX86::moveWithPatch):
  • bytecode/CodeBlock.cpp: (JSC::CodeBlock::dump):
  • bytecode/CodeBlock.h: (JSC::getMethodCallLinkInfoReturnLocation): (JSC::CodeBlock::getMethodCallLinkInfo): (JSC::CodeBlock::addMethodCallLinkInfos): (JSC::CodeBlock::methodCallLinkInfo):
  • bytecode/Opcode.h:
  • bytecompiler/BytecodeGenerator.cpp: (JSC::BytecodeGenerator::emitMethodCheck):
  • bytecompiler/BytecodeGenerator.h:
  • interpreter/Interpreter.cpp: (JSC::Interpreter::privateExecute):
  • jit/JIT.cpp: (JSC::JIT::privateCompileMainPass): (JSC::JIT::privateCompileSlowCases): (JSC::JIT::privateCompile):
  • jit/JIT.h: (JSC::MethodCallCompilationInfo::MethodCallCompilationInfo):
  • jit/JITOpcodes.cpp:
  • jit/JITPropertyAccess.cpp: (JSC::JIT::emit_op_method_check): (JSC::JIT::emitSlow_op_method_check): (JSC::JIT::emit_op_get_by_id): (JSC::JIT::emitSlow_op_get_by_id): (JSC::JIT::emit_op_put_by_id): (JSC::JIT::emitSlow_op_put_by_id): (JSC::JIT::compileGetByIdHotPath): (JSC::JIT::compileGetByIdSlowCase): (JSC::JIT::patchMethodCallProto):
  • jit/JITStubs.cpp: (JSC::JITStubs::cti_op_get_by_id_method_check): (JSC::JITStubs::cti_op_get_by_id_method_check_second):
  • jit/JITStubs.h:
  • jsc.cpp: (GlobalObject::GlobalObject):
  • parser/Nodes.cpp: (JSC::FunctionCallDotNode::emitBytecode):
  • runtime/Arguments.cpp: (JSC::Arguments::put):
  • runtime/ArrayConstructor.cpp: (JSC::ArrayConstructor::ArrayConstructor):
  • runtime/BooleanConstructor.cpp: (JSC::BooleanConstructor::BooleanConstructor):
  • runtime/DateConstructor.cpp: (JSC::DateConstructor::DateConstructor):
  • runtime/ErrorConstructor.cpp: (JSC::ErrorConstructor::ErrorConstructor): (JSC::constructError):
  • runtime/ErrorPrototype.cpp: (JSC::ErrorPrototype::ErrorPrototype):
  • runtime/FunctionConstructor.cpp: (JSC::FunctionConstructor::FunctionConstructor):
  • runtime/FunctionPrototype.cpp: (JSC::FunctionPrototype::FunctionPrototype):
  • runtime/InternalFunction.cpp: (JSC::InternalFunction::InternalFunction):
  • runtime/JSActivation.cpp: (JSC::JSActivation::put): (JSC::JSActivation::putWithAttributes):
  • runtime/JSByteArray.cpp: (JSC::JSByteArray::JSByteArray):
  • runtime/JSFunction.cpp: (JSC::JSFunction::JSFunction): (JSC::JSFunction::getOwnPropertySlot):
  • runtime/JSGlobalObject.cpp: (JSC::JSGlobalObject::putWithAttributes): (JSC::JSGlobalObject::reset): (JSC::JSGlobalObject::mark):
  • runtime/JSGlobalObject.h: (JSC::JSGlobalObject::JSGlobalObjectData::JSGlobalObjectData): (JSC::JSGlobalObject::methodCallDummy):
  • runtime/JSObject.cpp: (JSC::JSObject::put): (JSC::JSObject::putWithAttributes): (JSC::JSObject::deleteProperty): (JSC::JSObject::defineGetter): (JSC::JSObject::defineSetter): (JSC::JSObject::getPropertyAttributes): (JSC::JSObject::getPropertySpecificFunction): (JSC::JSObject::putDirectFunction): (JSC::JSObject::putDirectFunctionWithoutTransition):
  • runtime/JSObject.h: (JSC::getJSFunction): (JSC::JSObject::getDirectLocation): (JSC::JSObject::putDirect): (JSC::JSObject::putDirectWithoutTransition):
  • runtime/LiteralParser.cpp: (JSC::LiteralParser::parseObject):
  • runtime/Lookup.cpp: (JSC::setUpStaticFunctionSlot):
  • runtime/Lookup.h: (JSC::lookupPut):
  • runtime/MathObject.cpp: (JSC::MathObject::MathObject):
  • runtime/NativeErrorConstructor.cpp: (JSC::NativeErrorConstructor::NativeErrorConstructor): (JSC::NativeErrorConstructor::construct):
  • runtime/NativeErrorPrototype.cpp: (JSC::NativeErrorPrototype::NativeErrorPrototype):
  • runtime/NumberConstructor.cpp: (JSC::NumberConstructor::NumberConstructor):
  • runtime/ObjectConstructor.cpp: (JSC::ObjectConstructor::ObjectConstructor):
  • runtime/PropertyMapHashTable.h: (JSC::PropertyMapEntry::PropertyMapEntry):
  • runtime/PrototypeFunction.cpp: (JSC::PrototypeFunction::PrototypeFunction):
  • runtime/PutPropertySlot.h: (JSC::PutPropertySlot::): (JSC::PutPropertySlot::PutPropertySlot): (JSC::PutPropertySlot::setNewProperty): (JSC::PutPropertySlot::setDespecifyFunctionProperty): (JSC::PutPropertySlot::isCacheable): (JSC::PutPropertySlot::cachedOffset):
  • runtime/RegExpConstructor.cpp: (JSC::RegExpConstructor::RegExpConstructor):
  • runtime/StringConstructor.cpp: (JSC::StringConstructor::StringConstructor):
  • runtime/StringPrototype.cpp: (JSC::StringPrototype::StringPrototype):
  • runtime/Structure.cpp: (JSC::Structure::Structure): (JSC::Structure::~Structure): (JSC::Structure::materializePropertyMap): (JSC::Structure::addPropertyTransitionToExistingStructure): (JSC::Structure::addPropertyTransition): (JSC::Structure::changeFunctionTransition): (JSC::Structure::addPropertyWithoutTransition): (JSC::Structure::get): (JSC::Structure::despecifyFunction): (JSC::Structure::put): (JSC::Structure::remove):
  • runtime/Structure.h: (JSC::Structure::get): (JSC::Structure::specificFunction):
  • runtime/StructureTransitionTable.h: (JSC::StructureTransitionTableHashTraits::emptyValue):
  • wtf/Platform.h:
18:34 Changeset [44075] by mitz@apple.com

WebCore:

2009-05-22 Darin Adler <darin@apple.com>

Reviewed by Dan Bernstein.

<rdar://problem/6916082> Incorrect handling of % as CSS value.

Test: fast/css/percent-character-as-value.html

  • css/CSSGrammar.y: Make a stray % character reliably cause CSS parsing to succeed, but the CSS value to be ignored because of incorrect type. A type of 0 has this effect.

LayoutTests:

2009-05-22 Dan Bernstein <mitz@apple.com>

Reviewed by Darin Adler.

<rdar://problem/6916082> Incorrect handling of % as CSS value.

  • fast/css/percent-character-as-value-expected.txt: Added.
  • fast/css/percent-character-as-value.html: Added.
18:01 Changeset [44074] by ddkilzer@apple.com

Add bugs.webkit.org URL for r44046

17:59 Changeset [44073] by bfulgham@webkit.org

WebCore:

2009-05-22 Brent Fulgham <bfulgham@webkit.org>

Reviewed by Adam Roben.

https://bugs.webkit.org/show_bug.cgi?id=25971
Correct a handful of build errors in the Windows Cairo variant
due to missing VIDEO support.

  • WebCore.vcproj/WebCore.vcproj: Exclude RenderMediaControls for the Cairo-based Windows target.
  • rendering/RenderThemeWin.cpp: Avoid #include of RenderMediaControls for non-VIDEO builds.

WebKit/win:

2009-05-22 Brent Fulgham <bfulgham@webkit.org>

Reviewed by Adam Roben.

https://bugs.webkit.org/show_bug.cgi?id=25971
Correct some build errors for Windows Cairo variant.

  • WebKit.vcproj/WebKit.vcproj: Remove WTF.lib link commands as the new JavaScriptCore.dll supplies this now.
17:54 Changeset [44072] by mrowe@apple.com

Versioning.

17:53 Changeset [44071] by mrowe@apple.com

New tag.

17:48 Changeset [44070] by ddkilzer@apple.com

One <limits> is enough

  • html/HTMLMediaElement.cpp: Removed duplicate #include <limits>.
15:58 Changeset [44069] by mitz@apple.com

2009-05-22 Darin Adler <darin@apple.com>

Reviewed by Dan Bernstein.

  • Fix <rdar://problem/6913765> REGRESSION (r42331-r42334): Extra scroll bars appearing on Welcome panels of iLife '09 apps
  • WebView/WebView.mm: (needsUnwantedScrollBarWorkaround): Added. Checks if this is a panel where scroll bars are unwanted. For safety, limited to only Apple applications. (-[WebView viewDidMoveToWindow]): If the workaround is needed, disallow scrolling the main frame. This prevents scroll bars from appearing.
14:57 Changeset [44068] by weinig@apple.com

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

Reviewed by Gavin Barraclough.

Fix non-SSE enabled builds.

  • jit/JITArithmetic.cpp: (JSC::JIT::emitSlow_op_add): Don't early return here, we still need to call the JIT stub. (JSC::JIT::emitSlow_op_sub): Ditto.
14:54 Changeset [44067] by ggaren@apple.com

2009-05-22 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Here's a thought: let's not take a jit stub call just to multiply by 1,
bokay?


imul doesn't set the zero flag, so to test for a zero result, we need
an explicit instruction. (Luckily, it does set the overflow flag, so
we can still use that.)

  • jit/JIT.h:
  • jit/JITArithmetic.cpp: (JSC::JIT::emit_op_mul): (JSC::JIT::emitSlow_op_mul): (JSC::JIT::emitMul32InPlace):
14:30 Changeset [44066] by jhoneycutt@apple.com

2009-05-22 Jon Honeycutt <jhoneycutt@apple.com>

<rdar://problem/6915957> REGRESSION: Hang when leaving page with VLC
plug-in

Reviewed by Steve Falkenburg.

  • plugins/win/PluginPackageWin.cpp: (WebCore::PluginPackage::determineQuirks): Look for the VLC plug-in's new name.
14:15 Changeset [44065] by abarth@webkit.org

2009-05-22 Adam Barth <abarth@webkit.org>

Reviewed by Darin Fisher.

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

Remove redudant member from Chromium's ResourceRequest. We already
have this data in the cross-platform ResourceRequestBase. Also, rename
ChromiumBridge parameter to be consistant with the new name for this
piece of data.

  • platform/chromium/ChromiumBridge.h:
  • platform/network/chromium/ResourceRequest.h:
14:14 Changeset [44064] by weinig@apple.com

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

Reviewed by Geoffrey "Premature Commit" Garen.

Add back constant integer cases for op_add.

  • jit/JIT.h:
  • jit/JITArithmetic.cpp: (JSC::JIT::emit_op_add): (JSC::JIT::emitAdd32Constant): (JSC::JIT::emitSlow_op_add): (JSC::JIT::emitSlowAdd32Constant):
  • jit/JITInlineMethods.h: (JSC::JIT::getConstantOperandImmediateDouble): (JSC::JIT::isOperandConstantImmediateDouble):
14:11 Changeset [44063] by bfulgham@webkit.org

Modify projects to use CFLite when not building the Apple Windows port.

14:07 Changeset [44062] by ggaren@apple.com

2009-05-22 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Added fast double cases for op_jnless and op_jnlesseq.

  • assembler/AbstractMacroAssembler.h: (JSC::AbstractMacroAssembler::JumpList::jumps): New accesor, used by addSlowCase.
  • assembler/X86Assembler.h: (JSC::X86Assembler::ucomisd_rm): New method for comparing register to memory.
  • jit/JIT.h:
  • jit/JITArithmetic.cpp: (JSC::JIT::emit_op_jnless): (JSC::JIT::emitSlow_op_jnless): (JSC::JIT::emit_op_jnlesseq): (JSC::JIT::emitSlow_op_jnlesseq): (JSC::JIT::emit_op_add): (JSC::JIT::emit_op_sub): (JSC::JIT::emitBinaryDoubleOp): (JSC::JIT::emit_op_mul): (JSC::JIT::emit_op_div): Modified emitBinaryDoubleOp to accept comparison/jump operations in addition to operations with explicit result registers.
  • jit/JITInlineMethods.h: (JSC::JIT::addSlowCase): Added an "addSlowCase" for JumpLists, so clients can track multiple jumps to the same slow case condition together.
13:48 Changeset [44061] by mitz@apple.com

2009-05-22 Darin Adler <darin@apple.com>

Reviewed by Dan Bernstein.

  • Made the global-function-resolve test independent of hashing order by using a fixed set of properties. This also removes the need for us to update this test every time we add something to the window object or the js-test-pre.js family of scripts.
  • fast/js/global-function-resolve-expected.txt: Updated.
  • fast/js/resources/global-function-resolve.js: Use a fixed array instead of using all property names from the global object; also made other small changes that don't have an effect on the substance of the test.
13:35 Changeset [44060] by kevino@webkit.org

Reviewed by Kevin Ollivier.

Triple-click support for wx port. Also, switch to allocating GraphicsContext
on the stack in OnPaint since we only need it within that function.

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

13:32 Changeset [44059] by kevino@webkit.org

Date fix on ChangeLog.

13:31 Changeset [44058] by mitz@apple.com

Reviewed by Darin Adler.

  • remove a test that was supposed to test the text/* change to MIME types from r43979, since the change was rolled out, and the test seems to be ineffective anyway, since it was passing on Mac after rolling out the change.
  • http/tests/mime/accept-all-text-types-expected.txt: Removed.
  • http/tests/mime/accept-all-text-types.html: Removed.
13:11 Changeset [44057] by kevino@webkit.org

Reviewed by Kevin Ollivier.

Only account for overhang for multi-character strings.

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

13:03 Changeset [44056] by kevino@webkit.org

wx build fix. Switch to CURL cookies so we can benefit from API updates.

12:41 Changeset [44055] by kov@webkit.org

Fixing changelog message

12:40 Changeset [44054] by kov@webkit.org

2009-05-22 Antonio Gomes <antonio.gomes@openbossa.org>

Reviewed by Gustavo Noronha.

Make Gtk build not bail out if gtk-doc-tools is not installed.

Warning message dumped instead.

  • autogen.sh:
12:07 Changeset [44053] by kov@webkit.org

2009-05-22 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Reviewed by Xan Lopez.

Add big warnings about the glib unicode backend being slow and
incomplete, since it is a work in progress.

  • autotools/webkit.m4:
  • configure.ac:
12:06 Changeset [44052] by xan@webkit.org

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

Reviewed by Maciej Stachowiak.

https://bugs.webkit.org/show_bug.cgi?id=24818
[GTK] http auth dialog pops up twice after a cancelled atempt

Workaround libsoup bug
http://bugzilla.gnome.org/show_bug.cgi?id=583462, which made
libsoup emit the 'authenticate' signal more often than it was
expected.

We'll be able to remove this when we depend on libsoup > 2.26.2.

  • webkit/webkitsoupauthdialog.c: (session_authenticate):
11:39 Changeset [44051] by pkasting@chromium.org

2009-05-22 Peter Kasting <pkasting@google.com>

Reviewed by Darin Fisher.

https://bugs.webkit.org/show_bug.cgi?id=25709 part one
Indent contents of namespaces in header files, to comply with the
style guide. No functional change.

  • platform/image-decoders/ImageDecoder.h: (WebCore::RGBA32Buffer::): (WebCore::RGBA32Buffer::RGBA32Buffer): (WebCore::RGBA32Buffer::clear): (WebCore::RGBA32Buffer::bytes): (WebCore::RGBA32Buffer::rect): (WebCore::RGBA32Buffer::height): (WebCore::RGBA32Buffer::status): (WebCore::RGBA32Buffer::duration): (WebCore::RGBA32Buffer::disposalMethod): (WebCore::RGBA32Buffer::hasAlpha): (WebCore::RGBA32Buffer::setRect): (WebCore::RGBA32Buffer::ensureHeight): (WebCore::RGBA32Buffer::setStatus): (WebCore::RGBA32Buffer::setDuration): (WebCore::RGBA32Buffer::setDisposalMethod): (WebCore::RGBA32Buffer::setHasAlpha): (WebCore::RGBA32Buffer::setRGBA): (WebCore::ImageDecoder::m_failed): (WebCore::ImageDecoder::~ImageDecoder): (WebCore::ImageDecoder::setData): (WebCore::ImageDecoder::size): (WebCore::ImageDecoder::frameCount): (WebCore::ImageDecoder::repetitionCount): (WebCore::ImageDecoder::supportsAlpha): (WebCore::ImageDecoder::failed): (WebCore::ImageDecoder::setFailed): (WebCore::ImageDecoder::clearFrameBufferCache):
  • platform/image-decoders/bmp/BMPImageDecoder.h: (WebCore::BMPImageDecoder::filenameExtension):
  • platform/image-decoders/gif/GIFImageDecoder.h: (WebCore::GIFImageDecoder::filenameExtension): (WebCore::GIFImageDecoder::frameDurationAtIndex): (WebCore::GIFImageDecoder::):
  • platform/image-decoders/ico/ICOImageDecoder.h: (WebCore::ICOImageDecoder::filenameExtension):
  • platform/image-decoders/jpeg/JPEGImageDecoder.h: (WebCore::JPEGImageDecoder::filenameExtension): (WebCore::JPEGImageDecoder::supportsAlpha): (WebCore::JPEGImageDecoder::reader): (WebCore::JPEGImageDecoder::setSize):
  • platform/image-decoders/png/PNGImageDecoder.h: (WebCore::PNGImageDecoder::filenameExtension): (WebCore::PNGImageDecoder::reader): (WebCore::PNGImageDecoder::decodingFailed):
  • platform/image-decoders/xbm/XBMImageDecoder.h: (WebCore::XBMImageDecoder::filenameExtension):
11:06 Changeset [44050] by kov@webkit.org

WebCore

2009-05-22 Dominik Röttsches <dominik.roettsches@access-company.com>

Reviewed by Gustavo Noronha.

https://bugs.webkit.org/show_bug.cgi?id=15914
[GTK] Implement Unicode functionality using GLib

Minor changes that allow building a hybrid version of WebKit
that has WTF Unicode backend based on GLib functions while
text codecs and TextBreakIterator remain based on ICU.

Fixed some includes that were assuming a WTF ICU backend and
introduced temporary usage of WTF_USE_GLIB_ICU_UNICODE_HYBRID
macro.

  • platform/ThreadGlobalData.cpp: (WebCore::ThreadGlobalData::ThreadGlobalData): (WebCore::ThreadGlobalData::~ThreadGlobalData):
  • platform/ThreadGlobalData.h:
  • platform/text/TextBoundariesICU.cpp:
  • platform/text/TextCodecICU.h:
  • platform/text/TextEncoding.cpp: (WebCore::TextEncoding::encode):
  • platform/text/TextEncodingRegistry.cpp: (WebCore::buildBaseTextCodecMaps): (WebCore::extendTextCodecMaps):

JavaScriptCore

2009-05-22 Dominik Röttsches <dominik.roettsches@access-company.com>

Reviewed by Gustavo Noronha.

https://bugs.webkit.org/show_bug.cgi?id=15914
[GTK] Implement Unicode functionality using GLib

Original patch by Jürg Billeter and Naiem Shaik.
Implementing WTF Unicode functionality based on GLib.

  • GNUmakefile.am:
  • wtf/unicode/Unicode.h:
  • wtf/unicode/glib: Added.
  • wtf/unicode/glib/UnicodeGLib.cpp: Added. (WTF::Unicode::foldCase): (WTF::Unicode::toLower): (WTF::Unicode::toUpper): (WTF::Unicode::direction): (WTF::Unicode::umemcasecmp):
  • wtf/unicode/glib/UnicodeGLib.h: Added. (WTF::Unicode::): (WTF::Unicode::toLower): (WTF::Unicode::toUpper): (WTF::Unicode::toTitleCase): (WTF::Unicode::isArabicChar): (WTF::Unicode::isFormatChar): (WTF::Unicode::isSeparatorSpace): (WTF::Unicode::isPrintableChar): (WTF::Unicode::isDigit): (WTF::Unicode::isPunct): (WTF::Unicode::mirroredChar): (WTF::Unicode::category): (WTF::Unicode::isLower): (WTF::Unicode::digitValue): (WTF::Unicode::combiningClass): (WTF::Unicode::decompositionType):
  • wtf/unicode/glib/UnicodeMacrosFromICU.h: Added.
09:59 Changeset [44049] by abarth@webkit.org

Unreviewed build fix.

09:45 Changeset [44048] by abarth@webkit.org

WebCore:

2009-05-22 Adam Barth <abarth@webkit.org>

Reviewed by Maciej Stachowiak.

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

Remove the policyBaseURL parameter from setCookie. This parameter is
redundant with the document parameter.

  • WebCore.base.exp:
  • WebCore.order:
  • dom/Document.cpp: (WebCore::Document::setCookie):
  • platform/CookieJar.h:
  • platform/mac/CookieJar.mm: (WebCore::setCookies):
  • platform/network/ResourceRequestBase.cpp: (WebCore::ResourceRequestBase::firstPartyForCookies): (WebCore::ResourceRequestBase::setFirstPartyForCookies):
  • platform/network/chromium/CookieJarChromium.cpp: (WebCore::setCookies):
  • platform/network/curl/CookieJarCurl.cpp: (WebCore::setCookies):
  • platform/network/soup/CookieJarSoup.cpp: (WebCore::setCookies):
  • platform/network/win/CookieJarCFNetWin.cpp: (WebCore::setCookies):
  • platform/network/win/CookieJarWin.cpp: (WebCore::setCookies):
  • platform/qt/CookieJarQt.cpp: (WebCore::setCookies):

WebKit/mac:

2009-05-22 Adam Barth <abarth@webkit.org>

Reviewed by Maciej Stachowiak.

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

Remove the policyBaseURL parameter from setCookie. This parameter is
redudant with the document parameter.

  • Plugins/Hosted/NetscapePluginInstanceProxy.mm: (WebKit::NetscapePluginInstanceProxy::setCookies):
  • Plugins/WebNetscapePluginView.mm: (-[WebNetscapePluginView setVariable:forURL:value:length:]):
09:44 Changeset [44047] by abarth@webkit.org

2009-05-22 Adam Barth <abarth@webkit.org>

Reviewed by Maciej Stachowiak.

Rename policyBaseURL and mainDocumentURL to firstPartyForCookies. The
previous names were confusing and inaccurate.

  • WebCore.order:
  • dom/Document.cpp: (WebCore::Document::setCookie):
  • dom/Document.h: (WebCore::Document::firstPartyForCookies): (WebCore::Document::setFirstPartyForCookies):
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::begin): (WebCore::FrameLoader::updateFirstPartyForCookies): (WebCore::FrameLoader::setFirstPartyForCookies): (WebCore::FrameLoader::open): (WebCore::FrameLoader::addExtraFieldsToRequest): (WebCore::FrameLoader::loadResourceSynchronously):
  • loader/FrameLoader.h:
  • loader/MainResourceLoader.cpp: (WebCore::MainResourceLoader::willSendRequest):
  • platform/CookieJar.h:
  • platform/mac/CookieJar.mm: (WebCore::setCookies):
  • platform/network/ResourceRequestBase.cpp: (WebCore::ResourceRequestBase::adopt): (WebCore::ResourceRequestBase::copyData): (WebCore::ResourceRequestBase::firstPartyForCookies): (WebCore::ResourceRequestBase::setFirstPartyForCookies): (WebCore::equalIgnoringHeaderFields):
  • platform/network/ResourceRequestBase.h:
  • platform/network/cf/ResourceRequestCFNet.cpp: (WebCore::ResourceRequest::doUpdatePlatformRequest): (WebCore::ResourceRequest::doUpdateResourceRequest):
  • platform/network/chromium/CookieJarChromium.cpp: (WebCore::setCookies):
  • platform/network/mac/ResourceRequestMac.mm: (WebCore::ResourceRequest::doUpdateResourceRequest): (WebCore::ResourceRequest::doUpdatePlatformRequest):
09:08 Changeset [44046] by timothy@apple.com

Fix the call to editingCancelled to be this._editingCancelled, since
editingCancelled doesn't exist and throws an exception.

Reviewed by Timothy Hatcher.

  • inspector/front-end/ElementsTreeOutline.js: (WebInspector.ElementsTreeElement.prototype._attributeEditingCommitted):
08:33 Changeset [44045] by hausmann@webkit.org

2009-05-22 Andre Pedralho <andre.pedralho@openbossa.org>

Reviewed by Simon Hausmann.

Fixed --makeargs usage in Qt build.

08:00 Changeset [44044] by ap@webkit.org

Reviewed by Eric Seidel.

https://bugs.webkit.org/show_bug.cgi?id=25928
Several errors detected by cppcheck

Fix all (the only one) problem in cross-platform code found by the tool. Port maintainers
should take a look at other reports.

  • css/CSSParser.cpp: (WebCore::CSSParser::addProperty): Don't leak the property even if there are billions of those.
07:26 Changeset [44043] by hausmann@webkit.org

2009-05-22 Zoltan Horvath <horvath.zoltan.6@stud.u-szeged.hu>

Reviewed by Simon Hausmann.

Correcting error message on missing WEBKIT_TESTFONTS
environment varible in Qt-port.

07:26 Changeset [44042] by hausmann@webkit.org

2009-05-22 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org>

Reviewed by Simon Hausmann.

Skip tests depending on platform dependent results.

06:24 Changeset [44041] by eric@webkit.org

2009-05-22 Shinichiro Hamaji <hamaji@google.com>

Reviewed by Oliver Hunt.

Remove optimization path alpha=0 case from GraphicContext(CG|Skia).
This optimization doesn't make sense for some composite mode (e.g., 'copy' operation).

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

  • platform/graphics/cg/GraphicsContextCG.cpp: (WebCore::GraphicsContext::drawRect): (WebCore::GraphicsContext::drawLine): (WebCore::GraphicsContext::strokeArc): (WebCore::GraphicsContext::drawConvexPolygon): (WebCore::GraphicsContext::fillPath): (WebCore::GraphicsContext::strokePath): (WebCore::GraphicsContext::fillRect): (WebCore::GraphicsContext::fillRoundedRect): (WebCore::GraphicsContext::strokeRect):
  • platform/graphics/skia/GraphicsContextSkia.cpp: (WebCore::GraphicsContext::drawConvexPolygon): (WebCore::GraphicsContext::drawEllipse): (WebCore::GraphicsContext::fillPath): (WebCore::GraphicsContext::fillRect): (WebCore::GraphicsContext::strokePath): (WebCore::GraphicsContext::strokeRect):
06:12 Changeset [44040] by hausmann@webkit.org

2009-05-21 Antonio Gomes <antonio.gomes@openbossa.org>

Reviewed by Simon Hausmann.

[Qt] Additional test for resource load (CSS file) for QWebFrame.

  • tests/qwebframe/qwebframe.qrc:
  • tests/qwebframe/style.css: Added.
  • tests/qwebframe/tst_qwebframe.cpp:
06:03 QtWebKitContrib edited by hausmann@webkit.org
(diff)
02:10 QtWebKitContrib edited by hausmann@webkit.org
(diff)
01:37 Changeset [44039] by xan@webkit.org

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

Unreviewed build fix.

Revert the whole thing, since we can't figure out a way to make it
work in all platforms.

  • rendering/SVGInlineTextBox.cpp: (WebCore::pathForDecoration):
  • svg/SVGLength.cpp: (WebCore::SVGLength::PercentageOfViewport):
01:36 Changeset [44038] by hausmann@webkit.org

2009-05-22 Simon Hausmann <simon.hausmann@nokia.com>

Unreviewed Qt build fix.

Provide dummy implementation of pure virtual EditorClient method.

01:20 Changeset [44037] by xan@webkit.org

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

Try to fix Windows build.

Apparently it can't tell if '1.0f' is float or double, so cast to
float.

  • rendering/SVGInlineTextBox.cpp: (WebCore::pathForDecoration):
01:11 Changeset [44036] by xan@webkit.org

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

Try to fix breakage from the previous patch.

  • rendering/SVGInlineTextBox.cpp: (WebCore::pathForDecoration):
  • svg/SVGLength.cpp: (WebCore::SVGLength::PercentageOfViewport):
00:28 Changeset [44035] by xan@webkit.org

2009-05-15 Fridrich Strba <fridrich.strba@bluewin.ch>

Reviewed by Maciej Stachowiak.

https://bugs.webkit.org/show_bug.cgi?id=25805
In debug build, mingw win32 build has problems with powf

Change C-style calls to powf and sqrtf to C++-style calls to
overloaded pow and sqrt. This solves also a problem with mingw
compiler during the debug build.

  • rendering/SVGInlineTextBox.cpp: (WebCore::pathForDecoration):
  • svg/SVGLength.cpp: (WebCore::SVGLength::PercentageOfViewport):

05/21/09:

23:20 Changeset [44034] by xan@webkit.org

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

Unreviewed build fix.

Add MacroAssemblerCodeRef.h to file list.

  • GNUmakefile.am:
21:44 Changeset [44033] by mrowe@apple.com

Merge r44031.

21:44 Changeset [44032] by mrowe@apple.com

Build fix.

20:57 Changeset [44031] by slewis@apple.com

2009-05-21 Stephanie Lewis <slewis@apple.com>

Reviewed by Mark Rowe.

<rdar://problem/6913680> Update image caching options.
Disable extra ImageIO cache because we already handle caching decoded image data.

  • platform/graphics/cg/ImageSourceCG.cpp: (WebCore::imageSourceOptions):
19:34 Changeset [44030] by barraclough@apple.com

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

Reviewed by Darin Adler.
Addition of MacroAssemblerCodeRef.h rubber stamped by Geoff Garen.

Refactor JIT code-handle objects. The representation of generated code is currently
a bit of a mess. We have a class JITCode which wraps the pointer to a block of
generated code, but this object does not reference the executable pool meaning that
external events (the pool being derefed) could make the pointer become invalid.
To overcome this both the JIT and Yarr implement further (and similar) objects to
wrap the code pointer with a RefPtr to the pool. To add to the mire, as well as the
CodeBlock containing a handle onto the code the FunctionBodyNode also contains a
copy of the code pointer which is used almost (but not entirely) uniquely to access
the JIT code for a function.

Rationalization of all this:

  • Add a new type 'MacroAssembler::CodeRef' as a handle for a block of JIT generated code.
  • Change the JIT & Yarr to internally handle code using CodeRefs.
  • Move the CodeRef (formerly anow defunct JITCodeRef) from CodeBlock to its owner node.
  • Remove the (now) redundant code pointer from FunctionBodyNode.

While tidying this up I've made the PatchBuffer return code in new allocations using a CodeRef,
and have enforced an interface that the PatchBuffer will always be used, and 'finalizeCode()' or
'finalizeCodeAddendum()' will always be called exactly once on the PatchBuffer to complete code generation.

This gives us a potentially useful hook ('PatchBuffer::performFinalization()') at the end of generation,
which may have a number of uses. It may be helpful should we wish to switch our generation
model to allow RW/RX exclusive memory, and it may be useful on non-cache-coherent platforms to
give us an oportunity to cache flush as necessary.

No performance impact.

  • assembler/AbstractMacroAssembler.h: (JSC::AbstractMacroAssembler::ProcessorReturnAddress::relinkCallerToTrampoline): (JSC::AbstractMacroAssembler::CodeRef::CodeRef): (JSC::AbstractMacroAssembler::CodeRef::trampolineAt): (JSC::AbstractMacroAssembler::PatchBuffer::PatchBuffer): (JSC::AbstractMacroAssembler::PatchBuffer::~PatchBuffer): (JSC::AbstractMacroAssembler::PatchBuffer::link): (JSC::AbstractMacroAssembler::PatchBuffer::linkTailRecursive): (JSC::AbstractMacroAssembler::PatchBuffer::patch): (JSC::AbstractMacroAssembler::PatchBuffer::complete): (JSC::AbstractMacroAssembler::PatchBuffer::finalize): (JSC::AbstractMacroAssembler::PatchBuffer::entry):
  • bytecode/CodeBlock.cpp: (JSC::CodeBlock::CodeBlock): (JSC::CodeBlock::reparseForExceptionInfoIfNecessary): (JSC::CodeBlock::setJITCode):
  • bytecode/CodeBlock.h: (JSC::CodeBlock::getBytecodeIndex): (JSC::CodeBlock::executablePool):
  • interpreter/CallFrameClosure.h:
  • interpreter/Interpreter.cpp: (JSC::Interpreter::execute): (JSC::Interpreter::prepareForRepeatCall):
  • jit/JIT.cpp: (JSC::JIT::privateCompile): (JSC::JIT::privateCompileCTIMachineTrampolines): (JSC::JIT::linkCall):
  • jit/JIT.h:
  • jit/JITCode.h: (JSC::JITCode::JITCode): (JSC::JITCode::operator bool): (JSC::JITCode::addressForCall): (JSC::JITCode::offsetOf): (JSC::JITCode::execute): (JSC::JITCode::size): (JSC::JITCode::executablePool): (JSC::JITCode::HostFunction):
  • jit/JITPropertyAccess.cpp: (JSC::JIT::privateCompilePutByIdTransition): (JSC::JIT::privateCompilePatchGetArrayLength): (JSC::JIT::privateCompileGetByIdProto): (JSC::JIT::privateCompileGetByIdSelfList): (JSC::JIT::privateCompileGetByIdProtoList): (JSC::JIT::privateCompileGetByIdChainList): (JSC::JIT::privateCompileGetByIdChain):
  • jit/JITStubs.cpp: (JSC::JITStubs::cti_vm_dontLazyLinkCall): (JSC::JITStubs::cti_vm_lazyLinkCall):
  • parser/Nodes.cpp: (JSC::ProgramNode::generateJITCode): (JSC::EvalNode::generateJITCode): (JSC::FunctionBodyNode::FunctionBodyNode): (JSC::FunctionBodyNode::createNativeThunk): (JSC::FunctionBodyNode::generateJITCode):
  • parser/Nodes.h: (JSC::ScopeNode::generatedJITCode): (JSC::ScopeNode::getExecutablePool): (JSC::ScopeNode::setJITCode): (JSC::ProgramNode::jitCode): (JSC::EvalNode::jitCode): (JSC::FunctionBodyNode::jitCode):
  • runtime/RegExp.cpp: (JSC::RegExp::match):
  • yarr/RegexJIT.cpp: (JSC::Yarr::RegexGenerator::compile): (JSC::Yarr::jitCompileRegex): (JSC::Yarr::executeRegex):
  • yarr/RegexJIT.h: (JSC::Yarr::RegexCodeBlock::RegexCodeBlock): (JSC::Yarr::RegexCodeBlock::pcreFallback): (JSC::Yarr::RegexCodeBlock::setFallback): (JSC::Yarr::RegexCodeBlock::operator bool): (JSC::Yarr::RegexCodeBlock::set): (JSC::Yarr::RegexCodeBlock::execute):
18:55 Changeset [44029] by levin@chromium.org

2009-05-21 Albert J. Wong <ajwong@chromium.org>

Reviewed by Eric Seidel.

Bug 25903: Create a default UI theme for media controls in Chromium.
https://bugs.webkit.org/show_bug.cgi?id=25903

Implement a default UI for chromium. Add a style sheet for Chromium
media controls with good defaults and implemented basic draw functions
for play/pause & mute buttons.

  • css/mediaControlsChromium.css: Added.
  • rendering/RenderThemeChromiumLinux.cpp: (WebCore::RenderThemeChromiumWin::extraMediaControlsStyleSheet): Export our custom media controls style sheet. (WebCore::RenderThemeChromiumLinux::paintMediaButtonInternal): Paint buttons respecting chromium media controls color scheme. (WebCore::RenderThemeChromiumLinux::paintMediaPlayButton): Paint logic specific to play/pause button. (WebCore::RenderThemeChromiumLinux::paintMediaMuteButton): Paint specific to mute button.
  • rendering/RenderThemeChromiumLinux.h: Appropriate header changes.
  • rendering/RenderThemeChromiumWin.cpp: (WebCore::RenderThemeChromiumWin::extraMediaControlsStyleSheet): Export our custom media controls style sheet. (WebCore::RenderThemeChromiumWin::paintMediaButtonInternal): Paint buttons respecting chromium media controls color scheme. (WebCore::RenderThemeChromiumWin::paintMediaPlayButton): Paint logic specific to play/pause button. (WebCore::RenderThemeChromiumWin::paintMediaMuteButton): Paint specific to mute button. (WebCore::RenderThemeChromiumWin::setDefaultFontSize): Appropriate header changes.
  • rendering/RenderThemeChromiumWin.h:
18:48 Changeset [44028] by mrowe@apple.com

Merge r44027.

18:46 Changeset [44027] by ggaren@apple.com

Checked in layout tests I accidentally left out of my last check-in.

18:39 Changeset [44026] by mrowe@apple.com

Merge r44016.

18:39 Changeset [44025] by mrowe@apple.com

Merge r44011.

18:39 Changeset [44024] by mrowe@apple.com

Merge r44010.

18:38 Changeset [44023] by mrowe@apple.com

Merge r43993.

18:38 Changeset [44022] by mrowe@apple.com

Merge r43976.

18:38 Changeset [44021] by mrowe@apple.com

Merge r43970.

18:35 Changeset [44020] by eric@webkit.org

2009-05-21 Eric Seidel <eric@webkit.org>

Rubber-stamped by Antti Koivisto.

Make it possible to write js-only http tests by exposing a /js-test-resources alias.
https://bugs.webkit.org/show_bug.cgi?id=25915

Second attempt at landing, now using -c instead of -C to make sure
that mod_alias is loaded on Apache 1.x instances before using Alias.

  • Scripts/run-webkit-httpd:
  • Scripts/run-webkit-tests:
18:33 Changeset [44019] by weinig@apple.com

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

Reviewed by Gavin Barraclough.

Implement op_negate inline fast cases.

  • assembler/MacroAssemblerX86Common.h: (JSC::MacroAssemblerX86Common::neg32):
  • assembler/X86Assembler.h: (JSC::X86Assembler::): (JSC::X86Assembler::negl_m): (JSC::X86Assembler::xorpd_rr):
  • jit/JIT.cpp: (JSC::JIT::privateCompileMainPass): (JSC::JIT::privateCompileSlowCases):
  • jit/JIT.h:
  • jit/JITArithmetic.cpp: (JSC::JIT::emit_op_negate): (JSC::JIT::emitSlow_op_negate):
18:10 Changeset [44018] by kevino@webkit.org

Reviewed by Kevin Ollivier.

When stripping the query from a file:// URL, do not leave a trailing question mark.

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

17:57 Changeset [44017] by kevino@webkit.org

Reviewed by Kevin Ollivier.

Notify ImageObserver::didDraw to help the cache purge alive resources.

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

17:28 Changeset [44016] by oliver@apple.com

<rdar://problem/6910264> REGRESSION: Cached DOM global object property access fails in browser (25921)
<https://bugs.webkit.org/show_bug.cgi?id=25921>

Reviewed by Maciej Stachowiak.

When caching properties on the global object we need to ensure that we're
not attempting to cache through a shell object.

17:15 Changeset [44015] by levin@chromium.org

2009-05-21 Evan Martin <evan@chromium.org>

Reviewed by Eric Seidel.

Flesh out font fallback for Chromium's Skia port.
getLastResortFallbackFont should fall back on well-known fonts.
https://bugs.webkit.org/show_bug.cgi?id=25860

  • platform/graphics/chromium/FontCacheLinux.cpp: (WebCore::FontCache::getLastResortFallbackFont): try known font names.
17:09 Changeset [44014] by sfalken@apple.com

Windows build fix.

16:36 Changeset [44013] by mrowe@apple.com

Merge r43891.

16:36 Changeset [44012] by mrowe@apple.com

Merge r43880.

16:32 Changeset [44011] by mitz@apple.com

Reviewed by John Sullivan.

  • speculative fix for <rdar://problem/6890716> crash at FontCache::purgeInactiveFontData + 199
  • platform/graphics/FontCache.cpp: (WebCore::FontCache::purgeInactiveFontData): Deleting a SimpleFontData can cause releaseFontData() to be called, which modifies gInactiveFontData. Therefore, avoid deleting SimpleFontData instances while iterating over gInactiveFontData and delete them afterwards.
16:26 Changeset [44010] by ggaren@apple.com

WebCore:

2009-05-21 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Test for <rdar://problem/6910832> | https://bugs.webkit.org/show_bug.cgi?id=25907
Incorrect URL returned to the DOM while the user drags a file

  • page/DragController.cpp: (WebCore::DragController::dragExited): (WebCore::DragController::tryDHTMLDrag): Don't base our decision on KURL, since that only looks at the text of the document's URL. Do base our decision on the securityOrigin(), which knows more about the document's actual origin.

LayoutTests:

2009-05-21 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Tests for <rdar://problem/6910832> | https://bugs.webkit.org/show_bug.cgi?id=25907
Incorrect URL returned to the DOM while the user drags a file

  • http/tests/local/drag-over-remote-content-expected.txt: Added.
  • http/tests/local/drag-over-remote-content.html: Added.
  • http/tests/security/drag-over-remote-content-iframe-expected.txt: Added.
  • http/tests/security/drag-over-remote-content-iframe.html: Added.
16:23 Changeset [44009] by mitz@apple.com

Correct change log

16:23 Changeset [44008] by mrowe@apple.com

Merge r43973.

16:23 Changeset [44007] by mrowe@apple.com

Merge r43969.

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

Merge r43964.

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

Merge r43951.

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

Merge r43942.

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

Merge r43937.

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

Merge r43931.

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

Merge r43949.

16:22 Changeset [44000] by mitz@apple.com

Rubber-stamped by Mark Rowe.

Rolled out r43985.

  • platform/MIMETypeRegistry.cpp: (WebCore::initializeSupportedNonImageMimeTypes): (WebCore::MIMETypeRegistry::isSupportedNonImageMIMEType):
16:22 Changeset [43999] by mrowe@apple.com

Merge r43929.

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

Merge r43912.

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

Merge r43878.

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

Merge r43876.

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

Merge r43869.

16:21 Changeset [43994] by mrowe@apple.com

Merge r43866.

16:00 Changeset [43993] by weinig@apple.com

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

Reviewed by Brady Eidson and Mark Rowe.

Fix for <rdar://problem/6901522>
REGRESSION: Office 2008: Preview with browser is not shown, and Finder window is in the front of Safari

If the NSURLRequest is annotated with a "ForceHTMLMIMEType" property, force
the MIME type to be text/html.

  • platform/network/mac/ResourceHandleMac.mm: (-[WebCoreResourceHandleAsDelegate connection:didReceiveResponse:]):
15:56 Changeset [43992] by kevino@webkit.org

Blind windows fix after last commit.

15:42 Changeset [43991] by kov@webkit.org

2009-05-21 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Fixing test to actually use the correct names for the frames.

  • http/tests/mime/accept-all-text-types.html:
15:29 Changeset [43990] by kevino@webkit.org

Reviewed by Kevin Ollivier.

Use an environment variable to control which logs are on and off.
Also, make a generic function for translating channel name to its log.

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

15:15 Changeset [43989] by kov@webkit.org

2009-05-21 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Disable 2 more tests that sometimes fail.

  • platform/gtk/Skipped:
15:12 Changeset [43988] by cwzwarich@webkit.org

2009-05-21 Cameron Zwarich <zwarich@apple.com>

Reviewed by Mark Rowe.

Bug 25945: Add support for MADV_FREE to TCMalloc
<https://bugs.webkit.org/show_bug.cgi?id=25945>
<rdar://problem/6910754>

Add support for MADV_FREE to TCMalloc_SystemRelease for platforms that
don't also support MADV_FREE_REUSE. The code is identical to the MADV_DONTNEED
case except for the advice passed to madvise(), so combining the two cases
makes the most sense.

  • wtf/Platform.h: Only define HAVE_MADV_FREE when not building on Tiger or Leopard, because while it is defined on these platforms it actually does nothing.
  • wtf/TCSystemAlloc.cpp: (TCMalloc_SystemRelease): use MADV_FREE if it is available; otherwise use MADV_DONTNEED.
15:07 Changeset [43987] by kevino@webkit.org

wx build fix after method added to EditorClient.

14:54 Changeset [43986] by kov@webkit.org

2009-05-21 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Adding file I forgot to add to last commit.

  • http/tests/mime/resources/accept-all-text-types.cgi: Added.
14:47 Changeset [43985] by kov@webkit.org

2009-05-21 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Reviewed by Darin Adler.

Test that WebKit accepts any text/* type.

  • http/tests/mime/accept-all-text-types-expected.txt: Added.
  • http/tests/mime/accept-all-text-types.html: Added.
14:36 Changeset [43984] by darin@chromium.org

2009-05-21 Darin Fisher <darin@chromium.org>

Fix-up coding style.

  • WebCoreSupport/WebEditorClient.mm: (WebEditorClient::getAutoCorrectSuggestionForMisspelledWord):
14:36 Changeset [43983] by darin@chromium.org

2009-05-21 Darin Fisher <darin@chromium.org>

Fix-up coding style.

  • WebCoreSupport/WebEditorClient.cpp: (WebEditorClient::getAutoCorrectSuggestionForMisspelledWord):
14:35 Changeset [43982] by darin@chromium.org

2009-05-21 Darin Fisher <darin@chromium.org>

Fix build bustage.

  • WebCoreSupport/EditorClientGtk.cpp: (WebKit::EditorClient::getAutoCorrectSuggestionForMisspelledWord): Add stub for method.
  • WebCoreSupport/EditorClientGtk.h:
14:19 Changeset [43981] by levin@chromium.org

2009-05-21 David Levin <levin@chromium.org>

Reviewed by Darin Fisher.

Bug 25946: Chromium needs MIMETypeRegistry::getMediaMIMETypeForExtension implementation.
https://bugs.webkit.org/show_bug.cgi?id=25946

A very simple implementation to keep it working. A bug has been filed in the chromium db
(http://code.google.com/p/chromium/issues/detail?id=12441) to investigate doing something more
complete.

  • platform/chromium/MimeTypeRegistryChromium.cpp: (WebCore::MIMETypeRegistry::getMediaMIMETypeForExtension):
14:02 Changeset [43980] by darin@chromium.org

2009-05-20 Siddhartha Chattopadhyaya <sidchat@google.com>

Reviewed by Justin Garcia.


Add automatic spell correction support in WebKit

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

  • editing/Editor.cpp: (WebCore::findFirstMisspellingInRange): (WebCore::Editor::advanceToNextMisspelling): (WebCore::Editor::markMisspellingsAfterTypingToPosition): (WebCore::markAllMisspellingsInRange): (WebCore::markMisspellingsOrBadGrammar): (WebCore::Editor::markMisspellings): (WebCore::Editor::markBadGrammar): (WebCore::Editor::markMisspellingsAndBadGrammar):
  • editing/Editor.h:
  • loader/EmptyClients.h: (WebCore::EmptyEditorClient::getAutoCorrectSuggestionForMisspelledWord):
  • page/EditorClient.h:
13:57 Changeset [43979] by christian@webkit.org

2009-05-21 Christian Dywan <christian@twotoasts.de>

Reviewed by Darin Adler.

Text files which have sub MIME types are treated as not displayable
http://bugs.webkit.org/show_bug.cgi?id=24903

  • platform/MIMETypeRegistry.cpp: (WebCore::initializeSupportedNonImageMimeTypes): (WebCore::MIMETypeRegistry::isSupportedNonImageMIMEType): Regard any MIME type beginning with "text/" as supported and remove all "text/" types from the list.
13:54 Changeset [43978] by kov@webkit.org

LayoutTests

2009-05-21 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Reviewed by Xan Lopez.

Disable failing HTTP tests now that we are enabling HTTP on the
bot.

  • platform/gtk/Skipped:

WebKitTools

2009-05-21 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Reviewed by Xan Lopez.

Default to running HTTP tests for GTK+.

  • Scripts/run-webkit-tests:
13:30 Changeset [43977] by darin@apple.com

2009-05-21 Darin Adler <darin@apple.com>

Rolled the httpd changes out, since many machines (including the bots)
have an older version of Apache that does not support the Alias command.
Or maybe it's something else, but the bots are failing.

  • Scripts/run-webkit-httpd: Rolled back.
  • Scripts/run-webkit-tests: Ditto.
12:57 Changeset [43976] by mrowe@apple.com

Fix <https://bugs.webkit.org/show_bug.cgi?id=25917> / <rdar://problem/6910066>.
Bug 25917: REGRESSION (r43559?): Javascript debugger crashes when pausing page

Reviewed by Oliver Hunt.

The debugger currently retrieves the arguments object from an activation rather than pulling
it from a call frame. This is unreliable to due to the recent optimization to lazily create
the arguments object. In the long-term it should stop doing that (<rdar://problem/6911886>),
but for now we force eager creation of the arguments object when debugging.

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::BytecodeGenerator):

12:25 Changeset [43975] by ggaren@apple.com

2009-05-21 Eric Seidel <eric@webkit.org>

Reviewed by Geoffrey Garen.

Make it possible to write js-only http tests by exposing a /js-test-resources alias.
https://bugs.webkit.org/show_bug.cgi?id=25915

  • Scripts/run-webkit-httpd:
  • Scripts/run-webkit-tests:
11:51 Changeset [43974] by ap@webkit.org

Reviewed by David Kilzer.

https://bugs.webkit.org/show_bug.cgi?id=25890
Implement Network logging channel on Mac

  • platform/network/mac/ResourceHandleMac.mm: (WebCore::ResourceHandle::~ResourceHandle): (WebCore::ResourceHandle::start): (WebCore::ResourceHandle::cancel): (WebCore::ResourceHandle::setDefersLoading): (-[WebCoreResourceHandleAsDelegate connection:willSendRequest:redirectResponse:]): (-[WebCoreResourceHandleAsDelegate connectionShouldUseCredentialStorage:]): (-[WebCoreResourceHandleAsDelegate connection:didReceiveAuthenticationChallenge:]): (-[WebCoreResourceHandleAsDelegate connection:didCancelAuthenticationChallenge:]): (-[WebCoreResourceHandleAsDelegate connection:didReceiveResponse:]): (-[WebCoreResourceHandleAsDelegate connection:didReceiveData:lengthReceived:]): (-[WebCoreResourceHandleAsDelegate connection:willStopBufferingData:]): (-[WebCoreResourceHandleAsDelegate connection:didSendBodyData:totalBytesWritten:totalBytesExpectedToWrite:]): (-[WebCoreResourceHandleAsDelegate connectionDidFinishLoading:]): (-[WebCoreResourceHandleAsDelegate connection:didFailWithError:]): (-[WebCoreResourceHandleAsDelegate connection:willCacheResponse:]): Added logging for async requests (as these are most interesting).
11:19 Changeset [43973] by ap@webkit.org

Reviewed by Darin Adler.

<rdar://problem/6907542> REGRESSION (r43143): Hang in RenderLineBoxList::dirtyLinesFromChangedChild
when clicking link to load Flash animation (http://www.roambi.com)

  • WebCoreSupport/WebEditorClient.mm: (WebEditorClient::respondToChangedSelection): Don't call -[NSApplication updateWindows] here, WebHTMLView can take care of this.
  • WebView/WebHTMLView.mm: (-[WebHTMLView inputContext]): Use a precomputed boolean stored in WebHTMLViewPrivate, as calling isTextInput() is not always safe. (-[WebHTMLView textStorage]): Ditto. (-[WebHTMLView _updateSelectionForInputManager]): Update _private->exposeInputContext when selection changes, and let AppKit update its cache if necessary.
11:17 Changeset [43972] by eric.carlson@apple.com

2009-05-21 Eric Carlson <eric.carlson@apple.com>

Reviewed by David Kilzer.

<rdar://problem/6902197> WebCore doesn't know about all of the MIME types supported by QTKit


Add a static table to map from some common file extensions to their MIME types so it
is possible to detect support even when the platform mapping is incomplete. Use the
table to lookup types not found by UTI on the OSX, and when looking for a media engine
with a generic or missing type.

  • platform/MIMETypeRegistry.cpp: (WebCore::initializeMediaTypeMaps): New, initialize the mediaMIMETypeForExtensionMap. (WebCore::MIMETypeRegistry::getMediaMIMETypeForExtension): New. Look for the specified MIME type in the static mapping table if the platform specific getMIMETypeForExtension doesn't find a match.
  • platform/MIMETypeRegistry.h: Declare getMediaMIMETypeForExtension.
  • platform/graphics/MediaPlayer.cpp: (WebCore::MediaPlayer::load): When the type passed is empty, "application/octet-stream", or "text/plain", try to look it up based on the file extension with getMediaMIMETypeForExtension.
  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm: (WebCore::addFileTypesToCache): See if getMediaMIMETypeForExtension can map from file extension to MIME type if UTI fails.
09:36 Changeset [43971] by kov@webkit.org

2009-05-21 Andre Pedralho <andre.pedralho@openbossa.org>

Reviewed by Gustavo Noronha.

Added --makeargs flag to the build script.

  • Scripts/build-webkit:
  • Scripts/webkitdirs.pm:
09:29 Changeset [43970] by ap@webkit.org

Reviewed by Darin Adler.

<rdar://problem/5579292> REGRESSION (2-3): "Default default" encoding for Korean changed
from Korean (Windows, DOS) to Korean (ISO 2022-KR), which breaks some sites

  • WebView/WebPreferences.mm:

(+[WebPreferences _setInitialDefaultTextEncodingToSystemEncoding]): Update the existing fix
for the changed result of CFStringConvertEncodingToIANACharSetName().

09:03 Changeset [43969] by ap@webkit.org

Reviewed by Darin Adler.

<rdar://problem/6883758> REGRESSION (r43143): First character typed with input method does
not go into inline hole (seen with Chinese & Kotoeri on top Chinese website www.baidu.com)

  • WebCoreSupport/WebEditorClient.mm: (WebEditorClient::respondToChangedSelection): Call -[NSApplication updateWindows] to make AppKit re-fetch the input context when selection changes. Since we use SelectionController to check whether the view is editable, it is important not to re-fetch the context too early, e.g. from a focus changed notification.
07:05 Changeset [43968] by eric@webkit.org

2009-05-21 Eric Seidel <eric@webkit.org>

Reviewed by Alexey Proskuryakov.

Clean up DragController
https://bugs.webkit.org/show_bug.cgi?id=25926

I renamed m_document to m_documentUnderMouse to better document what it does
I could call it m_lastDocumentUnderMouse to be most-accurate, but this seemed
long enough.

I also saw copy/paste code involving clearing the selection when moving out of
one document and into another. I moved that code into a function called
mouseMovedIntoDocument.

I also got rid of a couple needless null-checks after confirming via source
inspection they were not ever possible.
In Mac WebKit it's not possible to have a Page that doesn't have a mainFrame()
I left an ASSERT(m_page->mainFrame()) in case some other port ever violates this.
It's also not possible to return a document from documentAtPoint that is not
in a frame (as such a document would not be rendered).

No functional changes, thus no tests.

  • page/DragController.cpp: (WebCore::DragController::DragController): (WebCore::DragController::dragIsMove): (WebCore::DragController::dragExited): (WebCore::DragController::performDrag): (WebCore::DragController::mouseMovedIntoDocument): (WebCore::DragController::dragEnteredOrUpdated): (WebCore::DragController::tryDocumentDrag): (WebCore::DragController::operationForLoad): (WebCore::DragController::concludeEditDrag): (WebCore::DragController::canProcessDrag): (WebCore::DragController::tryDHTMLDrag): (WebCore::DragController::placeDragCaret):
  • page/DragController.h: (WebCore::DragController::documentUnderMouse):
05:50 Changeset [43967] by eric@webkit.org

2009-05-21 Eric Seidel <eric@webkit.org>

Reviewed by Alexey Proskuryakov.

Rename DragController::dragOperation() to sourceDragOperation() for clarity
Remove unused setDragOperation()

There are two times DragOperation is used. The source specifies
what drag operations it supports (in a mask) and the destination
picks a subset of those as DragOperations it supports if a drop were
to occur. I was confused when I first saw this accessor as to which
it meant. It turns out that this is only used when WebKit starts a
drag, and we keep it around so that we can provide this information
to other Mac OS X applications when they ask. I've renamed the method
for clarity so the next person in this code will be less confused.

No functional changes, thus no tests.

  • page/DragController.h: (WebCore::DragController::sourceDragOperation):
05:34 Changeset [43966] by ap@webkit.org

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=19517
<rdar://problem/6007112> DOM modification of textArea causes Access Violation (NULL pointer?)

This no longer happens with ToT, just adding a test.

  • fast/parser/head-parsing-19517-expected.txt: Added.
  • fast/parser/head-parsing-19517.html: Added.
02:30 Changeset [43965] by mitz@apple.com

Rubber-stamped by Mark Rowe.

  • correct a copyright header accidently reverted in r43964
  • WebKitSystemInterface.h:
02:16 Changeset [43964] by mitz@apple.com

WebCore:

Reviewed by Anders Carlsson.

  • WebCore part of <rdar://problem/6901751> REGRESSION (r35515): Tiger crash painting the selection on registration page of car2go.com

A bug in old versions of Core Graphics causes memory corruption to occur
when clipping under certain conditions. Make the clipping functions
fail silently under those conditions.

Test: fast/block/float/selection-gap-clip-out-tiger-crash.html

  • WebCore.Tiger.exp: Added wkCGContextIsSafeToClip
  • platform/graphics/cg/GraphicsContextCG.cpp: (WebCore::safeCGContextClip): Added a wrapper around CGContextClip that, on Tiger, bails out if wkCGContextIsSafeToClip() returns false. (WebCore::safeCGContextEOClip): Ditto for CGContextEOClip. (WebCore::safeCGContextClipToRect): Ditto for CGContextClipToRect. (WebCore::GraphicsContext::fillPath): Changed to call the safe variants of CGContextClip, CGContextEOClip and CGContextClipToRect. (WebCore::GraphicsContext::strokePath): Ditto. (WebCore::GraphicsContext::fillRect): Ditto. (WebCore::GraphicsContext::clip): Ditto. (WebCore::GraphicsContext::clipOut): Ditto. (WebCore::GraphicsContext::clipOutEllipseInRect): Ditto. (WebCore::GraphicsContext::clipPath): Ditto. (WebCore::GraphicsContext::addInnerRoundedRectClip): Ditto. (WebCore::GraphicsContext::strokeRect): Ditto.
  • platform/mac/WebCoreSystemInterface.h: Added wkCGContextIsSafeToClip.
  • platform/mac/WebCoreSystemInterface.mm: Added wkCGContextIsSafeToClip.

WebKit/mac:

Reviewed by Anders Carlsson.

  • WebKit part of <rdar://problem/6901751> REGRESSION (r35515): Tiger crash painting the selection on registration page of car2go.com
  • WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface): Added CGContextIsSafeToClip.

WebKitLibraries:

Reviewed by Anders Carlsson.

  • WebKitSystemInterface part of <rdar://problem/6901751> REGRESSION (r35515): Tiger crash painting the selection on registration page of car2go.com
  • WebKitSystemInterface.h:
  • libWebKitSystemInterfaceTiger.a:

LayoutTests:

Reviewed by Anders Carlsson.

  • test for <rdar://problem/6901751> REGRESSION (r35515): Tiger crash painting the selection on registration page of car2go.com
  • fast/block/float/selection-gap-clip-out-tiger-crash-expected.txt: Added.
  • fast/block/float/selection-gap-clip-out-tiger-crash.html: Added.
02:08 Changeset [43963] by xan@webkit.org

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

Unreviewed build fix.

https://bugs.webkit.org/show_bug.cgi?id=25910
WebkitGTK r43960 cannot compile

Do not include local copy of guriescape header, which was
removed. We now use the copy in glib.

  • platform/gtk/FileSystemGtk.cpp:
01:41 Changeset [43962] by cwzwarich@webkit.org

2009-05-21 Cameron Zwarich <zwarich@apple.com>

Reviewed by Maciej Stachowiak.

Bug 25912: Harden NumberPrototype.cpp by removing use of strcpy()
<https://bugs.webkit.org/show_bug.cgi?id=25912>

This causes no change on SunSpider.

  • runtime/NumberPrototype.cpp: (JSC::integerPartNoExp): replace strcpy() with memcpy(), ASSERT that the temporary buffer has sufficient space to store the result, and move the explicit null-termination closer to the memcpy() for easier visual inspection of the code. (JSC::fractionalPartToString): replace strcpy() with memcpy(), and ASSERT that the temporary buffer has sufficient space to store the result. There is no explicit null-termination because this is done by the caller. The same is already true for exponentialPartToString(). (JSC::numberProtoFuncToExponential): replace strcpy() with memcpy(), explicitly null-terminate the result, and ASSERT that the temporary buffer has sufficient space to store the result.
01:02 Changeset [43961] by eric@webkit.org

2009-05-21 Eric Seidel <eric@webkit.org>

Reviewed by Alexey Proskuryakov.

Fix file-input-files-access which was passing for the wrong reasons.

The log was pushing the drop target off screen and the drops were failing!

  • editing/pasteboard/file-input-files-access-expected.txt:
  • editing/pasteboard/resources/file-input-files-access.js: (testOrderedDraggingWithDirectory): (runTest):

05/20/09:

22:52 Changeset [43960] by weinig@apple.com

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

Reviewed by Cameron Zwarich.

Cleanup the JSGlobalData when exiting early with the usage statement in jsc.

  • jsc.cpp: (printUsageStatement): (parseArguments): (jscmain):
22:46 Changeset [43959] by weinig@apple.com

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

Reviewed by Gavin Barraclough.

Update the patchOffsetGetByIdSlowCaseCall constant for the
case that OPCODE_SAMPLING is enabled.

  • jit/JIT.h:
21:06 Changeset [43958] by abarth@webkit.org

2009-05-20 Adam Barth <abarth@webkit.org>

Reviewed by Dimitri Glazkov.

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

It turns out the CurrentContext wasn't currect either because it gave
us the frame for the write() function itself. We actually want the
*calling* context.

  • bindings/v8/custom/V8HTMLDocumentCustom.cpp: (WebCore::CALLBACK_FUNC_DECL):
19:52 Changeset [43957] by kov@webkit.org

2009-05-20 Gustavo Noronha Silva <gns@gnome.org>

Skipping a new test.

  • platform/gtk/Skipped:
19:45 Changeset [43956] by kov@webkit.org

2009-05-20 Gustavo Noronha Silva <gns@gnome.org>

Skipping test that fails intermitently.

  • platform/gtk/Skipped:
19:43 Changeset [43955] by zecke@webkit.org

[GTK] Implement Image::loadPlatformResource.

Install the four resources we are using. For the icons
where an icon name is specified by freedeskop.org try to
map the WebCore name to that name and fallback to the
internal icon. For everything else use the internal icon
name. Remove the temporary link stub as this is not
required any more.

19:42 Changeset [43954] by zecke@webkit.org

[GTK] Gtk+ wants to have a themable urlIcon too.

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

19:41 Changeset [43953] by kov@webkit.org

2009-05-20 Gustavo Noronha Silva <gns@gnome.org>

Rubber-stamped by Mark Rowe.

Add GTK+-specific results for canvas-composite-alpha. This test
has 'failing' cases that pass on GTK+/cairo.

  • platform/gtk/fast/canvas/canvas-composite-alpha-expected.txt: Added.
19:28 Changeset [43952] by ggaren@apple.com

2009-05-20 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.

Added support for inline subtraction of doubles.

  • jit/JITArithmetic.cpp: (JSC::JIT::emit_op_sub): (JSC::JIT::emitSlow_op_sub): (JSC::JIT::emitSlowSub32InPlaceLeft): (JSC::JIT::emitBinaryDoubleOp):
19:22 Changeset [43951] by slewis@apple.com

2009-05-20 Stephanie Lewis <slewis@apple.com>

Update the order files. <rdar://problem/6881750> Generate new order files.

  • WebCore.order:
    • WebKit.order:
19:19 Changeset [43950] by weinig@apple.com

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

Reviewed by Geoffrey Garen.

Added support for inline division.

  • assembler/X86Assembler.h: (JSC::X86Assembler::): (JSC::X86Assembler::divsd_rr): (JSC::X86Assembler::divsd_mr):
  • bytecode/CodeBlock.cpp: (JSC::CodeBlock::dump):
  • bytecode/Opcode.h:
  • bytecompiler/BytecodeGenerator.cpp: (JSC::BytecodeGenerator::emitBinaryOp):
  • interpreter/Interpreter.cpp: (JSC::Interpreter::privateExecute):
  • jit/JIT.cpp: (JSC::JIT::privateCompileMainPass): (JSC::JIT::privateCompileSlowCases):
  • jit/JIT.h:
  • jit/JITArithmetic.cpp: (JSC::JIT::emitBinaryDoubleOp): (JSC::JIT::emit_op_div): (JSC::JIT::emitSlow_op_div):
19:14 Changeset [43949] by mrowe@apple.com

Fix some assertion failures in plug-in tests on the Windows debug build bot.

Reviewed by Gavin Barraclough.

  • plugins/PluginStream.cpp:

(WebCore::PluginStream::startStream): Switch to using protocolIsJavaScript.

  • plugins/PluginView.cpp:

(WebCore::scriptStringIfJavaScriptURL): Ditto.

18:31 Changeset [43948] by ggaren@apple.com

2009-05-20 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.

Added support for inline addition of doubles.

  • jit/JITArithmetic.cpp: (JSC::JIT::emit_op_add): (JSC::JIT::emitSlow_op_add): (JSC::JIT::emitSlowAdd32InPlace): (JSC::JIT::emitBinaryDoubleOp): (JSC::JIT::emit_op_mul): (JSC::JIT::emitSlow_op_mul):
17:16 Changeset [43947] by ggaren@apple.com

2009-05-20 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Factored inline double operations into a helper function, so that we
can reuse this code for other math operations.

  • jit/JIT.h:
  • jit/JITArithmetic.cpp: (JSC::JIT::emitBinaryDoubleOp): (JSC::JIT::emit_op_mul):
  • jit/JITCall.cpp: (JSC::JIT::compileOpCallInitializeCallFrame):
16:58 Changeset [43946] by beidson@apple.com

WebCore:

2009-05-20 Brady Eidson <beidson@apple.com>

Reviewed by Darin Adler.

More protocolInHTTPFamily() cleanup.

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

WebKit/win:

2009-05-20 Brady Eidson <beidson@apple.com>

Reviewed by Darin Adler.

More protocolInHTTPFamily() cleanup.

  • WebHistory.cpp: (WebHistory::visitedURL):
16:57 Changeset [43945] by ggaren@apple.com

2009-05-20 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Added support for inline multiplication of doubles.

  • assembler/X86Assembler.h: (JSC::X86Assembler::cvtsi2sd_mr): New function, useful for loading an int32 into a double register.
  • jit/JITArithmetic.cpp: (JSC::JIT::emit_op_mul): (JSC::JIT::emitSlow_op_mul): Filled out these cases for double arithmetic.
  • jit/JIT.h:
  • jit/JITInlineMethods.h: (JSC::JIT::addressFor): New function, useful for addressing a JSValue's full 64bits as a double.
16:57 Changeset [43944] by mrowe@apple.com

Prevent search engines from getting creative in their descriptions of webkit.org content.

Rubber-stamped by Eric Seidel.

  • blog/wp-content/themes/webkit/header.php:
  • header.inc:
16:37 Changeset [43943] by christian@webkit.org

2009-05-21 Christian Dywan <christian@twotoasts.de>

Reviewed by Jan Alonzo.

  • platform/network/soup/ResourceHandleSoup.cpp: (WebCore::parseDataUrl): Always use Glib Base64 decoding.
16:36 Changeset [43942] by weinig@apple.com

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

Reviewed by Oliver Hunt.

Fix for <rdar://problem/6905475>
Office 2008: Entourage: Crash when you switch to "My Day" view

The host function callback callObjCFallbackObject was not annotated
with JSC_HOST_CALL which meant that when it was called by the JIT, which
expects the JSC_HOST_CALL calling convention, the arguments are not in the
expected places.

  • bridge/objc/objc_runtime.mm: (JSC::Bindings::callObjCFallbackObject): Added missing JSC_HOST_CALL annotation on callObjCFallbackObject.
16:32 Changeset [43941] by levin@chromium.org

2009-05-20 David Levin <levin@chromium.org>

Not Reviewed, build fix.

Need to disable this assert while the chormium code is fixed for it.

  • platform/KURLGoogle.cpp: (WebCore::KURL::protocolIs):
16:13 Changeset [43940] by ddkilzer@apple.com

Added bugs.webkit.org URL

16:09 Changeset [43939] by ddkilzer@apple.com

Test for <rdar://problem/5666078> Cookie parsing terminates at the first semicolon, ignoring quotes (16699)

Reviewed by Brady Eidson.

  • http/tests/cookies/double-quoted-value-with-semi-colon-expected.txt: Added.
  • http/tests/cookies/double-quoted-value-with-semi-colon.html: Added.
  • http/tests/cookies/resources/double-quoted-value-with-semi-colon.js: Added.
  • platform/mac-tiger/Skipped: Added double-quoted-value-with-semi-colon.html since CFNetwork on Tiger stops parsing cookie values when it sees a semi-colon, even inside double quotes.
16:01 Changeset [43938] by levin@chromium.org

2009-05-20 David Levin <levin@chromium.org>

Not Reviewed, build fix.

Change KURLGoogle.cpp to mirror the KURL.cpp changes done in
http://trac.webkit.org/changeset/43929. Fix assert placement.

  • platform/KURLGoogle.cpp: (WebCore::KURL::protocolIs): (WebCore::protocolIs):
15:35 Changeset [43937] by beidson@apple.com

2009-05-20 Brady Eidson <beidson@apple.com>

Reviewed by Darin Adler.

<rdar://problem/6905336> REGRESSION: "Clear History" does not save empty history to disk

  • History/WebHistory.mm: (-[WebHistoryPrivate data]): If there are no entries, return an empty NSData instead of nil.
15:26 Changeset [43936] by levin@chromium.org

2009-05-20 Nate Chapin <japhet@google.com>

Reviewed by Dimitri Glazkov.

Upstream V8 bindings for V8DomWindow.
https://bugs.webkit.org/show_bug.cgi?id=25869

  • bindings/v8/custom/V8DOMWindowCustom.cpp: (WebCore::V8Custom::WindowSetTimeoutImpl): Moved from v8_custom.cpp. (WebCore::isAscii): Moved from v8_custom.cpp. (WebCore::convertBase64): Moved from v8_custom.cpp. (WebCore::CALLBACK_FUNC_DECL): Moved from v8_custom.cpp. (WebCore::eventNameFromAttributeName): Moved from v8_custom.cpp. (WebCore::ACCESSOR_SETTER): Moved from v8_custom.cpp. (WebCore::ACCESSOR_GETTER): Moved from v8_custom.cpp. (WebCore::NAMED_ACCESS_CHECK): Moved from v8_custom.cpp. (WebCore::INDEXED_ACCESS_CHECK): Moved from v8_custom.cpp.
15:18 Changeset [43935] by christian@webkit.org

2009-05-21 Christian Dywan <christian@twotoasts.de>

Rubberstamped by Gustavo Noronha.

  • platform/network/curl/ResourceHandleManager.cpp: (WebCore::parseDataUrl): Remove Gtk/ Glib Base64 decoding.
15:04 Changeset [43934] by christian@webkit.org

2009-05-20 Christian Dywan <christian@twotoasts.de>

Reviewed by Gustavo Noronha.

  • GNUmakefile.am:
  • platform/gtk/guriescape.c:
  • platform/gtk/guriescape.h: Remove copies of g_uri_escape_string and g_uri_unescape_string now that we require Glib 2.16.
13:55 Changeset [43933] by levin@chromium.org

2009-05-20 David Levin <levin@chromium.org>

Not Reviewed, build fix.

Change KURLGoogle.cpp to mirror changes done in
http://trac.webkit.org/changeset/43929.

  • platform/KURLGoogle.cpp: (WebCore::protocolIsJavaScript): (WebCore::protocolIs):
12:53 Changeset [43932] by beidson@apple.com

2009-05-20 Brady Eidson <beidson@apple.com>

Rubberstamped by Sam Weinig

At all call sites that check if a KURL has either the http or https protocol,
use the KURL::protocolInHTTPFamily() accessor, instead.

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::iconURL): (WebCore::FrameLoader::didOpenURL): (WebCore::FrameLoader::open):
  • loader/appcache/ApplicationCache.cpp: (WebCore::ApplicationCache::requestIsHTTPOrHTTPSGet):
  • loader/loader.cpp: (WebCore::Loader::load):
  • xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::send):
12:39 Changeset [43931] by andersca@apple.com

2009-05-20 Anders Carlsson <andersca@apple.com>

Reviewed by Darin Adler and Kevin Decker.

WebKit side of <rdar://problem/6895072>


Pass the localization as a launch property.


  • Plugins/Hosted/NetscapePluginHostManager.mm: (WebKit::NetscapePluginHostManager::spawnPluginHost):
12:36 Changeset [43930] by beidson@apple.com

Fix ChangeLog typo

12:31 Changeset [43929] by beidson@apple.com

WebCore:

2009-05-20 Brady Eidson <beidson@apple.com>

Reviewed by Darin Adler.

Fix <rdar://problem/6904941> and https://bugs.webkit.org/show_bug.cgi?id=25300

KURL parsing changes back in r30243 and r30815 made javascript urls that use the form
"javascript://" be detected as invalid hierarchical URLs. When a KURL is marked as
invalid, you can no longer ask it a question such as "is your protocol javascript?"
Therefore FrameLoader wouldn't recognize them as javascript URLs and instead try to
navigated to them.

URL parsing rules aside, such URLs are in use in the wild (Microsoft's Virtual Earth
being a high profile example) and actually represent valid javascript.

Whenever checking for javascript urls, the new protocolIsJavaScript() should be used
as it functions on a String which doesn't have to pass KURLs parsing rules.

Test: fast/loader/javascript-url-hierarchical-execution.html

  • bindings/js/JSAttrCustom.cpp: (WebCore::JSAttr::setValue): Use protocolIsJavaScript().
  • bindings/js/JSDOMWindowCustom.cpp: (WebCore::JSDOMWindow::setLocation): Ditto. (WebCore::createWindow): Ditto. (WebCore::JSDOMWindow::open): Ditto.
  • bindings/js/JSElementCustom.cpp: (WebCore::allowSettingSrcToJavascriptURL): Ditto.
  • bindings/js/JSHTMLFrameElementCustom.cpp: (WebCore::allowSettingJavascriptURL): Ditto.
  • bindings/js/JSHTMLIFrameElementCustom.cpp: (WebCore::JSHTMLIFrameElement::setSrc): Ditto.
  • bindings/js/JSLocationCustom.cpp: (WebCore::navigateIfAllowed): Ditto. (WebCore::JSLocation::reload): Ditto.
  • editing/markup.cpp: (WebCore::appendQuotedURLAttributeValue): Ditto.
  • html/HTMLAnchorElement.cpp: (WebCore::HTMLAnchorElement::parseMappedAttribute): Ditto.
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::requestFrame): Ditto. (WebCore::FrameLoader::submitForm): Ditto. (WebCore::FrameLoader::executeIfJavaScriptURL): Ditto.


  • platform/KURL.cpp: (WebCore::KURL::init): Use protocolIsJavaScript(). (WebCore::KURL::protocolIs): ASSERT that the protocol being asked about is not javascript.

Such checks should go through protocolIsJavaScript() instead.

(WebCore::encodeRelativeString): Use protocolIsJavaScript().
(WebCore::protocolIsJavaScript):

  • platform/KURL.h:

LayoutTests:

2009-05-20 Brady Eidson <beidson@apple.com>

Reviewed by Darin Adler.

Fix <rdar://problem/6904941> and https://bugs.webkit.org/show_bug.cgi?id=25300

  • fast/loader/javascript-url-hierarchical-execution-expected.txt: Added.
  • fast/loader/javascript-url-hierarchical-execution.html: Added.
12:30 Changeset [43928] by mrowe@apple.com

Versioning.

12:29 Changeset [43927] by mrowe@apple.com

New tag.

12:27 Changeset [43926] by mrowe@apple.com

Versioning.

12:21 Changeset [43925] by mrowe@apple.com

Merge r43886.

12:21 Changeset [43924] by mrowe@apple.com

Merge r43885.

10:35 Changeset [43923] by zecke@webkit.org

[plugins] PluginPackage*.cpp for Gtk+/Qt misassigned hasproperty and hasmethod

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

PluginPackageGtk.cpp and PluginPackageQt.cpp assigned _NPN_HasMethod
to hasproperty and _NPN_HasProperty to hashmethod. This commit is fixing
it. It is also adding test code to PluginObject.cpp and it will invoke
this code from a new test.

10:31 Changeset [43922] by weinig@apple.com

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

Reviewed by Timothy Hatcher.

Make absoluteRectsForRange and absoluteQuadsForRange non-virtual
and only exist on RenderText.

  • dom/Range.cpp: (WebCore::Range::textRects):
  • inspector/InspectorController.cpp: (WebCore::InspectorController::drawNodeHighlight): Use absoluteQuads instead of absoluteQuadsForRange since no range is being specifiec.
  • rendering/RenderObject.cpp:
  • rendering/RenderObject.h:
  • rendering/RenderText.h:
10:05 Changeset [43921] by mitz@apple.com
  • WebCoreSupport/WebChromeClient.h: (WebChromeClient::setCursor):
09:59 Changeset [43920] by xan@webkit.org

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

Reviewed by Gustavo Noronha.

Implement AtkObject::focus-event and
AtkObject::state-changed:focused signal emission.

Adds a new handleFocusedUIElementChangedWithRenderers, only in the
GTK port, called at the same point than
handleFocusedUIElementChanged but with two parameters, the old and
the newly focused RenderObjects. We need this, since the ATK
signals require us to pass the objects involved in the focus
change as arguments.

  • accessibility/AXObjectCache.h:
  • accessibility/gtk/AXObjectCacheAtk.cpp: (WebCore::AXObjectCache::handleFocusedUIElementChangedWithRenderers):
  • dom/Document.cpp: (WebCore::Document::setFocusedNode):
09:23 Changeset [43919] by ariya@webkit.org

2009-05-20 Ariya Hidayat <ariya.hidayat@nokia.com>

Reviewed by Simon Hausmann and Holger Freyther.

[Qt] Add renderHints property to QWebView.

  • Api/qwebview.cpp: (QWebViewPrivate::QWebViewPrivate): (QWebView::renderHints): (QWebView::setRenderHints): (QWebView::setRenderHint): (QWebView::paintEvent):
  • Api/qwebview.h:
  • tests/qwebview/qwebview.pro: Added.
  • tests/qwebview/tst_qwebview.cpp: Added. (tst_QWebView::tst_QWebView): (tst_QWebView::~tst_QWebView): (tst_QWebView::init): (tst_QWebView::cleanup): (tst_QWebView::renderHints):
  • tests/tests.pro:
09:04 Changeset [43918] by zecke@webkit.org

[architecture] Make ChromeClient a interface again

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

With recent additions to ChromeClient.h empty defaults were
added. This is bad for porters as these changes go unnoticed
and at runtime no notImplemented warning is logged and grepping
for notImplemented will not show anything. Change this Client
to be like the other Clients again and always have pure virtuals
(but for stuff inside #ifdef PLATFORM(MAC)).

Update the various WebKit/* implementations to compile again.

08:34 Changeset [43917] by hausmann@webkit.org

2009-05-19 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org>

Reviewed by Simon Hausmann.

Fix a plugin bug in the WebKit code, similar to the one in WebCore.

The problem is when a non visible QtPluginWidget would show it self
in a sibling frame. The problem was due to our clipping. In Qt,
if setMask is set with an empty QRegion, no clipping will
be performed, so in that case we hide the PluginContainer

08:34 Changeset [43916] by hausmann@webkit.org

2009-05-19 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org>

Reviewed by Simon Hausmann.

Fix a bug where a non visible plugin would show it self in a
sibling frame. The problem was due to our clipping. In Qt,
if setMask is set with an empty QRegion, no clipping will
be performed, so in that case we hide the PluginContainer

Added manual test.

08:32 Changeset [43915] by hausmann@webkit.org

2009-05-19 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org>

Reviewed by Simon Hausmann.

Do not call the parent implementation (Widget::) in show() and hide()
of the PluginViewQt, as it always changes the visible state of the
platformWidget (equal to the platformPluginWidget in the Qt port),
thus ignoring the isParentVisible() test.

08:26 Changeset [43914] by hausmann@webkit.org

2009-05-19 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org>

Reviewed by Simon Hausmann.

Replace WREC with YARR + YARR_JIT for the Qt port. This is only
used when compiled with JIT support for now, so it is a drop-in
replacement for the WREC usage. Still including the wrec headers
as they are being referred from RegExp.h, though the contents of
that header it protected by "#if ENABLE(WREC)".

08:08 Changeset [43913] by staikos@webkit.org

2009-05-20 Yichao Yin <yichao.yin@torchmobile.com.cn>

Reviewed by George Staikos.

https://bugs.webkit.org/show_bug.cgi?id=23452
Change the implementation of HTMLNoScriptElement to avoid the pain of
adding virtual function for XHTMLMP support

Includes changes suggested by Simon Fraser.

08:06 Changeset [43912] by darin@apple.com

2009-05-20 Darin Adler <darin@apple.com>

Reviewed by John Sullivan.

<rdar://problem/4023899> Shift-Tab skips key views in toolbar in Safari, although Tab
iterates through them properly

  • WebView/WebView.mm: (-[WebView previousValidKeyView]): Work around a bug in -[NSView previousValidKeyView].
08:00 Changeset [43911] by kevino@webkit.org

CURL backend build fix. Make sure URL is always set.

07:54 Changeset [43910] by ariya@webkit.org

2009-05-20 Yongjun Zhang <yongjun.zhang@nokia.com>

Reviewed by George Staikos.

Fix Qt WebKit build break in Mac OS.

  • platform/FileSystem.h:
07:51 Changeset [43909] by kov@webkit.org

2009-05-20 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Rubber-stamped by Eric Seidel.

Enable code that was commented out waiting for a way to get a
GdkPixbuf from an image, effectively enabling copying images to
the clipboard.

  • platform/gtk/PasteboardGtk.cpp: (WebCore::Pasteboard::writeImage):
07:33 Changeset [43908] by xan@webkit.org

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

Reviewed by Jan Alonzo.

https://bugs.webkit.org/show_bug.cgi?id=25414
[GTK] ROLE_PANEL should not be used for paragraphs and list items.

Implement Atk list item role for list items.

  • accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: (webkit_accessible_get_role):
07:33 Changeset [43907] by xan@webkit.org

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

Reviewed by Jan Alonzo.

https://bugs.webkit.org/show_bug.cgi?id=25414
[GTK] ROLE_PANEL should not be used for paragraphs and list items.

Implement Atk paragraph role for paragraph elements.

  • accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: (webkit_accessible_get_role):
05:42 Changeset [43906] by eric@webkit.org

2009-05-20 Eric Seidel <eric@webkit.org>

Fix bug URL in ChangeLogs in r43903.
https://bugs.webkit.org/show_bug.cgi?id=25742

05:37 Changeset [43905] by eric@webkit.org

2009-05-20 Eric Seidel <eric@webkit.org>

No review, build fix only.

Add files I missed in r43903.

Takeshi's patch was right, I just failed to add the files when landing.

  • platform/mac/fast/forms/search-styled-expected.checksum: Added.
  • platform/mac/fast/forms/search-styled-expected.png: Added.
05:37 Changeset [43904] by eric@webkit.org

Add files I missed in r43903

05:33 Changeset [43903] by eric@webkit.org

2009-05-20 Takeshi Yoshino <tyoshino@google.com>

Reviewed by Eric Seidel.

Bug 24539: Fix RenderThemeChromiumWin::paintTextFieldInternal() not to hide background image.
https://bugs.webkit.org/show_bug.cgi?id=24539

Fix RenderThemeChromiumWin::paintTextFieldInternal().

We shouldn't paint the content area of text fields when o->style() has
background image or transparent background color. paintTextFieldInternal() is
used for painting inner area of HTML option elements by Chromium.

When we pass fillContentArea = true to ChromiumBridge::paintTextField, it hides
the background image rendered by RenderBoxModelObject. So, we should set
fillContentArea = false in such case.

Besides, when background-color:transparent is specified for CSS property,
o->style().backgroundColor returns black color with alpha channel == 0. But
since ThemeEngine for Windows behind ChromiumBridge::paintTextField cannot
recognize alpha channel, it fills the rect with black. I made workaround to set
fillContentArea = false when alpha channel == 0 to avoid this.

And more, I'd like to fallback the color passed to ChromiumBridge to white when
o->style()->backgroundColor() is invalid.

  • rendering/RenderThemeChromiumWin.cpp: (WebCore::RenderThemeChromiumWin::paintTextFieldInternal):
05:26 Changeset [43902] by eric@webkit.org

2009-05-20 Shinichiro Hamaji <hamaji@google.com>

Reviewed by Eric Seidel.

https://bugs.webkit.org/show_bug.cgi?id=25417
Map CompositeCopy to Skia's kSrc_Mode composite operation.

Test: fast/canvas/canvas-composite-alpha.html

  • platform/graphics/skia/SkiaUtils.cpp: (WebCore::):
04:38 Changeset [43901] by xan@webkit.org

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

Reviewed by Eric Seidel.

Fix GTK debug build.

The function dumpDisjunction, compiled with debug enabled, uses
printf, which needs stdio.h to be included.

  • yarr/RegexInterpreter.cpp:
04:30 Changeset [43900] by jmalonzo@webkit.org

2009-05-20 Jan Michael Alonzo <jmalonzo@webkit.org>

Rubber-stamped by Xan Lopez.

Remove misplaced extern "C"

  • accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
04:16 Changeset [43899] by jmalonzo@webkit.org

2009-05-20 Jan Michael Alonzo <jmalonzo@webkit.org>

Reviewed by Xan Lopez.

[GTK] Expose password field with role of PASSWORD_TEXT
https://bugs.webkit.org/show_bug.cgi?id=25682

Check if input type is a password field and return
ATK_ROLE_PASSWORD_TEXT if it is.

  • accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
03:09 Changeset [43898] by ariya@webkit.org

2009-05-20 Laszlo Gombos <laszlo.1.gombos@nokia.com>

Reviewed by George Staikos.

BUG 25845: [Qt] Fix QtWebKit pkgconfig dependencies
<https://bugs.webkit.org/show_bug.cgi?id=25845>

  • WebCore.pro: Remove QtDBus; remove QtXml if Qt >= 4.4
03:08 Changeset [43897] by eric@webkit.org

2009-05-20 Eric Seidel <eric@webkit.org>

Build fix only, no review.

Remove dragging subtest from 43890 which used ? char

? is a reserved char on Windows. After removing both the ü and now the ? this
subtest is now useless, so I'm removing it entirely.

  • editing/pasteboard/file-input-files-access-expected.txt:
  • editing/pasteboard/resources/File With Spaces! For Dragging?.gif: Removed.
  • editing/pasteboard/resources/file-input-files-access.js: (runTest):
02:58 Changeset [43896] by ariya@webkit.org

2009-05-20 Laszlo Gombos <laszlo.1.gombos@nokia.com>

Reviewed by George Staikos.

BUG 25843: [Qt] Remove qt-port build flag
<https://bugs.webkit.org/show_bug.cgi?id=25843>

  • bridge/testbindings.pro:
  • DumpRenderTree/qt/DumpRenderTree.pro:
  • Scripts/webkitdirs.pm:
02:49 Changeset [43895] by eric@webkit.org

2009-05-20 Eric Seidel <eric@webkit.org>

Build fix only, no review.

Fix windows and tiger builds after r43890

Commit r43890 caused:
svn: Can't convert string from 'UTF-8' to native encoding:
svn: LayoutTests/editing/pasteboard/resources/File With Spaces! For Dra?\204?\136gging?.gif
On both the windows and tiger buildbots. According to:
http://svnbook.red-bean.com/en/1.2/svn.advanced.l10n.html
this is intentional behavior, and due to the fact that the default
LC_CTYPE for Tiger and Windows makes Subversion think the filesystems
do not support utf8.

The fix would be to execute:
export LC_CTYPE=en_US.UTF-8
On all affected machines. But since that's not going to happen,
I'm removing the utf8 chars from this filename.

This makes the drag-drop test weaker, but I see no other option.

  • editing/pasteboard/resources/File With Spaces! For Dragging?.gif: Renamed from "LayoutTests/editing/pasteboard/resources/File With Spaces! For Dra\314\210gging?.gif".
  • editing/pasteboard/resources/file-input-files-access.js: (moveMouseToCenterOfElement): use the unused argument (runTest): fix to use the ansii name
02:02 Changeset [43894] by ariya@webkit.org

2009-05-20 Laszlo Gombos <laszlo.1.gombos@nokia.com>

Reviewed by George Staikos.

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

[Qt] Cleanup - move files exclusive to JAVASCRIPT_DEBUGGER
and WORKERS under the appropriate build section

  • WebCore.pro:
01:40 Changeset [43893] by ariya@webkit.org

2009-05-20 Ariya Hidayat <ariya.hidayat@nokia.com>

Unreviewed Qt build fix, after r43892.

  • platform/graphics/qt/ImageQt.cpp: included ImageObservser.h
01:22 Changeset [43892] by hausmann@webkit.org

2009-05-20 Yongjun Zhang <yongjun.zhang@nokia.com>

Reviewed by Simon Hausmann.

https://bugs.webkit.org/show_bug.cgi?id=25856
[Qt] notify an image has been drawn, to help Cache purge alive decoded data.

00:32 Changeset [43891] by darin@apple.com

2009-05-20 Darin Adler <darin@apple.com>

Removed stray file left after some check-ins earlier today.

  • fast/tokenizer/preload-scanner-entities.html-disabled: Removed.
00:32 Changeset [43890] by eric@webkit.org

2009-05-18 Eric Seidel <eric@webkit.org>

Reviewed by Oliver Hunt.

Remove layoutTestController.addFileToPasteboardOnDrag and add eventSender.beginDragWithFiles
https://bugs.webkit.org/show_bug.cgi?id=25852

This allows us to now test multi-file file drags in DumpRenderTree per:
https://bugs.webkit.org/show_bug.cgi?id=25862

I removed the existing tests using addFileToPasteboardOnDrag()
and replaced them with a new test (editing/pasteboard/file-input-files-access)
which covers several more drag-drop cases.

I added a DumpRenderTreeFileDraggingSource class to avoid
the hack of if (!draggingSource) in [DumpRenderTreeDraggingInfo draggingSourceOperationMask]

New Test: editing/pasteboard/file-input-files-access.html

  • DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
  • DumpRenderTree/DumpRenderTreeFileDraggingSource.h: Added.
  • DumpRenderTree/DumpRenderTreeFileDraggingSource.m: Added. (-[DumpRenderTreeFileDraggingSource draggingSourceOperationMaskForLocal:]):
  • DumpRenderTree/LayoutTestController.cpp: (LayoutTestController::LayoutTestController): (LayoutTestController::staticValues): removed addFileToPasteboardOnDrag support (LayoutTestController::staticFunctions): removed addFileToPasteboardOnDrag support
  • DumpRenderTree/LayoutTestController.h:
  • DumpRenderTree/mac/DumpRenderTree.mm: (runTest): ASSERT that draggingInfo has been cleared
  • DumpRenderTree/mac/EventSendingController.mm: (+[EventSendingController isSelectorExcludedFromWebScript:]): Sorted selectors. (+[EventSendingController webScriptNameForSelector:]): Sorted selectors. (-[EventSendingController beginDragWithFiles:]): (-[EventSendingController mouseMoveToX:Y:]): (-[EventSendingController keyDown:withModifiers:]): (-[EventSendingController fireKeyboardEventsToElement:]): removed spurious { }
  • DumpRenderTree/mac/UIDelegate.mm: (-[UIDelegate webView:dragImage:at:offset:event:pasteboard:source:slideBack:forView:]): removed addFileToPasteboardOnDrag support
00:24 Changeset [43889] by levin@chromium.org

2009-05-20 David Levin <levin@chromium.org>

Reviewed by NOBODY, layout tests fix.

https://bugs.webkit.org/show_bug.cgi?id=23727
This reverts commit r43888.

Once that change was checked in many of the fast/flexbox0*.html
tests (and others) started failing.

  • WebCore.pro:
  • css/CSSParser.cpp: (WebCore::CSSParser::parseValue):
  • css/CSSPropertyNames.in:
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::applyProperty):
  • css/CSSValueKeywords.in:
  • rendering/RenderMarquee.cpp: (WebCore::RenderMarquee::updateMarqueePosition): (WebCore::RenderMarquee::timerFired):

05/19/09:

21:32 Changeset [43888] by staikos@webkit.org

2009-05-19 Yichao Yin <yichao.yin@torchmobile.com.cn>

Reviewed by George Staikos.

Add WCSS marquee extension support to Webkit
refer to the specification: WAP-239-WCSS-20011026-a.pdf


Since WCSS is the companion of XHTML Mobile Profile (XHTML MP),
this change depends on https://bugs.webkit.org/show_bug.cgi?id=23452

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

20:49 Changeset [43887] by staikos@webkit.org

2009-05-19 Yichao Yin <yichao.yin@torchmobile.com.cn>

Reviewed by George Staikos.

Add tests for WCSS marquee extension support
https://bugs.webkit.org/show_bug.cgi?id=23727

20:31 Changeset [43886] by ggaren@apple.com

2009-05-19 Geoffrey Garen <ggaren@apple.com>

Windows build fix.

  • interpreter/RegisterFile.cpp: (JSC::RegisterFile::releaseExcessCapacity): Copy-paste typo.
20:25 Changeset [43885] by ggaren@apple.com

2009-05-19 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Fixed <rdar://problem/6885680> CrashTracer: [USER] 1 crash in Install
Mac OS X at <unknown binary> • 0x9274241c


(Original patch by Joe Sokol and Ronnie Misra.)


SunSpider says 1.004x faster.

  • interpreter/RegisterFile.cpp: (JSC::RegisterFile::releaseExcessCapacity): Instead of doing complicated math that sometimes used to overflow, just release the full range of the register file.
  • interpreter/RegisterFile.h: (JSC::isPageAligned): (JSC::RegisterFile::RegisterFile): Added ASSERTs to verify that it's safe to release the full range of the register file.

(JSC::RegisterFile::shrink): No need to releaseExcessCapacity() if the
new end is not smaller than the old end. (Also, doing so used to cause
numeric overflow, unmapping basically the whole process from memory.)

20:02 Changeset [43884] by eric@webkit.org

2009-05-19 Eric Seidel <eric@webkit.org>

Reviewed by Adam Roben.

Make PrettyPatch understand quoted filenames in git diffs.
https://bugs.webkit.org/show_bug.cgi?id=25881

  • PrettyPatch/PrettyPatch.rb:
19:33 Changeset [43883] by weinig@apple.com

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

Reviewed by Geoffrey Garen.

Implement and enable optimized calls.

  • jit/JIT.cpp: (JSC::JIT::privateCompileCTIMachineTrampolines): Add ENABLE(JIT_OPTIMIZE_CALL) guards around the the optimize call only trampolines (virtualCallPreLink and virtualCallLink). Update the trampolines to account for the new JSValue representation. (JSC::JIT::unlinkCall): Use NULL instead of JSValue noValue.
  • jit/JITCall.cpp: (JSC::JIT::compileOpCall): Update to account for the new JSValue representation (JSC::JIT::compileOpCallSlowCase): Ditto.
  • jit/JITStubs.h: Remove incorrect !ENABLE(JIT_OPTIMIZE_CALL) guard.
  • wtf/Platform.h: Enable ENABLE_JIT_OPTIMIZE_CALL.
19:02 Changeset [43882] by staikos@webkit.org

2009-05-19 Yichao Yin <yichao.yin@torchmobile.com.cn>

Reviewed by George Staikos.

Add XHTMLMP support to Webkit
Update the configure files for building XHTMLMP-enabled WebKit on different platform
https://bugs.webkit.org/show_bug.cgi?id=23452

18:18 Changeset [43881] by oliver@apple.com

<rdar://problem/6888393> REGRESSION: Start Debugging JavaScript crashes browser (nightly builds only?)
<https://bugs.webkit.org/show_bug.cgi?id=25717>

RS=Mark Rowe.

Remove JSC_FAST_CALL as it wasn't gaining us anything, and was
resulting in weird bugs in the nightly builds.

17:44 Changeset [43880] by antti@apple.com

WebCore:

2009-05-19 Antti Koivisto <antti@apple.com>

I can't figure out how to make this not timing dependent, making it manual test instead.

  • manual-tests/preload-scanner-entities.html: Added.

LayoutTests:

2009-05-19 Antti Koivisto <antti@apple.com>

I can't figure out how to make this not timing dependent, making it manual test instead.

  • fast/tokenizer/preload-scanner-entities-expected.txt: Removed.
  • fast/tokenizer/preload-scanner-entities.html: Removed.
17:43 Changeset [43879] by darin@apple.com

2009-05-19 Darin Adler <darin@apple.com>

Renamed test failing on many buildbots to disable it.
Antti can move it back once he gets it working more consistently.

  • fast/tokenizer/preload-scanner-entities.html: Removed.
  • fast/tokenizer/preload-scanner-entities.html-disabled: Copied from fast/tokenizer/preload-scanner-entities.html.
16:41 Changeset [43878] by beidson@apple.com

2009-05-19 Brady Eidson <beidson@apple.com>

Reviewed by Antti Koivisto.

<rdar://problem/6886382> REGRESSION (Safari 4PB -> ToT): HTTP cache revalidation broken.

This was caused in http://trac.webkit.org/changeset/41425, which fixed an image caching bug
in QuickLooks (rdar://problem/6619630).

We need to respect the DocumentLoader's request cache policy when deciding the cache policy
for subresources, but the check (originally removed in r39304 and added back in in the same
place in r41424) needs to be tweaked and relocated a bit.

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::subresourceCachePolicy): Renamed from cachePolicy(). Move checking the DocumentLoader's request to a more appropriate place. Add code to handle the recently added FIXME regarding POSTs. Add a new FIXME describing a great way to make this code cleaner in the future.
  • loader/FrameLoader.h:
  • loader/DocLoader.cpp: (WebCore::DocLoader::cachePolicy): Calls the newly renamed subresourceCachePolicy().
15:31 Changeset [43877] by cfleizach@apple.com

Bug 25872: aria-labeledby appends all siblings instead of all children to aria name
https://bugs.webkit.org/show_bug.cgi?id=25872

14:57 Changeset [43876] by antti@apple.com

WebCore:

2009-05-19 Antti Koivisto <antti@apple.com>

Reviewed by Darin Adler).


<rdar://problem/6902674> REGRESSION: Query parameters are sometimes incorrect in URL (23135)


Push characters back in correct order when entity parsing fails after 3 characters.

Test: fast/tokenizer/preload-scanner-entities.html

  • html/PreloadScanner.cpp: (WebCore::PreloadScanner::consumeEntity):

LayoutTests:

2009-05-19 Antti Koivisto <antti@apple.com>

Reviewed by Darin Adler.


<rdar://problem/6902674> REGRESSION: Query parameters are sometimes incorrect in URL (23135)

  • fast/tokenizer/preload-scanner-entities-expected.txt: Added.
  • fast/tokenizer/preload-scanner-entities.html: Added.
14:53 Changeset [43875] by weinig@apple.com

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

Reviewed by Geoffrey Garen.

Implement and enable optimized property access.

  • assembler/AbstractMacroAssembler.h: Fix comment.
  • jit/JIT.cpp: (JSC::JIT::privateCompileCTIMachineTrampolines): Remove array length trampoline and implement the string length trampoline.
  • jit/JIT.h: Add new constants for patch offsets.
  • jit/JITInlineMethods.h: Remove FIELD_OFFSET which is now in StdLibExtras.h.
  • jit/JITPropertyAccess.cpp: (JSC::JIT::emit_op_get_by_id): (JSC::JIT::emitSlow_op_get_by_id): (JSC::JIT::emit_op_put_by_id): (JSC::JIT::emitSlow_op_put_by_id): (JSC::JIT::compilePutDirectOffset): (JSC::JIT::compileGetDirectOffset): (JSC::JIT::privateCompilePutByIdTransition): (JSC::JIT::patchGetByIdSelf): (JSC::JIT::patchPutByIdReplace): (JSC::JIT::privateCompilePatchGetArrayLength): (JSC::JIT::privateCompileGetByIdProto): (JSC::JIT::privateCompileGetByIdSelfList): (JSC::JIT::privateCompileGetByIdProtoList): (JSC::JIT::privateCompileGetByIdChainList): (JSC::JIT::privateCompileGetByIdChain):
  • jit/JITStubCall.h: (JSC::JITStubCall::addArgument): Add version of addArgument that takes two registers for the tag and payload.
  • jit/JITStubs.cpp: (JSC::JITStubs::JITStubs): Remove array length trampoline pointer. (JSC::JITStubs::cti_op_get_by_id_self_fail):
  • jit/JITStubs.h:
  • runtime/JSObject.h: (JSC::JSObject::JSObject): Move m_inheritorID below the property storage to align it to a 16 byte boundary.
  • wtf/Platform.h: Enable ENABLE_JIT_OPTIMIZE_PROPERTY_ACCESS
  • wtf/StdLibExtras.h: Move FIELD_OFFSET here.
14:13 Changeset [43874] by dglazkov@chromium.org

2009-05-19 Paul Godavari <paul@chromium.org>

Reviewed by Dimitri Glazkov.

Fix a crash in Mac Chromium when displaying an HTML select element
with no items.
https://bugs.webkit.org/show_bug.cgi?id=25874

  • platform/chromium/PopupMenuChromium.cpp: (WebCore::PopupContainer::showExternal):
13:54 Changeset [43873] by kevino@webkit.org

wxMSW build fixes for DRT.

13:53 Changeset [43872] by darin@chromium.org

Restore mistaken deletion of an entry in ChangeLog

13:51 Changeset [43871] by darin@chromium.org

2009-05-19 Nate Chapin <japhet@google.com>

Reviewed by Darin Fisher.

Upstream V8 bindings for CanvasRenderingContext2D.
https://bugs.webkit.org/show_bug.cgi?id=25858

  • bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp: Moved bindings from v8_custom.cpp.
13:46 Changeset [43870] by mrowe@apple.com

2009-05-19 Jessie Berlin <jberlin@apple.com>

Reviewed by Mark Rowe.

Windows Build Fix.

  • WebCore.vcproj/WebCore.vcproj: Copy accessibility headers from WebCore.
12:18 Changeset [43869] by timothy@apple.com

Add a new private API method that will dispatch pending loads that have been scheduled because of recent DOM additions or style changes.

<rdar://problem/6889218> REGRESSION: Some iChat transcript resources are not loaded because willSendRequest doesn't happen immediately

WebCore:

2009-05-19 Timothy Hatcher <timothy@apple.com>

<rdar://problem/6889218> REGRESSION: Some iChat transcript resources are not
loaded because willSendRequest doesn't happen immediately

Reviewed by Antti Koivisto.

  • WebCore.base.exp: Export Loader::servePendingRequests().

WebKit/mac:

2009-05-19 Timothy Hatcher <timothy@apple.com>

Add a new private API method that will dispatch pending loads that have been scheduled
because of recent DOM additions or style changes.

<rdar://problem/6889218> REGRESSION: Some iChat transcript resources are not
loaded because willSendRequest doesn't happen immediately

Reviewed by Antti Koivisto.

  • WebView/WebView.mm: (-[WebView _dispatchPendingLoadRequests]): Call Loader::servePendingRequests().
  • WebView/WebViewPrivate.h: Added _dispatchPendingLoadRequests.
12:08 Changeset [43868] by levin@chromium.org

2009-05-19 David Levin <levin@chromium.org>

Reviewed by Dimitri Glazkov.

Bug 25859: Need to upstream ScriptController.* for v8.
https://bugs.webkit.org/show_bug.cgi?id=25859

Fixing the header file (which I accidentally made identical to the cpp file).

  • bindings/v8/ScriptController.h:
11:54 Changeset [43867] by ap@webkit.org

Adding a Radar URL.

11:14 Changeset [43866] by ap@webkit.org

Reviewed by Darin Adler and Brady Eidson.

REGRESSION (r42446?): UA Profiler in http://stevesouders.com/ua/ stalls

The problem was that Document::removeAllEventListeners() was called for a wrong document
when a CachedFrame was destroyed.

Cannot be tested automatically, because DRT doesn't have a b/f cache.

  • dom/Document.cpp: (WebCore::Document::domWindow): Make sure that this doesn't return an unrelated window even if document's m_frame pointer is stale.
  • history/CachedFrame.cpp: (WebCore::CachedFrame::clear): Added a FIXME about strange behavior.
10:53 Changeset [43865] by staikos@webkit.org

2009-05-19 Yichao Yin <yichao.yin@torchmobile.com.cn>

Reviewed by George Staikos.


Add the XHTML MP tests but put them in skipped since they are not active
by default on any platforms.
https://bugs.webkit.org/show_bug.cgi?id=23452

09:58 Changeset [43864] by dglazkov@chromium.org

2009-05-19 Pavel Feldman <pfeldman@chromium.org>

Reviewed by Timothy Hatcher.

Split InspectorController into InspectorController and InspectorFrontend. Latter encapsulates all frontend interaction and is the only entity allowed to make ScriptFunctionCalls. The further plan is to serialize these script function calls.

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

  • GNUmakefile.am:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • WebCoreSources.bkl:
  • inspector/ConsoleMessage.cpp: (WebCore::ConsoleMessage::addToConsole):
  • inspector/ConsoleMessage.h:
  • inspector/InspectorController.cpp: (WebCore::InspectorController::~InspectorController): (WebCore::InspectorController::inspect): (WebCore::InspectorController::focusNode): (WebCore::InspectorController::setWindowVisible): (WebCore::InspectorController::addConsoleMessage): (WebCore::InspectorController::setAttachedWindow): (WebCore::InspectorController::inspectedWindowScriptObjectCleared): (WebCore::InspectorController::scriptObjectReady): (WebCore::InspectorController::showPanel): (WebCore::InspectorController::close): (WebCore::InspectorController::populateScriptObjects): (WebCore::InspectorController::resetScriptObjects): (WebCore::InspectorController::pruneResources): (WebCore::InspectorController::didCommitLoad): (WebCore::InspectorController::didLoadResourceFromMemoryCache): (WebCore::InspectorController::identifierForInitialRequest): (WebCore::InspectorController::willSendRequest): (WebCore::InspectorController::didReceiveResponse): (WebCore::InspectorController::didReceiveContentLength): (WebCore::InspectorController::didFinishLoading): (WebCore::InspectorController::didFailLoading): (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest): (WebCore::InspectorController::scriptImported): (WebCore::InspectorController::didOpenDatabase): (WebCore::InspectorController::didUseDOMStorage): (WebCore::InspectorController::addScriptProfile): (WebCore::InspectorController::toggleRecordButton): (WebCore::InspectorController::enableProfiler): (WebCore::InspectorController::disableProfiler): (WebCore::InspectorController::enableDebugger): (WebCore::InspectorController::disableDebugger): (WebCore::InspectorController::didParseSource): (WebCore::InspectorController::failedToParseSource): (WebCore::InspectorController::didPause): (WebCore::InspectorController::didContinue):
  • inspector/InspectorController.h:
  • inspector/InspectorDOMStorageResource.cpp: (WebCore::InspectorDOMStorageResource::bind):
  • inspector/InspectorDOMStorageResource.h:
  • inspector/InspectorDatabaseResource.cpp: (WebCore::InspectorDatabaseResource::bind):
  • inspector/InspectorDatabaseResource.h:
  • inspector/InspectorFrontend.cpp: Added. (WebCore::callSimpleFunction): (WebCore::InspectorFrontend::InspectorFrontend): (WebCore::InspectorFrontend::~InspectorFrontend): (WebCore::InspectorFrontend::newJSONObject): (WebCore::InspectorFrontend::addMessageToConsole): (WebCore::InspectorFrontend::addResource): (WebCore::InspectorFrontend::updateResource): (WebCore::InspectorFrontend::removeResource): (WebCore::InspectorFrontend::updateFocusedNode): (WebCore::InspectorFrontend::setAttachedWindow): (WebCore::InspectorFrontend::inspectedWindowScriptObjectCleared): (WebCore::InspectorFrontend::showPanel): (WebCore::InspectorFrontend::populateInterface): (WebCore::InspectorFrontend::reset): (WebCore::InspectorFrontend::debuggerWasEnabled): (WebCore::InspectorFrontend::debuggerWasDisabled): (WebCore::InspectorFrontend::profilerWasEnabled): (WebCore::InspectorFrontend::profilerWasDisabled): (WebCore::InspectorFrontend::parsedScriptSource): (WebCore::InspectorFrontend::failedToParseScriptSource): (WebCore::InspectorFrontend::addProfile): (WebCore::InspectorFrontend::setRecordingProfile): (WebCore::InspectorFrontend::pausedScript): (WebCore::InspectorFrontend::resumedScript): (WebCore::InspectorFrontend::addDatabase): (WebCore::InspectorFrontend::addDOMStorage):
  • inspector/InspectorFrontend.h: Added.
  • inspector/InspectorResource.cpp: (WebCore::InspectorResource::createScriptObject): (WebCore::InspectorResource::updateScriptObject): (WebCore::InspectorResource::releaseScriptObject):
  • inspector/InspectorResource.h:
09:50 Changeset [43863] by mrowe@apple.com

Clean up some old, unused branches.

09:47 Changeset [43862] by mrowe@apple.com

New branch.

09:45 Changeset [43861] by dglazkov@chromium.org

2009-05-19 Pavel Feldman <pfeldman@chromium.org>

Reviewed by Timothy Hatcher.

Introduce JSONObject that wraps ScriptObject and ScriptState* for further serialization

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

  • GNUmakefile.am:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • WebCoreSources.bkl:
  • inspector/ConsoleMessage.cpp: (WebCore::ConsoleMessage::addToConsole):
  • inspector/InspectorDOMStorageResource.cpp: (WebCore::InspectorDOMStorageResource::bind):
  • inspector/InspectorDatabaseResource.cpp: (WebCore::InspectorDatabaseResource::bind):
  • inspector/InspectorResource.cpp: (WebCore::populateHeadersObject): (WebCore::InspectorResource::createScriptObject): (WebCore::InspectorResource::updateScriptObject):
  • inspector/JSONObject.cpp: Added. (WebCore::JSONObject::JSONObject): (WebCore::JSONObject::set): (WebCore::JSONObject::scriptObject): (WebCore::JSONObject::createNew):
  • inspector/JSONObject.h: Added.
09:36 Changeset [43860] by staikos@webkit.org

Correct two changelog entries to show the bug report

09:08 Changeset [43859] by dglazkov@chromium.org

2009-05-19 Pavel Feldman <pfeldman@chromium.org>

Reviewed by Timothy Hatcher.

Refactor InpectorController so that it does not instantiate resource/console/database/domresource javascript objects. Move instantiation into the javascript.

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

  • inspector/ConsoleMessage.cpp: (WebCore::ConsoleMessage::addToConsole):
  • inspector/InspectorController.cpp: (WebCore::InspectorController::didReceiveResponse): (WebCore::InspectorController::didReceiveContentLength): (WebCore::InspectorController::didFinishLoading): (WebCore::InspectorController::didFailLoading): (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest): (WebCore::InspectorController::scriptImported):
  • inspector/InspectorDOMStorageResource.cpp: (WebCore::InspectorDOMStorageResource::InspectorDOMStorageResource): (WebCore::InspectorDOMStorageResource::bind): (WebCore::InspectorDOMStorageResource::unbind):
  • inspector/InspectorDOMStorageResource.h:
  • inspector/InspectorDatabaseResource.cpp: (WebCore::InspectorDatabaseResource::InspectorDatabaseResource): (WebCore::InspectorDatabaseResource::bind): (WebCore::InspectorDatabaseResource::unbind):
  • inspector/InspectorDatabaseResource.h:
  • inspector/InspectorResource.cpp: (WebCore::InspectorResource::InspectorResource): (WebCore::populateHeadersObject): (WebCore::InspectorResource::createScriptObject): (WebCore::InspectorResource::updateScriptObject): (WebCore::InspectorResource::releaseScriptObject):
  • inspector/InspectorResource.h:
  • inspector/front-end/Console.js: (WebInspector.ConsoleMessage):
  • inspector/front-end/inspector.js: (WebInspector.addResource): (WebInspector.updateResource): (WebInspector.removeResource): (WebInspector.addDatabase): (WebInspector.addDOMStorage): (WebInspector.reset): (WebInspector.addMessageToConsole):
08:11 Changeset [43858] by ariya@webkit.org

2009-05-19 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org>

Reviewed by Ariya Hidayat.

The Qt port has code that disables scrolling optimizations
when the root contains native windows, such as windowed plugins.

This code broke when detaching iframes containing windowed
plugins.

Each ScrollView now knows how many native windows it and its
children contain, and when it is detached, that number is
substracted from its old parents.

04:45 Changeset [43857] by xan@webkit.org

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

Reviewed by Jan Alonzo.

Do not try to free enchant broker and dictionary if they do not
exist, those functions aren't NULL-safe.

  • webkit/webkitwebsettings.cpp: (free_spell_checking_language):
01:01 Changeset [43856] by mjs@apple.com

2009-05-19 Maciej Stachowiak <mjs@apple.com>

Reviewed by Gavin Barraclough.


  • speed up string comparison, especially for short strings


~1% on SunSpider

  • JavaScriptCore.exp:
  • runtime/UString.cpp:
  • runtime/UString.h: (JSC::operator==): Inline UString's operator==, since it is called from hot places in the runtime. Also, specialize 2-char strings in a similar way to 1-char, since we're taking the hit of a switch anyway.

05/18/09:

23:06 Changeset [43855] by mjs@apple.com

2009-05-18 Maciej Stachowiak <mjs@apple.com>

Reviewed by Gavin Barraclough.


  • for polymorphic prototype lookups, increase the number of slots from 4 to 8


~4% faster on v8 raytrace benchmark

  • bytecode/Instruction.h:
22:39 Changeset [43854] by mjs@apple.com

2009-05-18 Maciej Stachowiak <mjs@apple.com>

Reviewed by Oliver Hunt.


  • tighten up the code for the load_varargs stub


~1-2% on v8-raytrace


  • jit/JITStubs.cpp: (JSC::JITStubs::cti_op_load_varargs): Hoist some loop invariants that the compiler didn't feel like hoisting for us. Remove unneeded exception check.
22:17 Changeset [43853] by ddkilzer@apple.com

Added cookie test to Skipped list for Windows

See Bug 25861. <https://bugs.webkit.org/show_bug.cgi?id=25861>

  • platform/win/Skipped: Added http/tests/cookies/simple-cookies-expired.html.
22:02 Changeset [43852] by ddkilzer@apple.com

Tiger build fix for r43850

  • platform/mac/ClipboardMac.mm: Added typedef for NSUinteger when building on Tiger.
21:52 Changeset [43851] by ddkilzer@apple.com

Bug 24569: Add some cookies tests

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

LayoutTests:

Reviewed and tweaked by David Kilzer.

This modification adds a cookie framework to check setting cookies.
It is a simple modification over the js test framework. It uses some XHRs and custom server-side script
to set / get / clear cookies.

It also adds some very basic tests to check that everything works.

  • http/tests/cookies: Added.
  • http/tests/cookies/multiple-cookies-expected.txt: Added.
  • http/tests/cookies/multiple-cookies.html: Added.
  • http/tests/cookies/resources: Added.
  • http/tests/cookies/resources/TEMPLATE.html: Copied from LayoutTests/fast/js/resources/TEMPLATE.html.
  • http/tests/cookies/resources/clearCookies.cgi: Added.
  • http/tests/cookies/resources/cookies-test-post.js: Copied from LayoutTests/fast/js/resources/js-test-post.js.
  • http/tests/cookies/resources/cookies-test-pre.js: Copied from LayoutTests/fast/js/resources/js-test-pre.js. (setCookies): Internal method to set a cookie (multiple cookies are not supported). (testCookies): Internal method to check if the cookie were set.

(clearAllCookies): Used to clear all pre-existing cookies for this domain.
(clearCookies): Used to clear the cookies set with cookiesShouldBe.
(cookiesShouldBe): Used to set a cookie and check the "Cookie" header sent. It is inspired from shouldBe from the js test framework.

  • http/tests/cookies/resources/cookies-test-style.css: Copied from LayoutTests/fast/js/resources/js-test-style.css.
  • http/tests/cookies/resources/getCookies.cgi: Added.
  • http/tests/cookies/resources/multiple-cookies.js: Added.
  • http/tests/cookies/resources/setCookies.cgi: Added.
  • http/tests/cookies/resources/simple-cookies-expired.js: Added.
  • http/tests/cookies/resources/simple-cookies-max-age.js: Added.
  • http/tests/cookies/simple-cookies-expired-expected.txt: Added.
  • http/tests/cookies/simple-cookies-expired.html: Added.
  • http/tests/cookies/simple-cookies-max-age-expected.txt: Added.
  • http/tests/cookies/simple-cookies-max-age.html: Added.
  • platform/mac-tiger/Skipped: Added http/tests/cookies/simple-cookies-max-age.html since CFNetwork on Tiger doesn't support expiring cookies with Max-Age=0.

WebKitTools:

Patch by David Kilzer.

  • Scripts/make-js-test-wrappers: Added regex to skip cookies-test-(post|pre).js files.
21:17 Changeset [43850] by eric@webkit.org

2009-05-17 Eric Seidel <eric@webkit.org>

Reviewed by Darin Adler.

ClipboardMac cleanup
https://bugs.webkit.org/show_bug.cgi?id=25847

I'm mostly just moving code, however there are 3 changes I made while moving, detailed below.

No functional changes, so no tests.

  • platform/mac/ClipboardMac.mm: (WebCore::ClipboardMac::clearData): (WebCore::absoluteURLsFromPasteboardFilenames): Broke out logic for filenames into its own function to make the caller more readable. (WebCore::absoluteURLsFromPasteboard): Broke out logic from getData into absoluteURLsFromPasteboard. This returns an NSArray so that we can use -[NSArray componentsJoinedByString] in the caller (which is cleaner than the manual "\n" addition before). This also access to the full list of file urls for future callers. (WebCore::ClipboardMac::getData): unsigned count = (type == "URL") ? 1 : [fileList count]; is now an explicit check for "URL", before it was a check for != "text/uri-list" which was much more confusing in my opinion. text/uri-list and URL are the only two types which map to NSURLPboardType in cocoaTypeFromMIMEType(). (WebCore::ClipboardMac::types): I removed an extra if (!types) check, right before [types count]. In Obj-C messaging nil will return 0 (size of a pointer), so it's safe to message nil here and expect it to return 0.
20:40 Changeset [43849] by mjs@apple.com

2009-05-18 Maciej Stachowiak <mjs@apple.com>

Reviewed by Geoff Garen.

  • Improve code generation for access to prototype properties


~0.4% speedup on SunSpider.


Based on a suggestion from Geoff Garen.

  • jit/JIT.h:
  • jit/JITPropertyAccess.cpp: (JSC::JIT::compileGetDirectOffset): (JSC::JIT::privateCompileGetByIdProto): (JSC::JIT::privateCompileGetByIdProtoList): (JSC::JIT::privateCompileGetByIdChainList): (JSC::JIT::privateCompileGetByIdChain):
20:23 Changeset [43848] by sfalken@apple.com

WebKit/mac:

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

<rdar://problem/6899044> Can't see Apple ad on nytimes.com unless I spoof the user agent


Add user agent hack for pointroll.com.

Reviewed by Steve Falkenburg.

  • WebView/WebView.mm: (-[WebView WebCore::_userAgentForURL:WebCore::]):

WebKit/win:

2009-05-18 Steve Falkenburg <sfalken@apple.com>

<rdar://problem/6899044> Can't see Apple ad on nytimes.com unless I spoof the user agent


Add user agent hack for pointroll.com.


Reviewed by Sam Weinig.

  • WebView.cpp:
17:42 Changeset [43847] by levin@chromium.org

2009-05-18 David Levin <levin@chromium.org>

Reviewed by Darin Fisher.

Bug 25859: Need to upstream ScriptController.* for v8.
https://bugs.webkit.org/show_bug.cgi?id=25859

  • bindings/v8/ScriptController.cpp: Added.
  • bindings/v8/ScriptController.h: Added.
17:27 Changeset [43846] by kov@webkit.org

2009-05-18 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Reviewed by Gavin Barraclough.

Enable YARR, and disable WREC for GTK+.

  • configure.ac:
17:10 Changeset [43845] by staikos@webkit.org

2009-05-18 Yichao Yin <yichao.yin@torchmobile.com.cn>

Reviewed by George Staikos.

Change ScriptElement to support XHTMLMP in a better way

17:00 Changeset [43844] by kevino@webkit.org

wx build fix. Use python-config to get Python linking info on Unix OSes.

16:51 Changeset [43843] by kevino@webkit.org

wx build fix, finish up changes after the accessibility dir split.

16:48 Changeset [43842] by staikos@webkit.org

2009-05-18 Yichao Yin <yichao.yin@torchmobile.com.cn>

Reviewed by George Staikos (and others).

Add XHTMLMP support to Webkit
XHTMLMP is a strict subset of XHTML 1.1. It extends XHTML Basic and add enhanced
functionality. Most of the functionalities have already been implemented by Webkit.

The changes include:
1) Adding <noscript> support
2) Document conformance validation
3) User Agent conformance validation

15:35 Changeset [43841] by mrowe@apple.com

Fix the build.

  • WebCore.xcodeproj/project.pbxproj:
13:40 Changeset [43840] by kov@webkit.org

2009-05-18 Kenneth Rohde Christiansen <kenneth.christiansen@openbossa.org>

Rubber-stamped by Gustavo Noronha.

Fixed build for the Qt port by adding the WebCore/accessibility
directory to the includepath.

  • WebCore.pro:
13:22 Changeset [43839] by barraclough@apple.com

2009-05-18 Jan Michael Alonzo <jmalonzo@webkit.org>

Reviewed by Xan Lopez.

[Gtk] Various autotools build refactoring and fixes
https://bugs.webkit.org/show_bug.cgi?id=25286

Add -no-install and -no-fast-install to programs and tests that we
don't install. Also remove -O2 since this is already handled at
configure time.

  • GNUmakefile.am:
13:12 Changeset [43838] by barraclough@apple.com

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

Reviewed by NOBODY (speculative build fix).

12:46 Changeset [43837] by barraclough@apple.com

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

Reviewed by Darin Adler.

Refactor JIT code-handle objects. The representation of generated code is currently
a bit of a mess. We have a class JITCode which wraps the pointer to a block of
generated code, but this object does not reference the executable pool meaning that
external events (the pool being derefed) could make the pointer become invalid.
To overcome this both the JIT and Yarr implement further (and similar) objects to
wrap the code pointer with a RefPtr to the pool. To add to the mire, as well as the
CodeBlock containing a handle onto the code the FunctionBodyNode also contains a
copy of the code pointer which is used almost (but not entirely) uniquely to access
the JIT code for a function.

Rationalization of all this:

  • Add a new type 'MacroAssembler::CodeRef' as a handle for a block of JIT generated code.
  • Change the JIT & Yarr to internally handle code using CodeRefs.
  • Move the CodeRef (formerly anow defunct JITCodeRef) from CodeBlock to its owner node.
  • Remove the (now) redundant code pointer from FunctionBodyNode.

While tidying this up I've made the PatchBuffer return code in new allocations using a CodeRef,
and have enforced an interface that the PatchBuffer will always be used, and 'finalizeCode()' or
'finalizeCodeAddendum()' will always be called exactly once on the PatchBuffer to complete code generation.

This gives us a potentially useful hook ('PatchBuffer::performFinalization()') at the end of generation,
which may have a number of uses. It may be helpful should we wish to switch our generation
model to allow RW/RX exclusive memory, and it may be useful on non-cache-coherent platforms to
give us an oportunity to cache flush as necessary.

No performance impact.

  • assembler/AbstractMacroAssembler.h: (JSC::AbstractMacroAssembler::ProcessorReturnAddress::relinkCallerToTrampoline): (JSC::AbstractMacroAssembler::CodeRef::CodeRef): (JSC::AbstractMacroAssembler::CodeRef::trampolineAt): (JSC::AbstractMacroAssembler::PatchBuffer::PatchBuffer): (JSC::AbstractMacroAssembler::PatchBuffer::~PatchBuffer): (JSC::AbstractMacroAssembler::PatchBuffer::link): (JSC::AbstractMacroAssembler::PatchBuffer::linkTailRecursive): (JSC::AbstractMacroAssembler::PatchBuffer::patch): (JSC::AbstractMacroAssembler::PatchBuffer::complete): (JSC::AbstractMacroAssembler::PatchBuffer::finalize): (JSC::AbstractMacroAssembler::PatchBuffer::entry):
  • bytecode/CodeBlock.cpp: (JSC::CodeBlock::CodeBlock): (JSC::CodeBlock::reparseForExceptionInfoIfNecessary): (JSC::CodeBlock::setJITCode):
  • bytecode/CodeBlock.h: (JSC::CodeBlock::getBytecodeIndex): (JSC::CodeBlock::executablePool):
  • interpreter/CallFrameClosure.h:
  • interpreter/Interpreter.cpp: (JSC::Interpreter::execute): (JSC::Interpreter::prepareForRepeatCall):
  • jit/JIT.cpp: (JSC::JIT::privateCompile): (JSC::JIT::privateCompileCTIMachineTrampolines): (JSC::JIT::linkCall):
  • jit/JIT.h:
  • jit/JITCode.h: (JSC::JITCode::JITCode): (JSC::JITCode::operator bool): (JSC::JITCode::addressForCall): (JSC::JITCode::offsetOf): (JSC::JITCode::execute): (JSC::JITCode::size): (JSC::JITCode::executablePool): (JSC::JITCode::HostFunction):
  • jit/JITPropertyAccess.cpp: (JSC::JIT::privateCompilePutByIdTransition): (JSC::JIT::privateCompilePatchGetArrayLength): (JSC::JIT::privateCompileGetByIdProto): (JSC::JIT::privateCompileGetByIdSelfList): (JSC::JIT::privateCompileGetByIdProtoList): (JSC::JIT::privateCompileGetByIdChainList): (JSC::JIT::privateCompileGetByIdChain):
  • jit/JITStubs.cpp: (JSC::JITStubs::cti_vm_dontLazyLinkCall): (JSC::JITStubs::cti_vm_lazyLinkCall):
  • parser/Nodes.cpp: (JSC::ProgramNode::generateJITCode): (JSC::EvalNode::generateJITCode): (JSC::FunctionBodyNode::FunctionBodyNode): (JSC::FunctionBodyNode::createNativeThunk): (JSC::FunctionBodyNode::generateJITCode):
  • parser/Nodes.h: (JSC::ScopeNode::generatedJITCode): (JSC::ScopeNode::getExecutablePool): (JSC::ScopeNode::setJITCode): (JSC::ProgramNode::jitCode): (JSC::EvalNode::jitCode): (JSC::FunctionBodyNode::jitCode):
  • runtime/RegExp.cpp: (JSC::RegExp::match):
  • yarr/RegexJIT.cpp: (JSC::Yarr::RegexGenerator::compile): (JSC::Yarr::jitCompileRegex): (JSC::Yarr::executeRegex):
  • yarr/RegexJIT.h: (JSC::Yarr::RegexCodeBlock::RegexCodeBlock): (JSC::Yarr::RegexCodeBlock::pcreFallback): (JSC::Yarr::RegexCodeBlock::setFallback): (JSC::Yarr::RegexCodeBlock::operator bool): (JSC::Yarr::RegexCodeBlock::set): (JSC::Yarr::RegexCodeBlock::execute):
12:11 Changeset [43836] by kevino@webkit.org

wx build fix, initialize variable that doesn't get set on Windows.

12:10 Changeset [43835] by cfleizach@apple.com

Bug 25776: accessibility should have its own folder in WebCore project
https://bugs.webkit.org/show_bug.cgi?id=25776

Speculative fix for windows build failure.

11:59 Changeset [43834] by ddkilzer@apple.com

Bug 20652: WebKit doesn't display favicons with MIME type image/vnd.microsoft.icon

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

Reviewed by Darin Adler.

WebCore:

Test: http/tests/misc/favicon-as-image.html

  • inspector/front-end/inspector.js: Added image/vnd.microsoft.icon to WebInspector.MIMETypes.
  • platform/MIMETypeRegistry.cpp: (WebCore::initializeSupportedImageMIMETypes): Added image/vnd.microsoft.icon to list of supported image and image resource MIME types.

LayoutTests:

Updated existing favicon-as-image.html test to display a third
image having MIME type image/vnd.microsoft.icon.

  • http/tests/misc/favicon-as-image.html: Updated.
  • http/tests/misc/resources/.htaccess: Added.
  • http/tests/misc/resources/favicon-vnd-ms.ico: Copied from LayoutTests/fast/images/resources/favicon.ico.
  • platform/mac/http/tests/misc/favicon-as-image-expected.checksum: Updated.
  • platform/mac/http/tests/misc/favicon-as-image-expected.png: Updated.
  • platform/mac/http/tests/misc/favicon-as-image-expected.txt: Updated.
11:48 Changeset [43833] by cfleizach@apple.com

Bug 25776: accessibility should have its own folder in WebCore project
https://bugs.webkit.org/show_bug.cgi?id=25776

10:26 Changeset [43832] by kov@webkit.org

2009-05-18 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Reviewed by Jan Alonzo.

https://bugs.webkit.org/show_bug.cgi?id=25854
[GTK] Should tell servers we only support identity as content encoding

Let servers know we only support identity as content
encoding. We will implement this in libsoup.

  • platform/network/soup/ResourceHandleSoup.cpp: (WebCore::ResourceHandle::startHttp):
08:30 Changeset [43831] by ap@webkit.org

Reviewed by Darin Adler.

<rdar://problem/6881160> REGRESSION (r41425): Unable to create battle.net account due to
CAPTCHA failure.

The problem was that after loading and displaying a CAPTCHA image, it was loaded from
the server again due to preloading. So, the server expected the last loaded (invisible)
CAPTCHA text to be typed and posted back.

I don't know how to make tests for preloading.

  • loader/DocLoader.cpp: (WebCore::DocLoader::checkForPendingPreloads): There is never a reason to preload after loading for real - and if cache policy is CachePolicyReload, that actually results in another load from network layer.
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::cachePolicy): It's not good for cachePolicy() to lie, but I don't know how to re-do r41425 properly. Added a FIXME.
07:13 Changeset [43830] by ariya@webkit.org

2009-05-18 Ariya Hidayat <ariya.hidayat@nokia.com>

Reviewed by Simon Hausmann.

Done together with Balazs Kelemen <kelemen.balazs@stud.u-szeged.hu>.

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

[Qt] Reuse FontPlatformData for the same FontDescription.
This effectively prevents growing heap usage for loading every web page.

  • platform/graphics/qt/FontCacheQt.cpp: (WebCore::qHash): Necessary for FontPlatformDataCache. (WebCore::FontCache::getCachedFontPlatformData): Reuse the instance if it exists, otherwise create a new one and insert it in the cache.
05:11 Changeset [43829] by ariya@webkit.org

2009-05-18 Zoltan Horvath <horvath.zoltan.6@stud.u-szeged.hu>

Reviewed by Ariya Hidayat.

Makes QtLauncher to accept multiple urls in command line and opens these in separate windows.

  • QtLauncher/main.cpp: (MainWindow::newWindow): (main):
04:33 Changeset [43828] by ariya@webkit.org

2009-05-18 Balazs Kelemen <kelemen.balazs@stud.u-szeged.hu>

Reviewed by Ariya Hidayat.

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

[Qt] Fix the leak in FontFallbackList::fontDataAt() function.
When creating a new instance of SimpleFontData, put it in the font list
so that it can deleted later on.

  • platform/graphics/qt/FontFallbackListQt.cpp: (WebCore::FontFallbackList::invalidate): (WebCore::FontFallbackList::releaseFontData): (WebCore::FontFallbackList::fontDataAt):
04:30 Changeset [43827] by jmalonzo@webkit.org

2009-05-18 Jan Michael Alonzo <jmalonzo@webkit.org>

Reviewed by Xan Lopez.

[Gtk] Various autotools build refactoring and fixes
https://bugs.webkit.org/show_bug.cgi?id=25286

Add support for running unit tests. Also run the tests whenever
the 'check' target runs.

  • GNUmakefile.am:
04:30 Changeset [43826] by jmalonzo@webkit.org

2009-05-18 Jan Michael Alonzo <jmalonzo@webkit.org>

Reviewed by Xan Lopez.

[Gtk] Various autotools build refactoring and fixes
https://bugs.webkit.org/show_bug.cgi?id=25286

Style fixes

  • GNUmakefile.am:
  • WebCore/GNUmakefile.am
04:30 Changeset [43825] by jmalonzo@webkit.org

2009-05-18 Jan Michael Alonzo <jmalonzo@webkit.org>

Reviewed by Xan Lopez.

[Gtk] Various autotools build refactoring and fixes
https://bugs.webkit.org/show_bug.cgi?id=25286

Add -no-install and -no-fast-install to programs and tests that we
don't install. Also remove -O2 since this is already handled at
configure time.

  • GNUmakefile.am:
  • JavaScriptCore/GNUmakefile.am:
  • WebKitTools/GNUmakefile.am:
04:30 Changeset [43824] by jmalonzo@webkit.org

2009-05-17 Jan Michael Alonzo <jmalonzo@webkit.org>

Reviewed by Xan Lopez.

[Gtk] Various autotools build refactoring and fixes
https://bugs.webkit.org/show_bug.cgi?id=25286

Add JavaScriptCore/ to JSC include path only since it's not
required when building WebCore.

  • GNUmakefile.am:

2009-05-17 Jan Michael Alonzo <jmalonzo@webkit.org>

Reviewed by Xan Lopez.

[Gtk] Various autotools build refactoring and fixes
https://bugs.webkit.org/show_bug.cgi?id=25286

Refactor library cflags

  • GNUmakefile.am:
04:11 Changeset [43823] by eric@webkit.org

2009-05-18 Julie Parent <jparent@google.com>

Reviewed by Eric Seidel.

Skip new tests from r43822 on Gtk
https://bugs.webkit.org/show_bug.cgi?id=25780

  • platform/gtk/Skipped:
03:55 Changeset [43822] by eric@webkit.org

2009-05-18 Julie Parent <jparent@google.com>

Reviewed by Oliver Hunt.

Add missing files from r43821
https://bugs.webkit.org/show_bug.cgi?id=25780

  • editing/pasteboard/get-data-text-plain-drop-expected.txt: Added.
  • editing/pasteboard/get-data-text-plain-drop.html: Added.
  • editing/pasteboard/get-data-text-plain-paste-expected.txt: Added.
  • editing/pasteboard/get-data-text-plain-paste.html: Added.
  • editing/pasteboard/resources/TEMPLATE.html: Copied from LayoutTests/editing/execCommand/resources/TEMPLATE.html.
  • editing/pasteboard/resources/get-data-text-plain-paste.js: Added. (handlePaste):
03:29 Changeset [43821] by eric@webkit.org

2009-05-18 Julie Parent <jparent@google.com>

Reviewed by Eric Seidel.

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

  • Scripts/make-js-test-wrappers: Added exception to avoid overwriting a custom-written test.
03:11 Changeset [43820] by eric@webkit.org

2009-05-18 Julie Parent <jparent@google.com>

Reviewed by Eric Seidel.

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

  • Scripts/make-js-test-wrappers: Added exception to avoid overwriting a custom-written test.
Note: See TracTimeline for information about the timeline view.