<?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>42279</bug_id>
          
          <creation_ts>2010-07-14 12:32:32 -0700</creation_ts>
          <short_desc>Certain text runs measure 1 pixel wider when measured as a whole than when measured piecewise</short_desc>
          <delta_ts>2010-08-10 22:27:28 -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>Text</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>mitz</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>abarth</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>251359</commentid>
    <comment_count>0</comment_count>
    <who name="">mitz</who>
    <bug_when>2010-07-14 12:32:32 -0700</bug_when>
    <thetext>&lt;rdar://problem/7759909&gt;

Due to the limited precision of the float type, with word- and run-rounding enabled, with certain fonts, measuring individual words in a text run and adding up the widths gives a different result from measuring the entire run.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>251430</commentid>
    <comment_count>1</comment_count>
      <attachid>61567</attachid>
    <who name="">mitz</who>
    <bug_when>2010-07-14 14:32:51 -0700</bug_when>
    <thetext>Created attachment 61567
Fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>251435</commentid>
    <comment_count>2</comment_count>
    <who name="">mitz</who>
    <bug_when>2010-07-14 14:42:07 -0700</bug_when>
    <thetext>Fixed in &lt;http://trac.webkit.org/projects/webkit/changeset/63357&gt;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>263010</commentid>
    <comment_count>3</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2010-08-10 22:27:28 -0700</bug_when>
    <thetext>This patch claims to have been landed.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>61567</attachid>
            <date>2010-07-14 14:32:51 -0700</date>
            <delta_ts>2010-07-14 14:35:31 -0700</delta_ts>
            <desc>Fix</desc>
            <filename>width-iterator_r2.diff</filename>
            <type>text/plain</type>
            <size>6721</size>
            <attacher>mitz</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA2MzM1NCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjQgQEAKKzIwMTAtMDctMTQgIERhbiBCZXJuc3RlaW4gIDxtaXR6QGFwcGxlLmNv
