<?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>27671</bug_id>
          
          <creation_ts>2009-07-24 17:18:01 -0700</creation_ts>
          <short_desc>Add functions to print the glyph page trees for debugging</short_desc>
          <delta_ts>2009-07-24 20:51:07 -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>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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>mitz</reporter>
          <assigned_to>mitz</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>134687</commentid>
    <comment_count>0</comment_count>
    <who name="">mitz</who>
    <bug_when>2009-07-24 17:18:01 -0700</bug_when>
    <thetext>Patch forthcoming</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>134688</commentid>
    <comment_count>1</comment_count>
      <attachid>33478</attachid>
    <who name="">mitz</who>
    <bug_when>2009-07-24 17:23:50 -0700</bug_when>
    <thetext>Created attachment 33478
Add functions to print the glyph page trees for debugging</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>134701</commentid>
    <comment_count>2</comment_count>
      <attachid>33478</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2009-07-24 18:08:08 -0700</bug_when>
    <thetext>Comment on attachment 33478
Add functions to print the glyph page trees for debugging

&gt; +#ifndef NDEBUG
&gt; +#include &quot;PlatformString.h&quot;
&gt; +#endif

I&apos;m conflicted about how useful it is to have the #include be #ifndef&apos;d. Maybe it&apos;s better to not do that.

But also, declaring a function that returns a String requires only a forward declaration, not the definition, so the include isn&apos;t needed.

