<?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>70114</bug_id>
          
          <creation_ts>2011-10-14 09:55:13 -0700</creation_ts>
          <short_desc>[Mac] fontForSelection and styleForSelectionStart should be moved to EditorMac</short_desc>
          <delta_ts>2011-10-16 22:44:02 -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>HTML Editing</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>
          <dependson>69882</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Ryosuke Niwa">rniwa</reporter>
          <assigned_to name="Ryosuke Niwa">rniwa</assigned_to>
          <cc>darin</cc>
    
    <cc>enrica</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>484031</commentid>
    <comment_count>0</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-10-14 09:55:13 -0700</bug_when>
    <thetext>fontForSelection and styleForSelectionStart are only used by Mac port. They should be moved to EditorMac in order to simplify Editor class.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>484143</commentid>
    <comment_count>1</comment_count>
      <attachid>111039</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2011-10-14 11:54:24 -0700</bug_when>
    <thetext>Created attachment 111039
cleanup</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>484905</commentid>
    <comment_count>2</comment_count>
      <attachid>111039</attachid>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2011-10-16 21:50:20 -0700</bug_when>
    <thetext>Comment on attachment 111039
cleanup

Looks obvious.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>484933</commentid>
    <comment_count>3</comment_count>
      <attachid>111039</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-10-16 22:43:58 -0700</bug_when>
    <thetext>Comment on attachment 111039
cleanup

Clearing flags on attachment: 111039

Committed r97585: &lt;http://trac.webkit.org/changeset/97585&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>484934</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-10-16 22:44:02 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>111039</attachid>
            <date>2011-10-14 11:54:24 -0700</date>
            <delta_ts>2011-10-16 22:43:58 -0700</delta_ts>
            <desc>cleanup</desc>
            <filename>bug-70114-20111014115423.patch</filename>
            <type>text/plain</type>
            <size>10202</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDk3NDg4KQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjAgQEAKKzIwMTEtMTAtMTQgIFJ5b3N1a2Ug