bT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICA8cmRh
cjovL3Byb2JsZW0vNzc1OTkwOT4gQ2VydGFpbiB0ZXh0IHJ1bnMgbWVhc3VyZSAxIHBpeGVsIHdp
ZGVyIHdoZW4gbWVhc3VyZWQgYXMgYSB3aG9sZSB0aGFuIHdoZW4gbWVhc3VyZWQgcGllY2V3aXNl
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MjI3OQor
CisgICAgICAgIE5vIHRlc3QgYmVjYXVzZSB0aGUgaXNzdWUgY2Fubm90IGJlIHJlcHJvZHVjZWQg
d2l0aCBzdGFuZGFyZCBmb250cy4KKworICAgICAgICBXb3JkLSBhbmQgcnVuLXJvdW5kaW5nIHdv
cmtzIGJ5IGFkdmFuY2luZyBhaGVhZCB0byB0aGUgbmVhcmVzdCBpbnRlZ3JhbCB3aWR0aC4gQXMg
dGhlIHRvdGFsCisgICAgICAgIHdpZHRoIGFjY3VtdWxhdGVkIGJlY29tZXMgbGFyZ2UsIHRoZSBm
bG9hdCB0eXBl4oCZcyBsb3cgcHJlY2lzaW9uIHJlc3VsdHMgaW4gYWNjdW11bGF0ZWQgcm91bmRp
bmcKKyAgICAgICAgZXJyb3IsIHNvbWV0aW1lcyBjcm9zc2luZyBhbiBpbnRlZ2VyLiBDb25zZXF1
ZW50bHksIHdvcmQtcm91bmRpbmcgbWFrZXMgZGlmZmVyZW50IGRlY2lzaW9ucyB3aGVuCisgICAg
ICAgIG1lYXN1cmluZyBhIG11bHRpLXdvcmQgcnVuIHRoYW4gd2hlbiBtZWFzdXJpbmcgaXRzIHdv
cmRzIGluZGl2aWR1YWxseS4gVG8gd29yayBhcm91bmQgdGhpcywKKyAgICAgICAgd29yZC0gYW5k
IHJ1bi1yb3VuZGluZyBhcmUgYXBwbGllZCBvbmx5IHRvIHRoZSB3aWR0aCBhY2N1bXVsYXRlZCBz
aW5jZSB0aGUgbGFzdCByb3VuZGluZworICAgICAgICBjaGFyYWN0ZXIuCisKKyAgICAgICAgKiBw
bGF0Zm9ybS9ncmFwaGljcy9XaWR0aEl0ZXJhdG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Oldp
ZHRoSXRlcmF0b3I6OmFkdmFuY2UpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL21hYy9D
b21wbGV4VGV4dENvbnRyb2xsZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q29tcGxleFRleHRD
b250cm9sbGVyOjphZGp1c3RHbHlwaHNBbmRBZHZhbmNlcyk6CisKIDIwMTAtMDctMTQgIEpvaG5u
eSBEaW5nICA8am5kQGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBBZGFtIEJh
cnRoLgpJbmRleDogV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9XaWR0aEl0ZXJhdG9yLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1dpZHRoSXRlcmF0b3IuY3Bw
CShyZXZpc2lvbiA2MzMzOCkKKysrIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvV2lkdGhJdGVy
YXRvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTg0LDcgKzg0LDEwIEBAIHZvaWQgV2lkdGhJdGVy
YXRvcjo6YWR2YW5jZShpbnQgb2Zmc2V0LCAKICAgICBib29sIHJ0bCA9IG1fcnVuLnJ0bCgpOwog
ICAgIGJvb2wgaGFzRXh0cmFTcGFjaW5nID0gKG1fZm9udC0+bGV0dGVyU3BhY2luZygpIHx8IG1f
Zm9udC0+d29yZFNwYWNpbmcoKSB8fCBtX3BhZGRpbmcpICYmICFtX3J1bi5zcGFjaW5nRGlzYWJs
ZWQoKTsKIAotICAgIGZsb2F0IHJ1bldpZHRoU29GYXIgPSBtX3J1bldpZHRoU29GYXI7CisgICAg
ZmxvYXQgd2lkdGhTaW5jZUxhc3RSb3VuZGluZyA9IG1fcnVuV2lkdGhTb0ZhcjsKKyAgICBtX3J1
bldpZHRoU29GYXIgPSBmbG9vcmYobV9ydW5XaWR0aFNvRmFyKTsKKyAgICB3aWR0aFNpbmNlTGFz
dFJvdW5kaW5nIC09IG1fcnVuV2lkdGhTb0ZhcjsKKwogICAgIGZsb2F0IGxhc3RSb3VuZGluZ1dp
ZHRoID0gbV9maW5hbFJvdW5kaW5nV2lkdGg7CiAgICAgRmxvYXRSZWN0IGJvdW5kczsKIApAQCAt
MTMxLDcgKzEzNCw3IEBAIHZvaWQgV2lkdGhJdGVyYXRvcjo6YWR2YW5jZShpbnQgb2Zmc2V0LCAK
ICAgICAgICAgZmxvYXQgd2lkdGg7CiAgICAgICAgIGlmIChjID09ICdcdCcgJiYgbV9ydW4uYWxs
b3dUYWJzKCkpIHsKICAgICAgICAgICAgIGZsb2F0IHRhYldpZHRoID0gbV9mb250LT50YWJXaWR0
aCgpOwotICAgICAgICAgICAgd2lkdGggPSB0YWJXaWR0aCAtIGZtb2RmKG1fcnVuLnhQb3MoKSAr
IHJ1bldpZHRoU29GYXIsIHRhYldpZHRoKTsKKyAgICAgICAgICAgIHdpZHRoID0gdGFiV2lkdGgg
LSBmbW9kZihtX3J1bi54UG9zKCkgKyBtX3J1bldpZHRoU29GYXIgKyB3aWR0aFNpbmNlTGFzdFJv
dW5kaW5nLCB0YWJXaWR0aCk7CiAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICB3aWR0aCA9
IGZvbnREYXRhLT53aWR0aEZvckdseXBoKGdseXBoKTsKIApAQCAtMjE2LDExICsyMTksMTMgQEAg
dm9pZCBXaWR0aEl0ZXJhdG9yOjphZHZhbmNlKGludCBvZmZzZXQsIAogICAgICAgICAvLyB3aWR0
aCBzbyB0aGF0IHRoZSB0b3RhbCBydW4gd2lkdGggd2lsbCBiZSBvbiBhbiBpbnRlZ2VyIGJvdW5k
YXJ5LgogICAgICAgICBpZiAoKG1fcnVuLmFwcGx5V29yZFJvdW5kaW5nKCkgJiYgY3VycmVudENo
YXJhY3RlciA8IG1fcnVuLmxlbmd0aCgpICYmIEZvbnQ6OmlzUm91bmRpbmdIYWNrQ2hhcmFjdGVy
KCpjcCkpCiAgICAgICAgICAgICAgICAgfHwgKG1fcnVuLmFwcGx5UnVuUm91bmRpbmcoKSAmJiBj
dXJyZW50Q2hhcmFjdGVyID49IG1fZW5kKSkgewotICAgICAgICAgICAgZmxvYXQgdG90YWxXaWR0
aCA9IHJ1bldpZHRoU29GYXIgKyB3aWR0aDsKLSAgICAgICAgICAgIHdpZHRoICs9IGNlaWxmKHRv
dGFsV2lkdGgpIC0gdG90YWxXaWR0aDsKLSAgICAgICAgfQotCi0gICAgICAgIHJ1bldpZHRoU29G
YXIgKz0gd2lkdGg7CisgICAgICAgICAgICBmbG9hdCB0b3RhbFdpZHRoID0gd2lkdGhTaW5jZUxh
c3RSb3VuZGluZyArIHdpZHRoOworICAgICAgICAgICAgd2lkdGhTaW5jZUxhc3RSb3VuZGluZyA9
IGNlaWxmKHRvdGFsV2lkdGgpOworICAgICAgICAgICAgd2lkdGggKz0gd2lkdGhTaW5jZUxhc3RS
b3VuZGluZyAtIHRvdGFsV2lkdGg7CisgICAgICAgICAgICBtX3J1bldpZHRoU29GYXIgKz0gd2lk
dGhTaW5jZUxhc3RSb3VuZGluZzsKKyAgICAgICAgICAgIHdpZHRoU2luY2VMYXN0Um91bmRpbmcg
PSAwOworICAgICAgICB9IGVsc2UKKyAgICAgICAgICAgIHdpZHRoU2luY2VMYXN0Um91bmRpbmcg
Kz0gd2lkdGg7CiAKICAgICAgICAgaWYgKGdseXBoQnVmZmVyKQogICAgICAgICAgICAgZ2x5cGhC
dWZmZXItPmFkZChnbHlwaCwgZm9udERhdGEsIChydGwgPyBvbGRXaWR0aCArIGxhc3RSb3VuZGlu
Z1dpZHRoIDogd2lkdGgpKTsKQEAgLTIzNSw3ICsyNDAsNyBAQCB2b2lkIFdpZHRoSXRlcmF0b3I6
OmFkdmFuY2UoaW50IG9mZnNldCwgCiAgICAgfQogCiAgICAgbV9jdXJyZW50Q2hhcmFjdGVyID0g
Y3VycmVudENoYXJhY3RlcjsKLSAgICBtX3J1bldpZHRoU29GYXIgPSBydW5XaWR0aFNvRmFyOwor
ICAgIG1fcnVuV2lkdGhTb0ZhciArPSB3aWR0aFNpbmNlTGFzdFJvdW5kaW5nOwogICAgIG1fZmlu
YWxSb3VuZGluZ1dpZHRoID0gbGFzdFJvdW5kaW5nV2lkdGg7CiB9CiAKSW5kZXg6IFdlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvbWFjL0NvbXBsZXhUZXh0Q29udHJvbGxlci5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9tYWMvQ29tcGxleFRleHRDb250cm9sbGVy
LmNwcAkocmV2aXNpb24gNjMzMzgpCisrKyBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL21hYy9D
b21wbGV4VGV4dENvbnRyb2xsZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00MzEsNiArNDMxLDcg
QEAgdm9pZCBDb21wbGV4VGV4dENvbnRyb2xsZXI6OmFkdmFuY2UodW5zaQogCiB2b2lkIENvbXBs
ZXhUZXh0Q29udHJvbGxlcjo6YWRqdXN0R2x5cGhzQW5kQWR2YW5jZXMoKQogeworICAgIENHRmxv
YXQgd2lkdGhTaW5jZUxhc3RSb3VuZGluZyA9IDA7CiAgICAgc2l6ZV90IHJ1bkNvdW50ID0gbV9j
b21wbGV4VGV4dFJ1bnMuc2l6ZSgpOwogICAgIGZvciAoc2l6ZV90IHIgPSAwOyByIDwgcnVuQ291
bnQ7ICsrcikgewogICAgICAgICBDb21wbGV4VGV4dFJ1biYgY29tcGxleFRleHRSdW4gPSAqbV9j
b21wbGV4VGV4dFJ1bnNbcl07CkBAIC00NzQsNyArNDc1LDcgQEAgdm9pZCBDb21wbGV4VGV4dENv
bnRyb2xsZXI6OmFkanVzdEdseXBocwogCiAgICAgICAgICAgICBpZiAoY2ggPT0gJ1x0JyAmJiBt
X3J1bi5hbGxvd1RhYnMoKSkgewogICAgICAgICAgICAgICAgIGZsb2F0IHRhYldpZHRoID0gbV9m
b250LnRhYldpZHRoKCk7Ci0gICAgICAgICAgICAgICAgYWR2YW5jZS53aWR0aCA9IHRhYldpZHRo
IC0gZm1vZGYobV9ydW4ueFBvcygpICsgbV90b3RhbFdpZHRoLCB0YWJXaWR0aCk7CisgICAgICAg
ICAgICAgICAgYWR2YW5jZS53aWR0aCA9IHRhYldpZHRoIC0gZm1vZGYobV9ydW4ueFBvcygpICsg
bV90b3RhbFdpZHRoICsgd2lkdGhTaW5jZUxhc3RSb3VuZGluZywgdGFiV2lkdGgpOwogICAgICAg
ICAgICAgfSBlbHNlIGlmIChjaCA9PSB6ZXJvV2lkdGhTcGFjZSB8fCBGb250Ojp0cmVhdEFzWmVy
b1dpZHRoU3BhY2UoY2gpICYmICF0cmVhdEFzU3BhY2UpIHsKICAgICAgICAgICAgICAgICBhZHZh
bmNlLndpZHRoID0gMDsKICAgICAgICAgICAgICAgICBnbHlwaCA9IGZvbnREYXRhLT5zcGFjZUds
eXBoKCk7CkBAIC01MzIsMjEgKzUzMywyMyBAQCB2b2lkIENvbXBsZXhUZXh0Q29udHJvbGxlcjo6
YWRqdXN0R2x5cGhzCiAgICAgICAgICAgICAvLyBDaGVjayB0byBzZWUgaWYgdGhlIG5leHQgY2hh
cmFjdGVyIGlzIGEgInJvdW5kaW5nIGhhY2sgY2hhcmFjdGVyIiwgaWYgc28sIGFkanVzdCB0aGUK
ICAgICAgICAgICAgIC8vIHdpZHRoIHNvIHRoYXQgdGhlIHRvdGFsIHJ1biB3aWR0aCB3aWxsIGJl
IG9uIGFuIGludGVnZXIgYm91bmRhcnkuCiAgICAgICAgICAgICBpZiAobV9ydW4uYXBwbHlXb3Jk
Um91bmRpbmcoKSAmJiAhbGFzdEdseXBoICYmIEZvbnQ6OmlzUm91bmRpbmdIYWNrQ2hhcmFjdGVy
KG5leHRDaCkgfHwgbV9ydW4uYXBwbHlSdW5Sb3VuZGluZygpICYmIGxhc3RHbHlwaCkgewotICAg
ICAgICAgICAgICAgIENHRmxvYXQgdG90YWxXaWR0aCA9IG1fdG90YWxXaWR0aCArIGFkdmFuY2Uu
d2lkdGg7Ci0gICAgICAgICAgICAgICAgQ0dGbG9hdCBleHRyYVdpZHRoID0gY2VpbENHRmxvYXQo
dG90YWxXaWR0aCkgLSB0b3RhbFdpZHRoOworICAgICAgICAgICAgICAgIENHRmxvYXQgdG90YWxX
aWR0aCA9IHdpZHRoU2luY2VMYXN0Um91bmRpbmcgKyBhZHZhbmNlLndpZHRoOworICAgICAgICAg
ICAgICAgIHdpZHRoU2luY2VMYXN0Um91bmRpbmcgPSBjZWlsQ0dGbG9hdCh0b3RhbFdpZHRoKTsK
KyAgICAgICAgICAgICAgICBDR0Zsb2F0IGV4dHJhV2lkdGggPSB3aWR0aFNpbmNlTGFzdFJvdW5k
aW5nIC0gdG90YWxXaWR0aDsKICAgICAgICAgICAgICAgICBpZiAobV9ydW4ubHRyKCkpCiAgICAg
ICAgICAgICAgICAgICAgIGFkdmFuY2Uud2lkdGggKz0gZXh0cmFXaWR0aDsKICAgICAgICAgICAg
ICAgICBlbHNlIHsKLSAgICAgICAgICAgICAgICAgICAgbV90b3RhbFdpZHRoICs9IGV4dHJhV2lk
dGg7CiAgICAgICAgICAgICAgICAgICAgIGlmIChtX2xhc3RSb3VuZGluZ0dseXBoKQogICAgICAg
ICAgICAgICAgICAgICAgICAgbV9hZGp1c3RlZEFkdmFuY2VzW21fbGFzdFJvdW5kaW5nR2x5cGgg
LSAxXS53aWR0aCArPSBleHRyYVdpZHRoOwogICAgICAgICAgICAgICAgICAgICBlbHNlCiAgICAg
ICAgICAgICAgICAgICAgICAgICBtX2ZpbmFsUm91bmRpbmdXaWR0aCA9IGV4dHJhV2lkdGg7CiAg
ICAgICAgICAgICAgICAgICAgIG1fbGFzdFJvdW5kaW5nR2x5cGggPSBtX2FkanVzdGVkQWR2YW5j
ZXMuc2l6ZSgpICsgMTsKICAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICB9CisgICAgICAg
ICAgICAgICAgbV90b3RhbFdpZHRoICs9IHdpZHRoU2luY2VMYXN0Um91bmRpbmc7CisgICAgICAg
ICAgICAgICAgd2lkdGhTaW5jZUxhc3RSb3VuZGluZyA9IDA7CisgICAgICAgICAgICB9IGVsc2UK
KyAgICAgICAgICAgICAgICB3aWR0aFNpbmNlTGFzdFJvdW5kaW5nICs9IGFkdmFuY2Uud2lkdGg7
CiAKLSAgICAgICAgICAgIG1fdG90YWxXaWR0aCArPSBhZHZhbmNlLndpZHRoOwogICAgICAgICAg
ICAgYWR2YW5jZS5oZWlnaHQgKj0gLTE7CiAgICAgICAgICAgICBtX2FkanVzdGVkQWR2YW5jZXMu
YXBwZW5kKGFkdmFuY2UpOwogICAgICAgICAgICAgbV9hZGp1c3RlZEdseXBocy5hcHBlbmQoZ2x5
cGgpOwpAQCAtNTY1LDYgKzU2OCw3IEBAIHZvaWQgQ29tcGxleFRleHRDb250cm9sbGVyOjphZGp1
c3RHbHlwaHMKICAgICAgICAgaWYgKCFpc01vbm90b25pYykKICAgICAgICAgICAgIGNvbXBsZXhU
ZXh0UnVuLnNldElzTm9uTW9ub3RvbmljKCk7CiAgICAgfQorICAgIG1fdG90YWxXaWR0aCArPSB3
aWR0aFNpbmNlTGFzdFJvdW5kaW5nOwogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCg==
</data>
<flag name="review"
          id="49614"
          type_id="1"
          status="+"
          setter="simon.fraser"
    />
          </attachment>
      

    </bug>

</bugzilla>