<?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>25403</bug_id>
          
          <creation_ts>2009-04-25 20:01:27 -0700</creation_ts>
          <short_desc>Gradient Fill of text not positioned properly</short_desc>
          <delta_ts>2009-04-28 16:10:06 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>SVG</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>23881</dependson>
    
    <dependson>25431</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jeff Schiller">jeffschiller</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>gsherloc</cc>
    
    <cc>krit</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>118869</commentid>
    <comment_count>0</comment_count>
    <who name="Jeff Schiller">jeffschiller</who>
    <bug_when>2009-04-25 20:01:27 -0700</bug_when>
    <thetext>The attached test case shows a bug in WebKit:  The green text should almost completely obscure the red text.  However, the red text is visible in Safari 4 at a different size and position than the green text.

Note that the red text is actually a gradient.  If the gradient was replaced with a solid color (fill=&quot;red&quot;), then this problem is no longer present.

This may be related to Bug 25402.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>118870</commentid>
    <comment_count>1</comment_count>
      <attachid>29795</attachid>
    <who name="Jeff Schiller">jeffschiller</who>
    <bug_when>2009-04-25 20:01:59 -0700</bug_when>
    <thetext>Created attachment 29795
Test Case showing the problem</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>118920</commentid>
    <comment_count>2</comment_count>
    <who name="Gavin Sherlock">gsherloc</who>
    <bug_when>2009-04-26 12:44:44 -0700</bug_when>
    <thetext>I don&apos;t see a problem with the test case in r42858</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>118951</commentid>
    <comment_count>3</comment_count>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2009-04-26 23:05:13 -0700</bug_when>
    <thetext>*** Bug 25402 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>118952</commentid>
    <comment_count>4</comment_count>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2009-04-26 23:08:55 -0700</bug_when>
    <thetext>The wrong behavior is caused by wrong values of the drawing rect. eseidel improved boundingBox&apos;s in the last days. It should work now. Can you test it again with the latest nightly please?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>119176</commentid>
    <comment_count>5</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-04-28 15:03:02 -0700</bug_when>
    <thetext>Wow.  This is much better after http://trac.webkit.org/changeset/42950.

Would you consider this fixed, Jeff?  Or do we have more work to do here?

Our rendering looks as good (or better) than FF and Opera.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>119180</commentid>
    <comment_count>6</comment_count>
      <attachid>29866</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-04-28 15:10:12 -0700</bug_when>
    <thetext>Created attachment 29866
Add text gradient test to cover

 5 files changed, 43 insertions(+), 0 deletions(-)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>119181</commentid>
    <comment_count>7</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-04-28 15:14:06 -0700</bug_when>
    <thetext>Thanks for the awesome test case.

Committing to http://svn.webkit.org/repository/webkit/trunk ...
	M	LayoutTests/ChangeLog
	A	LayoutTests/platform/mac/svg/text/text-gradient-positioning-expected.checksum
	A	LayoutTests/platform/mac/svg/text/text-gradient-positioning-expected.png
	A	LayoutTests/platform/mac/svg/text/text-gradient-positioning-expected.txt
	A	LayoutTests/svg/text/text-gradient-positioning.svg
Committed r42966

We might still be using repaintRectInLocalCoordinates() in a few places where we should be using objectBoundingBox(), so related test cases could fail.  But this nice test case you provided &quot;passes&quot; now, as far as I can tell.