&gt; +#ifndef NDEBUG
&gt; +#include &quot;PlatformString.h&quot;
&gt; +#endif
&gt; +
&gt;  namespace WebCore {
&gt;  
&gt;  class FontPlatformData {
&gt; @@ -107,6 +111,10 @@ public:
&gt;  #endif
&gt;      };
&gt;  
&gt; +#ifndef NDEBUG
&gt; +    String description() const { return String(); }
&gt; +#endif

In this case, and others like it, &quot;PlatformString.h&quot; is needed, but only because the implementation is in the header. Can we put the implementation in a .cpp file instead?

r=me, but consider a version with less PlatformString.h</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>134705</commentid>
    <comment_count>3</comment_count>
    <who name="">mitz</who>
    <bug_when>2009-07-24 20:51:07 -0700</bug_when>
    <thetext>Landed in &lt;http://trac.webkit.org/projects/webkit/changeset/46388&gt;.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>33478</attachid>
            <date>2009-07-24 17:23:50 -0700</date>
            <delta_ts>2009-07-24 18:08:08 -0700</delta_ts>
            <desc>Add functions to print the glyph page trees for debugging</desc>
            <filename>27671_r1.diff</filename>
            <type>text/plain</type>
            <size>13379</size>
            <attacher>mitz</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA0NjM4MykKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsNDggQEAKKzIwMDktMDctMjQgIERhbiBCZXJuc3RlaW4gIDxtaXR6QGFwcGxlLmNv
bT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQg
ZnVuY3Rpb25zIHRvIHByaW50IHRoZSBnbHlwaCBwYWdlIHRyZWVzIGZvciBkZWJ1Z2dpbmcKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI3NjcxCisKKyAg
ICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9Gb250RGF0YS5oOiBEZWZpbmVkIGEgZGVzY3JpcHRp
b24oKSBtZXRob2QuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9HbHlwaFBhZ2VUcmVl
Tm9kZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpHbHlwaFBhZ2VUcmVlTm9kZTo6c2hvd1N1YnRy
ZWUpOiBBZGRlZC4gUHJpbnRzIHRoZSBub2RlIGFuZAorICAgICAgICAgICAgaXRzIGRlc2NlbmRh
bnRzLgorICAgICAgICAoc2hvd0dseXBoUGFnZVRyZWVzKTogQWRkZWQuIFByaW50cyBhbGwgZ2x5
cGggcGFnZSB0cmVlcy4KKyAgICAgICAgKHNob3dHbHlwaFBhZ2VUcmVlKTogQWRkZWQuIFByaW50
cyB0aGUgZ2x5cGggcGFnZSB0cmVlIGZvciBhIGdpdmVuIHBhZ2UuCisKKyAgICAgICAgKiBwbGF0
Zm9ybS9ncmFwaGljcy9HbHlwaFBhZ2VUcmVlTm9kZS5oOgorICAgICAgICAqIHBsYXRmb3JtL2dy
YXBoaWNzL1NlZ21lbnRlZEZvbnREYXRhLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNlZ21lbnRl
ZEZvbnREYXRhOjpkZXNjcmlwdGlvbik6IEFkZGVkLgorCisgICAgICAgICogcGxhdGZvcm0vZ3Jh
cGhpY3MvU2VnbWVudGVkRm9udERhdGEuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9T
aW1wbGVGb250RGF0YS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTaW1wbGVGb250RGF0YTo6ZGVz
Y3JpcHRpb24pOiBBZGRlZC4gVXNlcyB0aGUgcGxhdGZvcm0gZGF0YQorICAgICAgICAgICAgYXMg
dGhlIGRlc2NyaXB0aW9uIGZvciBub24tc3ZnLCBub24tY3VzdG9tIGZvbnRzLgorICAgICAgICAq
IHBsYXRmb3JtL2dyYXBoaWNzL1NpbXBsZUZvbnREYXRhLmg6CisgICAgICAgICogcGxhdGZvcm0v
Z3JhcGhpY3MvZ3RrL0ZvbnRQbGF0Zm9ybURhdGEuaDoKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRQ
bGF0Zm9ybURhdGE6OmRlc2NyaXB0aW9uKTogQWRkZWQuIFJldHVybnMgYSBudWxsIHN0cmluZy4K
KworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL21hYy9Gb250UGxhdGZvcm1EYXRhLmg6Cisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvbWFjL0ZvbnRQbGF0Zm9ybURhdGFNYWMubW06Cisg
ICAgICAgIChXZWJDb3JlOjpGb250UGxhdGZvcm1EYXRhOjpkZXNjcmlwdGlvbik6ICBBZGRlZC4g
UmV0dXJucyB0aGUKKyAgICAgICAgICAgIGRlc2NyaXB0aW9uIG9mIHRoZSBDR0ZvbnQsIHRoZSBz
aXplIGFuZCB0aGUgc3ludGhldGljIHN0eWxlIGZsYWdzLAorICAgICAgICAgICAgaWYgc2V0Lgor
CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvcXQvRm9udFBsYXRmb3JtRGF0YS5oOgorICAg
ICAgICAoV2ViQ29yZTo6Rm9udFBsYXRmb3JtRGF0YTo6ZGVzY3JpcHRpb24pOiBBZGRlZC4gUmV0
dXJucyBhIG51bGwgc3RyaW5nLgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mvd2luL0Zv
bnRQbGF0Zm9ybURhdGEuaDoKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRQbGF0Zm9ybURhdGE6OmRl
c2NyaXB0aW9uKTogQWRkZWQuIFJldHVybnMgYSBudWxsIHN0cmluZy4KKworICAgICAgICAqIHBs
YXRmb3JtL2dyYXBoaWNzL3dpbmNlL0ZvbnRQbGF0Zm9ybURhdGEuaDoKKyAgICAgICAgKFdlYkNv
cmU6OkZvbnRQbGF0Zm9ybURhdGE6OmRlc2NyaXB0aW9uKTogQWRkZWQuIFJldHVybnMgYSBudWxs
IHN0cmluZy4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL3d4L0ZvbnRQbGF0Zm9ybURh
dGEuaDoKKyAgICAgICAgKFdlYkNvcmU6OkZvbnRQbGF0Zm9ybURhdGE6OmRlc2NyaXB0aW9uKTog
QWRkZWQuIFJldHVybnMgYSBudWxsIHN0cmluZy4KKwogMjAwOS0wNy0yNCAgTWFkcyBBZ2VyICA8
YWdlckBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgQWRhbSBCYXJ0aC4KSW5k
ZXg6IFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvRm9udERhdGEuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBX
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0ZvbnREYXRhLmgJKHJldmlzaW9uIDQ2MzU1KQorKysg
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9Gb250RGF0YS5oCSh3b3JraW5nIGNvcHkpCkBAIC0y
OSw2ICsyOSwxMCBAQAogI2luY2x1ZGUgPHd0Zi9Ob25jb3B5YWJsZS5oPgogI2luY2x1ZGUgPHd0
Zi91bmljb2RlL1VuaWNvZGUuaD4KIAorI2lmbmRlZiBOREVCVUcKKyNpbmNsdWRlICJQbGF0Zm9y
bVN0cmluZy5oIgorI2VuZGlmCisKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgU2ltcGxl
Rm9udERhdGE7CkBAIC01MSw2ICs1NSwxMCBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRNYXhHbHlw
aFBhZ2VUcmVlTGV2ZWwodW5zaWduZWQgbGV2ZWwpIGNvbnN0IHsgbV9tYXhHbHlwaFBhZ2VUcmVl
TGV2ZWwgPSBsZXZlbDsgfQogICAgIHVuc2lnbmVkIG1heEdseXBoUGFnZVRyZWVMZXZlbCgpIGNv
bnN0IHsgcmV0dXJuIG1fbWF4R2x5cGhQYWdlVHJlZUxldmVsOyB9CiAKKyNpZm5kZWYgTkRFQlVH
CisgICAgdmlydHVhbCBTdHJpbmcgZGVzY3JpcHRpb24oKSBjb25zdCA9IDA7CisjZW5kaWYKKwog
cHJpdmF0ZToKICAgICBtdXRhYmxlIHVuc2lnbmVkIG1fbWF4R2x5cGhQYWdlVHJlZUxldmVsOwog
fTsKSW5kZXg6IFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR2x5cGhQYWdlVHJlZU5vZGUuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR2x5cGhQYWdlVHJlZU5v
ZGUuY3BwCShyZXZpc2lvbiA0NjM1NSkKKysrIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR2x5
cGhQYWdlVHJlZU5vZGUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zNCw2ICszNCwxMCBAQAogI2lu
Y2x1ZGUgIlNpbXBsZUZvbnREYXRhLmgiCiAjaW5jbHVkZSA8d3RmL3VuaWNvZGUvVW5pY29kZS5o
PgogCisjaWZuZGVmIE5ERUJVRworI2luY2x1ZGUgIkNTdHJpbmcuaCIKKyNlbmRpZgorCiBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAKIHVzaW5nIHN0ZDo6bWF4OwpAQCAtMzc3LDQgKzM4MSw0MSBAQCB2
b2lkIEdseXBoUGFnZVRyZWVOb2RlOjpwcnVuZUZvbnREYXRhKGNvCiAgICAgICAgIGl0LT5zZWNv
bmQtPnBydW5lRm9udERhdGEoZm9udERhdGEsIGxldmVsKTsKIH0KIAorI2lmbmRlZiBOREVCVUcK
KyAgICB2b2lkIEdseXBoUGFnZVRyZWVOb2RlOjpzaG93U3VidHJlZSgpCisgICAgeworICAgICAg
ICBWZWN0b3I8Y2hhcj4gaW5kZW50KGxldmVsKCkpOworICAgICAgICBpbmRlbnQuZmlsbCgnXHQn
LCBsZXZlbCgpKTsKKyAgICAgICAgaW5kZW50LmFwcGVuZCgwKTsKKworICAgICAgICBIYXNoTWFw
PGNvbnN0IEZvbnREYXRhKiwgR2x5cGhQYWdlVHJlZU5vZGUqPjo6aXRlcmF0b3IgZW5kID0gbV9j
aGlsZHJlbi5lbmQoKTsKKyAgICAgICAgZm9yIChIYXNoTWFwPGNvbnN0IEZvbnREYXRhKiwgR2x5
cGhQYWdlVHJlZU5vZGUqPjo6aXRlcmF0b3IgaXQgPSBtX2NoaWxkcmVuLmJlZ2luKCk7IGl0ICE9
IGVuZDsgKytpdCkgeworICAgICAgICAgICAgcHJpbnRmKCIlc1x0JXAgJXNcbiIsIGluZGVudC5k
YXRhKCksIGl0LT5maXJzdCwgaXQtPmZpcnN0LT5kZXNjcmlwdGlvbigpLnV0ZjgoKS5kYXRhKCkp
OworICAgICAgICAgICAgaXQtPnNlY29uZC0+c2hvd1N1YnRyZWUoKTsKKyAgICAgICAgfQorICAg
ICAgICBpZiAobV9zeXN0ZW1GYWxsYmFja0NoaWxkKSB7CisgICAgICAgICAgICBwcmludGYoIiVz
XHQqIGZhbGxiYWNrXG4iLCBpbmRlbnQuZGF0YSgpKTsKKyAgICAgICAgICAgIG1fc3lzdGVtRmFs
bGJhY2tDaGlsZC0+c2hvd1N1YnRyZWUoKTsKKyAgICAgICAgfQorICAgIH0KKyNlbmRpZgorCit9
CisKKyNpZm5kZWYgTkRFQlVHCit2b2lkIHNob3dHbHlwaFBhZ2VUcmVlcygpCit7CisgICAgcHJp
bnRmKCJQYWdlIDA6XG4iKTsKKyAgICBzaG93R2x5cGhQYWdlVHJlZSgwKTsKKyAgICBIYXNoTWFw
PGludCwgV2ViQ29yZTo6R2x5cGhQYWdlVHJlZU5vZGUqPjo6aXRlcmF0b3IgZW5kID0gV2ViQ29y
ZTo6R2x5cGhQYWdlVHJlZU5vZGU6OnJvb3RzLT5lbmQoKTsKKyAgICBmb3IgKEhhc2hNYXA8aW50
LCBXZWJDb3JlOjpHbHlwaFBhZ2VUcmVlTm9kZSo+OjppdGVyYXRvciBpdCA9IFdlYkNvcmU6Okds
eXBoUGFnZVRyZWVOb2RlOjpyb290cy0+YmVnaW4oKTsgaXQgIT0gZW5kOyArK2l0KSB7CisgICAg
ICAgIHByaW50ZigiXG5QYWdlICVkOlxuIiwgaXQtPmZpcnN0KTsKKyAgICAgICAgc2hvd0dseXBo
UGFnZVRyZWUoaXQtPmZpcnN0KTsKKyAgICB9CiB9CisKK3ZvaWQgc2hvd0dseXBoUGFnZVRyZWUo
dW5zaWduZWQgcGFnZU51bWJlcikKK3sKKyAgICBXZWJDb3JlOjpHbHlwaFBhZ2VUcmVlTm9kZTo6
Z2V0Um9vdChwYWdlTnVtYmVyKS0+c2hvd1N1YnRyZWUoKTsKK30KKyNlbmRpZgpJbmRleDogV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9HbHlwaFBhZ2VUcmVlTm9kZS5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR2x5cGhQYWdlVHJlZU5vZGUuaAkocmV2aXNpb24g
NDYzNTUpCisrKyBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dseXBoUGFnZVRyZWVOb2RlLmgJ
KHdvcmtpbmcgY29weSkKQEAgLTM1LDYgKzM1LDExIEBACiAjaW5jbHVkZSA8d3RmL1JlZkNvdW50
ZWQuaD4KICNpbmNsdWRlIDx3dGYvdW5pY29kZS9Vbmljb2RlLmg+CiAKKyNpZm5kZWYgTkRFQlVH
Cit2b2lkIHNob3dHbHlwaFBhZ2VUcmVlcygpOwordm9pZCBzaG93R2x5cGhQYWdlVHJlZSh1bnNp
Z25lZCBwYWdlTnVtYmVyKTsKKyNlbmRpZgorCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNz
IEZvbnREYXRhOwpAQCAtMjEwLDYgKzIxNSwxMCBAQCBwcml2YXRlOgogICAgIHN0YXRpYyBHbHlw
aFBhZ2VUcmVlTm9kZSogZ2V0Um9vdCh1bnNpZ25lZCBwYWdlTnVtYmVyKTsKICAgICB2b2lkIGlu
aXRpYWxpemVQYWdlKGNvbnN0IEZvbnREYXRhKiwgdW5zaWduZWQgcGFnZU51bWJlcik7CiAKKyNp
Zm5kZWYgTkRFQlVHCisgICAgdm9pZCBzaG93U3VidHJlZSgpOworI2VuZGlmCisKICAgICBHbHlw
aFBhZ2VUcmVlTm9kZSogbV9wYXJlbnQ7CiAgICAgUmVmUHRyPEdseXBoUGFnZT4gbV9wYWdlOwog
ICAgIHVuc2lnbmVkIG1fbGV2ZWw7CkBAIC0yMjAsNiArMjI5LDggQEAgcHJpdmF0ZToKIAogI2lm
bmRlZiBOREVCVUcKICAgICB1bnNpZ25lZCBtX3BhZ2VOdW1iZXI7CisKKyAgICBmcmllbmQgdm9p
ZCA6OnNob3dHbHlwaFBhZ2VUcmVlKHVuc2lnbmVkIHBhZ2VOdW1iZXIpOwogI2VuZGlmCiB9Owog
CkluZGV4OiBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1NlZ21lbnRlZEZvbnREYXRhLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1NlZ21lbnRlZEZvbnREYXRh
LmNwcAkocmV2aXNpb24gNDYzNTUpCisrKyBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1NlZ21l
bnRlZEZvbnREYXRhLmNwcAkod29ya2luZyBjb3B5KQpAQCAtODcsNCArODcsMTEgQEAgYm9vbCBT
ZWdtZW50ZWRGb250RGF0YTo6aXNTZWdtZW50ZWQoKSBjbwogICAgIHJldHVybiB0cnVlOwogfQog
CisjaWZuZGVmIE5ERUJVRworU3RyaW5nIFNlZ21lbnRlZEZvbnREYXRhOjpkZXNjcmlwdGlvbigp
IGNvbnN0Cit7CisgICAgcmV0dXJuICJbc2VnbWVudGVkIGZvbnRdIjsKK30KKyNlbmRpZgorCiB9
IC8vIG5hbWVzcGFjZSBXZWJDb3JlCkluZGV4OiBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1Nl
Z21lbnRlZEZvbnREYXRhLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9TZWdtZW50ZWRGb250RGF0YS5oCShyZXZpc2lvbiA0NjM1NSkKKysrIFdlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvU2VnbWVudGVkRm9udERhdGEuaAkod29ya2luZyBjb3B5KQpAQCAtNTksNiAr
NTksMTAgQEAgcHVibGljOgogICAgIHVuc2lnbmVkIG51bVJhbmdlcygpIGNvbnN0IHsgcmV0dXJu
IG1fcmFuZ2VzLnNpemUoKTsgfQogICAgIGNvbnN0IEZvbnREYXRhUmFuZ2UmIHJhbmdlQXQodW5z
aWduZWQgaSkgY29uc3QgeyByZXR1cm4gbV9yYW5nZXNbaV07IH0KIAorI2lmbmRlZiBOREVCVUcK
KyAgICB2aXJ0dWFsIFN0cmluZyBkZXNjcmlwdGlvbigpIGNvbnN0OworI2VuZGlmCisKIHByaXZh
dGU6CiAgICAgdmlydHVhbCBjb25zdCBTaW1wbGVGb250RGF0YSogZm9udERhdGFGb3JDaGFyYWN0
ZXIoVUNoYXIzMikgY29uc3Q7CiAgICAgdmlydHVhbCBib29sIGNvbnRhaW5zQ2hhcmFjdGVycyhj
b25zdCBVQ2hhciosIGludCBsZW5ndGgpIGNvbnN0OwpJbmRleDogV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9TaW1wbGVGb250RGF0YS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9TaW1wbGVGb250RGF0YS5jcHAJKHJldmlzaW9uIDQ2MzU1KQorKysgV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9TaW1wbGVGb250RGF0YS5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTE5MCw0ICsxOTAsMTYgQEAgYm9vbCBTaW1wbGVGb250RGF0YTo6aXNTZWdtZW50ZWQoKSBjb25z
dAogICAgIHJldHVybiBmYWxzZTsKIH0KIAorI2lmbmRlZiBOREVCVUcKK1N0cmluZyBTaW1wbGVG
b250RGF0YTo6ZGVzY3JpcHRpb24oKSBjb25zdAoreworICAgIGlmIChpc1NWR0ZvbnQoKSkKKyAg
ICAgICAgcmV0dXJuICJbU1ZHIGZvbnRdIjsKKyAgICBpZiAoaXNDdXN0b21Gb250KCkpCisgICAg
ICAgIHJldHVybiAiW2N1c3RvbSBmb250XSI7CisKKyAgICByZXR1cm4gcGxhdGZvcm1EYXRhKCku
ZGVzY3JpcHRpb24oKTsKK30KKyNlbmRpZgorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCkluZGV4
OiBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1NpbXBsZUZvbnREYXRhLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9TaW1wbGVGb250RGF0YS5oCShyZXZpc2lvbiA0
NjM1NSkKKysrIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvU2ltcGxlRm9udERhdGEuaAkod29y
a2luZyBjb3B5KQpAQCAtMTA1LDYgKzEwNSwxMCBAQCBwdWJsaWM6CiAKICAgICBjb25zdCBHbHlw
aERhdGEmIG1pc3NpbmdHbHlwaERhdGEoKSBjb25zdCB7IHJldHVybiBtX21pc3NpbmdHbHlwaERh
dGE7IH0KIAorI2lmbmRlZiBOREVCVUcKKyAgICB2aXJ0dWFsIFN0cmluZyBkZXNjcmlwdGlvbigp
IGNvbnN0OworI2VuZGlmCisKICNpZiBQTEFURk9STShNQUMpCiAgICAgTlNGb250KiBnZXROU0Zv
bnQoKSBjb25zdCB7IHJldHVybiBtX3BsYXRmb3JtRGF0YS5mb250KCk7IH0KICNlbmRpZgpJbmRl
eDogV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ndGsvRm9udFBsYXRmb3JtRGF0YS5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3RrL0ZvbnRQbGF0Zm9ybURhdGEu
aAkocmV2aXNpb24gNDYzNTUpCisrKyBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2d0ay9Gb250
UGxhdGZvcm1EYXRhLmgJKHdvcmtpbmcgY29weSkKQEAgLTQwLDYgKzQwLDEwIEBACiAjZXJyb3Ig
Ik11c3QgZGVmaW5lZCBhIGZvbnQgYmFja2VuZCIKICNlbmRpZgogCisjaWZuZGVmIE5ERUJVRwor
I2luY2x1ZGUgIlBsYXRmb3JtU3RyaW5nLmgiCisjZW5kaWYKKwogbmFtZXNwYWNlIFdlYkNvcmUg
ewogCiBjbGFzcyBGb250UGxhdGZvcm1EYXRhIHsKQEAgLTEwNyw2ICsxMTEsMTAgQEAgcHVibGlj
OgogI2VuZGlmCiAgICAgfTsKIAorI2lmbmRlZiBOREVCVUcKKyAgICBTdHJpbmcgZGVzY3JpcHRp
b24oKSBjb25zdCB7IHJldHVybiBTdHJpbmcoKTsgfQorI2VuZGlmCisKICNpZiBkZWZpbmVkKFVT
RV9GUkVFVFlQRSkKICAgICBGY1BhdHRlcm4qIG1fcGF0dGVybjsKICAgICBGY0ZvbnRTZXQqIG1f
ZmFsbGJhY2tzOwpJbmRleDogV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9tYWMvRm9udFBsYXRm
b3JtRGF0YS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvbWFjL0Zv
bnRQbGF0Zm9ybURhdGEuaAkocmV2aXNpb24gNDYzNTUpCisrKyBXZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL21hYy9Gb250UGxhdGZvcm1EYXRhLmgJKHdvcmtpbmcgY29weSkKQEAgLTI2LDYgKzI2
LDEwIEBACiAKICNpbmNsdWRlICJTdHJpbmdJbXBsLmgiCiAKKyNpZm5kZWYgTkRFQlVHCisjaW5j
bHVkZSAiUGxhdGZvcm1TdHJpbmcuaCIKKyNlbmRpZgorCiAjaWZkZWYgX19PQkpDX18KIEBjbGFz
cyBOU0ZvbnQ7CiAjZWxzZQpAQCAtMTE4LDYgKzEyMiwxMCBAQCBzdHJ1Y3QgRm9udFBsYXRmb3Jt
RGF0YSB7CiAgICAgQ0dGb250UmVmIGNnRm9udCgpIGNvbnN0IHsgcmV0dXJuIG1fY2dGb250OyB9
CiAjZW5kaWYKIAorI2lmbmRlZiBOREVCVUcKKyAgICBTdHJpbmcgZGVzY3JpcHRpb24oKSBjb25z
dDsKKyNlbmRpZgorCiBwcml2YXRlOgogICAgIHN0YXRpYyBOU0ZvbnQgKmhhc2hUYWJsZURlbGV0
ZWRGb250VmFsdWUoKSB7IHJldHVybiByZWludGVycHJldF9jYXN0PE5TRm9udCAqPigtMSk7IH0K
IApJbmRleDogV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9tYWMvRm9udFBsYXRmb3JtRGF0YU1h
Yy5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL21hYy9Gb250UGxh
dGZvcm1EYXRhTWFjLm1tCShyZXZpc2lvbiA0NjM1NSkKKysrIFdlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvbWFjL0ZvbnRQbGF0Zm9ybURhdGFNYWMubW0JKHdvcmtpbmcgY29weSkKQEAgLTEwNyw0
ICsxMDcsMTIgQEAgYm9vbCBGb250UGxhdGZvcm1EYXRhOjphbGxvd3NMaWdhdHVyZXMoKQogICAg
IHJldHVybiAhW1ttX2ZvbnQgY292ZXJlZENoYXJhY3RlclNldF0gY2hhcmFjdGVySXNNZW1iZXI6
J2EnXTsKIH0KIAorI2lmbmRlZiBOREVCVUcKK1N0cmluZyBGb250UGxhdGZvcm1EYXRhOjpkZXNj
cmlwdGlvbigpIGNvbnN0Cit7CisgICAgUmV0YWluUHRyPENGU3RyaW5nUmVmPiBjZ0ZvbnREZXNj
cmlwdGlvbihBZG9wdENGLCBDRkNvcHlEZXNjcmlwdGlvbihjZ0ZvbnQoKSkpOworICAgIHJldHVy
biBTdHJpbmcoY2dGb250RGVzY3JpcHRpb24uZ2V0KCkpICsgIiAiICsgU3RyaW5nOjpudW1iZXIo
bV9zaXplKSArIChtX3N5bnRoZXRpY0JvbGQgPyAiIHN5bnRoZXRpYyBib2xkIiA6ICIiKSArICht
X3N5bnRoZXRpY09ibGlxdWUgPyAiIHN5bnRoZWl0aWMgb2JsaXF1ZSIgOiAiIik7Cit9CisjZW5k
aWYKKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpJbmRleDogV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9xdC9Gb250UGxhdGZvcm1EYXRhLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9xdC9Gb250UGxhdGZvcm1EYXRhLmgJKHJldmlzaW9uIDQ2MzU1KQorKysgV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9xdC9Gb250UGxhdGZvcm1EYXRhLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTI0LDkgKzI0LDEyIEBACiAjZGVmaW5lIEZvbnRQbGF0Zm9ybURhdGFfaAogCiAjaW5j
bHVkZSAiRm9udERlc2NyaXB0aW9uLmgiCi0KICNpbmNsdWRlIDxRRm9udD4KIAorI2lmbmRlZiBO
REVCVUcKKyNpbmNsdWRlICJQbGF0Zm9ybVN0cmluZy5oIgorI2VuZGlmCisKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAogY2xhc3MgRm9udFBsYXRmb3JtRGF0YQpAQCAtNDcsNiArNTAsMTAgQEAgcHVi
bGljOgogICAgIGJvb2wgc21hbGxDYXBzKCkgY29uc3QgeyByZXR1cm4gbV9mb250LmNhcGl0YWxp
emF0aW9uKCkgPT0gUUZvbnQ6OlNtYWxsQ2FwczsgfQogICAgIGludCBwaXhlbFNpemUoKSBjb25z
dCB7IHJldHVybiBtX2ZvbnQucGl4ZWxTaXplKCk7IH0KIAorI2lmbmRlZiBOREVCVUcKKyAgICBT
dHJpbmcgZGVzY3JpcHRpb24oKSBjb25zdCB7IHJldHVybiBTdHJpbmcoKTsgfQorI2VuZGlmCisK
ICAgICBmbG9hdCBtX3NpemU7CiAgICAgYm9vbCBtX2JvbGQ7CiAgICAgYm9vbCBtX29ibGlxdWU7
CkluZGV4OiBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3dpbi9Gb250UGxhdGZvcm1EYXRhLmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy93aW4vRm9udFBsYXRmb3Jt
RGF0YS5oCShyZXZpc2lvbiA0NjM1NSkKKysrIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mvd2lu
L0ZvbnRQbGF0Zm9ybURhdGEuaAkod29ya2luZyBjb3B5KQpAQCAtMzMsNiArMzMsMTAgQEAKICNp
bmNsdWRlIDxjYWlyby13aW4zMi5oPgogI2VuZGlmCiAKKyNpZm5kZWYgTkRFQlVHCisjaW5jbHVk
ZSAiUGxhdGZvcm1TdHJpbmcuaCIKKyNlbmRpZgorCiB0eXBlZGVmIHN0cnVjdCBIRk9OVF9fKiBI
Rk9OVDsKIHR5cGVkZWYgc3RydWN0IENHRm9udCogQ0dGb250UmVmOwogCkBAIC0xMDcsNiArMTEx
LDEwIEBAIHB1YmxpYzoKICAgICAgICAgICAgICAgIG1fdXNlR0RJID09IG90aGVyLm1fdXNlR0RJ
OwogICAgIH0KIAorI2lmbmRlZiBOREVCVUcKKyAgICBTdHJpbmcgZGVzY3JpcHRpb24oKSBjb25z
dCB7IHJldHVybiBTdHJpbmcoKTsgfQorI2VuZGlmCisKIHByaXZhdGU6CiAgICAgY2xhc3MgUmVm
Q291bnRlZEhGT05UIDogcHVibGljIFJlZkNvdW50ZWQ8UmVmQ291bnRlZEhGT05UPiB7CiAgICAg
cHVibGljOgpAQCAtMTMyLDYgKzE0MCw5IEBAIHByaXZhdGU6CiAKICAgICB2b2lkIHBsYXRmb3Jt
RGF0YUluaXQoSEZPTlQgZm9udCwgZmxvYXQgc2l6ZSwgSERDIGhkYywgV0NIQVIqIGZhY2VOYW1l
KTsKIAorI2lmbmRlZiBOREVCVUcKKyAgICBTdHJpbmcgZGVzY3JpcHRpb24oKSBjb25zdCB7IHJl
dHVybiBTdHJpbmcoKTsgfQorI2VuZGlmCiAgICAgUmVmUHRyPFJlZkNvdW50ZWRIRk9OVD4gbV9m
b250OwogI2lmIFBMQVRGT1JNKENHKQogICAgIFJldGFpblB0cjxDR0ZvbnRSZWY+IG1fY2dGb250
OwpJbmRleDogV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy93aW5jZS9Gb250UGxhdGZvcm1EYXRh
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy93aW5jZS9Gb250UGxh
dGZvcm1EYXRhLmgJKHJldmlzaW9uIDQ2MzU1KQorKysgV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy93aW5jZS9Gb250UGxhdGZvcm1EYXRhLmgJKHdvcmtpbmcgY29weSkKQEAgLTI5LDYgKzI5LDEw
IEBACiAjaW5jbHVkZSAiU3RyaW5nSW1wbC5oIgogI2luY2x1ZGUgPHd0Zi9Ob25jb3B5YWJsZS5o
PgogCisjaWZuZGVmIE5ERUJVRworI2luY2x1ZGUgIlBsYXRmb3JtU3RyaW5nLmgiCisjZW5kaWYK
KwogdHlwZWRlZiBzdHJ1Y3QgdGFnVEVYVE1FVFJJQ1cgVEVYVE1FVFJJQzsKIHR5cGVkZWYgc3Ry
dWN0IHRhZ0xPR0ZPTlRXIExPR0ZPTlQ7CiAKQEAgLTc1LDYgKzc5LDExIEBAIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKICAgICAgICAgc3RhdGljIERXT1JEIGdldEtub3duRm9udENvZGVQYWdlcyhjb25z
dCB3Y2hhcl90KiBmYW1pbHkpOwogICAgICAgICBzdGF0aWMgY29uc3QgU3RyaW5nJiBkZWZhdWx0
Rm9udEZhbWlseSgpOwogICAgICAgICBzdGF0aWMgTE9ORyBhZGp1c3RlZEdESUZvbnRXZWlnaHQo
TE9ORyBnZGlGb250V2VpZ2h0LCBjb25zdCBTdHJpbmcmIGZhbWlseSk7CisKKyNpZm5kZWYgTkRF
QlVHCisgICAgICAgIFN0cmluZyBkZXNjcmlwdGlvbigpIGNvbnN0IHsgcmV0dXJuIFN0cmluZygp
OyB9CisjZW5kaWYKKwogICAgIHByaXZhdGU6CiAgICAgICAgIEZvbnRQbGF0Zm9ybVByaXZhdGVE
YXRhKiBtX3ByaXZhdGU7CiAgICAgfTsKSW5kZXg6IFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
d3gvRm9udFBsYXRmb3JtRGF0YS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3Mvd3gvRm9udFBsYXRmb3JtRGF0YS5oCShyZXZpc2lvbiA0NjM1NSkKKysrIFdlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3Mvd3gvRm9udFBsYXRmb3JtRGF0YS5oCSh3b3JraW5nIGNvcHkpCkBA
IC0zOCw2ICszOCwxMCBAQAogI2luY2x1ZGUgPHd4L2RlZnMuaD4KICNpbmNsdWRlIDx3eC9mb250
Lmg+CiAKKyNpZm5kZWYgTkRFQlVHCisjaW5jbHVkZSAiUGxhdGZvcm1TdHJpbmcuaCIKKyNlbmRp
ZgorCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIEZvbnRIb2xkZXI6IHB1YmxpYyBXVEY6
OlJlZkNvdW50ZWQ8Rm9udEhvbGRlcj4KQEAgLTExMSw3ICsxMTUsOSBAQCBwdWJsaWM6CiAKICAg
ICBib29sIGlzSGFzaFRhYmxlRGVsZXRlZFZhbHVlKCkgY29uc3QgeyByZXR1cm4gbV9mb250U3Rh
dGUgPT0gREVMRVRFRDsgfQogICAgIAotICAgIAorI2lmbmRlZiBOREVCVUcKKyAgICBTdHJpbmcg
ZGVzY3JpcHRpb24oKSBjb25zdCB7IHJldHVybiBTdHJpbmcoKTsgfQorI2VuZGlmCiAKIHByaXZh
dGU6CiAgICAgV1RGOjpSZWZQdHI8Rm9udEhvbGRlcj4gbV9mb250Owo=
</data>
<flag name="review"
          id="17751"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>