<?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>97069</bug_id>
          
          <creation_ts>2012-09-18 22:32:50 -0700</creation_ts>
          <short_desc>[Chromium] HarfBuzzShaper should take into account combining characters</short_desc>
          <delta_ts>2012-09-19 15:28:47 -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>Platform</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Kenichi Ishibashi">bashi</reporter>
          <assigned_to name="Kenichi Ishibashi">bashi</assigned_to>
          <cc>tony</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>723273</commentid>
    <comment_count>0</comment_count>
    <who name="Kenichi Ishibashi">bashi</who>
    <bug_when>2012-09-18 22:32:50 -0700</bug_when>
    <thetext>Some fonts don&apos;t have individual glyphs for marks, but have composite glyphs. For example, A font can have a glyph for U+00e9 (e with acute) even if it doesn&apos;t have a glyph for U+0301(combining acute accent). We should take into account this fast when we divide a text run into HarfBuzzRuns. If the font also doesn&apos;t have composite glyphs, we should try fallback fonts for mark characters.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>723276</commentid>
    <comment_count>1</comment_count>
      <attachid>164660</attachid>
    <who name="Kenichi Ishibashi">bashi</who>
    <bug_when>2012-09-18 22:37:54 -0700</bug_when>
    <thetext>Created attachment 164660
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>723281</commentid>
    <comment_count>2</comment_count>
      <attachid>164661</attachid>
    <who name="Kenichi Ishibashi">bashi</who>
    <bug_when>2012-09-18 22:41:47 -0700</bug_when>
    <thetext>Created attachment 164661
Fix typo</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>723282</commentid>
    <comment_count>3</comment_count>
    <who name="Kenichi Ishibashi">bashi</who>
    <bug_when>2012-09-18 22:42:15 -0700</bug_when>
    <thetext>Hi tony,

Could you take a look?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>723635</commentid>
    <comment_count>4</comment_count>
      <attachid>164661</attachid>
    <who name="Tony Chang">tony</who>
    <bug_when>2012-09-19 10:18:26 -0700</bug_when>
    <thetext>Comment on attachment 164661
Fix typo

OK</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>723876</commentid>
    <comment_count>5</comment_count>
      <attachid>164661</attachid>
    <who name="Kenichi Ishibashi">bashi</who>
    <bug_when>2012-09-19 15:21:23 -0700</bug_when>
    <thetext>Comment on attachment 164661
Fix typo

Thank you!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>723883</commentid>
    <comment_count>6</comment_count>
      <attachid>164661</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-09-19 15:28:44 -0700</bug_when>
    <thetext>Comment on attachment 164661
Fix typo

Clearing flags on attachment: 164661

Committed r129050: &lt;http://trac.webkit.org/changeset/129050&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>723884</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-09-19 15:28:47 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>164660</attachid>
            <date>2012-09-18 22:37:54 -0700</date>
            <delta_ts>2012-09-18 22:41:43 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-97069-20120919143720.patch</filename>
            <type>text/plain</type>
            <size>5584</size>
            <attacher name="Kenichi Ishibashi">bashi</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI4OTY0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjFmMjJmYjE3ODY2ZDEw
