<?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>30635</bug_id>
          
          <creation_ts>2009-10-21 10:52:15 -0700</creation_ts>
          <short_desc>Chromium Linux: disable subpixel text on layers.</short_desc>
          <delta_ts>2009-10-21 11:23:45 -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>Layout and Rendering</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Linux</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>Major</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Adam Langley">agl</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>brettw</cc>
    
    <cc>eric</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>156540</commentid>
    <comment_count>0</comment_count>
    <who name="Adam Langley">agl</who>
    <bug_when>2009-10-21 10:52:15 -0700</bug_when>
    <thetext>http://code.google.com/p/chromium/issues/detail?id=25365

With the addition of layers for drawing rounded corners in r49641, subpixel text on rounded rectangles broke. This is because the layer only contains a single alpha channel and this is insufficient to compose subpixel text correctly.

On Windows, a large body of code in TransparencyWin.cpp exists to try to deal with this. Even then, in some cases, it downgrades to anti-aliased text. We need a fix for the grevious effects quickly thus this patch disables subpixel text when rendering into a layer.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>156541</commentid>
    <comment_count>1</comment_count>
      <attachid>41574</attachid>
    <who name="Adam Langley">agl</who>
    <bug_when>2009-10-21 10:53:40 -0700</bug_when>
    <thetext>Created attachment 41574
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>156544</commentid>
    <comment_count>2</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-10-21 10:59:02 -0700</bug_when>
    <thetext>Do we plan to &quot;fix&quot; layers to work with subpixel text at some point?

Your patch has extra { } around the single-line if block.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>156550</commentid>
    <comment_count>3</comment_count>
      <attachid>41579</attachid>
    <who name="Adam Langley">agl</who>
    <bug_when>2009-10-21 11:07:44 -0700</bug_when>
    <thetext>Created attachment 41579
Fix { } around single line branch.

Although having 48-bit layers would be interesting, it&apos;s never going to happen. A &apos;better&apos; fix would be to refactor the code in TransparencyWin.cpp and render the text to a side-buffer, manually composing with the underlying layers. However, I&apos;m not sure that I believe that the additional complexity is worth it. Either way, it&apos;s certainly not something that I&apos;m going to do before the next dev channel release.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>156560</commentid>
    <comment_count>4</comment_count>
      <attachid>41579</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-10-21 11:17:53 -0700</bug_when>
    <thetext>Comment on attachment 41579
Fix { } around single line branch.

LGTM.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>156568</commentid>
    <comment_count>5</comment_count>
    <who name="Adam Langley">agl</who>
    <bug_when>2009-10-21 11:23:45 -0700</bug_when>
    <thetext>r49909</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>41574</attachid>
            <date>2009-10-21 10:53:40 -0700</date>
            <delta_ts>2009-10-21 11:07:44 -0700</delta_ts>
            <desc>patch</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>4584</size>
            <attacher name="Adam Langley">agl</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
