1. 22 Jan, 2013 40 commits
    • roger_fong@apple.com's avatar
      WTF project files and property sheets for getting WebKit to compile in VS2010. · d4dab610
      roger_fong@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=106986
      
      Reviewed by Timothy Horton and Brent Fulgham.
      
      * WTF.vcproj/WTF.sln:
      * WTF.vcxproj: Added.
      * WTF.vcxproj/WTF.vcxproj: Added.
      * WTF.vcxproj/WTF.vcxproj.filters: Added.
      * WTF.vcxproj/WTF.vcxproj.user: Added.
      * WTF.vcxproj/WTFCommon.props: Added.
      * WTF.vcxproj/WTFDebug.props: Added.
      * WTF.vcxproj/WTFGenerated.make: Added.
      * WTF.vcxproj/WTFGenerated.vcxproj: Added.
      * WTF.vcxproj/WTFGenerated.vcxproj.filters: Added.
      * WTF.vcxproj/WTFGenerated.vcxproj.user: Added.
      * WTF.vcxproj/WTFGeneratedCommon.props: Added.
      * WTF.vcxproj/WTFGeneratedDebug.props: Added.
      * WTF.vcxproj/WTFGeneratedRelease.props: Added.
      * WTF.vcxproj/WTFPostBuild.cmd: Added.
      * WTF.vcxproj/WTFPreBuild.cmd: Added.
      * WTF.vcxproj/WTFPreLink.cmd: Added.
      * WTF.vcxproj/WTFRelease.props: Added.
      * WTF.vcxproj/build-generated-files.sh: Added.
      * WTF.vcxproj/copy-files.cmd: Added.
      * WTF.vcxproj/work-around-vs-dependency-tracking-bugs.py: Added.
      * config.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140451 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d4dab610
    • hclam@chromium.org's avatar
      REGRESSION(r140231): media track layout tests crashing · e0ea73dc
      hclam@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=107579
      
      Unreviewed. Mark 3 tests as crashing:
      media/track/track-css-cue-lifetime.html
      media/track/track-css-matching.html
      media/track/track-css-property-whitelist.html
      
      * platform/chromium/TestExpectations:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140450 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e0ea73dc
    • hclam@chromium.org's avatar
      REGRESSION(r140392): InjectIDBKeyTest.TopLevelPropertyStringValue is crashing · 04c75d2a
      hclam@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=107578
      
      Unreviewed build fix. Disabled 2 tests that are crashing after r140392.
      
      * tests/IDBBindingUtilitiesTest.cpp:
      (WebKit::TEST_F):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140449 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      04c75d2a
    • alexis@webkit.org's avatar
      Allow construction of unprefixed transition DOM events. · 1693c0c9
      alexis@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=107319
      
      Reviewed by Dean Jackson.
      
      Source/WebCore:
      
      Make possible to construct unprefixed DOM events for transitions.
      Unfortunately I have to duplicate the C++ implementation class of the
      events (TransitionEvent.h and TransitionEvent.cpp). I can't find a
      better way to re-use the WebKitTransitionEvent class to back the
      TransitionEvent.idl as our code generators don't allow to have a
      different name for the C++ class used in the generated file than the
      interface name specified in the IDL file. Unfortunately
      https://trac.webkit.org/wiki/WebKitIDL#InterfaceName doesn't help as
      it's only a way to unlink the interface name specified in the IDL with
      the one exposed in JavaScript. I don't think we should support such a
      feature in our code generators as WebKitTransitionEvent class and more
      exactly prefixed DOM events for transitions will be removed one day so
      this use case will become obselete.
      
      Test: fast/events/constructors/transition-event-constructor.html
      
      * CMakeLists.txt:
      * DerivedSources.cpp:
      * DerivedSources.make:
      * DerivedSources.pri:
      * GNUmakefile.list.am:
      * Target.pri:
      * WebCore.gypi:
      * WebCore.vcproj/WebCore.vcproj:
      * WebCore.xcodeproj/project.pbxproj:
      * dom/DOMAllInOne.cpp:
      * dom/EventNames.in:
      * dom/TransitionEvent.cpp: Added.
      (WebCore):
      (WebCore::TransitionEventInit::TransitionEventInit):
      (WebCore::TransitionEvent::TransitionEvent):
      (WebCore::TransitionEvent::~TransitionEvent):
      (WebCore::TransitionEvent::propertyName):
      (WebCore::TransitionEvent::elapsedTime):
      (WebCore::TransitionEvent::interfaceName):
      * dom/TransitionEvent.h: Added.
      (WebCore):
      (TransitionEventInit):
      (TransitionEvent):
      (WebCore::TransitionEvent::create):
      * dom/TransitionEvent.idl: Added.
      * page/DOMWindow.idl:
      * page/animation/AnimationController.cpp:
      (WebCore::AnimationControllerPrivate::fireEventsAndUpdateStyle): always
      create a TransitionEvent now. EventTarget will be responsible to create
      a WebKitTransitionEvent if necessary.
      
      LayoutTests:
      
      Add new tests to cover the feature. Update some existing ones with new
      expected results as a new constructor was added.
      
      * fast/dom/constructed-objects-prototypes.html:
      * fast/dom/constructed-objects-prototypes-expected.txt:
      * fast/events/constructors/transition-event-constructor-expected.txt: Added.
      * fast/events/constructors/transition-event-constructor.html: Added.
      * fast/events/event-creation.html:
      * platform/chromium/TestExpectations: Chromium turns the feature off.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140448 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1693c0c9
    • abarth@webkit.org's avatar
      Wean BackgroundHTMLParser off HTMLInputStream · 4ef4b85d
      abarth@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=107575
      
      Reviewed by Eric Seidel.
      
      The BackgroundHTMLParser doesn't need to use HTMLInputStream because it
      doesn't need to handle nested calls to document.write. Instead, we can
      just use a SegmentedString directly, which will let us checkpoint
      m_input for speculation.
      
      * html/parser/BackgroundHTMLParser.cpp:
      (WebCore::BackgroundHTMLParser::append):
      (WebCore::BackgroundHTMLParser::finish):
      (WebCore::BackgroundHTMLParser::markEndOfFile):
      (WebCore):
      (WebCore::BackgroundHTMLParser::pumpTokenizer):
      * html/parser/BackgroundHTMLParser.h:
      (BackgroundHTMLParser):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140446 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4ef4b85d
    • sergio@webkit.org's avatar
      [Soup] Random thread crashes · 9d637739
      sergio@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=107439
      
      Reviewed by Martin Robinson.
      
      Process all pending requests in the inner GMainContext created to
      perform synchronous requests before restoring the thread default. No
      new tests required, already covered by network tests.
      
      * platform/network/soup/ResourceHandleSoup.cpp:
      (WebCore::WebCoreSynchronousLoader::~WebCoreSynchronousLoader):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140445 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9d637739
    • christophe.dumez@intel.com's avatar
      [gstreamer] GstBus signal watch should be removed on clean up · 1d09620c
      christophe.dumez@intel.com authored
      https://bugs.webkit.org/show_bug.cgi?id=107544
      
      Reviewed by Philippe Normand.
      
      Our gstreamer backend code currently calls gst_bus_add_signal_watch()
      on GstBus to add a signal watch. As per the gstreamer  documentation,
      "To clean up, the caller is responsible for calling
      gst_bus_remove_signal_watch() as many times as this function is
      called". This is because gst_bus_add_signal_watch() causes the GstBus
      object to be ref'd and gst_bus_remove_signal_watch() needs to be
      called to properly unref it.
      
      This patch makes sure that gst_bus_remove_signal_watch() is called
      on the GstBus object when cleaning up. This patch also uses smart
      pointers for GstBus objects for consistency.
      
      No new tests, no behavior change for layout tests.
      
      * platform/audio/gstreamer/AudioDestinationGStreamer.cpp:
      (WebCore::AudioDestinationGStreamer::AudioDestinationGStreamer):
      (WebCore::AudioDestinationGStreamer::~AudioDestinationGStreamer):
      * platform/audio/gstreamer/AudioFileReaderGStreamer.cpp:
      (WebCore::AudioFileReader::~AudioFileReader):
      (WebCore::AudioFileReader::decodeAudioForBusCreation):
      * platform/graphics/gstreamer/GStreamerGWorld.cpp:
      (WebCore::GStreamerGWorld::GStreamerGWorld):
      * platform/graphics/gstreamer/GStreamerVersioning.cpp:
      (webkitGstPipelineGetBus):
      * platform/graphics/gstreamer/GStreamerVersioning.h:
      * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
      (WebCore::MediaPlayerPrivateGStreamer::~MediaPlayerPrivateGStreamer):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140443 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1d09620c
    • jer.noble@apple.com's avatar
      REGRESSION(r140344): Repeated crashes in WKTR PlatformWebView::viewSupportsOptions(). · e524e7b7
      jer.noble@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=107562
      
      Rubber-stamped by Alexy Proskuryakov.
      
      The input to WKBooleanGetValue() is not NULL-safe, so NULL check its inputs before calling.
      
      * WebKitTestRunner/mac/PlatformWebViewMac.mm:
      (WTR::PlatformWebView::PlatformWebView):
      (WTR::PlatformWebView::viewSupportsOptions):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140442 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e524e7b7
    • abarth@webkit.org's avatar
      BackgroundHTMLParser should simulate tree building in a separate function · 29947f27
      abarth@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=107569
      
      Reviewed by Eric Seidel.
      
      This patch cleans up BackgroundHTMLParser::pumpTokenizer to prepare for
      implementing speculative parsing.
      
      * html/parser/BackgroundHTMLParser.cpp:
      (WebCore::BackgroundHTMLParser::simulateTreeBuilder):
      (WebCore):
      (WebCore::BackgroundHTMLParser::pumpTokenizer):
      * html/parser/BackgroundHTMLParser.h:
      (BackgroundHTMLParser):
      * page/Settings.in:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140441 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      29947f27
    • kov@webkit.org's avatar
      [GTK] Debug build failure on x86-64 · 30edf5d2
      kov@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=107400
      
      Reviewed by Xan Lopez.
      
      * configure.ac: use thin archives for convenience libraries, if AR_FLAGS was not
      overriden through the environment variable.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140440 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      30edf5d2
    • commit-queue@webkit.org's avatar
      Unreviewed, rolling out r140435. · bf68d054
      commit-queue@webkit.org authored
      http://trac.webkit.org/changeset/140435
      https://bugs.webkit.org/show_bug.cgi?id=107565
      
      Crashes on ClusterFuzz due to float not removed (Requested by
      inferno-sec on #webkit).
      
      Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-01-22
      
      Source/WebCore:
      
      * rendering/RenderBox.cpp:
      (WebCore::RenderBox::removeFloatingOrPositionedChildFromBlockLists):
      
      LayoutTests:
      
      * fast/block/float/overhanging-float-not-removed-crash-expected.txt: Removed.
      * fast/block/float/overhanging-float-not-removed-crash.html: Removed.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140439 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      bf68d054
    • commit-queue@webkit.org's avatar
      Yarr JIT isn't big endian compatible · 81849988
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=102897
      
      Patch by Tobias Netzel <tobias.netzel@googlemail.com> on 2013-01-22
      Reviewed by Oliver Hunt.
      
      This patch was tested in the current mozilla codebase only and has passed the regexp tests there.
      
      * yarr/YarrJIT.cpp:
      (JSC::Yarr::YarrGenerator::generatePatternCharacterOnce):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140438 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      81849988
    • ddkilzer@apple.com's avatar
      Fix DateMath.cpp to compile with -Wshorten-64-to-32 · fd1c55cc
      ddkilzer@apple.com authored
      <http://webkit.org/b/107503>
      
      Reviewed by Darin Adler.
      
      Source/JavaScriptCore:
      
      * runtime/JSDateMath.cpp:
      (JSC::parseDateFromNullTerminatedCharacters): Remove unneeded
      static_cast<int>().
      
      Source/WTF:
      
      Fixes the following build errors with -Wshorten-64-to-32:
      
          DateMath.cpp:742:47: error: implicit conversion loses integer precision: 'long' to 'int' [-Werror,-Wshorten-64-to-32]
              if (month == 2 && day > 28 && !isLeapYear(year))
                                             ~~~~~~~~~~ ^~~~
          DateMath.cpp:757:48: error: implicit conversion loses integer precision: 'long' to 'int' [-Werror,-Wshorten-64-to-32]
              double dateSeconds = ymdhmsToSeconds(year, month, day, hours, minutes, seconds) - timeZoneSeconds;
                                   ~~~~~~~~~~~~~~~       ^~~~~
          DateMath.cpp:757:55: error: implicit conversion loses integer precision: 'long' to 'int' [-Werror,-Wshorten-64-to-32]
              double dateSeconds = ymdhmsToSeconds(year, month, day, hours, minutes, seconds) - timeZoneSeconds;
                                   ~~~~~~~~~~~~~~~              ^~~
          DateMath.cpp:757:60: error: implicit conversion loses integer precision: 'long' to 'int' [-Werror,-Wshorten-64-to-32]
              double dateSeconds = ymdhmsToSeconds(year, month, day, hours, minutes, seconds) - timeZoneSeconds;
                                   ~~~~~~~~~~~~~~~                   ^~~~~
          DateMath.cpp:757:67: error: implicit conversion loses integer precision: 'long' to 'int' [-Werror,-Wshorten-64-to-32]
              double dateSeconds = ymdhmsToSeconds(year, month, day, hours, minutes, seconds) - timeZoneSeconds;
                                   ~~~~~~~~~~~~~~~                          ^~~~~~~
          DateMath.cpp:996:59: error: implicit conversion loses integer precision: 'long' to 'int' [-Werror,-Wshorten-64-to-32]
                              offset = ((o / 100) * 60 + (o % 100)) * sgn;
                                     ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
          DateMath.cpp:998:37: error: implicit conversion loses integer precision: 'long' to 'int' [-Werror,-Wshorten-64-to-32]
                              offset = o * 60 * sgn;
                                     ~ ~~~~~~~^~~~~
          DateMath.cpp:1005:40: error: implicit conversion loses integer precision: 'long' to 'int' [-Werror,-Wshorten-64-to-32]
                          offset = (o * 60 + o2) * sgn;
                                 ~ ~~~~~~~~~~~~~~^~~~~
          DateMath.cpp:1041:40: error: implicit conversion loses integer precision: 'long' to 'int' [-Werror,-Wshorten-64-to-32]
              return ymdhmsToSeconds(year, month + 1, day, hour, minute, second) * msPerSecond;
                     ~~~~~~~~~~~~~~~       ~~~~~~^~~
          DateMath.cpp:1041:45: error: implicit conversion loses integer precision: 'long' to 'int' [-Werror,-Wshorten-64-to-32]
              return ymdhmsToSeconds(year, month + 1, day, hour, minute, second) * msPerSecond;
                     ~~~~~~~~~~~~~~~                  ^~~
          DateMath.cpp:1041:50: error: implicit conversion loses integer precision: 'long' to 'int' [-Werror,-Wshorten-64-to-32]
              return ymdhmsToSeconds(year, month + 1, day, hour, minute, second) * msPerSecond;
                     ~~~~~~~~~~~~~~~                       ^~~~
          DateMath.cpp:1041:56: error: implicit conversion loses integer precision: 'long' to 'int' [-Werror,-Wshorten-64-to-32]
              return ymdhmsToSeconds(year, month + 1, day, hour, minute, second) * msPerSecond;
                     ~~~~~~~~~~~~~~~                             ^~~~~~
          12 errors generated.
      
      * wtf/DateMath.cpp:
      (WTF::ymdhmsToSeconds): Change year argument from long to int.
      Change mon, day, hour, minute arguments from int to long.
      (WTF::parseInt): Add.  Identical to parseLong but bounds checks
      for type int.
      (WTF::parseLong): Switch to std::numeric_limits<long> instead of
      macros.
      (WTF::parseES5DatePortion): Change year argument from long to
      int.
      (WTF::parseES5DateFromNullTerminatedCharacters): Change year
      local variable from long to int.
      (WTF::parseDateFromNullTerminatedCharacters): Change year and
      offset local variables from long to int.  Switch from using
      parseLong() to parseInt() as needed.  Ditto for labs() to abs().
      Add overflow check when switching from "MM/DD/YYYY" to
      "YYYY/MM/DD" parsing.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140437 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      fd1c55cc
    • robert@webkit.org's avatar
      When we do setAttribute("border", null) on a table we should create a border... · cad119de
      robert@webkit.org authored
      When we do setAttribute("border", null) on a table we should create a border like every other browser
      https://bugs.webkit.org/show_bug.cgi?id=102112
      
      Reviewed by Ryosuke Niwa.
      
      Source/WebCore:
      
      http://www.whatwg.org/specs/web-apps/current-work/multipage/rendering.html#tables says:
      "If the [table's border] attribute is present but parsing the attribute's value using the rules for parsing
      non-negative integers generates an error, a default value of 1px is expected to be used for that property instead."
      
      Match the spec and bring us into line with other browsers by observing the 'parsing non-negative integers' algorithm.
      
      Tests: fast/dom/HTMLTableElement/table-with-invalid-border.html
             fast/table/table-with-borderattr-null.html
             fast/table/table-with-borderattr-set-to-null.html
      
      * html/HTMLElement.cpp:
      (WebCore::HTMLElement::parseBorderWidthAttribute):
      (WebCore::HTMLElement::applyBorderAttributeToStyle):
      * html/HTMLElement.h:
      (HTMLElement):
      * html/HTMLTableElement.cpp:
      (WebCore::HTMLTableElement::collectStyleForPresentationAttribute):
      (WebCore::HTMLTableElement::parseAttribute):
      
      LayoutTests:
      
      * fast/dom/HTMLTableElement/table-with-invalid-border-expected.txt: Added.
      * fast/dom/HTMLTableElement/table-with-invalid-border.html: Added.
      * fast/table/table-with-borderattr-null-expected.txt: Added.
      * fast/table/table-with-borderattr-null.html: Added.
      * fast/table/table-with-borderattr-set-to-null-expected.txt: Added.
      * fast/table/table-with-borderattr-set-to-null.html: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140436 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      cad119de
    • inferno@chromium.org's avatar
      Heap-use-after-free in WebCore::RenderObject::isDescendantOf · 2e78bcb2
      inferno@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=107226
      
      Reviewed by Emil A Eklund.
      
      Source/WebCore:
      
      Test: fast/block/float/overhanging-float-not-removed-crash.html
      
      * rendering/RenderBox.cpp:
      (WebCore::RenderBox::removeFloatingOrPositionedChildFromBlockLists):
      Skip anonymous blocks in the chain to get the enclosing block and
      be able to correctly mark the overhanging floats in the next siblings.
      
      LayoutTests:
      
      * fast/block/float/overhanging-float-not-removed-crash-expected.txt: Added.
      * fast/block/float/overhanging-float-not-removed-crash.html: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140435 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2e78bcb2
    • ap@apple.com's avatar
      One is not allowed to use commit-queue to make oneself a committer. · fbce7988
      ap@apple.com authored
              * Scripts/webkitpy/common/config/committers.py: Removing eustas@chromium.org.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140434 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      fbce7988
    • jschuh@chromium.org's avatar
      Silence MSVC 64-bit build warning c4309 for FrameTree::invalidCount · 1d389bc0
      jschuh@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=107439
      
      Reviewed by Dimitri Glazkov.
      
      MSVC detects that the constant notFound is truncated on assignment to
      invalidCount. Since we never compare them (as it would always fail on
      64-bit anyway), just initialize invalidCount directly to -1.
      
      No new tests. No behavior changed.
      
      * page/FrameTree.h:
      (FrameTree):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140433 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1d389bc0
    • zandobersek@gmail.com's avatar
      [Autotools] Remove the Canvas Path configuration option · a538e38a
      zandobersek@gmail.com authored
      https://bugs.webkit.org/show_bug.cgi?id=107537
      
      Reviewed by Martin Robinson.
      
      .: 
      
      * configure.ac: Remove the configuration option for the Canvas Path
      feature as this is not in line with the new guidelines about feature
      enablement in the autotools build system.
      
      Source/WebCore: 
      
      No new tests - no new testable functionality.
      
      * GNUmakefile.am: Remove the Automake conditional analysis, the related
      configuration option is being removed as well.
      * GNUmakefile.features.am.in: Add the ENABLE_CANVAS_PATH feature define,
      defaulting to 0 in release builds (but is disabled in development builds
      of the GTK port as well at the moment).
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140431 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a538e38a
    • zandobersek@gmail.com's avatar
      [Autotools] Place a warning in configure.ac about adding new configuration options · cab09bcb
      zandobersek@gmail.com authored
      https://bugs.webkit.org/show_bug.cgi?id=107559
      
      Reviewed by Martin Robinson.
      
      * configure.ac: Add an eye-catching section explaining that changes in this file might
      not be necessary at all and a link pointing to the guidelines on the Trac wiki.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140430 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      cab09bcb
    • schenney@chromium.org's avatar
      Asserts when textPath is used with no path · 1c5ce976
      schenney@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=107324
      
      Reviewed by Eric Seidel.
      
      Source/WebCore: 
      
      We assert when there is no path associated with an SVG text path
      element. Instead, this patch detects the condition and stops trying to
      layout text for that textPath  element.
      
      Test: svg/text/tpath-without-path.svg
      
      * rendering/svg/SVGTextLayoutEngine.cpp:
      (WebCore::SVGTextLayoutEngine::beginTextPathLayout):
      (WebCore::SVGTextLayoutEngine::layoutTextOnLineOrPath):
      
      LayoutTests: 
      
      Test will assert in debug without this patch.
      
      * svg/text/tpath-without-path-expected.txt: Added.
      * svg/text/tpath-without-path.svg: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140429 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1c5ce976
    • aandrey@chromium.org's avatar
      Web Inspector: [Canvas] jump to prev/next drawing call in the replay · ee43d77b
      aandrey@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=107551
      
      Reviewed by Pavel Feldman.
      
      Implement jumping to the next(previous) drawing call in the WebGL and canvas 2D replay.
      
      * English.lproj/localizedStrings.js:
      * inspector/InjectedScriptCanvasModuleSource.js:
      (.):
      * inspector/Inspector.json:
      * inspector/front-end/CanvasProfileView.js:
      (WebInspector.CanvasProfileView):
      (WebInspector.CanvasProfileView.prototype.dispose):
      (WebInspector.CanvasProfileView.prototype._onReplayDrawingCallClick):
      * inspector/front-end/canvasProfiler.css:
      (.canvas-replay-prev-draw img):
      (.canvas-replay-next-draw img):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140428 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ee43d77b
    • commit-queue@webkit.org's avatar
      Web Inspector: remove asynchronous behavior from DTE paintLines method · bfcbb3c9
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=107550
      
      Patch by Andrey Lushnikov <lushnikov@chromium.org> on 2013-01-22
      Reviewed by Pavel Feldman.
      
      Remove paintLinesOperationCredit and all asynchronous behaviour from paintLines method;
      also, remove paintLineChunks method.
      
      * inspector/front-end/DefaultTextEditor.js:
      (WebInspector.TextEditorMainPanel.prototype.expandChunks):
      (WebInspector.TextEditorMainPanel.prototype._highlightDataReady):
      (WebInspector.TextEditorMainPanel.prototype._paintLines):
      (WebInspector.TextEditorMainPanel.prototype._renderRanges):
      (WebInspector.TextEditorMainPanel.prototype._paintLine):
      (WebInspector.TextEditorMainPanel.prototype._applyDomUpdates):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140427 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      bfcbb3c9
    • commit-queue@webkit.org's avatar
      Web Inspector: [Network] "Secure" cookies can not be deleted. · 960486f0
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=107543
      
      Patch by Eugene Klyuchnikov <eustas@chromium.org> on 2013-01-22
      Reviewed by Pavel Feldman.
      
      To delete secure cookie URL schema need to be "https" instead of "http".
      
      * inspector/front-end/CookieItemsView.js:
      (WebInspector.CookieItemsView.prototype._deleteCookie):
      Take care of secure cookies.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140426 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      960486f0
    • commit-queue@webkit.org's avatar
      Unreviewed, rolling out r140420. · 32b2d090
      commit-queue@webkit.org authored
      http://trac.webkit.org/changeset/140420
      https://bugs.webkit.org/show_bug.cgi?id=107557
      
      Still causes crashes (EFL this time) (Requested by kov on
      #webkit).
      
      Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-01-22
      
      * platform/graphics/gstreamer/GStreamerVersioning.cpp:
      * platform/graphics/gstreamer/GStreamerVersioning.h:
      * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
      (StreamingClient):
      (_WebKitWebSrcPrivate):
      (webKitWebSrcFinalize):
      (webKitWebSrcStop):
      (StreamingClient::didReceiveData):
      * platform/network/ResourceHandleClient.h:
      (ResourceHandleClient):
      * platform/network/ResourceHandleInternal.h:
      (WebCore::ResourceHandleInternal::ResourceHandleInternal):
      (ResourceHandleInternal):
      * platform/network/soup/ResourceHandleSoup.cpp:
      (WebCore::cleanupSoupRequestOperation):
      (WebCore::nextMultipartResponsePartCallback):
      (WebCore::sendRequestCallback):
      (WebCore::readCallback):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140425 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      32b2d090
    • commit-queue@webkit.org's avatar
      [EFL] Unskipping some Accessibility Layout Tests for WK2. · 2743e8f8
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=107555
      
      Unreviewed EFL gardening.
      
      Patch by Krzysztof Czech <k.czech@samsung.com> on 2013-01-22
      
      * platform/efl-wk2/TestExpectations:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140424 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2743e8f8
    • commit-queue@webkit.org's avatar
      [Qt] Crash in PasteboardQt.cpp Pasteboard::writeSelection · 835334c7
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=102192
      
      Patch by Fabien Valée
      Patch by Allan Sandfeld Jensen <allan.jensen@digia.com> on 2013-01-22
      Reviewed by Jocelyn Turcotte.
      
      QClipboard::setMimeData transfers ownership of QMimeData to the clipboard,
      so we should not access it afterwards.
      
      * platform/qt/PasteboardQt.cpp:
      (WebCore::Pasteboard::writeSelection):
      (WebCore::Pasteboard::writePlainText):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140423 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      835334c7
    • christophe.dumez@intel.com's avatar
      Regression(r140414): It is causing crashes with gstreamer 0.10 · abd01e44
      christophe.dumez@intel.com authored
      https://bugs.webkit.org/show_bug.cgi?id=107554
      
      Reviewed by Philippe Normand.
      
      gstreamer 0.10 doc led me to believe that gst_element_factory_make()
      was not returning a floating reference. However, based on testing
      (and results on Qt port) it does so we should NOT adopt the
      returned GstElement object.
      
      No new tests, already covered by existing tests.
      
      * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140422 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      abd01e44
    • commit-queue@webkit.org's avatar
      Web Inspector: do not highlight really long lines in DTE. · 3800b98d
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=107531
      
      Patch by Andrey Lushnikov <lushnikov@chromium.org> on 2013-01-22
      Reviewed by Pavel Feldman.
      
      Source/WebCore:
      
      Improve TextEditorHighlighter.orderedRangesPerLine method to return
      only ranges that start before particular column.
      
      Test: inspector/editor/text-editor-long-line.html
      
      * inspector/front-end/TextEditorHighlighter.js:
      (WebInspector.TextEditorHighlighter):
      (WebInspector.TextEditorHighlighter.prototype.setHighlightLineLimit):
      (WebInspector.TextEditorHighlighter.prototype.orderedRangesPerLine.comparator):
      (WebInspector.TextEditorHighlighter.prototype.orderedRangesPerLine):
      
      LayoutTests:
      
      Layout test to verify that Default Text Editor does not spend time for
      highlighting really long lines of code.
      
      * inspector/editor/highlighter-long-line.html: Correct highlighter defaults in initialization.
      * inspector/editor/text-editor-long-line-expected.txt: Added.
      * inspector/editor/text-editor-long-line.html: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140421 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3800b98d
    • kov@webkit.org's avatar
      [GStreamer][Soup] Let GStreamer provide the buffer data is downloaded to, to avoid copying · 949663b6
      kov@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=105552
      
      Patch by Gustavo Noronha Silva <gustavo.noronha@collabora.com> on 2013-01-22
      Reviewed by Philippe Normand.
      
      Makes it possible for the GStreamer media backend to provide the buffer to which
      the Soup networking backend will use to download data to. This makes copying
      memory unnecessary when ResourceHandle hands data over to the media player's
      StreamingClient. Thanks to Dan Winship for help designing the interface.
      
      No behaviour change, covered by existing tests.
      
      * platform/graphics/gstreamer/GStreamerVersioning.cpp:
      (createGstBufferForData): New helper to create a GstBuffer when
      we have a data pointer and a length.
      (getGstBufferSize): Abstract obtaining the size of the buffer, so the code
      is cleaner while still working for both GST 0.10 and 1.0.
      (setGstBufferSize): Ditto, but for setting the size.
      (getGstBufferDataPointer): Ditto, but for grabbing the data pointer.
      (mapGstBuffer): Convenience method to take care of mapping the buffer so that
      we can provide the data pointer to ResourceHandle.
      (unmapGstBuffer): Convenience method which takes care of unmapping the buffer
      and properly freeing the GstMapInfo.
      * platform/graphics/gstreamer/GStreamerVersioning.h:
      * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
      (StreamingClient): New methods.
      (_WebKitWebSrcPrivate): We now store the GstBuffer we provided the data pointer from
      so we can later unmap it and push it to the pipeline.
      (webKitWebSrcDispose): Deal with the GstBuffer in case it exists when the source is
      destroyed.
      (webKitWebSrcStop): Also clear the GstBuffer in this case.
      (StreamingClient::didReceiveData): Handle the hand-over of the buffer.
      (StreamingClient::getBuffer): Provide ResourceHandle with a new GstBuffer's data pointer.
      * platform/network/ResourceHandleClient.h:
      (ResourceHandleClient):
      (WebCore::ResourceHandleClient::ResourceHandleClient): Constructor to initialize the buffer
      member variable to 0.
      (WebCore::ResourceHandleClient::~ResourceHandleClient): Destructor to free the buffer if it
      has been allocated.
      (WebCore::ResourceHandleClient::getBuffer): Default implementation which returns a
      newly allocated char pointer.
      * platform/network/ResourceHandleInternal.h:
      (WebCore::ResourceHandleInternal::ResourceHandleInternal):
      (ResourceHandleInternal): Store actual buffer size, which is no longer a constant.
      * platform/network/soup/ResourceHandleSoup.cpp:
      (WebCore::cleanupSoupRequestOperation): Clear the buffer pointer, the life-cycle of the
      buffer is handled by the ResourceHandleClient.
      (WebCore::nextMultipartResponsePartCallback): Get a new buffer from the client before reading.
      (WebCore::sendRequestCallback): Ditto.
      (WebCore::readCallback): Ditto.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140420 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      949663b6
    • commit-queue@webkit.org's avatar
      [EFL] Fix context menu localized string · 48587f83
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=107536
      
      One of localized string has a marker. Since EFL port does not support them
      it has to be removed, so the string will be displayed properly.
      
      Patch by Michał Pakuła vel Rutka <m.pakula@samsung.com> on 2013-01-22
      Reviewed by Laszlo Gombos.
      
      * platform/efl/LocalizedStringsEfl.cpp:
      (WebCore::contextMenuItemTagCheckSpellingWhileTyping)
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140419 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      48587f83
    • commit-queue@webkit.org's avatar
      Add myself to commiters.py · 896aacc6
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=107546
      
      Patch by Eugene Klyuchnikov <eustas@chromium.org> on 2013-01-22
      Reviewed by Kentaro Hara.
      
      * Scripts/webkitpy/common/config/committers.py:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140418 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      896aacc6
    • thiago.santos@intel.com's avatar
      [EFL][Chromium] Unreviewed gardening. · 210aaee7
      thiago.santos@intel.com authored
      Added expectations for a crashing EFL test and fixed
      a typo on Chromium's expectations for the same test.
      
      * platform/chromium/TestExpectations:
      * platform/efl/TestExpectations:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140417 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      210aaee7
    • dominik.rottsches@intel.com's avatar
      [EFL] Enable sub-pixel tests · 822a5268
      dominik.rottsches@intel.com authored
      https://bugs.webkit.org/show_bug.cgi?id=107548
      
      Unreviewed gardening.
      
      I will run this through EWS'ses and give others a chance to comment
      since I am removing the sub-pixel skipping from the wk2/TestExpectations file.
      This set of tests seems to be specifically skipped
      in all platforms that don't want to run these tests.
      
      
      * platform/efl/TestExpectations:
      * platform/efl/fast/sub-pixel/inline-block-with-padding-expected.txt: Added.
      * platform/efl/fast/sub-pixel/selection/selection-gaps-at-fractional-offsets-expected.png: Added.
      * platform/efl/fast/sub-pixel/selection/selection-gaps-at-fractional-offsets-expected.txt: Added.
      * platform/efl/fast/sub-pixel/selection/selection-rect-in-sub-pixel-table-expected.png: Added.
      * platform/efl/fast/sub-pixel/selection/selection-rect-in-sub-pixel-table-expected.txt: Added.
      * platform/efl/fast/sub-pixel/sub-pixel-accumulates-to-layers-expected.png: Added.
      * platform/efl/fast/sub-pixel/sub-pixel-accumulates-to-layers-expected.txt: Added.
      * platform/efl/fast/sub-pixel/sub-pixel-iframe-copy-on-scroll-expected.png: Added.
      * platform/efl/fast/sub-pixel/sub-pixel-iframe-copy-on-scroll-expected.txt: Added.
      * platform/efl/fast/sub-pixel/transformed-iframe-copy-on-scroll-expected.png: Added.
      * platform/efl/fast/sub-pixel/transformed-iframe-copy-on-scroll-expected.txt: Added.
      * platform/wk2/TestExpectations:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140416 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      822a5268
    • commit-queue@webkit.org's avatar
      Unreviewed, rolling out r140412. · a0b0853f
      commit-queue@webkit.org authored
      http://trac.webkit.org/changeset/140412
      https://bugs.webkit.org/show_bug.cgi?id=107549
      
      Broke rendering of buttons on gmail (Requested by carewolf on
      #webkit).
      
      Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-01-22
      
      * platform/graphics/qt/TransparencyLayer.h:
      (WebCore::TransparencyLayer::TransparencyLayer):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140415 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a0b0853f
    • christophe.dumez@intel.com's avatar
      [gstreamer] MediaPlayerPrivateGStreamer should take ownership of the playbin · e843492f
      christophe.dumez@intel.com authored
      https://bugs.webkit.org/show_bug.cgi?id=107445
      
      Reviewed by Philippe Normand.
      
      In gstreamer 1.0, gst_element_factory_make() now returns a floating reference.
      MediaPlayerPrivateGStreamer calls gst_element_factory_make() to create the
      playbin object but does not take ownership of the object. As a consequence,
      the object keeps floating until it is unref'd in the
      MediaPlayerPrivateGStreamer destructor.
      
      This patch uses a GRefPtr<GstElement> to store the playbin object and only
      adopt the object returned by gst_element_factory_make() if gstreamer 0.10
      is used. When gstreamer 1.0 is used, the returned object will not be adopted,
      which will remove the floating reference. This way, we ensure that the
      playbin object is owned by MediaPlayerPrivateGStreamer.
      
      No new tests, no behavior change for layout tests.
      
      * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
      (WebCore::MediaPlayerPrivateGStreamer::MediaPlayerPrivateGStreamer):
      (WebCore::MediaPlayerPrivateGStreamer::~MediaPlayerPrivateGStreamer):
      (WebCore::MediaPlayerPrivateGStreamer::load):
      (WebCore::MediaPlayerPrivateGStreamer::playbackPosition):
      (WebCore::MediaPlayerPrivateGStreamer::changePipelineState):
      (WebCore::MediaPlayerPrivateGStreamer::duration):
      (WebCore::MediaPlayerPrivateGStreamer::seek):
      (WebCore::MediaPlayerPrivateGStreamer::paused):
      (WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfVideo):
      (WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfAudio):
      (WebCore::MediaPlayerPrivateGStreamer::setVolume):
      (WebCore::MediaPlayerPrivateGStreamer::notifyPlayerOfVolumeChange):
      (WebCore::MediaPlayerPrivateGStreamer::setRate):
      (WebCore::MediaPlayerPrivateGStreamer::buffered):
      (WebCore::MediaPlayerPrivateGStreamer::handleMessage):
      (WebCore::MediaPlayerPrivateGStreamer::fillTimerFired):
      * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
      (MediaPlayerPrivateGStreamer):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140414 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e843492f
    • yurys@chromium.org's avatar
      Unreviewed. Fix closure compiler warning in inspector front-end after r140390. · 5e497287
      yurys@chromium.org authored
      * inspector/front-end/HeapSnapshotView.js:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140413 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5e497287
    • allan.jensen@digia.com's avatar
      [Qt] Box shadows on a transparency layer is very slow · d83b1ab8
      allan.jensen@digia.com authored
      https://bugs.webkit.org/show_bug.cgi?id=107547
      
      Reviewed by Noam Rosenthal.
      
      Set an initial clip on the transparency layer, so that the clipping
      bounds will never end up larger than the layer.
      
      * platform/graphics/qt/TransparencyLayer.h:
      (WebCore::TransparencyLayer::TransparencyLayer):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140412 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d83b1ab8
    • falken@chromium.org's avatar
      Move top layer flag from ElementRareData to NodeFlags · c419d89a
      falken@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=107542
      
      Reviewed by Hajime Morita.
      
      This is a speculative fix for a perf regression (https://bugs.webkit.org/show_bug.cgi?id=106726)
      likely due to checking the top layer flag in Element::removedFrom. It
      also simplifies code dealing with top layer and makes it no longer
      necessary to allocate rare data for top layer.
      
      * dom/Element.cpp:
      (WebCore::Element::removedFrom): Check isInTopLayer first in case it helps fix the perf regression.
      (WebCore):
      * dom/Element.h: Move top layer functions from Element to Node.
      * dom/ElementRareData.h:
      (ElementRareData):
      (WebCore::ElementRareData::ElementRareData): Remove top layer flag from ElementRareData.
      * dom/Node.cpp: Move top layer functions from Element to Node.
      (WebCore):
      (WebCore::Node::setIsInTopLayer):
      * dom/Node.h:
      (Node):
      (WebCore::Node::isInTopLayer):
      * dom/NodeRenderingContext.cpp: Remove unnecessary casts to Element for isInTopLayer().
      (WebCore::isRendererReparented):
      (WebCore::NodeRenderingContext::previousRenderer):
      (WebCore::NodeRenderingContext::parentRenderer):
      * rendering/RenderLayer.cpp: Ditto.
      (WebCore::RenderLayer::isInTopLayer):
      (WebCore::RenderLayer::rebuildZOrderLists):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140411 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c419d89a
    • mark.lam@apple.com's avatar
      Fix broken mac builds due to <http://trac.webkit.org/changeset/140399>. · 2ec9d258
      mark.lam@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=100710.
      
      Not reviewed.
      
      No new tests.
      
      * WebCore.xcodeproj/project.pbxproj:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140410 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2ec9d258
    • commit-queue@webkit.org's avatar
      [v8] Convert string conversion calls to one byte versions · a3de7ee3
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=107524
      
      Patch by Dan Carney <dcarney@google.com> on 2013-01-22
      Reviewed by Kentaro Hara.
      
      No new tests. No change in functionality.
      
      * bindings/v8/SerializedScriptValue.cpp:
      * bindings/v8/V8StringResource.cpp:
      (WebCore::WebCoreStringResourceBase::toWebCoreStringResourceBase):
      (StringTraits):
      (WebCore::true):
      (WebCore::v8StringToWebCoreString):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@140409 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a3de7ee3