Nzg5MWI2Yzk4MDJjM2U5NGU2N2MyNGJlYS4uYzViMjUwNDYwMzE0ZTYwNzVlMWQ2OTJiYWZiOTNh
YmYwMTQ5YTM1NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDEyLTA5LTE4ICBLZW5p
Y2hpIElzaGliYXNoaSAgPGJhc2hpQGNocm9taXVtLm9yZz4KKworICAgICAgICBbQ2hyb21pdW1d
IEhhcmZCdXp6U2hhcGVyIHNob3VsZCB0YWtlIGludG8gYWNjb3VudCBjb21iaW5pbmcgY2hhcmFj
dGVycworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTcw
NjkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXaGVu
IGRpdmlkaW5nIGEgdGV4dCBydW4gaW50byBIYXJmQnV6elJ1bnMsIHRyeSB0byBmaW5kIHN1aXRh
YmxlIFNpbXBsZUZvbnREYXRhIGZvcgorICAgICAgICBjb21iaW5pbmcgY2hhcmFjdGVyIHNlcXVl
bmNlIGlmIHRoZXJlIG9uZSBvciBtb3JlIG1hcmsgY2hhcmFjdGVycyBhcmUgZm9sbG93ZWQuCisg
ICAgICAgIElmIHRoZXJlIGlzIG5vIGNvbWJpbmVkIGdseXBocyBpbiB0aGUgZm9udCwgdXNlIGZh
bGxiYWNrIGZvbnQgZm9ybSBtYXJrIGNoYXJhY3RlcnMuCisKKyAgICAgICAgTm8gbmV3IHRlc3Rz
LgorICAgICAgICBJbiBwbGF0Zm9ybS9jaHJvbWl1bS1saW51eC9mYXN0L3RleHQvaW50ZXJuYXRp
b25hbC9jb21wbGV4LWpvaW5pbmctdXNpbmctZ3Bvcy5odG1sLAorICAgICAgICBVKzA5NDcgKGRl
dmFuYWdhcmkgdm93ZWwgc2lnbiBlKSBzaG91bGQgYmUgZGlzcGxheWVkLgorICAgICAgICBJbiBm
YXN0L3RleHQvd2lkZS16ZXJvLXdpZHRoLXNwYWNlLmh0bWwsICZlYWN1dGU7IGFuZCBlJiMwMzAx
OyBzaG91bGQgbG9vayBpZGVudGljYWwuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9o
YXJmYnV6ei9uZy9IYXJmQnV6elNoYXBlci5jcHA6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAg
ICAgKFdlYkNvcmU6OmZvbnREYXRhRm9yQ29tYmluaW5nQ2hhcmFjdGVyU2VxdWVuY2UpOiBBZGRl
ZC4KKyAgICAgICAgKFdlYkNvcmU6OkhhcmZCdXp6U2hhcGVyOjpjb2xsZWN0SGFyZkJ1enpSdW5z
KTogU2VlIGFib3ZlIGRlc2NyaXB0aW9uLgorCiAyMDEyLTA5LTE4ICBFcmljIENhcmxzb24gIDxl
cmljLmNhcmxzb25AYXBwbGUuY29tPgogCiAgICAgICAgIENoZWNrIHNldHRpbmdzIGJlZm9yZSBy
ZWdpc3RlcmluZyBBVkZvdW5kYXRpb24gbWVkaWEgZW5naW5lLgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvaGFyZmJ1enovbmcvSGFyZkJ1enpTaGFwZXIuY3Bw
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvaGFyZmJ1enovbmcvSGFyZkJ1enpT
aGFwZXIuY3BwCmluZGV4IDRlMzI3ZmNhYTZmMGEyYjQ4Nzc4Y2QyNjQ2MzM2YzIwY2Y3N2NmY2Uu
LjMyMWI0YmI4NDI3ZTcwZjg3MjU3NTVkOTVhOWU4ZDY2MTM1ZTQ4N2UgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2hhcmZidXp6L25nL0hhcmZCdXp6U2hhcGVy
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9oYXJmYnV6ei9uZy9I
YXJmQnV6elNoYXBlci5jcHAKQEAgLTIyOCw4ICsyMjgsMjMgQEAgRmxvYXRQb2ludCBIYXJmQnV6
elNoYXBlcjo6YWRqdXN0U3RhcnRQb2ludChjb25zdCBGbG9hdFBvaW50JiBwb2ludCkKICAgICBy
ZXR1cm4gcG9pbnQgKyBtX3N0YXJ0T2Zmc2V0OwogfQogCitzdGF0aWMgY29uc3QgU2ltcGxlRm9u
dERhdGEqIGZvbnREYXRhRm9yQ29tYmluaW5nQ2hhcmFjdGVyU2VxdWVuY2UoY29uc3QgRm9udCog
Zm9udCwgY29uc3QgVUNoYXIqIGNoYXJhY3RlcnMsIHNpemVfdCBsZW5ndGgpCit7CisgICAgVUVy
cm9yQ29kZSBlcnJvciA9IFVfWkVST19FUlJPUjsKKyAgICBWZWN0b3I8VUNoYXIsIDQ+IG5vcm1h
bGl6ZWRDaGFyYWN0ZXJzKGxlbmd0aCk7CisgICAgaW50MzJfdCBub3JtYWxpemVkTGVuZ3RoID0g
dW5vcm1fbm9ybWFsaXplKGNoYXJhY3RlcnMsIGxlbmd0aCwgVU5PUk1fTkZDLCBVTk9STV9VTklD
T0RFXzNfMiwgJm5vcm1hbGl6ZWRDaGFyYWN0ZXJzWzBdLCBsZW5ndGgsICZlcnJvcik7CisgICAg
Ly8gU2hvdWxkIGZhbGxiYWNrIGlmIHdlIGhhdmUgYW4gZXJyb3Igb3Igbm8gY29tcG9zaXRpb24g
b2NjdXJyZWQuCisgICAgaWYgKFVfRkFJTFVSRShlcnJvcikgfHwgKHN0YXRpY19jYXN0PHNpemVf
dD4obm9ybWFsaXplZExlbmd0aCkgPT0gbGVuZ3RoKSkKKyAgICAgICAgcmV0dXJuIDA7CisgICAg
VUNoYXIzMiBub3JtYWxpemVkQ2hhcmFjdGVyOworICAgIHNpemVfdCBpbmRleCA9IDA7CisgICAg
VTE2X05FWFQoJm5vcm1hbGl6ZWRDaGFyYWN0ZXJzWzBdLCBpbmRleCwgc3RhdGljX2Nhc3Q8c2l6
ZV90Pihub3JtYWxpemVkTGVuZ3RoKSwgbm9ybWFsaXplZENoYXJhY3Rlcik7CisgICAgcmV0dXJu
IGZvbnQtPmdseXBoRGF0YUZvckNoYXJhY3Rlcihub3JtYWxpemVkQ2hhcmFjdGVyLCBmYWxzZSku
Zm9udERhdGE7Cit9CisKIGJvb2wgSGFyZkJ1enpTaGFwZXI6OmNvbGxlY3RIYXJmQnV6elJ1bnMo
KQogeworICAgIGNvbnN0IFVDaGFyKiBub3JtYWxpemVkQnVmZmVyRW5kID0gbV9ub3JtYWxpemVk
QnVmZmVyLmdldCgpICsgbV9ub3JtYWxpemVkQnVmZmVyTGVuZ3RoOwogICAgIFN1cnJvZ2F0ZVBh
aXJBd2FyZVRleHRJdGVyYXRvciBpdGVyYXRvcihtX25vcm1hbGl6ZWRCdWZmZXIuZ2V0KCksIDAs
IG1fbm9ybWFsaXplZEJ1ZmZlckxlbmd0aCwgbV9ub3JtYWxpemVkQnVmZmVyTGVuZ3RoKTsKICAg
ICBVQ2hhcjMyIGNoYXJhY3RlcjsKICAgICB1bnNpZ25lZCBjbHVzdGVyTGVuZ3RoID0gMDsKQEAg
LTI0NCwxOCArMjU5LDQwIEBAIGJvb2wgSGFyZkJ1enpTaGFwZXI6OmNvbGxlY3RIYXJmQnV6elJ1
bnMoKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKICAgICBkbyB7CisgICAgICAgIGNvbnN0IFVD
aGFyKiBjdXJyZW50Q2hhcmFjdGVyUG9zaXRpb24gPSBpdGVyYXRvci5jaGFyYWN0ZXJzKCk7CiAg
ICAgICAgIGNvbnN0IFNpbXBsZUZvbnREYXRhKiBjdXJyZW50Rm9udERhdGEgPSBuZXh0Rm9udERh
dGE7CiAgICAgICAgIFVTY3JpcHRDb2RlIGN1cnJlbnRTY3JpcHQgPSBuZXh0U2NyaXB0OwogCiAg
ICAgICAgIGZvciAoaXRlcmF0b3IuYWR2YW5jZShjbHVzdGVyTGVuZ3RoKTsgaXRlcmF0b3IuY29u
c3VtZShjaGFyYWN0ZXIsIGNsdXN0ZXJMZW5ndGgpOyBpdGVyYXRvci5hZHZhbmNlKGNsdXN0ZXJM
ZW5ndGgpKSB7Ci0gICAgICAgICAgICBuZXh0Rm9udERhdGEgPSBtX2ZvbnQtPmdseXBoRGF0YUZv
ckNoYXJhY3RlcihjaGFyYWN0ZXIsIGZhbHNlKS5mb250RGF0YTsKLSAgICAgICAgICAgIGlmIChu
ZXh0Rm9udERhdGEgIT0gY3VycmVudEZvbnREYXRhKQotICAgICAgICAgICAgICAgIGJyZWFrOwor
ICAgICAgICAgICAgaWYgKEZvbnQ6OnRyZWF0QXNaZXJvV2lkdGhTcGFjZShjaGFyYWN0ZXIpKQor
ICAgICAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICAgICAgaWYgKFVfR0VUX0dDX01BU0so
Y2hhcmFjdGVyKSAmIFVfR0NfTV9NQVNLKSB7CisgICAgICAgICAgICAgICAgaW50IG1hcmtMZW5n
dGggPSBjbHVzdGVyTGVuZ3RoOworICAgICAgICAgICAgICAgIGNvbnN0IFVDaGFyKiBtYXJrQ2hh
cmFjdGVyc0VuZCA9IGl0ZXJhdG9yLmNoYXJhY3RlcnMoKSArIGNsdXN0ZXJMZW5ndGg7CisgICAg
ICAgICAgICAgICAgd2hpbGUgKG1hcmtDaGFyYWN0ZXJzRW5kIDwgbm9ybWFsaXplZEJ1ZmZlckVu
ZCkgeworICAgICAgICAgICAgICAgICAgICBVQ2hhcjMyIG5leHRDaGFyYWN0ZXI7CisgICAgICAg
ICAgICAgICAgICAgIGludCBuZXh0Q2hhcmFjdGVyTGVuZ3RoID0gMDsKKyAgICAgICAgICAgICAg
ICAgICAgVTE2X05FWFQobWFya0NoYXJhY3RlcnNFbmQsIG5leHRDaGFyYWN0ZXJMZW5ndGgsIG5v
cm1hbGl6ZWRCdWZmZXJFbmQgLSBtYXJrQ2hhcmFjdGVyc0VuZCwgbmV4dENoYXJhY3Rlcik7Cisg
ICAgICAgICAgICAgICAgICAgIGlmICghKFVfR0VUX0dDX01BU0sobmV4dENoYXJhY3RlcikgJiBV
X0dDX01fTUFTSykpCisgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAg
ICAgICAgICAgbWFya0xlbmd0aCArPSBuZXh0Q2hhcmFjdGVyTGVuZ3RoOworICAgICAgICAgICAg
ICAgICAgICBtYXJrQ2hhcmFjdGVyc0VuZCArPSBuZXh0Q2hhcmFjdGVyTGVuZ3RoOworICAgICAg
ICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBuZXh0Rm9udERhdGEgPSBmb250RGF0YUZvckNv
bWJpbmluZ0NoYXJhY3RlclNlcXVlbmNlKG1fZm9udCwgY3VycmVudENoYXJhY3RlclBvc2l0aW9u
LCBtYXJrQ2hhcmFjdGVyc0VuZCAtIGN1cnJlbnRDaGFyYWN0ZXJQb3NpdGlvbik7CisgICAgICAg
ICAgICAgICAgaWYgKG5leHRGb250RGF0YSkKKyAgICAgICAgICAgICAgICAgICAgY2x1c3Rlckxl
bmd0aCA9IG1hcmtMZW5ndGg7CisgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAg
ICAgICBuZXh0Rm9udERhdGEgPSBtX2ZvbnQtPmdseXBoRGF0YUZvckNoYXJhY3RlcihjaGFyYWN0
ZXIsIGZhbHNlKS5mb250RGF0YTsKKyAgICAgICAgICAgIH0gZWxzZQorICAgICAgICAgICAgICAg
IG5leHRGb250RGF0YSA9IG1fZm9udC0+Z2x5cGhEYXRhRm9yQ2hhcmFjdGVyKGNoYXJhY3Rlciwg
ZmFsc2UpLmZvbnREYXRhOworCiAgICAgICAgICAgICBuZXh0U2NyaXB0ID0gdXNjcmlwdF9nZXRT
Y3JpcHQoY2hhcmFjdGVyLCAmZXJyb3JDb2RlKTsKICAgICAgICAgICAgIGlmIChVX0ZBSUxVUkUo
ZXJyb3JDb2RlKSkKICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgICAgICBp
ZiAoKGN1cnJlbnRTY3JpcHQgIT0gbmV4dFNjcmlwdCkgJiYgKGN1cnJlbnRTY3JpcHQgIT0gVVND
UklQVF9JTkhFUklURUQpKQorICAgICAgICAgICAgaWYgKChuZXh0Rm9udERhdGEgIT0gY3VycmVu
dEZvbnREYXRhKSB8fCAoKGN1cnJlbnRTY3JpcHQgIT0gbmV4dFNjcmlwdCkgJiYgKG5leHRTY3Jp
cHQgIT0gVVNDUklQVF9JTkhFUklURUQpKSkKICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAg
ICAgICAgIGlmIChuZXh0U2NyaXB0ID09IFVTQ1JJUFRfSU5IRVJJVEVEKQorICAgICAgICAgICAg
ICAgIG5leHRTY3JpcHQgPSBjdXJyZW50U2NyaXB0OwogICAgICAgICB9CiAgICAgICAgIHVuc2ln
bmVkIG51bUNoYXJhY3RlcnNPZkN1cnJlbnRSdW4gPSBpdGVyYXRvci5jdXJyZW50Q2hhcmFjdGVy
KCkgLSBzdGFydEluZGV4T2ZDdXJyZW50UnVuOwogICAgICAgICBtX2hhcmZidXp6UnVucy5hcHBl
bmQoSGFyZkJ1enpSdW46OmNyZWF0ZShjdXJyZW50Rm9udERhdGEsIHN0YXJ0SW5kZXhPZkN1cnJl
bnRSdW4sIG51bUNoYXJhY3RlcnNPZkN1cnJlbnRSdW4sIG1fcnVuLmRpcmVjdGlvbigpKSk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>164661</attachid>
            <date>2012-09-18 22:41:47 -0700</date>
            <delta_ts>2012-09-19 15:28:44 -0700</delta_ts>
            <desc>Fix typo</desc>
            <filename>bug-97069-20120919144113.patch</filename>
            <type>text/plain</type>
            <size>5587</size>
            <attacher name="Kenichi Ishibashi">bashi</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI4OTY0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjFmMjJmYjE3ODY2ZDEw