NDk5MDEwNS4uMTE2MGJmOSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzMSBAQAorMjAwOS0xMC0yMSAgQWRhbSBMYW5nbGV5
ICA8YWdsQGdvb2dsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgQ2hyb21pdW0gTGludXg6IGRpc2FibGUgc3VicGl4ZWwgdGV4dCBvbiBsYXll
cnMuCisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTMw
NjM1CisgICAgICAgIGh0dHA6Ly9jb2RlLmdvb2dsZS5jb20vcC9jaHJvbWl1bS9pc3N1ZXMvZGV0
YWlsP2lkPTI1MzY1CisKKyAgICAgICAgV2l0aCB0aGUgYWRkaXRpb24gb2YgbGF5ZXJzIGZvciBk
cmF3aW5nIHJvdW5kZWQgY29ybmVycyBpbiByNDk2NDEsCisgICAgICAgIHN1YnBpeGVsIHRleHQg
b24gcm91bmRlZCByZWN0YW5nbGVzIGJyb2tlLiBUaGlzIGlzIGJlY2F1c2UgdGhlIGxheWVyCisg
ICAgICAgIG9ubHkgY29udGFpbnMgYSBzaW5nbGUgYWxwaGEgY2hhbm5lbCBhbmQgdGhpcyBpcyBp
bnN1ZmZpY2llbnQgdG8KKyAgICAgICAgY29tcG9zZSBzdWJwaXhlbCB0ZXh0IGNvcnJlY3RseS4K
KworICAgICAgICBPbiBXaW5kb3dzLCBhIGxhcmdlIGJvZHkgb2YgY29kZSBpbiBUcmFuc3BhcmVu
Y3lXaW4uY3BwIGV4aXN0cyB0byB0cnkKKyAgICAgICAgdG8gZGVhbCB3aXRoIHRoaXMuIEV2ZW4g
dGhlbiwgaW4gc29tZSBjYXNlcywgaXQgZG93bmdyYWRlcyB0bworICAgICAgICBhbnRpLWFsaWFz
ZWQgdGV4dC4gV2UgbmVlZCBhIGZpeCBmb3IgdGhlIGdyZXZpb3VzIGVmZmVjdHMgcXVpY2tseSB0
aHVzCisgICAgICAgIHRoaXMgcGF0Y2ggZGlzYWJsZXMgc3VicGl4ZWwgdGV4dCB3aGVuIHJlbmRl
cmluZyBpbnRvIGEgbGF5ZXIuCisKKyAgICAgICAgVGhpcyB3b3VsZCBiZSBjb3ZlcmVkIGJ5IGV4
aXN0aW5nIHRlc3RzIGV4Y2VwdCB0aGF0IHN1YnBpeGVsIHRleHQgaXMKKyAgICAgICAgZGlzYWJs
ZWQgZm9yIHBpeGVsIHRlc3RzIG9uIENocm9taXVtIExpbnV4LgorCisgICAgICAgICogcGxhdGZv
cm0vZ3JhcGhpY3MvY2hyb21pdW0vRm9udExpbnV4LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Omlz
Q2FudmFzTXVsdGlMYXllcmVkKToKKyAgICAgICAgKFdlYkNvcmU6OmFkanVzdFRleHRSZW5kZXJN
b2RlKToKKyAgICAgICAgKFdlYkNvcmU6OkZvbnQ6OmRyYXdHbHlwaHMpOgorICAgICAgICAoV2Vi
Q29yZTo6Rm9udDo6ZHJhd0NvbXBsZXhUZXh0KToKKwogMjAwOS0xMC0yMSAgRGFuIEJlcm5zdGVp
biAgPG1pdHpAYXBwbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IFNhbSBXZWluaWcuCmRp
ZmYgLS1naXQgYS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0ZvbnRMaW51eC5j
cHAgYi9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0ZvbnRMaW51eC5jcHAKaW5k
ZXggZGNhMGVmYi4uNDQ5MmJiYSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9jaHJvbWl1bS9Gb250TGludXguY3BwCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Y2hyb21pdW0vRm9udExpbnV4LmNwcApAQCAtNTcsNiArNTcsMjQgQEAgYm9vbCBGb250OjpjYW5S
ZXR1cm5GYWxsYmFja0ZvbnRzRm9yQ29tcGxleFRleHQoKQogICAgIHJldHVybiBmYWxzZTsKIH0K
IAorc3RhdGljIGJvb2wgaXNDYW52YXNNdWx0aUxheWVyZWQoU2tDYW52YXMqIGNhbnZhcykKK3sK
KyAgICBTa0NhbnZhczo6TGF5ZXJJdGVyIGxheWVySXRlcmF0b3IoY2FudmFzLCBmYWxzZSk7Cisg
ICAgbGF5ZXJJdGVyYXRvci5uZXh0KCk7CisgICAgcmV0dXJuICFsYXllckl0ZXJhdG9yLmRvbmUo
KTsKK30KKworc3RhdGljIGJvb2wgYWRqdXN0VGV4dFJlbmRlck1vZGUoU2tQYWludCogcGFpbnQs
IGJvb2wgaXNDYW52YXNNdWx0aUxheWVyZWQpCit7CisgICAgLy8gT3VyIGxheWVycyBvbmx5IGhh
dmUgYSBzaW5nbGUgYWxwaGEgY2hhbm5lbC4gVGhpcyBtZWFucyB0aGF0IHN1YnBpeGVsCisgICAg
Ly8gcmVuZGVyZWQgdGV4dCBjYW5ub3QgYmUgY29tcG9zaXRpZWQgY29ycmVjdGx5IHdoZW4gdGhl
IGxheWVyIGlzCisgICAgLy8gY29sbGFwc2VkLiBUaGVyZWZvcmUsIHN1YnBpeGVsIHRleHQgaXMg
ZGlzYWJsZWQgd2hlbiB3ZSBhcmUgZHJhd2luZworICAgIC8vIG9udG8gYSBsYXllci4KKyAgICBp
ZiAoaXNDYW52YXNNdWx0aUxheWVyZWQpIHsKKyAgICAgICAgcGFpbnQtPnNldExDRFJlbmRlclRl
eHQoZmFsc2UpOworICAgIH0KK30KKwogdm9pZCBGb250OjpkcmF3R2x5cGhzKEdyYXBoaWNzQ29u
dGV4dCogZ2MsIGNvbnN0IFNpbXBsZUZvbnREYXRhKiBmb250LAogICAgICAgICAgICAgICAgICAg
ICAgIGNvbnN0IEdseXBoQnVmZmVyJiBnbHlwaEJ1ZmZlciwgIGludCBmcm9tLCBpbnQgbnVtR2x5
cGhzLAogICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IEZsb2F0UG9pbnQmIHBvaW50KSBjb25z
dCB7CkBAIC04NCwxMiArMTAyLDE0IEBAIHZvaWQgRm9udDo6ZHJhd0dseXBocyhHcmFwaGljc0Nv
bnRleHQqIGdjLCBjb25zdCBTaW1wbGVGb250RGF0YSogZm9udCwKIAogICAgIFNrQ2FudmFzKiBj
YW52YXMgPSBnYy0+cGxhdGZvcm1Db250ZXh0KCktPmNhbnZhcygpOwogICAgIGludCB0ZXh0TW9k
ZSA9IGdjLT5wbGF0Zm9ybUNvbnRleHQoKS0+Z2V0VGV4dERyYXdpbmdNb2RlKCk7CisgICAgYm9v
bCBoYXZlTXVsdGlwbGVMYXllcnMgPSBpc0NhbnZhc011bHRpTGF5ZXJlZChjYW52YXMpOwogCiAg
ICAgLy8gV2UgZHJhdyB0ZXh0IHVwIHRvIHR3byB0aW1lcyAob25jZSBmb3IgZmlsbCwgb25jZSBm
b3Igc3Ryb2tlKS4KICAgICBpZiAodGV4dE1vZGUgJiBjVGV4dEZpbGwpIHsKICAgICAgICAgU2tQ
YWludCBwYWludDsKICAgICAgICAgZ2MtPnBsYXRmb3JtQ29udGV4dCgpLT5zZXR1cFBhaW50Rm9y
RmlsbGluZygmcGFpbnQpOwogICAgICAgICBmb250LT5wbGF0Zm9ybURhdGEoKS5zZXR1cFBhaW50
KCZwYWludCk7CisgICAgICAgIGFkanVzdFRleHRSZW5kZXJNb2RlKCZwYWludCwgaGF2ZU11bHRp
cGxlTGF5ZXJzKTsKICAgICAgICAgcGFpbnQuc2V0VGV4dEVuY29kaW5nKFNrUGFpbnQ6OmtHbHlw
aElEX1RleHRFbmNvZGluZyk7CiAgICAgICAgIHBhaW50LnNldENvbG9yKGdjLT5maWxsQ29sb3Io
KS5yZ2IoKSk7CiAgICAgICAgIGNhbnZhcy0+ZHJhd1Bvc1RleHQoZ2x5cGhzLCBudW1HbHlwaHMg
PDwgMSwgcG9zLCBwYWludCk7CkBAIC0xMDIsNiArMTIyLDcgQEAgdm9pZCBGb250OjpkcmF3R2x5
cGhzKEdyYXBoaWNzQ29udGV4dCogZ2MsIGNvbnN0IFNpbXBsZUZvbnREYXRhKiBmb250LAogICAg
ICAgICBTa1BhaW50IHBhaW50OwogICAgICAgICBnYy0+cGxhdGZvcm1Db250ZXh0KCktPnNldHVw
UGFpbnRGb3JTdHJva2luZygmcGFpbnQsIDAsIDApOwogICAgICAgICBmb250LT5wbGF0Zm9ybURh
dGEoKS5zZXR1cFBhaW50KCZwYWludCk7CisgICAgICAgIGFkanVzdFRleHRSZW5kZXJNb2RlKCZw
YWludCwgaGF2ZU11bHRpcGxlTGF5ZXJzKTsKICAgICAgICAgcGFpbnQuc2V0VGV4dEVuY29kaW5n
KFNrUGFpbnQ6OmtHbHlwaElEX1RleHRFbmNvZGluZyk7CiAgICAgICAgIHBhaW50LnNldENvbG9y
KGdjLT5zdHJva2VDb2xvcigpLnJnYigpKTsKIApAQCAtNDcyLDE1ICs0OTMsMTggQEAgdm9pZCBG
b250OjpkcmF3Q29tcGxleFRleHQoR3JhcGhpY3NDb250ZXh0KiBnYywgY29uc3QgVGV4dFJ1biYg
cnVuLAogICAgIH0KIAogICAgIFRleHRSdW5XYWxrZXIgd2Fsa2VyKHJ1biwgcG9pbnQueCgpLCB0
aGlzKTsKKyAgICBib29sIGhhdmVNdWx0aXBsZUxheWVycyA9IGlzQ2FudmFzTXVsdGlMYXllcmVk
KGNhbnZhcyk7CiAKICAgICB3aGlsZSAod2Fsa2VyLm5leHRTY3JpcHRSdW4oKSkgewogICAgICAg
ICBpZiAoZmlsbCkgewogICAgICAgICAgICAgd2Fsa2VyLmZvbnRQbGF0Zm9ybURhdGFGb3JTY3Jp
cHRSdW4oKS0+c2V0dXBQYWludCgmZmlsbFBhaW50KTsKKyAgICAgICAgICAgIGFkanVzdFRleHRS
ZW5kZXJNb2RlKCZmaWxsUGFpbnQsIGhhdmVNdWx0aXBsZUxheWVycyk7CiAgICAgICAgICAgICBj
YW52YXMtPmRyYXdQb3NUZXh0SCh3YWxrZXIuZ2x5cGhzKCksIHdhbGtlci5sZW5ndGgoKSA8PCAx
LCB3YWxrZXIueFBvc2l0aW9ucygpLCBwb2ludC55KCksIGZpbGxQYWludCk7CiAgICAgICAgIH0K
IAogICAgICAgICBpZiAoc3Ryb2tlKSB7CiAgICAgICAgICAgICB3YWxrZXIuZm9udFBsYXRmb3Jt
RGF0YUZvclNjcmlwdFJ1bigpLT5zZXR1cFBhaW50KCZzdHJva2VQYWludCk7CisgICAgICAgICAg
ICBhZGp1c3RUZXh0UmVuZGVyTW9kZSgmc3Ryb2tlUGFpbnQsIGhhdmVNdWx0aXBsZUxheWVycyk7
CiAgICAgICAgICAgICBjYW52YXMtPmRyYXdQb3NUZXh0SCh3YWxrZXIuZ2x5cGhzKCksIHdhbGtl
ci5sZW5ndGgoKSA8PCAxLCB3YWxrZXIueFBvc2l0aW9ucygpLCBwb2ludC55KCksIHN0cm9rZVBh
aW50KTsKICAgICAgICAgfQogICAgIH0K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>41579</attachid>
            <date>2009-10-21 11:07:44 -0700</date>
            <delta_ts>2009-10-21 11:17:53 -0700</delta_ts>
            <desc>Fix { } around single line branch.</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>4575</size>
            <attacher name="Adam Langley">agl</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
