<?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>50096</bug_id>
          
          <creation_ts>2010-11-25 21:15:03 -0800</creation_ts>
          <short_desc>Avoid unnecessary calls to CTFontGetPlatformFont()</short_desc>
          <delta_ts>2010-11-27 06:23:28 -0800</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>Mac</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>dglazkov</cc>
    
    <cc>eric</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>313896</commentid>
    <comment_count>0</comment_count>
    <who name="">mitz</who>
    <bug_when>2010-11-25 21:15:03 -0800</bug_when>
    <thetext>&lt;rdar://problem/8681368&gt;

Patch forthcoming.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>313898</commentid>
    <comment_count>1</comment_count>
      <attachid>74901</attachid>
    <who name="">mitz</who>
    <bug_when>2010-11-25 21:30:03 -0800</bug_when>
    <thetext>Created attachment 74901
Remove some ATSUFontID arguments and member variables and move calls to CTFontGetPlatformFont() into methods that use the font ID</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>313902</commentid>
    <comment_count>2</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-11-25 22:02:31 -0800</bug_when>
    <thetext>Attachment 74901 did not build on chromium:
Build output: http://queues.webkit.org/results/6417056</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>313907</commentid>
    <comment_count>3</comment_count>
      <attachid>74904</attachid>
    <who name="">mitz</who>
    <bug_when>2010-11-25 22:21:35 -0800</bug_when>
    <thetext>Created attachment 74904
Remove some ATSUFontID arguments and member variables and move calls to CTFontGetPlatformFont() into methods that use the font ID</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>314084</commentid>
    <comment_count>4</comment_count>
    <who name="">mitz</who>
    <bug_when>2010-11-26 12:19:10 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/72774</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>74901</attachid>
            <date>2010-11-25 21:30:03 -0800</date>
            <delta_ts>2010-11-27 06:23:28 -0800</delta_ts>
            <desc>Remove some ATSUFontID arguments and member variables and move calls to CTFontGetPlatformFont() into methods that use the font ID</desc>
            <filename>8681368_r1.diff</filename>
            <type>text/plain</type>
            <size>12251</size>
            <attacher>mitz</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA3Mjc1MCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMzMgQEAKKzIwMTAtMTEtMjUgIERhbiBCZXJuc3RlaW4gIDxtaXR6QGFwcGxlLmNv
