<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>90165</bug_id>
          
          <creation_ts>2012-06-28 05:50:28 -0700</creation_ts>
          <short_desc>[Qt][WK1] css3/filters/huge-region-composited.html makes css3/filters/huge-region.html crash</short_desc>
          <delta_ts>2014-02-03 03:21:32 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>INVALID</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Qt, QtTriaged</keywords>
          <priority>P1</priority>
          <bug_severity>Critical</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>79668</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Csaba Osztrogonác">ossy</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>noam</cc>
    
    <cc>ossy</cc>
    
    <cc>zherczeg</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>659444</commentid>
    <comment_count>0</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-06-28 05:50:28 -0700</bug_when>
    <thetext>After https://bugs.webkit.org/show_bug.cgi?id=90164 fixed 
css3/filters/huge-region.html will started to crash

It didn&apos;t crash before, because Accelerated Composition was disabled by a previous test.
But with AC, it crashes if css3/filters/huge-region-composited.html runs before it.

You can easily reproduce it independently of the status of bug90164,
because AC is enabled by default, and these tests don&apos;t disable it:
- Tools/Scripts/run-webkit-tests css3/filters/huge-region-composited.html css3/filters/huge-region.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>659451</commentid>
    <comment_count>1</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-06-28 06:10:39 -0700</bug_when>
    <thetext>Here is the debug crash log:

crash log for DumpRenderTree (pid 10171):
STDOUT: &lt;empty&gt;
STDERR: ASSERTION FAILED: m_ptr
STDERR: ../../../../Source/WTF/wtf/OwnPtr.h(64) : typename WTF::RemovePointer&lt;T&gt;::Type* WTF::OwnPtr&lt;T&gt;::operator-&gt;() const [with T = WebCore::ImageBuffer]
STDERR: 1   0x7fa2fa4f344a /home/oszi/WebKit/WebKitBuild/Debug/lib/libQtWebKit.so.4(_ZNK3WTF6OwnPtrIN7WebCore11ImageBufferEEptEv+0x3c) [0x7fa2fa4f344a]
STDERR: 2   0x7fa2fb01c329 /home/oszi/WebKit/WebKitBuild/Debug/lib/libQtWebKit.so.4(_ZN7WebCore18TextureMapperLayer18updateBackingStoreEPNS_13TextureMapperEPNS_26GraphicsLayerTextureMapperE+0x319) [0x7fa2fb01c329]
STDERR: 3   0x7fa2fb01efaf /home/oszi/WebKit/WebKitBuild/Debug/lib/libQtWebKit.so.4(_ZN7WebCore18TextureMapperLayer20syncCompositingStateEPNS_26GraphicsLayerTextureMapperEPNS_13TextureMapperEi+0x14d) [0x7fa2fb01efaf]
STDERR: 4   0x7fa2fb01f064 /home/oszi/WebKit/WebKitBuild/Debug/lib/libQtWebKit.so.4(_ZN7WebCore18TextureMapperLayer20syncCompositingStateEPNS_26GraphicsLayerTextureMapperEPNS_13TextureMapperEi+0x202) [0x7fa2fb01f064]</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>659453</commentid>
    <comment_count>2</comment_count>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2012-06-28 06:12:10 -0700</bug_when>
    <thetext>It&apos;s ok to skip the test for now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>659456</commentid>
    <comment_count>3</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-06-28 06:22:43 -0700</bug_when>
    <thetext>I skipped it to make the bots happier - http://trac.webkit.org/changeset/121427/trunk/LayoutTests/platform/qt/Skipped

Please unskip it with the proper fix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>660034</commentid>
    <comment_count>4</comment_count>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2012-06-28 18:28:22 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; I skipped it to make the bots happier - http://trac.webkit.org/changeset/121427/trunk/LayoutTests/platform/qt/Skipped
&gt; 
&gt; Please unskip it with the proper fix.

Might be hard. I&apos;d have to defer this for now, as there are not that many websites with huge filtered content.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>681903</commentid>
    <comment_count>5</comment_count>
    <who name="Zoltan Herczeg">zherczeg</who>
    <bug_when>2012-07-30 05:21:43 -0700</bug_when>
    <thetext>I will check this</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>681960</commentid>
    <comment_count>6</comment_count>
    <who name="Zoltan Herczeg">zherczeg</who>
    <bug_when>2012-07-30 06:22:17 -0700</bug_when>
    <thetext>This is the problem:

    // Paint the entire dirty rect into an image buffer. This ensures we only paint once.
    OwnPtr&lt;ImageBuffer&gt; imageBuffer = ImageBuffer::create(dirtyRect.size());
    GraphicsContext* context = imageBuffer-&gt;context();

It creates a 3050 x 506366 image. ImageBuffer::create can return with NULL. How shall we handle this case?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>681966</commentid>
    <comment_count>7</comment_count>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2012-07-30 06:29:38 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; This is the problem:
&gt; 
&gt;     // Paint the entire dirty rect into an image buffer. This ensures we only paint once.
&gt;     OwnPtr&lt;ImageBuffer&gt; imageBuffer = ImageBuffer::create(dirtyRect.size());
&gt;     GraphicsContext* context = imageBuffer-&gt;context();
&gt; 
&gt; It creates a 3050 x 506366 image. ImageBuffer::create can return with NULL. How shall we handle this case?

We should leave this test skipped for WebKit1. It&apos;s fixed in WebKit2 with TiledBackingStore. Fixing this for WebKit1 requires tiled-backing-store per layer which would be quite an undertaking.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>682842</commentid>
    <comment_count>8</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-07-31 02:09:56 -0700</bug_when>
    <thetext>Good to know if it works on WK2. I&apos;ll move this test to WK1 skipped list.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>682960</commentid>
    <comment_count>9</comment_count>
    <who name="Noam Rosenthal">noam</who>
    <bug_when>2012-07-31 05:55:14 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; Good to know if it works on WK2. I&apos;ll move this test to WK1 skipped list.

One way to make it not crash in WebKit1 is return early if creating the ImageBuffer fails. Then we can keep it out of the skipped list, and simply have wrong pixel results.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>975496</commentid>
    <comment_count>10</comment_count>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2014-02-03 03:21:32 -0800</bug_when>
    <thetext>=== Bulk closing of Qt bugs ===

If you believe that this bug report is still relevant for a non-Qt port of webkit.org, please re-open it and remove [Qt] from the summary.

If you believe that this is still an important QtWebKit bug, please fill a new report at https://bugreports.qt-project.org and add a link to this issue. See http://qt-project.org/wiki/ReportingBugsInQt for additional guidelines.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>