Thanks for the great test case!  (You&apos;ll see that I changed the text a little to make it more self-documenting, but otherwise landed it as-is.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>119196</commentid>
    <comment_count>8</comment_count>
    <who name="Jeff Schiller">jeffschiller</who>
    <bug_when>2009-04-28 16:10:06 -0700</bug_when>
    <thetext>Looks great to me in nightly from 4/25.  Thanks!</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>29795</attachid>
            <date>2009-04-25 20:01:59 -0700</date>
            <delta_ts>2009-04-25 20:01:59 -0700</delta_ts>
            <desc>Test Case showing the problem</desc>
            <filename>svg-gradientfill-bug.svg</filename>
            <type>image/svg+xml</type>
            <size>805</size>
            <attacher name="Jeff Schiller">jeffschiller</attacher>
            
              <data encoding="base64">PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+Cjwh
LS0gQ3JlYXRlZCB3aXRoIElua3NjYXBlIChodHRwOi8vd3d3Lmlua3NjYXBlLm9yZy8pIC0tPgo8
c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6
Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHZlcnNpb249IjEuMSIgd2lkdGg9Ijg1MCIgaGVpZ2h0
PSIyMDAiIHhtbDpzcGFjZT0icHJlc2VydmUiPgogIDxkZWZzPgoJIDxsaW5lYXJHcmFkaWVudCBn
cmFkaWVudFRyYW5zZm9ybT0ibWF0cml4KDEuMjMyNjcsIDAsIDAsIDEuMjU3MTgsIC0zOC44NzE2
LCAtMzkuMjU2NSkiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiBpZD0ibGluZWFyR3Jh
ZGllbnQ0NjczIiB4MT0iMTIwLjAyODkyIiB4Mj0iNDk3LjUyMTU4IiB5MT0iMTYxLjA2NzQ2IiB5
Mj0iMTg0Ljc2NTUiPgogICAgICAgIDxzdG9wIG9mZnNldD0iMCIgc3RvcC1jb2xvcj0icmVkIi8+
CiAgICAgICAgPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSJyZWQiLz4KICAgICA8L2xpbmVh
ckdyYWRpZW50PgogIDwvZGVmcz4KICA8ZyBpZD0iU1ZHQ29taW5nT2ZBZ2VTdHlsZUF0dHJpYnMi
IGZpbGw9InVybCgjbGluZWFyR3JhZGllbnQ0NjczKSI+CiAgICA8dGV4dCBpZD0iU1ZHQ29taW5n
T2ZBZ2UiIHk9IjEwMCIgZm9udC1zaXplPSI1MHB4Ij5TVkcgY29taW5nIG9mIGFnZTwvdGV4dD4K
ICA8L2c+CiAgPHVzZSB4bGluazpocmVmPSIjU1ZHQ29taW5nT2ZBZ2UiIGZpbGw9ImdyZWVuIi8+
Cjwvc3ZnPg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>29866</attachid>
            <date>2009-04-28 15:10:12 -0700</date>
            <delta_ts>2009-04-28 15:11:35 -0700</delta_ts>
            <desc>Add text gradient test to cover</desc>
            <filename>Add-text-gradient-test-to-cover.patch</filename>
            <type>text/plain</type>
            <size>3989</size>
            <attacher name="Eric Seidel (no email)">eric</attacher>
            
              <data encoding="base64">ZjNmZjY3MWQ3ZTVjNzY2NzRlMTE0NjY2N2UxN2JmY2U4YWI2MWNmYwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDFhZjMzOWYu
LjI3OTNmNTcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cKQEAgLTIsNiArMiwxOCBAQAogCiAgICAgICAgIFJldmlld2VkIGJ5IERh
dmlkIEh5YXR0LgogCisgICAgICAgIEFkZCB0ZXh0IGdyYWRpZW50IHRlc3QgdG8gY292ZXIKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI1NDAzCisKKyAg
ICAgICAgKiBwbGF0Zm9ybS9tYWMvc3ZnL3RleHQvdGV4dC1ncmFkaWVudC1wb3NpdGlvbmluZy1l
eHBlY3RlZC5jaGVja3N1bTogQWRkZWQuCisgICAgICAgICogcGxhdGZvcm0vbWFjL3N2Zy90ZXh0
L3RleHQtZ3JhZGllbnQtcG9zaXRpb25pbmctZXhwZWN0ZWQucG5nOiBBZGRlZC4KKyAgICAgICAg
KiBwbGF0Zm9ybS9tYWMvc3ZnL3RleHQvdGV4dC1ncmFkaWVudC1wb3NpdGlvbmluZy1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHN2Zy90ZXh0L3RleHQtZ3JhZGllbnQtcG9zaXRpb25p
bmcuc3ZnOiBBZGRlZC4KKworMjAwOS0wNC0yOCAgRXJpYyBTZWlkZWwgIDxlcmljQHdlYmtpdC5v
cmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRGF2aWQgSHlhdHQuCisKICAgICAgICAgQWRkIHRl
eHQgcmVwYWludCB0ZXN0IHRvIGNvdmVyCiAgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xNjE4OAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9tYWMvc3ZnL3RleHQvdGV4dC1ncmFkaWVudC1wb3NpdGlvbmluZy1leHBlY3RlZC5jaGVja3N1
bSBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9zdmcvdGV4dC90ZXh0LWdyYWRpZW50LXBvc2l0
aW9uaW5nLWV4cGVjdGVkLmNoZWNrc3VtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAuLjJjMTRkYmEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMv
c3ZnL3RleHQvdGV4dC1ncmFkaWVudC1wb3NpdGlvbmluZy1leHBlY3RlZC5jaGVja3N1bQpAQCAt
MCwwICsxIEBACis1YzBjNTE5NTBhZDNlODQ2YWVjOTczNGQyZTM2ZTc2NgpcIE5vIG5ld2xpbmUg
YXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9zdmcv
dGV4dC90ZXh0LWdyYWRpZW50LXBvc2l0aW9uaW5nLWV4cGVjdGVkLnBuZyBiL0xheW91dFRlc3Rz
L3BsYXRmb3JtL21hYy9zdmcvdGV4dC90ZXh0LWdyYWRpZW50LXBvc2l0aW9uaW5nLWV4cGVjdGVk
LnBuZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5mODgyMmZlCkJpbmFyeSBm
aWxlcyAvZGV2L251bGwgYW5kIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL3N2Zy90ZXh0L3Rl
eHQtZ3JhZGllbnQtcG9zaXRpb25pbmctZXhwZWN0ZWQucG5nIGRpZmZlcgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL3N2Zy90ZXh0L3RleHQtZ3JhZGllbnQtcG9zaXRpb25p
bmctZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL3N2Zy90ZXh0L3RleHQt
Z3JhZGllbnQtcG9zaXRpb25pbmctZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAuLmQ0MGYxNmMKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS9tYWMvc3ZnL3RleHQvdGV4dC1ncmFkaWVudC1wb3NpdGlvbmluZy1leHBlY3RlZC50eHQK
QEAgLTAsMCArMSwxOCBAQAorS1JlbmRlcmluZ1BhaW50U2VydmVyIHtpZD0iZ3JhZGllbnQiIFt0
eXBlPUxJTkVBUi1HUkFESUVOVF0gW3N0b3BzPVsoMC4wMCwjRkYwMDAwKSwgKDEuMDAsI0ZGMDAw
MCldXSBbYm91bmRpbmcgYm94IG1vZGU9MF0gW3RyYW5zZm9ybT17bT0oKDEuMjMsMC4wMCkoMC4w
MCwxLjI2KSkgdD0oLTM4Ljg3LC0zOS4yNil9XSBbc3RhcnQ9KDEyMC4wMywxNjEuMDcpXSBbZW5k
PSg0OTcuNTIsMTg0Ljc3KV19CitsYXllciBhdCAoMCwwKSBzaXplIDg1MHg2MDAKKyAgUmVuZGVy
VmlldyBhdCAoMCwwKSBzaXplIDgwMHg2MDAKK2xheWVyIGF0ICgwLDApIHNpemUgODUweDIwMAor
ICBSZW5kZXJTVkdSb290IHtzdmd9IGF0ICgwLDU0KSBzaXplIDgyNng1OQorICAgIFJlbmRlclNW
R0hpZGRlbkNvbnRhaW5lciB7ZGVmc30gYXQgKDAsMCkgc2l6ZSAweDAKKyAgICAgIFJlbmRlclNW
R0hpZGRlbkNvbnRhaW5lciB7bGluZWFyR3JhZGllbnR9IGF0ICgwLDApIHNpemUgMHgwCisgICAg
ICAgIFJlbmRlclNWR0dyYWRpZW50U3RvcCB7c3RvcH0gYXQgKDAsMCkgc2l6ZSAweDAKKyAgICAg
ICAgUmVuZGVyU1ZHR3JhZGllbnRTdG9wIHtzdG9wfSBhdCAoMCwwKSBzaXplIDB4MAorICAgIFJl
bmRlclNWR0NvbnRhaW5lciB7Z30gYXQgKDAsNTQpIHNpemUgODI2eDU5CisgICAgICBSZW5kZXJT
VkdUZXh0IHt0ZXh0fSBhdCAoMCwxMDApIHNpemUgODI2eDU5IGNvbnRhaW5zIDEgY2h1bmsocykK
KyAgICAgICAgUmVuZGVyU1ZHSW5saW5lVGV4dCB7I3RleHR9IGF0ICgwLC00Nikgc2l6ZSA4MjZ4
NTkKKyAgICAgICAgICBjaHVuayAxIHRleHQgcnVuIDEgYXQgKDAuMDAsMTAwLjAwKSBzdGFydE9m
ZnNldCAwIGVuZE9mZnNldCAzNyB3aWR0aCA4MjYuMDA6ICJUaGlzIHNob3VsZCBiZSBHUkVFTiBh
bmQgYXBwZWFyIG9uY2UuIgorICAgIFJlbmRlclNWR0NvbnRhaW5lciB7dXNlfSBhdCAoMCw1NCkg
c2l6ZSA4MjZ4NTkKKyAgICAgIFJlbmRlclNWR0NvbnRhaW5lciB7Z30gYXQgKDAsNTQpIHNpemUg
ODI2eDU5CisgICAgICAgIFJlbmRlclNWR1RleHQge3RleHR9IGF0ICgwLDEwMCkgc2l6ZSA4MjZ4
NTkgY29udGFpbnMgMSBjaHVuayhzKQorICAgICAgICAgIFJlbmRlclNWR0lubGluZVRleHQgeyN0
ZXh0fSBhdCAoMCwtNDYpIHNpemUgODI2eDU5CisgICAgICAgICAgICBjaHVuayAxIHRleHQgcnVu
IDEgYXQgKDAuMDAsMTAwLjAwKSBzdGFydE9mZnNldCAwIGVuZE9mZnNldCAzNyB3aWR0aCA4MjYu
MDA6ICJUaGlzIHNob3VsZCBiZSBHUkVFTiBhbmQgYXBwZWFyIG9uY2UuIgpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvc3ZnL3RleHQvdGV4dC1ncmFkaWVudC1wb3NpdGlvbmluZy5zdmcgYi9MYXlv
dXRUZXN0cy9zdmcvdGV4dC90ZXh0LWdyYWRpZW50LXBvc2l0aW9uaW5nLnN2ZwpuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42MDZlMDQwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvc3ZnL3RleHQvdGV4dC1ncmFkaWVudC1wb3NpdGlvbmluZy5zdmcKQEAgLTAsMCAr
MSwxMiBAQAorPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhs
aW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iODUwIiBoZWlnaHQ9IjIw
MCI+CisgIDxkZWZzPgorCSA8bGluZWFyR3JhZGllbnQgZ3JhZGllbnRUcmFuc2Zvcm09Im1hdHJp
eCgxLjIzMjY3LCAwLCAwLCAxLjI1NzE4LCAtMzguODcxNiwgLTM5LjI1NjUpIiBncmFkaWVudFVu
aXRzPSJ1c2VyU3BhY2VPblVzZSIgaWQ9ImdyYWRpZW50IiB4MT0iMTIwLjAyODkyIiB4Mj0iNDk3
LjUyMTU4IiB5MT0iMTYxLjA2NzQ2IiB5Mj0iMTg0Ljc2NTUiPgorICAgICAgICA8c3RvcCBvZmZz
ZXQ9IjAiIHN0b3AtY29sb3I9InJlZCIvPgorICAgICAgICA8c3RvcCBvZmZzZXQ9IjEiIHN0b3At
Y29sb3I9InJlZCIvPgorICAgICA8L2xpbmVhckdyYWRpZW50PgorICA8L2RlZnM+CisgIDxnIGZp
bGw9InVybCgjZ3JhZGllbnQpIj4KKyAgICA8dGV4dCBpZD0idGV4dCIgeT0iMTAwIiBmb250LXNp
emU9IjUwcHgiPlRoaXMgc2hvdWxkIGJlIEdSRUVOIGFuZCBhcHBlYXIgb25jZS48L3RleHQ+Cisg
IDwvZz4KKyAgPHVzZSB4bGluazpocmVmPSIjdGV4dCIgZmlsbD0iZ3JlZW4iLz4KKzwvc3ZnPgo=
</data>
<flag name="review"
          id="14958"
          type_id="1"
          status="+"
          setter="simon.fraser"
    />
          </attachment>
      

    </bug>

</bugzilla>