NDk5MDEwNS4uMTE2MGJmOSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzMSBAQAorMjAwOS0xMC0yMSAgQWRhbSBMYW5nbGV5
ICA8YWdsQGdvb2dsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgQ2hyb21pdW0gTGludXg6IGRpc2FibGUgc3VicGl4ZWwgdGV4dCBvbiBsYXll
cnMuCisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTMw
NjM1CisgICAgICAgIGh0dHA6Ly9jb2RlLmdvb2dsZS5jb20vcC9jaHJvbWl1bS9pc3N1ZXMvZGV0
YWlsP2lkPTI1MzY1CisKKyAgICAgICAgV2l0aCB0aGUgYWRkaXRpb24gb2YgbGF5ZXJzIGZvciBk
cmF3aW5nIHJvdW5kZWQgY29ybmVycyBpbiByNDk2NDEsCisgICAgICAgIHN1YnBpeGVsIHRleHQg
b24gcm91bmRlZCByZWN0YW5nbGVzIGJyb2tlLiBUaGlzIGlzIGJlY2F1c2UgdGhlIGxheWVyCisg
ICAgICAgIG9ubHkgY29udGFpbnMgYSBzaW5nbGUgYWxwaGEgY2hhbm5lbCBhbmQgdGhpcyBpcyBp
bnN1ZmZpY2llbnQgdG8KKyAgICAgICAgY29tcG9zZSBzdWJwaXhlbCB0ZXh0IGNvcnJlY3RseS4K
KworICAgICAgICBPbiBXaW5kb3dzLCBhIGxhcmdlIGJvZHkgb2YgY29kZSBpbiBUcmFuc3BhcmVu
Y3lXaW4uY3BwIGV4aXN0cyB0byB0cnkKKyAgICAgICAgdG8gZGVhbCB3aXRoIHRoaXMuIEV2ZW4g
dGhlbiwgaW4gc29tZSBjYXNlcywgaXQgZG93bmdyYWRlcyB0bworICAgICAgICBhbnRpLWFsaWFz
ZWQgdGV4dC4gV2UgbmVlZCBhIGZpeCBmb3IgdGhlIGdyZXZpb3VzIGVmZmVjdHMgcXVpY2tseSB0
aHVzCisgICAgICAgIHRoaXMgcGF0Y2ggZGlzYWJsZXMgc3VicGl4ZWwgdGV4dCB3aGVuIHJlbmRl
cmluZyBpbnRvIGEgbGF5ZXIuCisKKyAgICAgICAgVGhpcyB3b3VsZCBiZSBjb3ZlcmVkIGJ5IGV4
aXN0aW5nIHRlc3RzIGV4Y2VwdCB0aGF0IHN1YnBpeGVsIHRleHQgaXMKKyAgICAgICAgZGlzYWJs
ZWQgZm9yIHBpeGVsIHRlc3RzIG9uIENocm9taXVtIExpbnV4LgorCisgICAgICAgICogcGxhdGZv
cm0vZ3JhcGhpY3MvY2hyb21pdW0vRm9udExpbnV4LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Omlz
Q2FudmFzTXVsdGlMYXllcmVkKToKKyAgICAgICAgKFdlYkNvcmU6OmFkanVzdFRleHRSZW5kZXJN
b2RlKToKKyAgICAgICAgKFdlYkNvcmU6OkZvbnQ6OmRyYXdHbHlwaHMpOgorICAgICAgICAoV2Vi
Q29yZTo6Rm9udDo6ZHJhd0NvbXBsZXhUZXh0KToKKwogMjAwOS0xMC0yMSAgRGFuIEJlcm5zdGVp
biAgPG1pdHpAYXBwbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IFNhbSBXZWluaWcuCmRp
ZmYgLS1naXQgYS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0ZvbnRMaW51eC5j
cHAgYi9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0ZvbnRMaW51eC5jcHAKaW5k
ZXggZGNhMGVmYi4uMzhlNzY4MiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9jaHJvbWl1bS9Gb250TGludXguY3BwCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Y2hyb21pdW0vRm9udExpbnV4LmNwcApAQCAtNTcsNiArNTcsMjMgQEAgYm9vbCBGb250OjpjYW5S
ZXR1cm5GYWxsYmFja0ZvbnRzRm9yQ29tcGxleFRleHQoKQogICAgIHJldHVybiBmYWxzZTsKIH0K
IAorc3RhdGljIGJvb2wgaXNDYW52YXNNdWx0aUxheWVyZWQoU2tDYW52YXMqIGNhbnZhcykKK3sK
KyAgICBTa0NhbnZhczo6TGF5ZXJJdGVyIGxheWVySXRlcmF0b3IoY2FudmFzLCBmYWxzZSk7Cisg
ICAgbGF5ZXJJdGVyYXRvci5uZXh0KCk7CisgICAgcmV0dXJuICFsYXllckl0ZXJhdG9yLmRvbmUo
KTsKK30KKworc3RhdGljIGJvb2wgYWRqdXN0VGV4dFJlbmRlck1vZGUoU2tQYWludCogcGFpbnQs
IGJvb2wgaXNDYW52YXNNdWx0aUxheWVyZWQpCit7CisgICAgLy8gT3VyIGxheWVycyBvbmx5IGhh
dmUgYSBzaW5nbGUgYWxwaGEgY2hhbm5lbC4gVGhpcyBtZWFucyB0aGF0IHN1YnBpeGVsCisgICAg
Ly8gcmVuZGVyZWQgdGV4dCBjYW5ub3QgYmUgY29tcG9zaXRpZWQgY29ycmVjdGx5IHdoZW4gdGhl
IGxheWVyIGlzCisgICAgLy8gY29sbGFwc2VkLiBUaGVyZWZvcmUsIHN1YnBpeGVsIHRleHQgaXMg
ZGlzYWJsZWQgd2hlbiB3ZSBhcmUgZHJhd2luZworICAgIC8vIG9udG8gYSBsYXllci4KKyAgICBp
ZiAoaXNDYW52YXNNdWx0aUxheWVyZWQpCisgICAgICAgIHBhaW50LT5zZXRMQ0RSZW5kZXJUZXh0
KGZhbHNlKTsKK30KKwogdm9pZCBGb250OjpkcmF3R2x5cGhzKEdyYXBoaWNzQ29udGV4dCogZ2Ms
IGNvbnN0IFNpbXBsZUZvbnREYXRhKiBmb250LAogICAgICAgICAgICAgICAgICAgICAgIGNvbnN0
IEdseXBoQnVmZmVyJiBnbHlwaEJ1ZmZlciwgIGludCBmcm9tLCBpbnQgbnVtR2x5cGhzLAogICAg
ICAgICAgICAgICAgICAgICAgIGNvbnN0IEZsb2F0UG9pbnQmIHBvaW50KSBjb25zdCB7CkBAIC04
NCwxMiArMTAxLDE0IEBAIHZvaWQgRm9udDo6ZHJhd0dseXBocyhHcmFwaGljc0NvbnRleHQqIGdj
LCBjb25zdCBTaW1wbGVGb250RGF0YSogZm9udCwKIAogICAgIFNrQ2FudmFzKiBjYW52YXMgPSBn
Yy0+cGxhdGZvcm1Db250ZXh0KCktPmNhbnZhcygpOwogICAgIGludCB0ZXh0TW9kZSA9IGdjLT5w
bGF0Zm9ybUNvbnRleHQoKS0+Z2V0VGV4dERyYXdpbmdNb2RlKCk7CisgICAgYm9vbCBoYXZlTXVs
dGlwbGVMYXllcnMgPSBpc0NhbnZhc011bHRpTGF5ZXJlZChjYW52YXMpOwogCiAgICAgLy8gV2Ug
ZHJhdyB0ZXh0IHVwIHRvIHR3byB0aW1lcyAob25jZSBmb3IgZmlsbCwgb25jZSBmb3Igc3Ryb2tl
KS4KICAgICBpZiAodGV4dE1vZGUgJiBjVGV4dEZpbGwpIHsKICAgICAgICAgU2tQYWludCBwYWlu
dDsKICAgICAgICAgZ2MtPnBsYXRmb3JtQ29udGV4dCgpLT5zZXR1cFBhaW50Rm9yRmlsbGluZygm
cGFpbnQpOwogICAgICAgICBmb250LT5wbGF0Zm9ybURhdGEoKS5zZXR1cFBhaW50KCZwYWludCk7
CisgICAgICAgIGFkanVzdFRleHRSZW5kZXJNb2RlKCZwYWludCwgaGF2ZU11bHRpcGxlTGF5ZXJz
KTsKICAgICAgICAgcGFpbnQuc2V0VGV4dEVuY29kaW5nKFNrUGFpbnQ6OmtHbHlwaElEX1RleHRF
bmNvZGluZyk7CiAgICAgICAgIHBhaW50LnNldENvbG9yKGdjLT5maWxsQ29sb3IoKS5yZ2IoKSk7
CiAgICAgICAgIGNhbnZhcy0+ZHJhd1Bvc1RleHQoZ2x5cGhzLCBudW1HbHlwaHMgPDwgMSwgcG9z
LCBwYWludCk7CkBAIC0xMDIsNiArMTIxLDcgQEAgdm9pZCBGb250OjpkcmF3R2x5cGhzKEdyYXBo
aWNzQ29udGV4dCogZ2MsIGNvbnN0IFNpbXBsZUZvbnREYXRhKiBmb250LAogICAgICAgICBTa1Bh
aW50IHBhaW50OwogICAgICAgICBnYy0+cGxhdGZvcm1Db250ZXh0KCktPnNldHVwUGFpbnRGb3JT
dHJva2luZygmcGFpbnQsIDAsIDApOwogICAgICAgICBmb250LT5wbGF0Zm9ybURhdGEoKS5zZXR1
cFBhaW50KCZwYWludCk7CisgICAgICAgIGFkanVzdFRleHRSZW5kZXJNb2RlKCZwYWludCwgaGF2
ZU11bHRpcGxlTGF5ZXJzKTsKICAgICAgICAgcGFpbnQuc2V0VGV4dEVuY29kaW5nKFNrUGFpbnQ6
OmtHbHlwaElEX1RleHRFbmNvZGluZyk7CiAgICAgICAgIHBhaW50LnNldENvbG9yKGdjLT5zdHJv
a2VDb2xvcigpLnJnYigpKTsKIApAQCAtNDcyLDE1ICs0OTIsMTggQEAgdm9pZCBGb250OjpkcmF3
Q29tcGxleFRleHQoR3JhcGhpY3NDb250ZXh0KiBnYywgY29uc3QgVGV4dFJ1biYgcnVuLAogICAg
IH0KIAogICAgIFRleHRSdW5XYWxrZXIgd2Fsa2VyKHJ1biwgcG9pbnQueCgpLCB0aGlzKTsKKyAg
ICBib29sIGhhdmVNdWx0aXBsZUxheWVycyA9IGlzQ2FudmFzTXVsdGlMYXllcmVkKGNhbnZhcyk7
CiAKICAgICB3aGlsZSAod2Fsa2VyLm5leHRTY3JpcHRSdW4oKSkgewogICAgICAgICBpZiAoZmls
bCkgewogICAgICAgICAgICAgd2Fsa2VyLmZvbnRQbGF0Zm9ybURhdGFGb3JTY3JpcHRSdW4oKS0+
c2V0dXBQYWludCgmZmlsbFBhaW50KTsKKyAgICAgICAgICAgIGFkanVzdFRleHRSZW5kZXJNb2Rl
KCZmaWxsUGFpbnQsIGhhdmVNdWx0aXBsZUxheWVycyk7CiAgICAgICAgICAgICBjYW52YXMtPmRy
YXdQb3NUZXh0SCh3YWxrZXIuZ2x5cGhzKCksIHdhbGtlci5sZW5ndGgoKSA8PCAxLCB3YWxrZXIu
eFBvc2l0aW9ucygpLCBwb2ludC55KCksIGZpbGxQYWludCk7CiAgICAgICAgIH0KIAogICAgICAg
ICBpZiAoc3Ryb2tlKSB7CiAgICAgICAgICAgICB3YWxrZXIuZm9udFBsYXRmb3JtRGF0YUZvclNj
cmlwdFJ1bigpLT5zZXR1cFBhaW50KCZzdHJva2VQYWludCk7CisgICAgICAgICAgICBhZGp1c3RU
ZXh0UmVuZGVyTW9kZSgmc3Ryb2tlUGFpbnQsIGhhdmVNdWx0aXBsZUxheWVycyk7CiAgICAgICAg
ICAgICBjYW52YXMtPmRyYXdQb3NUZXh0SCh3YWxrZXIuZ2x5cGhzKCksIHdhbGtlci5sZW5ndGgo
KSA8PCAxLCB3YWxrZXIueFBvc2l0aW9ucygpLCBwb2ludC55KCksIHN0cm9rZVBhaW50KTsKICAg
ICAgICAgfQogICAgIH0K
</data>
<flag name="review"
          id="22992"
          type_id="1"
          status="+"
          setter="eric"
    />
          </attachment>
      

    </bug>

</bugzilla>