Nzg5MWI2Yzk4MDJjM2U5NGU2N2MyNGJlYS4uZjI5NjNhZTQ2YmI5MThhYjYwMzUwOTFmNTFiMTk0
ODQzNTE5ZmVjMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDEyLTA5LTE4ICBLZW5p
Y2hpIElzaGliYXNoaSAgPGJhc2hpQGNocm9taXVtLm9yZz4KKworICAgICAgICBbQ2hyb21pdW1d
IEhhcmZCdXp6U2hhcGVyIHNob3VsZCB0YWtlIGludG8gYWNjb3VudCBjb21iaW5pbmcgY2hhcmFj
dGVycworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTcw
NjkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXaGVu
IGRpdmlkaW5nIGEgdGV4dCBydW4gaW50byBIYXJmQnV6elJ1bnMsIHRyeSB0byBmaW5kIHN1aXRh
YmxlIFNpbXBsZUZvbnREYXRhIGZvcgorICAgICAgICBjb21iaW5pbmcgY2hhcmFjdGVyIHNlcXVl
bmNlIGlmIHRoZXJlIGFyZSBvbmUgb3IgbW9yZSBtYXJrIGNoYXJhY3RlcnMgYXJlIGZvbGxvd2Vk
LgorICAgICAgICBJZiB0aGVyZSBpcyBubyBjb21iaW5lZCBnbHlwaHMgaW4gdGhlIGZvbnQsIHVz
ZSBmYWxsYmFjayBmb250IGZvciBtYXJrIGNoYXJhY3RlcnMuCisKKyAgICAgICAgTm8gbmV3IHRl
c3RzLgorICAgICAgICBJbiBwbGF0Zm9ybS9jaHJvbWl1bS1saW51eC9mYXN0L3RleHQvaW50ZXJu
YXRpb25hbC9jb21wbGV4LWpvaW5pbmctdXNpbmctZ3Bvcy5odG1sLAorICAgICAgICBVKzA5NDcg
KGRldmFuYWdhcmkgdm93ZWwgc2lnbiBlKSBzaG91bGQgYmUgZGlzcGxheWVkLgorICAgICAgICBJ
biBmYXN0L3RleHQvd2lkZS16ZXJvLXdpZHRoLXNwYWNlLmh0bWwsICZlYWN1dGU7IGFuZCBlJiMw
MzAxOyBzaG91bGQgbG9vayBpZGVudGljYWwuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9oYXJmYnV6ei9uZy9IYXJmQnV6elNoYXBlci5jcHA6CisgICAgICAgIChXZWJDb3JlKToKKyAg
ICAgICAgKFdlYkNvcmU6OmZvbnREYXRhRm9yQ29tYmluaW5nQ2hhcmFjdGVyU2VxdWVuY2UpOiBB
ZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkhhcmZCdXp6U2hhcGVyOjpjb2xsZWN0SGFyZkJ1enpS
dW5zKTogU2VlIGFib3ZlIGRlc2NyaXB0aW9uLgorCiAyMDEyLTA5LTE4ICBFcmljIENhcmxzb24g
IDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgogCiAgICAgICAgIENoZWNrIHNldHRpbmdzIGJlZm9y
ZSByZWdpc3RlcmluZyBBVkZvdW5kYXRpb24gbWVkaWEgZW5naW5lLgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvaGFyZmJ1enovbmcvSGFyZkJ1enpTaGFwZXIu
Y3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvaGFyZmJ1enovbmcvSGFyZkJ1
enpTaGFwZXIuY3BwCmluZGV4IDRlMzI3ZmNhYTZmMGEyYjQ4Nzc4Y2QyNjQ2MzM2YzIwY2Y3N2Nm
Y2UuLjMyMWI0YmI4NDI3ZTcwZjg3MjU3NTVkOTVhOWU4ZDY2MTM1ZTQ4N2UgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2hhcmZidXp6L25nL0hhcmZCdXp6U2hh
cGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9oYXJmYnV6ei9u
Zy9IYXJmQnV6elNoYXBlci5jcHAKQEAgLTIyOCw4ICsyMjgsMjMgQEAgRmxvYXRQb2ludCBIYXJm
QnV6elNoYXBlcjo6YWRqdXN0U3RhcnRQb2ludChjb25zdCBGbG9hdFBvaW50JiBwb2ludCkKICAg
ICByZXR1cm4gcG9pbnQgKyBtX3N0YXJ0T2Zmc2V0OwogfQogCitzdGF0aWMgY29uc3QgU2ltcGxl
Rm9udERhdGEqIGZvbnREYXRhRm9yQ29tYmluaW5nQ2hhcmFjdGVyU2VxdWVuY2UoY29uc3QgRm9u
dCogZm9udCwgY29uc3QgVUNoYXIqIGNoYXJhY3RlcnMsIHNpemVfdCBsZW5ndGgpCit7CisgICAg
VUVycm9yQ29kZSBlcnJvciA9IFVfWkVST19FUlJPUjsKKyAgICBWZWN0b3I8VUNoYXIsIDQ+IG5v
cm1hbGl6ZWRDaGFyYWN0ZXJzKGxlbmd0aCk7CisgICAgaW50MzJfdCBub3JtYWxpemVkTGVuZ3Ro
ID0gdW5vcm1fbm9ybWFsaXplKGNoYXJhY3RlcnMsIGxlbmd0aCwgVU5PUk1fTkZDLCBVTk9STV9V
TklDT0RFXzNfMiwgJm5vcm1hbGl6ZWRDaGFyYWN0ZXJzWzBdLCBsZW5ndGgsICZlcnJvcik7Cisg
ICAgLy8gU2hvdWxkIGZhbGxiYWNrIGlmIHdlIGhhdmUgYW4gZXJyb3Igb3Igbm8gY29tcG9zaXRp
b24gb2NjdXJyZWQuCisgICAgaWYgKFVfRkFJTFVSRShlcnJvcikgfHwgKHN0YXRpY19jYXN0PHNp
emVfdD4obm9ybWFsaXplZExlbmd0aCkgPT0gbGVuZ3RoKSkKKyAgICAgICAgcmV0dXJuIDA7Cisg
ICAgVUNoYXIzMiBub3JtYWxpemVkQ2hhcmFjdGVyOworICAgIHNpemVfdCBpbmRleCA9IDA7Cisg
ICAgVTE2X05FWFQoJm5vcm1hbGl6ZWRDaGFyYWN0ZXJzWzBdLCBpbmRleCwgc3RhdGljX2Nhc3Q8
c2l6ZV90Pihub3JtYWxpemVkTGVuZ3RoKSwgbm9ybWFsaXplZENoYXJhY3Rlcik7CisgICAgcmV0
dXJuIGZvbnQtPmdseXBoRGF0YUZvckNoYXJhY3Rlcihub3JtYWxpemVkQ2hhcmFjdGVyLCBmYWxz
ZSkuZm9udERhdGE7Cit9CisKIGJvb2wgSGFyZkJ1enpTaGFwZXI6OmNvbGxlY3RIYXJmQnV6elJ1
bnMoKQogeworICAgIGNvbnN0IFVDaGFyKiBub3JtYWxpemVkQnVmZmVyRW5kID0gbV9ub3JtYWxp
emVkQnVmZmVyLmdldCgpICsgbV9ub3JtYWxpemVkQnVmZmVyTGVuZ3RoOwogICAgIFN1cnJvZ2F0
ZVBhaXJBd2FyZVRleHRJdGVyYXRvciBpdGVyYXRvcihtX25vcm1hbGl6ZWRCdWZmZXIuZ2V0KCks
IDAsIG1fbm9ybWFsaXplZEJ1ZmZlckxlbmd0aCwgbV9ub3JtYWxpemVkQnVmZmVyTGVuZ3RoKTsK
ICAgICBVQ2hhcjMyIGNoYXJhY3RlcjsKICAgICB1bnNpZ25lZCBjbHVzdGVyTGVuZ3RoID0gMDsK
QEAgLTI0NCwxOCArMjU5LDQwIEBAIGJvb2wgSGFyZkJ1enpTaGFwZXI6OmNvbGxlY3RIYXJmQnV6
elJ1bnMoKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKICAgICBkbyB7CisgICAgICAgIGNvbnN0
IFVDaGFyKiBjdXJyZW50Q2hhcmFjdGVyUG9zaXRpb24gPSBpdGVyYXRvci5jaGFyYWN0ZXJzKCk7
CiAgICAgICAgIGNvbnN0IFNpbXBsZUZvbnREYXRhKiBjdXJyZW50Rm9udERhdGEgPSBuZXh0Rm9u
dERhdGE7CiAgICAgICAgIFVTY3JpcHRDb2RlIGN1cnJlbnRTY3JpcHQgPSBuZXh0U2NyaXB0Owog
CiAgICAgICAgIGZvciAoaXRlcmF0b3IuYWR2YW5jZShjbHVzdGVyTGVuZ3RoKTsgaXRlcmF0b3Iu
Y29uc3VtZShjaGFyYWN0ZXIsIGNsdXN0ZXJMZW5ndGgpOyBpdGVyYXRvci5hZHZhbmNlKGNsdXN0
ZXJMZW5ndGgpKSB7Ci0gICAgICAgICAgICBuZXh0Rm9udERhdGEgPSBtX2ZvbnQtPmdseXBoRGF0
YUZvckNoYXJhY3RlcihjaGFyYWN0ZXIsIGZhbHNlKS5mb250RGF0YTsKLSAgICAgICAgICAgIGlm
IChuZXh0Rm9udERhdGEgIT0gY3VycmVudEZvbnREYXRhKQotICAgICAgICAgICAgICAgIGJyZWFr
OworICAgICAgICAgICAgaWYgKEZvbnQ6OnRyZWF0QXNaZXJvV2lkdGhTcGFjZShjaGFyYWN0ZXIp
KQorICAgICAgICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICAgICAgaWYgKFVfR0VUX0dDX01B
U0soY2hhcmFjdGVyKSAmIFVfR0NfTV9NQVNLKSB7CisgICAgICAgICAgICAgICAgaW50IG1hcmtM
ZW5ndGggPSBjbHVzdGVyTGVuZ3RoOworICAgICAgICAgICAgICAgIGNvbnN0IFVDaGFyKiBtYXJr
Q2hhcmFjdGVyc0VuZCA9IGl0ZXJhdG9yLmNoYXJhY3RlcnMoKSArIGNsdXN0ZXJMZW5ndGg7Cisg
ICAgICAgICAgICAgICAgd2hpbGUgKG1hcmtDaGFyYWN0ZXJzRW5kIDwgbm9ybWFsaXplZEJ1ZmZl
ckVuZCkgeworICAgICAgICAgICAgICAgICAgICBVQ2hhcjMyIG5leHRDaGFyYWN0ZXI7CisgICAg
ICAgICAgICAgICAgICAgIGludCBuZXh0Q2hhcmFjdGVyTGVuZ3RoID0gMDsKKyAgICAgICAgICAg
ICAgICAgICAgVTE2X05FWFQobWFya0NoYXJhY3RlcnNFbmQsIG5leHRDaGFyYWN0ZXJMZW5ndGgs
IG5vcm1hbGl6ZWRCdWZmZXJFbmQgLSBtYXJrQ2hhcmFjdGVyc0VuZCwgbmV4dENoYXJhY3Rlcik7
CisgICAgICAgICAgICAgICAgICAgIGlmICghKFVfR0VUX0dDX01BU0sobmV4dENoYXJhY3Rlcikg
JiBVX0dDX01fTUFTSykpCisgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAg
ICAgICAgICAgICAgbWFya0xlbmd0aCArPSBuZXh0Q2hhcmFjdGVyTGVuZ3RoOworICAgICAgICAg
ICAgICAgICAgICBtYXJrQ2hhcmFjdGVyc0VuZCArPSBuZXh0Q2hhcmFjdGVyTGVuZ3RoOworICAg
ICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBuZXh0Rm9udERhdGEgPSBmb250RGF0YUZv
ckNvbWJpbmluZ0NoYXJhY3RlclNlcXVlbmNlKG1fZm9udCwgY3VycmVudENoYXJhY3RlclBvc2l0
aW9uLCBtYXJrQ2hhcmFjdGVyc0VuZCAtIGN1cnJlbnRDaGFyYWN0ZXJQb3NpdGlvbik7CisgICAg
ICAgICAgICAgICAgaWYgKG5leHRGb250RGF0YSkKKyAgICAgICAgICAgICAgICAgICAgY2x1c3Rl
ckxlbmd0aCA9IG1hcmtMZW5ndGg7CisgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAg
ICAgICAgICBuZXh0Rm9udERhdGEgPSBtX2ZvbnQtPmdseXBoRGF0YUZvckNoYXJhY3RlcihjaGFy
YWN0ZXIsIGZhbHNlKS5mb250RGF0YTsKKyAgICAgICAgICAgIH0gZWxzZQorICAgICAgICAgICAg
ICAgIG5leHRGb250RGF0YSA9IG1fZm9udC0+Z2x5cGhEYXRhRm9yQ2hhcmFjdGVyKGNoYXJhY3Rl
ciwgZmFsc2UpLmZvbnREYXRhOworCiAgICAgICAgICAgICBuZXh0U2NyaXB0ID0gdXNjcmlwdF9n
ZXRTY3JpcHQoY2hhcmFjdGVyLCAmZXJyb3JDb2RlKTsKICAgICAgICAgICAgIGlmIChVX0ZBSUxV
UkUoZXJyb3JDb2RlKSkKICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgICAg
ICBpZiAoKGN1cnJlbnRTY3JpcHQgIT0gbmV4dFNjcmlwdCkgJiYgKGN1cnJlbnRTY3JpcHQgIT0g
VVNDUklQVF9JTkhFUklURUQpKQorICAgICAgICAgICAgaWYgKChuZXh0Rm9udERhdGEgIT0gY3Vy
cmVudEZvbnREYXRhKSB8fCAoKGN1cnJlbnRTY3JpcHQgIT0gbmV4dFNjcmlwdCkgJiYgKG5leHRT
Y3JpcHQgIT0gVVNDUklQVF9JTkhFUklURUQpKSkKICAgICAgICAgICAgICAgICBicmVhazsKKyAg
ICAgICAgICAgIGlmIChuZXh0U2NyaXB0ID09IFVTQ1JJUFRfSU5IRVJJVEVEKQorICAgICAgICAg
ICAgICAgIG5leHRTY3JpcHQgPSBjdXJyZW50U2NyaXB0OwogICAgICAgICB9CiAgICAgICAgIHVu
c2lnbmVkIG51bUNoYXJhY3RlcnNPZkN1cnJlbnRSdW4gPSBpdGVyYXRvci5jdXJyZW50Q2hhcmFj
dGVyKCkgLSBzdGFydEluZGV4T2ZDdXJyZW50UnVuOwogICAgICAgICBtX2hhcmZidXp6UnVucy5h
cHBlbmQoSGFyZkJ1enpSdW46OmNyZWF0ZShjdXJyZW50Rm9udERhdGEsIHN0YXJ0SW5kZXhPZkN1
cnJlbnRSdW4sIG51bUNoYXJhY3RlcnNPZkN1cnJlbnRSdW4sIG1fcnVuLmRpcmVjdGlvbigpKSk7
Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>