Tml3YSAgPHJuaXdhQHdlYmtpdC5vcmc+CisKKyAgICAgICAgW01hY10gZm9udEZvclNlbGVjdGlv
biBhbmQgc3R5bGVGb3JTZWxlY3Rpb25TdGFydCBzaG91bGQgYmUgbW92ZWQgdG8gRWRpdG9yTWFj
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03MDExNAor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE1vdmVkIGZv
bnRGb3JTZWxlY3Rpb24gYW5kIHN0eWxlRm9yU2VsZWN0aW9uU3RhcnQgZnJvbSBFZGl0b3IgdG8g
RWRpdG9yTWFjCisgICAgICAgIGFuZCBtYWRlIHN0eWxlRm9yU2VsZWN0aW9uU3RhcnQgc3RhdGlj
IGxvY2FsLgorCisgICAgICAgICogZWRpdGluZy9FZGl0b3IuY3BwOgorICAgICAgICAqIGVkaXRp
bmcvRWRpdG9yLmg6CisgICAgICAgICogZWRpdGluZy9tYWMvRWRpdG9yTWFjLm1tOgorICAgICAg
ICAoV2ViQ29yZTo6c3R5bGVGb3JTZWxlY3Rpb25TdGFydCk6CisgICAgICAgIChXZWJDb3JlOjpF
ZGl0b3I6OmZvbnRGb3JTZWxlY3Rpb24pOgorICAgICAgICAoV2ViQ29yZTo6RWRpdG9yOjpmb250
QXR0cmlidXRlc0ZvclNlbGVjdGlvblN0YXJ0KToKKwogMjAxMS0xMC0xNCAgQmV0aCBEYWtpbiAg
PGJkYWtpbkBhcHBsZS5jb20+CiAKICAgICAgICAgQXR0ZW1wdGVkIExlb3BhcmQgYnVpbGQgZml4
LgpJbmRleDogU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmNwcAkocmV2aXNpb24gOTc0ODApCisrKyBT
b3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTUwOSw1
MyArNTA5LDYgQEAgdm9pZCBFZGl0b3I6OnJlc3BvbmRUb0NoYW5nZWRDb250ZW50cyhjbwogICAg
ICAgICBjbGllbnQoKS0+cmVzcG9uZFRvQ2hhbmdlZENvbnRlbnRzKCk7CiB9CiAKLSNpZiBQTEFU
Rk9STShNQUMpCi1jb25zdCBTaW1wbGVGb250RGF0YSogRWRpdG9yOjpmb250Rm9yU2VsZWN0aW9u
KGJvb2wmIGhhc011bHRpcGxlRm9udHMpIGNvbnN0Ci17Ci0gICAgaGFzTXVsdGlwbGVGb250cyA9
IGZhbHNlOwotCi0gICAgaWYgKCFtX2ZyYW1lLT5zZWxlY3Rpb24oKS0+aXNSYW5nZSgpKSB7Ci0g
ICAgICAgIE5vZGUqIG5vZGVUb1JlbW92ZTsKLSAgICAgICAgUmVuZGVyU3R5bGUqIHN0eWxlID0g
c3R5bGVGb3JTZWxlY3Rpb25TdGFydChub2RlVG9SZW1vdmUpOyAvLyBzZXRzIG5vZGVUb1JlbW92
ZQotCi0gICAgICAgIGNvbnN0IFNpbXBsZUZvbnREYXRhKiByZXN1bHQgPSAwOwotICAgICAgICBp
ZiAoc3R5bGUpCi0gICAgICAgICAgICByZXN1bHQgPSBzdHlsZS0+Zm9udCgpLnByaW1hcnlGb250
KCk7Ci0gICAgICAgIAotICAgICAgICBpZiAobm9kZVRvUmVtb3ZlKSB7Ci0gICAgICAgICAgICBF
eGNlcHRpb25Db2RlIGVjOwotICAgICAgICAgICAgbm9kZVRvUmVtb3ZlLT5yZW1vdmUoZWMpOwot
ICAgICAgICAgICAgQVNTRVJUKCFlYyk7Ci0gICAgICAgIH0KLQotICAgICAgICByZXR1cm4gcmVz
dWx0OwotICAgIH0KLQotICAgIGNvbnN0IFNpbXBsZUZvbnREYXRhKiBmb250ID0gMDsKLSAgICBS
ZWZQdHI8UmFuZ2U+IHJhbmdlID0gbV9mcmFtZS0+c2VsZWN0aW9uKCktPnRvTm9ybWFsaXplZFJh
bmdlKCk7Ci0gICAgaWYgKE5vZGUqIHN0YXJ0Tm9kZSA9IGFkanVzdGVkU2VsZWN0aW9uU3RhcnRG
b3JTdHlsZUNvbXB1dGF0aW9uKG1fZnJhbWUtPnNlbGVjdGlvbigpLT5zZWxlY3Rpb24oKSkuZGVw
cmVjYXRlZE5vZGUoKSkgewotICAgICAgICBOb2RlKiBwYXN0RW5kID0gcmFuZ2UtPnBhc3RMYXN0
Tm9kZSgpOwotICAgICAgICAvLyBJbiB0aGUgbG9vcCBiZWxvdywgbiBzaG91bGQgZXZlbnR1YWxs
eSBtYXRjaCBwYXN0RW5kIGFuZCBub3QgYmVjb21lIG5pbCwgYnV0IHdlJ3ZlIHNlZW4gYXQgbGVh
c3Qgb25lCi0gICAgICAgIC8vIHVucmVwcm9kdWNpYmxlIGNhc2Ugd2hlcmUgdGhpcyBkaWRuJ3Qg
aGFwcGVuLCBzbyBjaGVjayBmb3IgbnVsbCBhbHNvLgotICAgICAgICBmb3IgKE5vZGUqIG4gPSBz
dGFydE5vZGU7IG4gJiYgbiAhPSBwYXN0RW5kOyBuID0gbi0+dHJhdmVyc2VOZXh0Tm9kZSgpKSB7
Ci0gICAgICAgICAgICBSZW5kZXJPYmplY3QqIHJlbmRlcmVyID0gbi0+cmVuZGVyZXIoKTsKLSAg
ICAgICAgICAgIGlmICghcmVuZGVyZXIpCi0gICAgICAgICAgICAgICAgY29udGludWU7Ci0gICAg
ICAgICAgICAvLyBGSVhNRTogQXJlIHRoZXJlIGFueSBub2RlIHR5cGVzIHRoYXQgaGF2ZSByZW5k
ZXJlcnMsIGJ1dCB0aGF0IHdlIHNob3VsZCBiZSBza2lwcGluZz8KLSAgICAgICAgICAgIGNvbnN0
IFNpbXBsZUZvbnREYXRhKiBmID0gcmVuZGVyZXItPnN0eWxlKCktPmZvbnQoKS5wcmltYXJ5Rm9u
dCgpOwotICAgICAgICAgICAgaWYgKCFmb250KQotICAgICAgICAgICAgICAgIGZvbnQgPSBmOwot
ICAgICAgICAgICAgZWxzZSBpZiAoZm9udCAhPSBmKSB7Ci0gICAgICAgICAgICAgICAgaGFzTXVs
dGlwbGVGb250cyA9IHRydWU7Ci0gICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICAgICB9
Ci0gICAgICAgIH0KLSAgICB9Ci0KLSAgICByZXR1cm4gZm9udDsKLX0KLSNlbmRpZgotCiBXcml0
aW5nRGlyZWN0aW9uIEVkaXRvcjo6dGV4dERpcmVjdGlvbkZvclNlbGVjdGlvbihib29sJiBoYXNO
ZXN0ZWRPck11bHRpcGxlRW1iZWRkaW5ncykgY29uc3QKIHsKICAgICBoYXNOZXN0ZWRPck11bHRp
cGxlRW1iZWRkaW5ncyA9IHRydWU7CkBAIC0yNzk2LDQyICsyNzQ5LDYgQEAgdm9pZCBFZGl0b3I6
OmFwcGx5RWRpdGluZ1N0eWxlVG9FbGVtZW50KAogICAgIEFTU0VSVCghZWMpOwogfQogCi0jaWYg
UExBVEZPUk0oTUFDKQotUmVuZGVyU3R5bGUqIEVkaXRvcjo6c3R5bGVGb3JTZWxlY3Rpb25TdGFy
dChOb2RlICombm9kZVRvUmVtb3ZlKSBjb25zdAotewotICAgIG5vZGVUb1JlbW92ZSA9IDA7Ci0K
LSAgICBpZiAobV9mcmFtZS0+c2VsZWN0aW9uKCktPmlzTm9uZSgpKQotICAgICAgICByZXR1cm4g
MDsKLQotICAgIFBvc2l0aW9uIHBvc2l0aW9uID0gbV9mcmFtZS0+c2VsZWN0aW9uKCktPnNlbGVj
dGlvbigpLnZpc2libGVTdGFydCgpLmRlZXBFcXVpdmFsZW50KCk7Ci0gICAgaWYgKCFwb3NpdGlv
bi5pc0NhbmRpZGF0ZSgpKQotICAgICAgICByZXR1cm4gMDsKLSAgICBpZiAoIXBvc2l0aW9uLmRl
cHJlY2F0ZWROb2RlKCkpCi0gICAgICAgIHJldHVybiAwOwotCi0gICAgUmVmUHRyPEVkaXRpbmdT
dHlsZT4gdHlwaW5nU3R5bGUgPSBtX2ZyYW1lLT5zZWxlY3Rpb24oKS0+dHlwaW5nU3R5bGUoKTsK
LSAgICBpZiAoIXR5cGluZ1N0eWxlIHx8ICF0eXBpbmdTdHlsZS0+c3R5bGUoKSkKLSAgICAgICAg
cmV0dXJuIHBvc2l0aW9uLmRlcHJlY2F0ZWROb2RlKCktPnJlbmRlcmVyKCktPnN0eWxlKCk7Ci0K
LSAgICBSZWZQdHI8RWxlbWVudD4gc3R5bGVFbGVtZW50ID0gbV9mcmFtZS0+ZG9jdW1lbnQoKS0+
Y3JlYXRlRWxlbWVudChzcGFuVGFnLCBmYWxzZSk7Ci0KLSAgICBFeGNlcHRpb25Db2RlIGVjID0g
MDsKLSAgICBTdHJpbmcgc3R5bGVUZXh0ID0gdHlwaW5nU3R5bGUtPnN0eWxlKCktPmNzc1RleHQo
KSArICIgZGlzcGxheTogaW5saW5lIjsKLSAgICBzdHlsZUVsZW1lbnQtPnNldEF0dHJpYnV0ZShz
dHlsZUF0dHIsIHN0eWxlVGV4dC5pbXBsKCksIGVjKTsKLSAgICBBU1NFUlQoIWVjKTsKLQotICAg
IHN0eWxlRWxlbWVudC0+YXBwZW5kQ2hpbGQobV9mcmFtZS0+ZG9jdW1lbnQoKS0+Y3JlYXRlRWRp
dGluZ1RleHROb2RlKCIiKSwgZWMpOwotICAgIEFTU0VSVCghZWMpOwotCi0gICAgcG9zaXRpb24u
ZGVwcmVjYXRlZE5vZGUoKS0+cGFyZW50Tm9kZSgpLT5hcHBlbmRDaGlsZChzdHlsZUVsZW1lbnQs
IGVjKTsKLSAgICBBU1NFUlQoIWVjKTsKLQotICAgIG5vZGVUb1JlbW92ZSA9IHN0eWxlRWxlbWVu
dC5nZXQoKTsKLSAgICByZXR1cm4gc3R5bGVFbGVtZW50LT5yZW5kZXJlcigpID8gc3R5bGVFbGVt
ZW50LT5yZW5kZXJlcigpLT5zdHlsZSgpIDogMDsKLX0KLSNlbmRpZgotCiAvLyBTZWFyY2hlcyBm
cm9tIHRoZSBiZWdpbm5pbmcgb2YgdGhlIGRvY3VtZW50IGlmIG5vdGhpbmcgaXMgc2VsZWN0ZWQu
CiBib29sIEVkaXRvcjo6ZmluZFN0cmluZyhjb25zdCBTdHJpbmcmIHRhcmdldCwgYm9vbCBmb3J3
YXJkLCBib29sIGNhc2VGbGFnLCBib29sIHdyYXBGbGFnLCBib29sIHN0YXJ0SW5TZWxlY3Rpb24p
CiB7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmgJKHJldmlzaW9uIDk3NDgwKQorKysgU291
cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuaAkod29ya2luZyBjb3B5KQpAQCAtMTM0LDkgKzEz
NCw2IEBAIHB1YmxpYzoKICAgICBib29sIHNlbGVjdGlvblN0YXJ0SGFzU3R5bGUoaW50IHByb3Bl
cnR5SUQsIGNvbnN0IFN0cmluZyYgdmFsdWUpIGNvbnN0OwogICAgIFRyaVN0YXRlIHNlbGVjdGlv
bkhhc1N0eWxlKGludCBwcm9wZXJ0eUlELCBjb25zdCBTdHJpbmcmIHZhbHVlKSBjb25zdDsKICAg
ICBTdHJpbmcgc2VsZWN0aW9uU3RhcnRDU1NQcm9wZXJ0eVZhbHVlKGludCBwcm9wZXJ0eUlEKTsK
LSNpZiBQTEFURk9STShNQUMpCi0gICAgY29uc3QgU2ltcGxlRm9udERhdGEqIGZvbnRGb3JTZWxl
Y3Rpb24oYm9vbCYpIGNvbnN0OwotI2VuZGlmCiAgICAgV3JpdGluZ0RpcmVjdGlvbiB0ZXh0RGly
ZWN0aW9uRm9yU2VsZWN0aW9uKGJvb2wmKSBjb25zdDsKICAgICAKICAgICBUcmlTdGF0ZSBzZWxl
Y3Rpb25Vbm9yZGVyZWRMaXN0U3RhdGUoKSBjb25zdDsKQEAgLTM1MCw5ICszNDcsNiBAQCBwdWJs
aWM6CiAKICAgICB2b2lkIHJlc3BvbmRUb0NoYW5nZWRTZWxlY3Rpb24oY29uc3QgVmlzaWJsZVNl
bGVjdGlvbiYgb2xkU2VsZWN0aW9uLCBGcmFtZVNlbGVjdGlvbjo6U2V0U2VsZWN0aW9uT3B0aW9u
cyk7CiAgICAgYm9vbCBzaG91bGRDaGFuZ2VTZWxlY3Rpb24oY29uc3QgVmlzaWJsZVNlbGVjdGlv
biYgb2xkU2VsZWN0aW9uLCBjb25zdCBWaXNpYmxlU2VsZWN0aW9uJiBuZXdTZWxlY3Rpb24sIEVB
ZmZpbml0eSwgYm9vbCBzdGlsbFNlbGVjdGluZykgY29uc3Q7Ci0jaWYgUExBVEZPUk0oTUFDKQot
ICAgIFJlbmRlclN0eWxlKiBzdHlsZUZvclNlbGVjdGlvblN0YXJ0KE5vZGUqJiBub2RlVG9SZW1v
dmUpIGNvbnN0OwotI2VuZGlmCiAgICAgdW5zaWduZWQgY291bnRNYXRjaGVzRm9yVGV4dChjb25z
dCBTdHJpbmcmLCBGaW5kT3B0aW9ucywgdW5zaWduZWQgbGltaXQsIGJvb2wgbWFya01hdGNoZXMp
OwogICAgIHVuc2lnbmVkIGNvdW50TWF0Y2hlc0ZvclRleHQoY29uc3QgU3RyaW5nJiwgUmFuZ2Uq
LCBGaW5kT3B0aW9ucywgdW5zaWduZWQgbGltaXQsIGJvb2wgbWFya01hdGNoZXMpOwogICAgIGJv
b2wgbWFya2VkVGV4dE1hdGNoZXNBcmVIaWdobGlnaHRlZCgpIGNvbnN0OwpAQCAtMzY2LDYgKzM2
MCw3IEBAIHB1YmxpYzoKICAgICB2b2lkIHRleHREaWRDaGFuZ2VJblRleHRBcmVhKEVsZW1lbnQq
KTsKIAogI2lmIFBMQVRGT1JNKE1BQykKKyAgICBjb25zdCBTaW1wbGVGb250RGF0YSogZm9udEZv
clNlbGVjdGlvbihib29sJikgY29uc3Q7CiAgICAgTlNEaWN0aW9uYXJ5KiBmb250QXR0cmlidXRl
c0ZvclNlbGVjdGlvblN0YXJ0KCkgY29uc3Q7CiAgICAgTlNXcml0aW5nRGlyZWN0aW9uIGJhc2VX
cml0aW5nRGlyZWN0aW9uRm9yU2VsZWN0aW9uU3RhcnQoKSBjb25zdDsKICAgICBib29sIGNhbkNv
cHlFeGNsdWRpbmdTdGFuZGFsb25lSW1hZ2VzKCk7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9lZGl0
aW5nL21hYy9FZGl0b3JNYWMubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvZWRpdGlu
Zy9tYWMvRWRpdG9yTWFjLm1tCShyZXZpc2lvbiA5NzQ4MCkKKysrIFNvdXJjZS9XZWJDb3JlL2Vk
aXRpbmcvbWFjL0VkaXRvck1hYy5tbQkod29ya2luZyBjb3B5KQpAQCAtMzAsMTcgKzMwLDIyIEBA
CiAjaW1wb3J0ICJDbGlwYm9hcmRNYWMuaCIKICNpbXBvcnQgIkNhY2hlZFJlc291cmNlTG9hZGVy
LmgiCiAjaW1wb3J0ICJEb2N1bWVudEZyYWdtZW50LmgiCisjaW1wb3J0ICJFZGl0aW5nVGV4dC5o
IgogI2ltcG9ydCAiRWRpdG9yLmgiCiAjaW1wb3J0ICJFZGl0b3JDbGllbnQuaCIKICNpbXBvcnQg
IkZyYW1lLmgiCiAjaW1wb3J0ICJGcmFtZVZpZXcuaCIKKyNpbXBvcnQgIkhUTUxOYW1lcy5oIgog
I2ltcG9ydCAiUGFzdGVib2FyZC5oIgogI2ltcG9ydCAiUmVuZGVyQmxvY2suaCIKICNpbXBvcnQg
IlJ1bnRpbWVBcHBsaWNhdGlvbkNoZWNrcy5oIgogI2ltcG9ydCAiU291bmQuaCIKKyNpbXBvcnQg
Imh0bWxlZGl0aW5nLmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAordXNpbmcgbmFtZXNwYWNl
IEhUTUxOYW1lczsKKwogUGFzc1JlZlB0cjxDbGlwYm9hcmQ+IEVkaXRvcjo6bmV3R2VuZXJhbENs
aXBib2FyZChDbGlwYm9hcmRBY2Nlc3NQb2xpY3kgcG9saWN5LCBGcmFtZSogZnJhbWUpCiB7CiAg
ICAgcmV0dXJuIENsaXBib2FyZE1hYzo6Y3JlYXRlKENsaXBib2FyZDo6Q29weUFuZFBhc3RlLCBb
TlNQYXN0ZWJvYXJkIGdlbmVyYWxQYXN0ZWJvYXJkXSwgcG9saWN5LCBmcmFtZSk7CkBAIC04OSwx
MCArOTQsODcgQEAgdm9pZCBFZGl0b3I6OnBhc3RlV2l0aFBhc3RlYm9hcmQoUGFzdGVibwogICAg
IG1fZnJhbWUtPmVkaXRvcigpLT5jbGllbnQoKS0+c2V0SW5zZXJ0aW9uUGFzdGVib2FyZChuaWwp
OwogfQogCitzdGF0aWMgUmVuZGVyU3R5bGUqIHN0eWxlRm9yU2VsZWN0aW9uU3RhcnQoRnJhbWUq
IGZyYW1lLCBOb2RlICombm9kZVRvUmVtb3ZlKQoreworICAgIG5vZGVUb1JlbW92ZSA9IDA7CisK
KyAgICBpZiAoZnJhbWUtPnNlbGVjdGlvbigpLT5pc05vbmUoKSkKKyAgICAgICAgcmV0dXJuIDA7
CisKKyAgICBQb3NpdGlvbiBwb3NpdGlvbiA9IGZyYW1lLT5zZWxlY3Rpb24oKS0+c2VsZWN0aW9u
KCkudmlzaWJsZVN0YXJ0KCkuZGVlcEVxdWl2YWxlbnQoKTsKKyAgICBpZiAoIXBvc2l0aW9uLmlz
Q2FuZGlkYXRlKCkgfHwgcG9zaXRpb24uaXNOdWxsKCkpCisgICAgICAgIHJldHVybiAwOworCisg
ICAgUmVmUHRyPEVkaXRpbmdTdHlsZT4gdHlwaW5nU3R5bGUgPSBmcmFtZS0+c2VsZWN0aW9uKCkt
PnR5cGluZ1N0eWxlKCk7CisgICAgaWYgKCF0eXBpbmdTdHlsZSB8fCAhdHlwaW5nU3R5bGUtPnN0
eWxlKCkpCisgICAgICAgIHJldHVybiBwb3NpdGlvbi5kZXByZWNhdGVkTm9kZSgpLT5yZW5kZXJl
cigpLT5zdHlsZSgpOworCisgICAgUmVmUHRyPEVsZW1lbnQ+IHN0eWxlRWxlbWVudCA9IGZyYW1l
LT5kb2N1bWVudCgpLT5jcmVhdGVFbGVtZW50KHNwYW5UYWcsIGZhbHNlKTsKKworICAgIEV4Y2Vw
dGlvbkNvZGUgZWMgPSAwOworICAgIFN0cmluZyBzdHlsZVRleHQgPSB0eXBpbmdTdHlsZS0+c3R5
bGUoKS0+Y3NzVGV4dCgpICsgIiBkaXNwbGF5OiBpbmxpbmUiOworICAgIHN0eWxlRWxlbWVudC0+
c2V0QXR0cmlidXRlKHN0eWxlQXR0ciwgc3R5bGVUZXh0LmltcGwoKSwgZWMpOworICAgIEFTU0VS
VCghZWMpOworCisgICAgc3R5bGVFbGVtZW50LT5hcHBlbmRDaGlsZChmcmFtZS0+ZG9jdW1lbnQo
KS0+Y3JlYXRlRWRpdGluZ1RleHROb2RlKCIiKSwgZWMpOworICAgIEFTU0VSVCghZWMpOworCisg
ICAgcG9zaXRpb24uZGVwcmVjYXRlZE5vZGUoKS0+cGFyZW50Tm9kZSgpLT5hcHBlbmRDaGlsZChz
dHlsZUVsZW1lbnQsIGVjKTsKKyAgICBBU1NFUlQoIWVjKTsKKworICAgIG5vZGVUb1JlbW92ZSA9
IHN0eWxlRWxlbWVudC5nZXQoKTsKKyAgICByZXR1cm4gc3R5bGVFbGVtZW50LT5yZW5kZXJlcigp
ID8gc3R5bGVFbGVtZW50LT5yZW5kZXJlcigpLT5zdHlsZSgpIDogMDsKK30KKworY29uc3QgU2lt
cGxlRm9udERhdGEqIEVkaXRvcjo6Zm9udEZvclNlbGVjdGlvbihib29sJiBoYXNNdWx0aXBsZUZv
bnRzKSBjb25zdAoreworICAgIGhhc011bHRpcGxlRm9udHMgPSBmYWxzZTsKKworICAgIGlmICgh
bV9mcmFtZS0+c2VsZWN0aW9uKCktPmlzUmFuZ2UoKSkgeworICAgICAgICBOb2RlKiBub2RlVG9S
ZW1vdmU7CisgICAgICAgIFJlbmRlclN0eWxlKiBzdHlsZSA9IHN0eWxlRm9yU2VsZWN0aW9uU3Rh
cnQobV9mcmFtZSwgbm9kZVRvUmVtb3ZlKTsgLy8gc2V0cyBub2RlVG9SZW1vdmUKKworICAgICAg
ICBjb25zdCBTaW1wbGVGb250RGF0YSogcmVzdWx0ID0gMDsKKyAgICAgICAgaWYgKHN0eWxlKQor
ICAgICAgICAgICAgcmVzdWx0ID0gc3R5bGUtPmZvbnQoKS5wcmltYXJ5Rm9udCgpOworCisgICAg
ICAgIGlmIChub2RlVG9SZW1vdmUpIHsKKyAgICAgICAgICAgIEV4Y2VwdGlvbkNvZGUgZWM7Cisg
ICAgICAgICAgICBub2RlVG9SZW1vdmUtPnJlbW92ZShlYyk7CisgICAgICAgICAgICBBU1NFUlQo
IWVjKTsKKyAgICAgICAgfQorCisgICAgICAgIHJldHVybiByZXN1bHQ7CisgICAgfQorCisgICAg
Y29uc3QgU2ltcGxlRm9udERhdGEqIGZvbnQgPSAwOworICAgIFJlZlB0cjxSYW5nZT4gcmFuZ2Ug
PSBtX2ZyYW1lLT5zZWxlY3Rpb24oKS0+dG9Ob3JtYWxpemVkUmFuZ2UoKTsKKyAgICBpZiAoTm9k
ZSogc3RhcnROb2RlID0gYWRqdXN0ZWRTZWxlY3Rpb25TdGFydEZvclN0eWxlQ29tcHV0YXRpb24o
bV9mcmFtZS0+c2VsZWN0aW9uKCktPnNlbGVjdGlvbigpKS5kZXByZWNhdGVkTm9kZSgpKSB7Cisg
ICAgICAgIE5vZGUqIHBhc3RFbmQgPSByYW5nZS0+cGFzdExhc3ROb2RlKCk7CisgICAgICAgIC8v
IEluIHRoZSBsb29wIGJlbG93LCBuIHNob3VsZCBldmVudHVhbGx5IG1hdGNoIHBhc3RFbmQgYW5k
IG5vdCBiZWNvbWUgbmlsLCBidXQgd2UndmUgc2VlbiBhdCBsZWFzdCBvbmUKKyAgICAgICAgLy8g
dW5yZXByb2R1Y2libGUgY2FzZSB3aGVyZSB0aGlzIGRpZG4ndCBoYXBwZW4sIHNvIGNoZWNrIGZv
ciBudWxsIGFsc28uCisgICAgICAgIGZvciAoTm9kZSogbm9kZSA9IHN0YXJ0Tm9kZTsgbm9kZSAm
JiBub2RlICE9IHBhc3RFbmQ7IG5vZGUgPSBub2RlLT50cmF2ZXJzZU5leHROb2RlKCkpIHsKKyAg
ICAgICAgICAgIFJlbmRlck9iamVjdCogcmVuZGVyZXIgPSBub2RlLT5yZW5kZXJlcigpOworICAg
ICAgICAgICAgaWYgKCFyZW5kZXJlcikKKyAgICAgICAgICAgICAgICBjb250aW51ZTsKKyAgICAg
ICAgICAgIC8vIEZJWE1FOiBBcmUgdGhlcmUgYW55IG5vZGUgdHlwZXMgdGhhdCBoYXZlIHJlbmRl
cmVycywgYnV0IHRoYXQgd2Ugc2hvdWxkIGJlIHNraXBwaW5nPworICAgICAgICAgICAgY29uc3Qg
U2ltcGxlRm9udERhdGEqIHByaW1hcnlGb250ID0gcmVuZGVyZXItPnN0eWxlKCktPmZvbnQoKS5w
cmltYXJ5Rm9udCgpOworICAgICAgICAgICAgaWYgKCFmb250KQorICAgICAgICAgICAgICAgIGZv
bnQgPSBwcmltYXJ5Rm9udDsKKyAgICAgICAgICAgIGVsc2UgaWYgKGZvbnQgIT0gcHJpbWFyeUZv
bnQpIHsKKyAgICAgICAgICAgICAgICBoYXNNdWx0aXBsZUZvbnRzID0gdHJ1ZTsKKyAgICAgICAg
ICAgICAgICBicmVhazsKKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgIH0KKworICAgIHJl
dHVybiBmb250OworfQorCiBOU0RpY3Rpb25hcnkqIEVkaXRvcjo6Zm9udEF0dHJpYnV0ZXNGb3JT
ZWxlY3Rpb25TdGFydCgpIGNvbnN0CiB7CiAgICAgTm9kZSogbm9kZVRvUmVtb3ZlOwotICAgIFJl
bmRlclN0eWxlKiBzdHlsZSA9IHN0eWxlRm9yU2VsZWN0aW9uU3RhcnQobm9kZVRvUmVtb3ZlKTsK
KyAgICBSZW5kZXJTdHlsZSogc3R5bGUgPSBzdHlsZUZvclNlbGVjdGlvblN0YXJ0KG1fZnJhbWUs
IG5vZGVUb1JlbW92ZSk7CiAgICAgaWYgKCFzdHlsZSkKICAgICAgICAgcmV0dXJuIG5pbDsKIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>