bT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICA8cmRh
cjovL3Byb2JsZW0vODY4MTM2OD4gQXZvaWQgdW5uZWNlc3NhcnkgY2FsbHMgdG8gQ1RGb250R2V0
UGxhdGZvcm1Gb250KCkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTUwMDk2CisKKyAgICAgICAgTm8gbmV3IHRlc3QsIHNpbmNlIGZ1bmN0aW9uYWxpdHkg
aXMgdW5jaGFuZ2VkLgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vQ3Jv
c3NQcm9jZXNzRm9udExvYWRpbmcubW06CisgICAgICAgIChXZWJDb3JlOjpGb250UGxhdGZvcm1E
YXRhOjpsb2FkRm9udCk6IFJlbW92ZWQgdGhlIEFUU1VGb250SUQgYXJndW1lbnQuCisgICAgICAg
ICogcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvRm9udFBsYXRmb3JtRGF0YS5oOgorICAgICAgICAo
V2ViQ29yZTo6Rm9udFBsYXRmb3JtRGF0YTo6Rm9udFBsYXRmb3JtRGF0YSk6IERpdHRvLgorICAg
ICAgICAoV2ViQ29yZTo6Rm9udFBsYXRmb3JtRGF0YTo6b3BlcmF0b3I9PSk6IFJlbW92ZWQgY29t
cGFyaXNvbiBvZiBmb250IElEcy4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9G
b250UGxhdGZvcm1EYXRhQ29jb2EubW06CisgICAgICAgIChXZWJDb3JlOjpGb250UGxhdGZvcm1E
YXRhOjpsb2FkRm9udCk6IFJlbW92ZWQgdGhlIEFUU1VGb250SUQgYXJndW1lbnQuCisgICAgICAg
IChXZWJDb3JlOjpGb250UGxhdGZvcm1EYXRhOjpGb250UGxhdGZvcm1EYXRhKTogVXBkYXRlZC4K
KyAgICAgICAgKFdlYkNvcmU6OkZvbnRQbGF0Zm9ybURhdGE6Om9wZXJhdG9yPSk6IFJlbW92ZWQg
Y29weWluZyBvZiBmb250IElELgorICAgICAgICAoV2ViQ29yZTo6Rm9udFBsYXRmb3JtRGF0YTo6
c2V0Rm9udCk6IFJlbW92ZWQgc2V0dGluZyBvZiBmb250IElELgorICAgICAgICAqIHBsYXRmb3Jt
L2dyYXBoaWNzL21hYy9Db21wbGV4VGV4dENvbnRyb2xsZXJBVFNVSS5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjppbml0aWFsaXplQVRTVVN0eWxlKTogQ2FsbCBDVEZvbnRHZXRQbGF0Zm9ybUZvbnQo
KSBoZXJlIGlmIG5lY2Vzc2FyeS4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9tYWMvRm9u
dEN1c3RvbVBsYXRmb3JtRGF0YS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGb250Q3VzdG9tUGxh
dGZvcm1EYXRhOjpmb250UGxhdGZvcm1EYXRhKTogVXBkYXRlZCBmb3IgRm9udFBsYXRmb3JtRGF0
YSBjaGFuZ2UuCisgICAgICAgIChXZWJDb3JlOjpjcmVhdGVGb250Q3VzdG9tUGxhdGZvcm1EYXRh
KTogVXBkYXRlZCBmb3IgRm9udEN1c3RvbVBsYXRmb3JtRGF0YSBjaGFuZ2UuCisgICAgICAgICog
cGxhdGZvcm0vZ3JhcGhpY3MvbWFjL0ZvbnRDdXN0b21QbGF0Zm9ybURhdGEuaDoKKyAgICAgICAg
KFdlYkNvcmU6OkZvbnRDdXN0b21QbGF0Zm9ybURhdGE6OkZvbnRDdXN0b21QbGF0Zm9ybURhdGEp
OiBSZW1vdmVkIEFUU1VGb250SUQgYXJndW1lbnQgYW5kCisgICAgICAgIGRhdGEgbWVtYmVyLgor
ICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL21hYy9TaW1wbGVGb250RGF0YUFUU1VJLm1tOgor
ICAgICAgICAoV2ViQ29yZTo6U2ltcGxlRm9udERhdGE6OmNoZWNrU2hhcGVzQXJhYmljKTogQ2Fs
bCBDVEZvbnRHZXRQbGF0Zm9ybUZvbnQoKSBoZXJlIGlmIG5lY2Vzc2FyeS4KKwogMjAxMC0xMS0y
NSAgS2VuaWNoaSBJc2hpYmFzaGkgIDxiYXNoaUBnb29nbGUuY29tPgogCiAgICAgICAgIFJldmll
d2VkIGJ5IEtlbnQgVGFtdXJhLgpJbmRleDogV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJv
bWl1bS9Dcm9zc1Byb2Nlc3NGb250TG9hZGluZy5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0Nyb3NzUHJvY2Vzc0ZvbnRMb2FkaW5nLm1tCShyZXZp
c2lvbiA3MjY5OCkKKysrIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vQ3Jvc3NQ
cm9jZXNzRm9udExvYWRpbmcubW0JKHdvcmtpbmcgY29weSkKQEAgLTE4MSw3ICsxODEsNyBAQCBN
ZW1vcnlBY3RpdmF0ZWRGb250Ojp+TWVtb3J5QWN0aXZhdGVkRm9uCiAvLyAgIHRoYXQgd2FzIHBp
Y2tlZCBpbiB0aGUgZW5kLiAgVGhlIGNhbGxlciBpcyByZXNwb25zaWJsZSBmb3IgY2FsbGluZwog
Ly8gICBDRlJlbGVhc2UoKSBvbiB0aGlzIHBhcmFtZXRlciB3aGVuIGRvbmUgd2l0aCBpdC4KIC8v
ICogZm9udElEIC0gb24gb3V0cHV0LCB0aGUgSUQgY29ycmVzcG9uZGluZyB0byBuc0ZvbnQuCi12
b2lkIEZvbnRQbGF0Zm9ybURhdGE6OmxvYWRGb250KE5TRm9udCogbnNGb250LCBmbG9hdCBmb250
U2l6ZSwgTlNGb250KiYgb3V0TlNGb250LCBDR0ZvbnRSZWYmIGNnRm9udCwgQVRTVUZvbnRJRCYg
Zm9udElEKQordm9pZCBGb250UGxhdGZvcm1EYXRhOjpsb2FkRm9udChOU0ZvbnQqIG5zRm9udCwg
ZmxvYXQgZm9udFNpemUsIE5TRm9udComIG91dE5TRm9udCwgQ0dGb250UmVmJiBjZ0ZvbnQpCiB7
CiAgICAgb3V0TlNGb250ID0gbnNGb250OwogICAgIGNnRm9udCA9IENURm9udENvcHlHcmFwaGlj
c0ZvbnQodG9DVEZvbnRSZWYob3V0TlNGb250KSwgMCk7CkBAIC0yMDYsMTIgKzIwNiw2IEBAIHZv
aWQgRm9udFBsYXRmb3JtRGF0YTo6bG9hZEZvbnQoTlNGb250KiAKICAgICAgICAgICAgIGNnRm9u
dCA9IENURm9udENvcHlHcmFwaGljc0ZvbnQodG9DVEZvbnRSZWYob3V0TlNGb250KSwgMCk7CiAg
ICAgICAgIH0KICAgICB9Ci0gICAgCi0gICAgaWYgKG1lbUZvbnQpIHsKLSAgICAgICAgZm9udElE
ID0gbV9pbk1lbW9yeUZvbnQtPmF0c0ZvbnRSZWYoKTsKLSAgICB9IGVsc2UgewotICAgICAgICBm
b250SUQgPSBDVEZvbnRHZXRQbGF0Zm9ybUZvbnQodG9DVEZvbnRSZWYob3V0TlNGb250KSwgMCk7
Ci0gICAgfQogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCkluZGV4OiBXZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2NvY29hL0ZvbnRQbGF0Zm9ybURhdGEuaAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0ZvbnRQbGF0Zm9ybURhdGEuaAkocmV2aXNpb24g
NzI2OTgpCisrKyBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0ZvbnRQbGF0Zm9ybURh
dGEuaAkod29ya2luZyBjb3B5KQpAQCAtNjMsNyArNjMsNiBAQCBjbGFzcyBGb250UGxhdGZvcm1E
YXRhIHsKICAgICAgICAgOiBtX3N5bnRoZXRpY0JvbGQoc3ludGhldGljQm9sZCkKICAgICAgICAg
LCBtX3N5bnRoZXRpY09ibGlxdWUoc3ludGhldGljT2JsaXF1ZSkKICAgICAgICAgLCBtX29yaWVu
dGF0aW9uKG9yaWVudGF0aW9uKQotICAgICAgICAsIG1fYXRzdUZvbnRJRCgwKQogICAgICAgICAs
IG1fc2l6ZShzaXplKQogICAgICAgICAsIG1fZm9udCgwKQogI2lmZGVmIEJVSUxESU5HX09OX1RJ
R0VSCkBAIC03NSwxMSArNzQsMTAgQEAgY2xhc3MgRm9udFBsYXRmb3JtRGF0YSB7CiAKICAgICBG
b250UGxhdGZvcm1EYXRhKE5TRm9udCAqbnNGb250LCBmbG9hdCBzaXplLCBib29sIHN5bnRoZXRp
Y0JvbGQgPSBmYWxzZSwgYm9vbCBzeW50aGV0aWNPYmxpcXVlID0gZmFsc2UsIEZvbnRPcmllbnRh
dGlvbiA9IEhvcml6b250YWwpOwogICAgIAotICAgIEZvbnRQbGF0Zm9ybURhdGEoQ0dGb250UmVm
IGNnRm9udCwgQVRTVUZvbnRJRCBmb250SUQsIGZsb2F0IHNpemUsIGJvb2wgc3ludGhldGljQm9s
ZCwgYm9vbCBzeW50aGV0aWNPYmxpcXVlLCBGb250T3JpZW50YXRpb24gb3JpZW50YXRpb24pCisg
ICAgRm9udFBsYXRmb3JtRGF0YShDR0ZvbnRSZWYgY2dGb250LCBmbG9hdCBzaXplLCBib29sIHN5
bnRoZXRpY0JvbGQsIGJvb2wgc3ludGhldGljT2JsaXF1ZSwgRm9udE9yaWVudGF0aW9uIG9yaWVu
dGF0aW9uKQogICAgICAgICA6IG1fc3ludGhldGljQm9sZChzeW50aGV0aWNCb2xkKQogICAgICAg
ICAsIG1fc3ludGhldGljT2JsaXF1ZShzeW50aGV0aWNPYmxpcXVlKQogICAgICAgICAsIG1fb3Jp
ZW50YXRpb24ob3JpZW50YXRpb24pCi0gICAgICAgICwgbV9hdHN1Rm9udElEKGZvbnRJRCkKICAg
ICAgICAgLCBtX3NpemUoc2l6ZSkKICAgICAgICAgLCBtX2ZvbnQoMCkKICAgICAgICAgLCBtX2Nn
Rm9udChjZ0ZvbnQpCkBAIC0xMDMsNyArMTAxLDYgQEAgY2xhc3MgRm9udFBsYXRmb3JtRGF0YSB7
CiAgICAgYm9vbCBtX3N5bnRoZXRpY09ibGlxdWU7CiAgICAgRm9udE9yaWVudGF0aW9uIG1fb3Jp
ZW50YXRpb247CiAKLSAgICBBVFNVRm9udElEIG1fYXRzdUZvbnRJRDsKICAgICBmbG9hdCBtX3Np
emU7CiAKICAgICB1bnNpZ25lZCBoYXNoKCkgY29uc3QKQEAgLTExOCw3ICsxMTUsNyBAQCBjbGFz
cyBGb250UGxhdGZvcm1EYXRhIHsKICAgICBib29sIG9wZXJhdG9yPT0oY29uc3QgRm9udFBsYXRm
b3JtRGF0YSYgb3RoZXIpIGNvbnN0CiAgICAgeyAKICAgICAgICAgcmV0dXJuIG1fZm9udCA9PSBv
dGhlci5tX2ZvbnQgJiYgbV9zeW50aGV0aWNCb2xkID09IG90aGVyLm1fc3ludGhldGljQm9sZCAm
JiBtX3N5bnRoZXRpY09ibGlxdWUgPT0gb3RoZXIubV9zeW50aGV0aWNPYmxpcXVlICYmIAotICAg
ICAgICAgICAgICAgbV9jZ0ZvbnQgPT0gb3RoZXIubV9jZ0ZvbnQgJiYgbV9zaXplID09IG90aGVy
Lm1fc2l6ZSAmJiBtX2F0c3VGb250SUQgPT0gb3RoZXIubV9hdHN1Rm9udElEICYmIG1fb3JpZW50
YXRpb24gPT0gb3RoZXIubV9vcmllbnRhdGlvbjsKKyAgICAgICAgICAgICAgIG1fY2dGb250ID09
IG90aGVyLm1fY2dGb250ICYmIG1fc2l6ZSA9PSBvdGhlci5tX3NpemUgJiYgbV9vcmllbnRhdGlv
biA9PSBvdGhlci5tX29yaWVudGF0aW9uOwogICAgIH0KIAogICAgIE5TRm9udCAqZm9udCgpIGNv
bnN0IHsgcmV0dXJuIG1fZm9udDsgfQpAQCAtMTQ5LDggKzE0Niw3IEBAIHByaXZhdGU6CiAgICAg
Ly8gKiBvdXROU0ZvbnQgLSBUaGUgZm9udCB0aGF0IHdhcyBhY3R1YWxseSBsb2FkZWQsIGZvciB0
aGUgQ2hyb21pdW0gcG9ydCB0aGlzIG1heSBiZSBkaWZmZXJlbnQgdGhhbiBuc0ZvbnQuCiAgICAg
Ly8gVGhlIGNhbGxlciBpcyByZXNwb25zaWJsZSBmb3IgY2FsbGluZyBDRlJlbGVhc2UoKSBvbiB0
aGlzIHBhcmFtZXRlciB3aGVuIGRvbmUgd2l0aCBpdC4KICAgICAvLyAqIGNnRm9udCAtIENHRm9u
dFJlZiByZXByZXNlbnRpbmcgdGhlIGlucHV0IGZvbnQgYXQgdGhlIHNwZWNpZmllZCBwb2ludCBz
aXplLgotICAgIC8vICogZm9udElEIC0gSUQgb2YgbG9hZGVkIGZvbnQuCi0gICAgdm9pZCBsb2Fk
Rm9udChOU0ZvbnQqIG5zRm9udCwgZmxvYXQgZm9udFNpemUsIE5TRm9udComIG91dE5TRm9udCwg
Q0dGb250UmVmJiBjZ0ZvbnQsIEFUU1VGb250SUQmIGZvbnRJRCk7CisgICAgdm9pZCBsb2FkRm9u
dChOU0ZvbnQqIG5zRm9udCwgZmxvYXQgZm9udFNpemUsIE5TRm9udComIG91dE5TRm9udCwgQ0dG
b250UmVmJiBjZ0ZvbnQpOwogCiAgICAgTlNGb250ICptX2ZvbnQ7CiAKSW5kZXg6IFdlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvRm9udFBsYXRmb3JtRGF0YUNvY29hLm1tCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvRm9udFBsYXRmb3JtRGF0YUNv
Y29hLm1tCShyZXZpc2lvbiA3MjY5OCkKKysrIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29j
b2EvRm9udFBsYXRmb3JtRGF0YUNvY29hLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0zMSwxNSArMzEs
MTMgQEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogI2lmIFBMQVRGT1JNKE1BQykKLXZvaWQgRm9u
dFBsYXRmb3JtRGF0YTo6bG9hZEZvbnQoTlNGb250KiBuc0ZvbnQsIGZsb2F0LCBOU0ZvbnQqJiBv
dXROU0ZvbnQsIENHRm9udFJlZiYgY2dGb250LCBBVFNVRm9udElEJiBmb250SUQpCit2b2lkIEZv
bnRQbGF0Zm9ybURhdGE6OmxvYWRGb250KE5TRm9udCogbnNGb250LCBmbG9hdCwgTlNGb250KiYg
b3V0TlNGb250LCBDR0ZvbnRSZWYmIGNnRm9udCkKIHsKICAgICBvdXROU0ZvbnQgPSBuc0ZvbnQ7
CiAjaWZuZGVmIEJVSUxESU5HX09OX1RJR0VSCiAgICAgY2dGb250ID0gQ1RGb250Q29weUdyYXBo
aWNzRm9udCh0b0NURm9udFJlZihuc0ZvbnQpLCAwKTsKLSAgICBmb250SUQgPSBDVEZvbnRHZXRQ
bGF0Zm9ybUZvbnQodG9DVEZvbnRSZWYobnNGb250KSwgMCk7CiAjZWxzZQogICAgIGNnRm9udCA9
IHdrR2V0Q0dGb250RnJvbU5TRm9udChuc0ZvbnQpOwotICAgIGZvbnRJRCA9IHdrR2V0TlNGb250
QVRTVUZvbnRJZChuc0ZvbnQpOwogI2VuZGlmCiB9CiAjZW5kaWYgIC8vIFBMQVRGT1JNKE1BQykK
QEAgLTYwLDcgKzU4LDcgQEAgRm9udFBsYXRmb3JtRGF0YTo6Rm9udFBsYXRmb3JtRGF0YShOU0Zv
bgogICAgIEFTU0VSVF9BUkcobnNGb250LCBuc0ZvbnQpOwogCiAgICAgQ0dGb250UmVmIGNnRm9u
dCA9IDA7Ci0gICAgbG9hZEZvbnQobnNGb250LCBzaXplLCBtX2ZvbnQsIGNnRm9udCwgbV9hdHN1
Rm9udElEKTsKKyAgICBsb2FkRm9udChuc0ZvbnQsIHNpemUsIG1fZm9udCwgY2dGb250KTsKIAog
ICAgIG1fb3JpZW50YXRpb24gPSBvcmllbnRhdGlvbjsKIApAQCAtODIsNyArODAsNiBAQCBGb250
UGxhdGZvcm1EYXRhOjpGb250UGxhdGZvcm1EYXRhKGNvbnN0CiAgICAgbV9zeW50aGV0aWNPYmxp
cXVlID0gZi5tX3N5bnRoZXRpY09ibGlxdWU7CiAgICAgbV9zaXplID0gZi5tX3NpemU7CiAgICAg
bV9jZ0ZvbnQgPSBmLm1fY2dGb250OwotICAgIG1fYXRzdUZvbnRJRCA9IGYubV9hdHN1Rm9udElE
OwogICAgIG1faXNDb2xvckJpdG1hcEZvbnQgPSBmLm1faXNDb2xvckJpdG1hcEZvbnQ7CiAgICAg
bV9vcmllbnRhdGlvbiA9IGYubV9vcmllbnRhdGlvbjsKICAgICBtX0NURm9udCA9IGYubV9DVEZv
bnQ7CkBAIC0xMDMsNyArMTAwLDYgQEAgY29uc3QgRm9udFBsYXRmb3JtRGF0YSYgRm9udFBsYXRm
b3JtRGF0YQogICAgIG1fc3ludGhldGljT2JsaXF1ZSA9IGYubV9zeW50aGV0aWNPYmxpcXVlOwog
ICAgIG1fc2l6ZSA9IGYubV9zaXplOwogICAgIG1fY2dGb250ID0gZi5tX2NnRm9udDsKLSAgICBt
X2F0c3VGb250SUQgPSBmLm1fYXRzdUZvbnRJRDsKICAgICBpZiAobV9mb250ID09IGYubV9mb250
KQogICAgICAgICByZXR1cm4gKnRoaXM7CiAgICAgaWYgKGYubV9mb250ICYmIGYubV9mb250ICE9
IHJlaW50ZXJwcmV0X2Nhc3Q8TlNGb250ICo+KC0xKSkKQEAgLTEzNiw3ICsxMzIsNyBAQCB2b2lk
IEZvbnRQbGF0Zm9ybURhdGE6OnNldEZvbnQoTlNGb250ICpmCiAgICAgCiAgICAgQ0dGb250UmVm
IGNnRm9udCA9IDA7CiAgICAgTlNGb250KiBsb2FkZWRGb250ID0gMDsKLSAgICBsb2FkRm9udCht
X2ZvbnQsIG1fc2l6ZSwgbG9hZGVkRm9udCwgY2dGb250LCBtX2F0c3VGb250SUQpOworICAgIGxv
YWRGb250KG1fZm9udCwgbV9zaXplLCBsb2FkZWRGb250LCBjZ0ZvbnQpOwogICAgIAogI2lmIFBM
QVRGT1JNKENIUk9NSVVNKSAmJiBPUyhEQVJXSU4pCiAgICAgLy8gSWYgbG9hZEZvbnQgcmVwbGFj
ZWQgbV9mb250IHdpdGggYSBmYWxsYmFjayBmb250LCB0aGVuIHJlbGVhc2UgdGhlCkluZGV4OiBX
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL21hYy9Db21wbGV4VGV4dENvbnRyb2xsZXJBVFNVSS5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9tYWMvQ29tcGxleFRl
eHRDb250cm9sbGVyQVRTVUkuY3BwCShyZXZpc2lvbiA3MjY5OCkKKysrIFdlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvbWFjL0NvbXBsZXhUZXh0Q29udHJvbGxlckFUU1VJLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtMjgwLDcgKzI4MCw3IEBAIHN0YXRpYyBBVFNVU3R5bGUgaW5pdGlhbGl6ZUFUU1VT
dHlsZShjb24KICAgICBpZiAoIWFkZFJlc3VsdC5zZWNvbmQpCiAgICAgICAgIHJldHVybiBhdHN1
U3R5bGU7CiAKLSAgICBBVFNVRm9udElEIGZvbnRJRCA9IGZvbnREYXRhLT5wbGF0Zm9ybURhdGEo
KS5tX2F0c3VGb250SUQ7CisgICAgQVRTVUZvbnRJRCBmb250SUQgPSBmb250RGF0YS0+cGxhdGZv
cm1EYXRhKCkuY3RGb250KCkgPyBDVEZvbnRHZXRQbGF0Zm9ybUZvbnQoZm9udERhdGEtPnBsYXRm
b3JtRGF0YSgpLmN0Rm9udCgpLCAwKSA6IDA7CiAgICAgaWYgKCFmb250SUQpIHsKICAgICAgICAg
TE9HX0VSUk9SKCJ1bmFibGUgdG8gZ2V0IEFUU1VGb250SUQgZm9yICVwIiwgZm9udERhdGEtPnBs
YXRmb3JtRGF0YSgpLmZvbnQoKSk7CiAgICAgICAgIGZvbnREYXRhLT5tX0FUU1VTdHlsZU1hcC5y
ZW1vdmUoYWRkUmVzdWx0LmZpcnN0KTsKSW5kZXg6IFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
bWFjL0ZvbnRDdXN0b21QbGF0Zm9ybURhdGEuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvbWFjL0ZvbnRDdXN0b21QbGF0Zm9ybURhdGEuY3BwCShyZXZpc2lvbiA3
MjY5OCkKKysrIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvbWFjL0ZvbnRDdXN0b21QbGF0Zm9y
bURhdGEuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00MCw3ICs0MCw3IEBAIEZvbnRDdXN0b21QbGF0
Zm9ybURhdGE6On5Gb250Q3VzdG9tUGxhdGYKIAogRm9udFBsYXRmb3JtRGF0YSBGb250Q3VzdG9t
UGxhdGZvcm1EYXRhOjpmb250UGxhdGZvcm1EYXRhKGludCBzaXplLCBib29sIGJvbGQsIGJvb2wg
aXRhbGljLCBGb250T3JpZW50YXRpb24gb3JpZW50YXRpb24sIEZvbnRSZW5kZXJpbmdNb2RlKQog
ewotICAgIHJldHVybiBGb250UGxhdGZvcm1EYXRhKG1fY2dGb250LCAoQVRTVUZvbnRJRCltX2F0
c0ZvbnQsIHNpemUsIGJvbGQsIGl0YWxpYywgb3JpZW50YXRpb24pOworICAgIHJldHVybiBGb250
UGxhdGZvcm1EYXRhKG1fY2dGb250LCBzaXplLCBib2xkLCBpdGFsaWMsIG9yaWVudGF0aW9uKTsK
IH0KIAogRm9udEN1c3RvbVBsYXRmb3JtRGF0YSogY3JlYXRlRm9udEN1c3RvbVBsYXRmb3JtRGF0
YShTaGFyZWRCdWZmZXIqIGJ1ZmZlcikKQEAgLTY2LDcgKzY2LDYgQEAgRm9udEN1c3RvbVBsYXRm
b3JtRGF0YSogY3JlYXRlRm9udEN1c3RvbQogI2VuZGlmCiAKICAgICBBVFNGb250Q29udGFpbmVy
UmVmIGNvbnRhaW5lclJlZiA9IDA7Ci0gICAgQVRTRm9udFJlZiBmb250UmVmID0gMDsKIAogICAg
IFJldGFpblB0cjxDR0ZvbnRSZWY+IGNnRm9udFJlZjsKIApAQCAtOTMsNiArOTIsNyBAQCBGb250
Q3VzdG9tUGxhdGZvcm1EYXRhKiBjcmVhdGVGb250Q3VzdG9tCiAgICAgICAgIHJldHVybiAwOwog
ICAgIH0KICAgICAKKyAgICBBVFNGb250UmVmIGZvbnRSZWYgPSAwOwogICAgIEFUU0ZvbnRGaW5k
RnJvbUNvbnRhaW5lcihjb250YWluZXJSZWYsIGtBVFNPcHRpb25GbGFnc0RlZmF1bHQsIDEsICZm
b250UmVmLCBOVUxMKTsKICAgICBpZiAoIWZvbnRSZWYpIHsKICAgICAgICAgQVRTRm9udERlYWN0
aXZhdGUoY29udGFpbmVyUmVmLCBOVUxMLCBrQVRTT3B0aW9uRmxhZ3NEZWZhdWx0KTsKQEAgLTEx
MSw3ICsxMTEsNyBAQCBGb250Q3VzdG9tUGxhdGZvcm1EYXRhKiBjcmVhdGVGb250Q3VzdG9tCiAg
ICAgfQogI2VuZGlmIC8vICFkZWZpbmVkKEJVSUxESU5HX09OX1RJR0VSKSAmJiAhZGVmaW5lZChC
VUlMRElOR19PTl9MRU9QQVJEKQogCi0gICAgcmV0dXJuIG5ldyBGb250Q3VzdG9tUGxhdGZvcm1E
YXRhKGNvbnRhaW5lclJlZiwgZm9udFJlZiwgY2dGb250UmVmLnJlbGVhc2VSZWYoKSk7CisgICAg
cmV0dXJuIG5ldyBGb250Q3VzdG9tUGxhdGZvcm1EYXRhKGNvbnRhaW5lclJlZiwgY2dGb250UmVm
LnJlbGVhc2VSZWYoKSk7CiB9CiAKIGJvb2wgRm9udEN1c3RvbVBsYXRmb3JtRGF0YTo6c3VwcG9y
dHNGb3JtYXQoY29uc3QgU3RyaW5nJiBmb3JtYXQpCkluZGV4OiBXZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL21hYy9Gb250Q3VzdG9tUGxhdGZvcm1EYXRhLmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9tYWMvRm9udEN1c3RvbVBsYXRmb3JtRGF0YS5oCShyZXZpc2lv
biA3MjY5OCkKKysrIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvbWFjL0ZvbnRDdXN0b21QbGF0
Zm9ybURhdGEuaAkod29ya2luZyBjb3B5KQpAQCAtMzcsOSArMzcsMTIgQEAgY2xhc3MgRm9udFBs
YXRmb3JtRGF0YTsKIGNsYXNzIFNoYXJlZEJ1ZmZlcjsKIAogc3RydWN0IEZvbnRDdXN0b21QbGF0
Zm9ybURhdGEgOiBOb25jb3B5YWJsZSB7Ci0gICAgRm9udEN1c3RvbVBsYXRmb3JtRGF0YShBVFNG
b250Q29udGFpbmVyUmVmIGNvbnRhaW5lciwgQVRTRm9udFJlZiBhdHNGb250LCBDR0ZvbnRSZWYg
Y2dGb250KQotICAgIDogbV9hdHNDb250YWluZXIoY29udGFpbmVyKSwgbV9hdHNGb250KGF0c0Zv
bnQpLCBtX2NnRm9udChjZ0ZvbnQpCi0gICAge30KKyAgICBGb250Q3VzdG9tUGxhdGZvcm1EYXRh
KEFUU0ZvbnRDb250YWluZXJSZWYgY29udGFpbmVyLCBDR0ZvbnRSZWYgY2dGb250KQorICAgICAg
ICA6IG1fYXRzQ29udGFpbmVyKGNvbnRhaW5lcikKKyAgICAgICAgLCBtX2NnRm9udChjZ0ZvbnQp
CisgICAgeworICAgIH0KKwogICAgIH5Gb250Q3VzdG9tUGxhdGZvcm1EYXRhKCk7CiAKICAgICBG
b250UGxhdGZvcm1EYXRhIGZvbnRQbGF0Zm9ybURhdGEoaW50IHNpemUsIGJvb2wgYm9sZCwgYm9v
bCBpdGFsaWMsIEZvbnRPcmllbnRhdGlvbiA9IEhvcml6b250YWwsIEZvbnRSZW5kZXJpbmdNb2Rl
ID0gTm9ybWFsUmVuZGVyaW5nTW9kZSk7CkBAIC00NywxMSArNTAsMTAgQEAgc3RydWN0IEZvbnRD
dXN0b21QbGF0Zm9ybURhdGEgOiBOb25jb3B5YQogICAgIHN0YXRpYyBib29sIHN1cHBvcnRzRm9y
bWF0KGNvbnN0IFN0cmluZyYpOwogCiAgICAgQVRTRm9udENvbnRhaW5lclJlZiBtX2F0c0NvbnRh
aW5lcjsKLSAgICBBVFNGb250UmVmIG1fYXRzRm9udDsKICAgICBDR0ZvbnRSZWYgbV9jZ0ZvbnQ7
CiB9OwogCi1Gb250Q3VzdG9tUGxhdGZvcm1EYXRhKiBjcmVhdGVGb250Q3VzdG9tUGxhdGZvcm1E
YXRhKFNoYXJlZEJ1ZmZlciogYnVmZmVyKTsKK0ZvbnRDdXN0b21QbGF0Zm9ybURhdGEqIGNyZWF0
ZUZvbnRDdXN0b21QbGF0Zm9ybURhdGEoU2hhcmVkQnVmZmVyKik7CiAKIH0KIApJbmRleDogV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9tYWMvU2ltcGxlRm9udERhdGFBVFNVSS5tbQo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL21hYy9TaW1wbGVGb250RGF0YUFUU1VJ
Lm1tCShyZXZpc2lvbiA3MjY5OCkKKysrIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvbWFjL1Np
bXBsZUZvbnREYXRhQVRTVUkubW0JKHdvcmtpbmcgY29weSkKQEAgLTQ4LDggKzQ4LDggQEAgdm9p
ZCBTaW1wbGVGb250RGF0YTo6Y2hlY2tTaGFwZXNBcmFiaWMoKQogICAgIEFTU0VSVCghbV9jaGVj
a2VkU2hhcGVzQXJhYmljKTsKIAogICAgIG1fY2hlY2tlZFNoYXBlc0FyYWJpYyA9IHRydWU7Ci0g
ICAgCi0gICAgQVRTVUZvbnRJRCBmb250SUQgPSBtX3BsYXRmb3JtRGF0YS5tX2F0c3VGb250SUQ7
CisKKyAgICBBVFNVRm9udElEIGZvbnRJRCA9IG1fcGxhdGZvcm1EYXRhLmN0Rm9udCgpID8gQ1RG
b250R2V0UGxhdGZvcm1Gb250KG1fcGxhdGZvcm1EYXRhLmN0Rm9udCgpLCAwKSA6IDA7CiAgICAg
aWYgKCFmb250SUQpIHsKICAgICAgICAgTE9HX0VSUk9SKCJ1bmFibGUgdG8gZ2V0IEFUU1VGb250
SUQgZm9yICVAIiwgbV9wbGF0Zm9ybURhdGEuZm9udCgpKTsKICAgICAgICAgcmV0dXJuOwo=
</data>
<flag name="review"
          id="65669"
          type_id="1"
          status="+"
          setter="sullivan"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>74904</attachid>
            <date>2010-11-25 22:21:35 -0800</date>
            <delta_ts>2010-11-26 11:58:41 -0800</delta_ts>
            <desc>Remove some ATSUFontID arguments and member variables and move calls to CTFontGetPlatformFont() into methods that use the font ID</desc>
            <filename>8681368_r1.diff</filename>
            <type>text/plain</type>
            <size>12510</size>
            <attacher>mitz</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA3Mjc1MCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMzMgQEAKKzIwMTAtMTEtMjUgIERhbiBCZXJuc3RlaW4gIDxtaXR6QGFwcGxlLmNv
bT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICA8cmRh
cjovL3Byb2JsZW0vODY4MTM2OD4gQXZvaWQgdW5uZWNlc3NhcnkgY2FsbHMgdG8gQ1RGb250R2V0
UGxhdGZvcm1Gb250KCkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTUwMDk2CisKKyAgICAgICAgTm8gbmV3IHRlc3QsIHNpbmNlIGZ1bmN0aW9uYWxpdHkg
aXMgdW5jaGFuZ2VkLgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vQ3Jv
c3NQcm9jZXNzRm9udExvYWRpbmcubW06CisgICAgICAgIChXZWJDb3JlOjpGb250UGxhdGZvcm1E
YXRhOjpsb2FkRm9udCk6IFJlbW92ZWQgdGhlIEFUU1VGb250SUQgYXJndW1lbnQuCisgICAgICAg
ICogcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvRm9udFBsYXRmb3JtRGF0YS5oOgorICAgICAgICAo
V2ViQ29yZTo6Rm9udFBsYXRmb3JtRGF0YTo6Rm9udFBsYXRmb3JtRGF0YSk6IERpdHRvLgorICAg
ICAgICAoV2ViQ29yZTo6Rm9udFBsYXRmb3JtRGF0YTo6b3BlcmF0b3I9PSk6IFJlbW92ZWQgY29t
cGFyaXNvbiBvZiBmb250IElEcy4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9G
b250UGxhdGZvcm1EYXRhQ29jb2EubW06CisgICAgICAgIChXZWJDb3JlOjpGb250UGxhdGZvcm1E
YXRhOjpsb2FkRm9udCk6IFJlbW92ZWQgdGhlIEFUU1VGb250SUQgYXJndW1lbnQuCisgICAgICAg
IChXZWJDb3JlOjpGb250UGxhdGZvcm1EYXRhOjpGb250UGxhdGZvcm1EYXRhKTogVXBkYXRlZC4K
KyAgICAgICAgKFdlYkNvcmU6OkZvbnRQbGF0Zm9ybURhdGE6Om9wZXJhdG9yPSk6IFJlbW92ZWQg
Y29weWluZyBvZiBmb250IElELgorICAgICAgICAoV2ViQ29yZTo6Rm9udFBsYXRmb3JtRGF0YTo6
c2V0Rm9udCk6IFJlbW92ZWQgc2V0dGluZyBvZiBmb250IElELgorICAgICAgICAqIHBsYXRmb3Jt
L2dyYXBoaWNzL21hYy9Db21wbGV4VGV4dENvbnRyb2xsZXJBVFNVSS5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjppbml0aWFsaXplQVRTVVN0eWxlKTogQ2FsbCBDVEZvbnRHZXRQbGF0Zm9ybUZvbnQo
KSBoZXJlIGlmIG5lY2Vzc2FyeS4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9tYWMvRm9u
dEN1c3RvbVBsYXRmb3JtRGF0YS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGb250Q3VzdG9tUGxh
dGZvcm1EYXRhOjpmb250UGxhdGZvcm1EYXRhKTogVXBkYXRlZCBmb3IgRm9udFBsYXRmb3JtRGF0
YSBjaGFuZ2UuCisgICAgICAgIChXZWJDb3JlOjpjcmVhdGVGb250Q3VzdG9tUGxhdGZvcm1EYXRh
KTogVXBkYXRlZCBmb3IgRm9udEN1c3RvbVBsYXRmb3JtRGF0YSBjaGFuZ2UuCisgICAgICAgICog
cGxhdGZvcm0vZ3JhcGhpY3MvbWFjL0ZvbnRDdXN0b21QbGF0Zm9ybURhdGEuaDoKKyAgICAgICAg
KFdlYkNvcmU6OkZvbnRDdXN0b21QbGF0Zm9ybURhdGE6OkZvbnRDdXN0b21QbGF0Zm9ybURhdGEp
OiBSZW1vdmVkIEFUU1VGb250SUQgYXJndW1lbnQgYW5kCisgICAgICAgIGRhdGEgbWVtYmVyLgor
ICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL21hYy9TaW1wbGVGb250RGF0YUFUU1VJLm1tOgor
ICAgICAgICAoV2ViQ29yZTo6U2ltcGxlRm9udERhdGE6OmNoZWNrU2hhcGVzQXJhYmljKTogQ2Fs
bCBDVEZvbnRHZXRQbGF0Zm9ybUZvbnQoKSBoZXJlIGlmIG5lY2Vzc2FyeS4KKwogMjAxMC0xMS0y
NSAgS2VuaWNoaSBJc2hpYmFzaGkgIDxiYXNoaUBnb29nbGUuY29tPgogCiAgICAgICAgIFJldmll
d2VkIGJ5IEtlbnQgVGFtdXJhLgpJbmRleDogV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJv
bWl1bS9Dcm9zc1Byb2Nlc3NGb250TG9hZGluZy5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0Nyb3NzUHJvY2Vzc0ZvbnRMb2FkaW5nLm1tCShyZXZp
c2lvbiA3MjY5OCkKKysrIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vQ3Jvc3NQ
cm9jZXNzRm9udExvYWRpbmcubW0JKHdvcmtpbmcgY29weSkKQEAgLTE4MSwxMSArMTgxLDEwIEBA
IE1lbW9yeUFjdGl2YXRlZEZvbnQ6On5NZW1vcnlBY3RpdmF0ZWRGb24KIC8vICAgdGhhdCB3YXMg
cGlja2VkIGluIHRoZSBlbmQuICBUaGUgY2FsbGVyIGlzIHJlc3BvbnNpYmxlIGZvciBjYWxsaW5n
CiAvLyAgIENGUmVsZWFzZSgpIG9uIHRoaXMgcGFyYW1ldGVyIHdoZW4gZG9uZSB3aXRoIGl0Lgog
Ly8gKiBmb250SUQgLSBvbiBvdXRwdXQsIHRoZSBJRCBjb3JyZXNwb25kaW5nIHRvIG5zRm9udC4K
LXZvaWQgRm9udFBsYXRmb3JtRGF0YTo6bG9hZEZvbnQoTlNGb250KiBuc0ZvbnQsIGZsb2F0IGZv
bnRTaXplLCBOU0ZvbnQqJiBvdXROU0ZvbnQsIENHRm9udFJlZiYgY2dGb250LCBBVFNVRm9udElE
JiBmb250SUQpCit2b2lkIEZvbnRQbGF0Zm9ybURhdGE6OmxvYWRGb250KE5TRm9udCogbnNGb250
LCBmbG9hdCBmb250U2l6ZSwgTlNGb250KiYgb3V0TlNGb250LCBDR0ZvbnRSZWYmIGNnRm9udCkK
IHsKICAgICBvdXROU0ZvbnQgPSBuc0ZvbnQ7CiAgICAgY2dGb250ID0gQ1RGb250Q29weUdyYXBo
aWNzRm9udCh0b0NURm9udFJlZihvdXROU0ZvbnQpLCAwKTsKLSAgICBNZW1vcnlBY3RpdmF0ZWRG
b250KiBtZW1Gb250ID0gMDsKICAgICBpZiAoT3V0T2ZQcm9jZXNzRm9udExvYWRpbmdFbmFibGVk
KCkgJiYgb3V0TlNGb250ICYmIGNnRm9udCAmJiBpc0xhc3RSZXNvcnRGb250KGNnRm9udCkpIHsK
ICAgICAgICAgLy8gUmVsZWFzZSBvbGQgQ0dGb250UmVmIHNpbmNlIGl0IHBvaW50cyBhdCB0aGUg
TGFzdFJlc29ydCBmb250IHdoaWNoIHdlIGRvbid0IHdhbnQuCiAgICAgICAgIENGUmVsZWFzZShj
Z0ZvbnQpOwpAQCAtMjA2LDEyICsyMDUsNiBAQCB2b2lkIEZvbnRQbGF0Zm9ybURhdGE6OmxvYWRG
b250KE5TRm9udCogCiAgICAgICAgICAgICBjZ0ZvbnQgPSBDVEZvbnRDb3B5R3JhcGhpY3NGb250
KHRvQ1RGb250UmVmKG91dE5TRm9udCksIDApOwogICAgICAgICB9CiAgICAgfQotICAgIAotICAg
IGlmIChtZW1Gb250KSB7Ci0gICAgICAgIGZvbnRJRCA9IG1faW5NZW1vcnlGb250LT5hdHNGb250
UmVmKCk7Ci0gICAgfSBlbHNlIHsKLSAgICAgICAgZm9udElEID0gQ1RGb250R2V0UGxhdGZvcm1G
b250KHRvQ1RGb250UmVmKG91dE5TRm9udCksIDApOwotICAgIH0KIH0KIAogfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQpJbmRleDogV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9Gb250UGxh
dGZvcm1EYXRhLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2Nv
YS9Gb250UGxhdGZvcm1EYXRhLmgJKHJldmlzaW9uIDcyNjk4KQorKysgV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9jb2NvYS9Gb250UGxhdGZvcm1EYXRhLmgJKHdvcmtpbmcgY29weSkKQEAgLTYz
LDcgKzYzLDYgQEAgY2xhc3MgRm9udFBsYXRmb3JtRGF0YSB7CiAgICAgICAgIDogbV9zeW50aGV0
aWNCb2xkKHN5bnRoZXRpY0JvbGQpCiAgICAgICAgICwgbV9zeW50aGV0aWNPYmxpcXVlKHN5bnRo
ZXRpY09ibGlxdWUpCiAgICAgICAgICwgbV9vcmllbnRhdGlvbihvcmllbnRhdGlvbikKLSAgICAg
ICAgLCBtX2F0c3VGb250SUQoMCkKICAgICAgICAgLCBtX3NpemUoc2l6ZSkKICAgICAgICAgLCBt
X2ZvbnQoMCkKICNpZmRlZiBCVUlMRElOR19PTl9USUdFUgpAQCAtNzUsMTEgKzc0LDEwIEBAIGNs
YXNzIEZvbnRQbGF0Zm9ybURhdGEgewogCiAgICAgRm9udFBsYXRmb3JtRGF0YShOU0ZvbnQgKm5z
Rm9udCwgZmxvYXQgc2l6ZSwgYm9vbCBzeW50aGV0aWNCb2xkID0gZmFsc2UsIGJvb2wgc3ludGhl
dGljT2JsaXF1ZSA9IGZhbHNlLCBGb250T3JpZW50YXRpb24gPSBIb3Jpem9udGFsKTsKICAgICAK
LSAgICBGb250UGxhdGZvcm1EYXRhKENHRm9udFJlZiBjZ0ZvbnQsIEFUU1VGb250SUQgZm9udElE
LCBmbG9hdCBzaXplLCBib29sIHN5bnRoZXRpY0JvbGQsIGJvb2wgc3ludGhldGljT2JsaXF1ZSwg
Rm9udE9yaWVudGF0aW9uIG9yaWVudGF0aW9uKQorICAgIEZvbnRQbGF0Zm9ybURhdGEoQ0dGb250
UmVmIGNnRm9udCwgZmxvYXQgc2l6ZSwgYm9vbCBzeW50aGV0aWNCb2xkLCBib29sIHN5bnRoZXRp
Y09ibGlxdWUsIEZvbnRPcmllbnRhdGlvbiBvcmllbnRhdGlvbikKICAgICAgICAgOiBtX3N5bnRo
ZXRpY0JvbGQoc3ludGhldGljQm9sZCkKICAgICAgICAgLCBtX3N5bnRoZXRpY09ibGlxdWUoc3lu
dGhldGljT2JsaXF1ZSkKICAgICAgICAgLCBtX29yaWVudGF0aW9uKG9yaWVudGF0aW9uKQotICAg
ICAgICAsIG1fYXRzdUZvbnRJRChmb250SUQpCiAgICAgICAgICwgbV9zaXplKHNpemUpCiAgICAg
ICAgICwgbV9mb250KDApCiAgICAgICAgICwgbV9jZ0ZvbnQoY2dGb250KQpAQCAtMTAzLDcgKzEw
MSw2IEBAIGNsYXNzIEZvbnRQbGF0Zm9ybURhdGEgewogICAgIGJvb2wgbV9zeW50aGV0aWNPYmxp
cXVlOwogICAgIEZvbnRPcmllbnRhdGlvbiBtX29yaWVudGF0aW9uOwogCi0gICAgQVRTVUZvbnRJ
RCBtX2F0c3VGb250SUQ7CiAgICAgZmxvYXQgbV9zaXplOwogCiAgICAgdW5zaWduZWQgaGFzaCgp
IGNvbnN0CkBAIC0xMTgsNyArMTE1LDcgQEAgY2xhc3MgRm9udFBsYXRmb3JtRGF0YSB7CiAgICAg
Ym9vbCBvcGVyYXRvcj09KGNvbnN0IEZvbnRQbGF0Zm9ybURhdGEmIG90aGVyKSBjb25zdAogICAg
IHsgCiAgICAgICAgIHJldHVybiBtX2ZvbnQgPT0gb3RoZXIubV9mb250ICYmIG1fc3ludGhldGlj
Qm9sZCA9PSBvdGhlci5tX3N5bnRoZXRpY0JvbGQgJiYgbV9zeW50aGV0aWNPYmxpcXVlID09IG90
aGVyLm1fc3ludGhldGljT2JsaXF1ZSAmJiAKLSAgICAgICAgICAgICAgIG1fY2dGb250ID09IG90
aGVyLm1fY2dGb250ICYmIG1fc2l6ZSA9PSBvdGhlci5tX3NpemUgJiYgbV9hdHN1Rm9udElEID09
IG90aGVyLm1fYXRzdUZvbnRJRCAmJiBtX29yaWVudGF0aW9uID09IG90aGVyLm1fb3JpZW50YXRp
b247CisgICAgICAgICAgICAgICBtX2NnRm9udCA9PSBvdGhlci5tX2NnRm9udCAmJiBtX3NpemUg
PT0gb3RoZXIubV9zaXplICYmIG1fb3JpZW50YXRpb24gPT0gb3RoZXIubV9vcmllbnRhdGlvbjsK
ICAgICB9CiAKICAgICBOU0ZvbnQgKmZvbnQoKSBjb25zdCB7IHJldHVybiBtX2ZvbnQ7IH0KQEAg
LTE0OSw4ICsxNDYsNyBAQCBwcml2YXRlOgogICAgIC8vICogb3V0TlNGb250IC0gVGhlIGZvbnQg
dGhhdCB3YXMgYWN0dWFsbHkgbG9hZGVkLCBmb3IgdGhlIENocm9taXVtIHBvcnQgdGhpcyBtYXkg
YmUgZGlmZmVyZW50IHRoYW4gbnNGb250LgogICAgIC8vIFRoZSBjYWxsZXIgaXMgcmVzcG9uc2li
bGUgZm9yIGNhbGxpbmcgQ0ZSZWxlYXNlKCkgb24gdGhpcyBwYXJhbWV0ZXIgd2hlbiBkb25lIHdp
dGggaXQuCiAgICAgLy8gKiBjZ0ZvbnQgLSBDR0ZvbnRSZWYgcmVwcmVzZW50aW5nIHRoZSBpbnB1
dCBmb250IGF0IHRoZSBzcGVjaWZpZWQgcG9pbnQgc2l6ZS4KLSAgICAvLyAqIGZvbnRJRCAtIElE
IG9mIGxvYWRlZCBmb250LgotICAgIHZvaWQgbG9hZEZvbnQoTlNGb250KiBuc0ZvbnQsIGZsb2F0
IGZvbnRTaXplLCBOU0ZvbnQqJiBvdXROU0ZvbnQsIENHRm9udFJlZiYgY2dGb250LCBBVFNVRm9u
dElEJiBmb250SUQpOworICAgIHZvaWQgbG9hZEZvbnQoTlNGb250KiBuc0ZvbnQsIGZsb2F0IGZv
bnRTaXplLCBOU0ZvbnQqJiBvdXROU0ZvbnQsIENHRm9udFJlZiYgY2dGb250KTsKIAogICAgIE5T
Rm9udCAqbV9mb250OwogCkluZGV4OiBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0Zv
bnRQbGF0Zm9ybURhdGFDb2NvYS5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2NvY29hL0ZvbnRQbGF0Zm9ybURhdGFDb2NvYS5tbQkocmV2aXNpb24gNzI2OTgpCisr
KyBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0ZvbnRQbGF0Zm9ybURhdGFDb2NvYS5t
bQkod29ya2luZyBjb3B5KQpAQCAtMzEsMTUgKzMxLDEzIEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKICNpZiBQTEFURk9STShNQUMpCi12b2lkIEZvbnRQbGF0Zm9ybURhdGE6OmxvYWRGb250KE5T
Rm9udCogbnNGb250LCBmbG9hdCwgTlNGb250KiYgb3V0TlNGb250LCBDR0ZvbnRSZWYmIGNnRm9u
dCwgQVRTVUZvbnRJRCYgZm9udElEKQordm9pZCBGb250UGxhdGZvcm1EYXRhOjpsb2FkRm9udChO
U0ZvbnQqIG5zRm9udCwgZmxvYXQsIE5TRm9udComIG91dE5TRm9udCwgQ0dGb250UmVmJiBjZ0Zv
bnQpCiB7CiAgICAgb3V0TlNGb250ID0gbnNGb250OwogI2lmbmRlZiBCVUlMRElOR19PTl9USUdF
UgogICAgIGNnRm9udCA9IENURm9udENvcHlHcmFwaGljc0ZvbnQodG9DVEZvbnRSZWYobnNGb250
KSwgMCk7Ci0gICAgZm9udElEID0gQ1RGb250R2V0UGxhdGZvcm1Gb250KHRvQ1RGb250UmVmKG5z
Rm9udCksIDApOwogI2Vsc2UKICAgICBjZ0ZvbnQgPSB3a0dldENHRm9udEZyb21OU0ZvbnQobnNG
b250KTsKLSAgICBmb250SUQgPSB3a0dldE5TRm9udEFUU1VGb250SWQobnNGb250KTsKICNlbmRp
ZgogfQogI2VuZGlmICAvLyBQTEFURk9STShNQUMpCkBAIC02MCw3ICs1OCw3IEBAIEZvbnRQbGF0
Zm9ybURhdGE6OkZvbnRQbGF0Zm9ybURhdGEoTlNGb24KICAgICBBU1NFUlRfQVJHKG5zRm9udCwg
bnNGb250KTsKIAogICAgIENHRm9udFJlZiBjZ0ZvbnQgPSAwOwotICAgIGxvYWRGb250KG5zRm9u
dCwgc2l6ZSwgbV9mb250LCBjZ0ZvbnQsIG1fYXRzdUZvbnRJRCk7CisgICAgbG9hZEZvbnQobnNG
b250LCBzaXplLCBtX2ZvbnQsIGNnRm9udCk7CiAKICAgICBtX29yaWVudGF0aW9uID0gb3JpZW50
YXRpb247CiAKQEAgLTgyLDcgKzgwLDYgQEAgRm9udFBsYXRmb3JtRGF0YTo6Rm9udFBsYXRmb3Jt
RGF0YShjb25zdAogICAgIG1fc3ludGhldGljT2JsaXF1ZSA9IGYubV9zeW50aGV0aWNPYmxpcXVl
OwogICAgIG1fc2l6ZSA9IGYubV9zaXplOwogICAgIG1fY2dGb250ID0gZi5tX2NnRm9udDsKLSAg
ICBtX2F0c3VGb250SUQgPSBmLm1fYXRzdUZvbnRJRDsKICAgICBtX2lzQ29sb3JCaXRtYXBGb250
ID0gZi5tX2lzQ29sb3JCaXRtYXBGb250OwogICAgIG1fb3JpZW50YXRpb24gPSBmLm1fb3JpZW50
YXRpb247CiAgICAgbV9DVEZvbnQgPSBmLm1fQ1RGb250OwpAQCAtMTAzLDcgKzEwMCw2IEBAIGNv
bnN0IEZvbnRQbGF0Zm9ybURhdGEmIEZvbnRQbGF0Zm9ybURhdGEKICAgICBtX3N5bnRoZXRpY09i
bGlxdWUgPSBmLm1fc3ludGhldGljT2JsaXF1ZTsKICAgICBtX3NpemUgPSBmLm1fc2l6ZTsKICAg
ICBtX2NnRm9udCA9IGYubV9jZ0ZvbnQ7Ci0gICAgbV9hdHN1Rm9udElEID0gZi5tX2F0c3VGb250
SUQ7CiAgICAgaWYgKG1fZm9udCA9PSBmLm1fZm9udCkKICAgICAgICAgcmV0dXJuICp0aGlzOwog
ICAgIGlmIChmLm1fZm9udCAmJiBmLm1fZm9udCAhPSByZWludGVycHJldF9jYXN0PE5TRm9udCAq
PigtMSkpCkBAIC0xMzYsNyArMTMyLDcgQEAgdm9pZCBGb250UGxhdGZvcm1EYXRhOjpzZXRGb250
KE5TRm9udCAqZgogICAgIAogICAgIENHRm9udFJlZiBjZ0ZvbnQgPSAwOwogICAgIE5TRm9udCog
bG9hZGVkRm9udCA9IDA7Ci0gICAgbG9hZEZvbnQobV9mb250LCBtX3NpemUsIGxvYWRlZEZvbnQs
IGNnRm9udCwgbV9hdHN1Rm9udElEKTsKKyAgICBsb2FkRm9udChtX2ZvbnQsIG1fc2l6ZSwgbG9h
ZGVkRm9udCwgY2dGb250KTsKICAgICAKICNpZiBQTEFURk9STShDSFJPTUlVTSkgJiYgT1MoREFS
V0lOKQogICAgIC8vIElmIGxvYWRGb250IHJlcGxhY2VkIG1fZm9udCB3aXRoIGEgZmFsbGJhY2sg
Zm9udCwgdGhlbiByZWxlYXNlIHRoZQpJbmRleDogV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9t
YWMvQ29tcGxleFRleHRDb250cm9sbGVyQVRTVUkuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvbWFjL0NvbXBsZXhUZXh0Q29udHJvbGxlckFUU1VJLmNwcAkocmV2
aXNpb24gNzI2OTgpCisrKyBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL21hYy9Db21wbGV4VGV4
dENvbnRyb2xsZXJBVFNVSS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI4MCw3ICsyODAsNyBAQCBz
dGF0aWMgQVRTVVN0eWxlIGluaXRpYWxpemVBVFNVU3R5bGUoY29uCiAgICAgaWYgKCFhZGRSZXN1
bHQuc2Vjb25kKQogICAgICAgICByZXR1cm4gYXRzdVN0eWxlOwogCi0gICAgQVRTVUZvbnRJRCBm
b250SUQgPSBmb250RGF0YS0+cGxhdGZvcm1EYXRhKCkubV9hdHN1Rm9udElEOworICAgIEFUU1VG
b250SUQgZm9udElEID0gZm9udERhdGEtPnBsYXRmb3JtRGF0YSgpLmN0Rm9udCgpID8gQ1RGb250
R2V0UGxhdGZvcm1Gb250KGZvbnREYXRhLT5wbGF0Zm9ybURhdGEoKS5jdEZvbnQoKSwgMCkgOiAw
OwogICAgIGlmICghZm9udElEKSB7CiAgICAgICAgIExPR19FUlJPUigidW5hYmxlIHRvIGdldCBB
VFNVRm9udElEIGZvciAlcCIsIGZvbnREYXRhLT5wbGF0Zm9ybURhdGEoKS5mb250KCkpOwogICAg
ICAgICBmb250RGF0YS0+bV9BVFNVU3R5bGVNYXAucmVtb3ZlKGFkZFJlc3VsdC5maXJzdCk7Cklu
ZGV4OiBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL21hYy9Gb250Q3VzdG9tUGxhdGZvcm1EYXRh
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL21hYy9Gb250Q3Vz
dG9tUGxhdGZvcm1EYXRhLmNwcAkocmV2aXNpb24gNzI2OTgpCisrKyBXZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL21hYy9Gb250Q3VzdG9tUGxhdGZvcm1EYXRhLmNwcAkod29ya2luZyBjb3B5KQpA
QCAtNDAsNyArNDAsNyBAQCBGb250Q3VzdG9tUGxhdGZvcm1EYXRhOjp+Rm9udEN1c3RvbVBsYXRm
CiAKIEZvbnRQbGF0Zm9ybURhdGEgRm9udEN1c3RvbVBsYXRmb3JtRGF0YTo6Zm9udFBsYXRmb3Jt
RGF0YShpbnQgc2l6ZSwgYm9vbCBib2xkLCBib29sIGl0YWxpYywgRm9udE9yaWVudGF0aW9uIG9y
aWVudGF0aW9uLCBGb250UmVuZGVyaW5nTW9kZSkKIHsKLSAgICByZXR1cm4gRm9udFBsYXRmb3Jt
RGF0YShtX2NnRm9udCwgKEFUU1VGb250SUQpbV9hdHNGb250LCBzaXplLCBib2xkLCBpdGFsaWMs
IG9yaWVudGF0aW9uKTsKKyAgICByZXR1cm4gRm9udFBsYXRmb3JtRGF0YShtX2NnRm9udCwgc2l6
ZSwgYm9sZCwgaXRhbGljLCBvcmllbnRhdGlvbik7CiB9CiAKIEZvbnRDdXN0b21QbGF0Zm9ybURh
dGEqIGNyZWF0ZUZvbnRDdXN0b21QbGF0Zm9ybURhdGEoU2hhcmVkQnVmZmVyKiBidWZmZXIpCkBA
IC02Niw3ICs2Niw2IEBAIEZvbnRDdXN0b21QbGF0Zm9ybURhdGEqIGNyZWF0ZUZvbnRDdXN0b20K
ICNlbmRpZgogCiAgICAgQVRTRm9udENvbnRhaW5lclJlZiBjb250YWluZXJSZWYgPSAwOwotICAg
IEFUU0ZvbnRSZWYgZm9udFJlZiA9IDA7CiAKICAgICBSZXRhaW5QdHI8Q0dGb250UmVmPiBjZ0Zv
bnRSZWY7CiAKQEAgLTkzLDYgKzkyLDcgQEAgRm9udEN1c3RvbVBsYXRmb3JtRGF0YSogY3JlYXRl
Rm9udEN1c3RvbQogICAgICAgICByZXR1cm4gMDsKICAgICB9CiAgICAgCisgICAgQVRTRm9udFJl
ZiBmb250UmVmID0gMDsKICAgICBBVFNGb250RmluZEZyb21Db250YWluZXIoY29udGFpbmVyUmVm
LCBrQVRTT3B0aW9uRmxhZ3NEZWZhdWx0LCAxLCAmZm9udFJlZiwgTlVMTCk7CiAgICAgaWYgKCFm
b250UmVmKSB7CiAgICAgICAgIEFUU0ZvbnREZWFjdGl2YXRlKGNvbnRhaW5lclJlZiwgTlVMTCwg
a0FUU09wdGlvbkZsYWdzRGVmYXVsdCk7CkBAIC0xMTEsNyArMTExLDcgQEAgRm9udEN1c3RvbVBs
YXRmb3JtRGF0YSogY3JlYXRlRm9udEN1c3RvbQogICAgIH0KICNlbmRpZiAvLyAhZGVmaW5lZChC
VUlMRElOR19PTl9USUdFUikgJiYgIWRlZmluZWQoQlVJTERJTkdfT05fTEVPUEFSRCkKIAotICAg
IHJldHVybiBuZXcgRm9udEN1c3RvbVBsYXRmb3JtRGF0YShjb250YWluZXJSZWYsIGZvbnRSZWYs
IGNnRm9udFJlZi5yZWxlYXNlUmVmKCkpOworICAgIHJldHVybiBuZXcgRm9udEN1c3RvbVBsYXRm
b3JtRGF0YShjb250YWluZXJSZWYsIGNnRm9udFJlZi5yZWxlYXNlUmVmKCkpOwogfQogCiBib29s
IEZvbnRDdXN0b21QbGF0Zm9ybURhdGE6OnN1cHBvcnRzRm9ybWF0KGNvbnN0IFN0cmluZyYgZm9y
bWF0KQpJbmRleDogV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9tYWMvRm9udEN1c3RvbVBsYXRm
b3JtRGF0YS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvbWFjL0Zv
bnRDdXN0b21QbGF0Zm9ybURhdGEuaAkocmV2aXNpb24gNzI2OTgpCisrKyBXZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL21hYy9Gb250Q3VzdG9tUGxhdGZvcm1EYXRhLmgJKHdvcmtpbmcgY29weSkK
QEAgLTM3LDkgKzM3LDEyIEBAIGNsYXNzIEZvbnRQbGF0Zm9ybURhdGE7CiBjbGFzcyBTaGFyZWRC
dWZmZXI7CiAKIHN0cnVjdCBGb250Q3VzdG9tUGxhdGZvcm1EYXRhIDogTm9uY29weWFibGUgewot
ICAgIEZvbnRDdXN0b21QbGF0Zm9ybURhdGEoQVRTRm9udENvbnRhaW5lclJlZiBjb250YWluZXIs
IEFUU0ZvbnRSZWYgYXRzRm9udCwgQ0dGb250UmVmIGNnRm9udCkKLSAgICA6IG1fYXRzQ29udGFp
bmVyKGNvbnRhaW5lciksIG1fYXRzRm9udChhdHNGb250KSwgbV9jZ0ZvbnQoY2dGb250KQotICAg
IHt9CisgICAgRm9udEN1c3RvbVBsYXRmb3JtRGF0YShBVFNGb250Q29udGFpbmVyUmVmIGNvbnRh
aW5lciwgQ0dGb250UmVmIGNnRm9udCkKKyAgICAgICAgOiBtX2F0c0NvbnRhaW5lcihjb250YWlu
ZXIpCisgICAgICAgICwgbV9jZ0ZvbnQoY2dGb250KQorICAgIHsKKyAgICB9CisKICAgICB+Rm9u
dEN1c3RvbVBsYXRmb3JtRGF0YSgpOwogCiAgICAgRm9udFBsYXRmb3JtRGF0YSBmb250UGxhdGZv
cm1EYXRhKGludCBzaXplLCBib29sIGJvbGQsIGJvb2wgaXRhbGljLCBGb250T3JpZW50YXRpb24g
PSBIb3Jpem9udGFsLCBGb250UmVuZGVyaW5nTW9kZSA9IE5vcm1hbFJlbmRlcmluZ01vZGUpOwpA
QCAtNDcsMTEgKzUwLDEwIEBAIHN0cnVjdCBGb250Q3VzdG9tUGxhdGZvcm1EYXRhIDogTm9uY29w
eWEKICAgICBzdGF0aWMgYm9vbCBzdXBwb3J0c0Zvcm1hdChjb25zdCBTdHJpbmcmKTsKIAogICAg
IEFUU0ZvbnRDb250YWluZXJSZWYgbV9hdHNDb250YWluZXI7Ci0gICAgQVRTRm9udFJlZiBtX2F0
c0ZvbnQ7CiAgICAgQ0dGb250UmVmIG1fY2dGb250OwogfTsKIAotRm9udEN1c3RvbVBsYXRmb3Jt
RGF0YSogY3JlYXRlRm9udEN1c3RvbVBsYXRmb3JtRGF0YShTaGFyZWRCdWZmZXIqIGJ1ZmZlcik7
CitGb250Q3VzdG9tUGxhdGZvcm1EYXRhKiBjcmVhdGVGb250Q3VzdG9tUGxhdGZvcm1EYXRhKFNo
YXJlZEJ1ZmZlciopOwogCiB9CiAKSW5kZXg6IFdlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvbWFj
L1NpbXBsZUZvbnREYXRhQVRTVUkubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9tYWMvU2ltcGxlRm9udERhdGFBVFNVSS5tbQkocmV2aXNpb24gNzI2OTgpCisrKyBX
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL21hYy9TaW1wbGVGb250RGF0YUFUU1VJLm1tCSh3b3Jr
aW5nIGNvcHkpCkBAIC00OCw4ICs0OCw4IEBAIHZvaWQgU2ltcGxlRm9udERhdGE6OmNoZWNrU2hh
cGVzQXJhYmljKCkKICAgICBBU1NFUlQoIW1fY2hlY2tlZFNoYXBlc0FyYWJpYyk7CiAKICAgICBt
X2NoZWNrZWRTaGFwZXNBcmFiaWMgPSB0cnVlOwotICAgIAotICAgIEFUU1VGb250SUQgZm9udElE
ID0gbV9wbGF0Zm9ybURhdGEubV9hdHN1Rm9udElEOworCisgICAgQVRTVUZvbnRJRCBmb250SUQg
PSBtX3BsYXRmb3JtRGF0YS5jdEZvbnQoKSA/IENURm9udEdldFBsYXRmb3JtRm9udChtX3BsYXRm
b3JtRGF0YS5jdEZvbnQoKSwgMCkgOiAwOwogICAgIGlmICghZm9udElEKSB7CiAgICAgICAgIExP
R19FUlJPUigidW5hYmxlIHRvIGdldCBBVFNVRm9udElEIGZvciAlQCIsIG1fcGxhdGZvcm1EYXRh
LmZvbnQoKSk7CiAgICAgICAgIHJldHVybjsK
</data>
<flag name="review"
          id="65616"
          type_id="1"
          status="+"
          setter="koivisto"
    />
          </attachment>
      

    </bug>

</bugzilla>