<?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>101799</bug_id>
          
          <creation_ts>2012-11-09 14:35:35 -0800</creation_ts>
          <short_desc>SimpleFontData::getCFStringAttributes sets some attributes to their default values, but shouldn’t</short_desc>
          <delta_ts>2012-11-10 14:43:12 -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>Text</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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>101851</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter>mitz</reporter>
          <assigned_to>mitz</assigned_to>
          <cc>ap</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>763336</commentid>
    <comment_count>0</comment_count>
    <who name="">mitz</who>
    <bug_when>2012-11-09 14:35:35 -0800</bug_when>
    <thetext>&lt;rdar://problem/12290266&gt;

In some configurations, setting kCTLigatureAttributeName to its default value of 1 yields different behavior from not setting it at all. We can get the correct behavior and greatly simplify the code by not setting attributes to their default values.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>763339</commentid>
    <comment_count>1</comment_count>
      <attachid>173370</attachid>
    <who name="">mitz</who>
    <bug_when>2012-11-09 14:37:47 -0800</bug_when>
    <thetext>Created attachment 173370
Only include attributes with non-default values</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>763380</commentid>
    <comment_count>2</comment_count>
      <attachid>173370</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2012-11-09 15:06:57 -0800</bug_when>
    <thetext>Comment on attachment 173370
Only include attributes with non-default values

View in context: https://bugs.webkit.org/attachment.cgi?id=173370&amp;action=review

&gt; Source/WebCore/platform/graphics/mac/SimpleFontDataCoreText.cpp:42
&gt; +    attributesDictionary.adoptCF(CFDictionaryCreateMutable(kCFAllocatorDefault, 4, &amp;kCFCopyStringDictionaryKeyCallBacks, &amp;kCFTypeDictionaryValueCallBacks));

This is a fairly magical &quot;4&quot;.

&gt; Source/WebCore/platform/graphics/mac/SimpleFontDataCoreText.cpp:55
&gt; +        static int zero = 0;

Why not a &quot;const&quot;?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>763549</commentid>
    <comment_count>3</comment_count>
    <who name="">mitz</who>
    <bug_when>2012-11-09 18:54:33 -0800</bug_when>
    <thetext>Thanks for the review!

(In reply to comment #2)
&gt; (From update of attachment 173370 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=173370&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/platform/graphics/mac/SimpleFontDataCoreText.cpp:42
&gt; &gt; +    attributesDictionary.adoptCF(CFDictionaryCreateMutable(kCFAllocatorDefault, 4, &amp;kCFCopyStringDictionaryKeyCallBacks, &amp;kCFTypeDictionaryValueCallBacks));
&gt; 
&gt; This is a fairly magical &quot;4&quot;.

How do you propose to resolve this? Named constant? Descriptive comment? Other?

&gt; &gt; Source/WebCore/platform/graphics/mac/SimpleFontDataCoreText.cpp:55
&gt; &gt; +        static int zero = 0;
&gt; 
&gt; Why not a &quot;const&quot;?

No reason.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>763558</commentid>
    <comment_count>4</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2012-11-09 19:19:02 -0800</bug_when>
    <thetext>&gt; How do you propose to resolve this? Named constant? Descriptive comment? Other?

No specific proposal.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>763559</commentid>
    <comment_count>5</comment_count>
    <who name="">mitz</who>
    <bug_when>2012-11-09 19:35:46 -0800</bug_when>
    <thetext>Fixed in &lt;http://trac.webkit.org/r134146&gt;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>763733</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-11-10 14:41:23 -0800</bug_when>
    <thetext>Re-opened since this is blocked by bug 101851</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>763735</commentid>
    <comment_count>7</comment_count>
    <who name="">mitz</who>
    <bug_when>2012-11-10 14:42:36 -0800</bug_when>
    <thetext>(In reply to comment #6)
&gt; Re-opened since this is blocked by bug 101851

This makes no sense.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>173370</attachid>
            <date>2012-11-09 14:37:47 -0800</date>
            <delta_ts>2012-11-09 15:06:57 -0800</delta_ts>
            <desc>Only include attributes with non-default values</desc>
            <filename>bug-101799-20121109143554.patch</filename>
            <type>text/plain</type>
            <size>8107</size>
            <attacher>mitz</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEzNDExNykKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE5IEBACisyMDEyLTExLTA5ICBEYW4gQmVy
bnN0ZWluICA8bWl0ekBhcHBsZS5jb20+CisKKyAgICAgICAgU2ltcGxlRm9udERhdGE6OmdldENG
U3RyaW5nQXR0cmlidXRlcyBzZXRzIHNvbWUgYXR0cmlidXRlcyB0byB0aGVpciBkZWZhdWx0IHZh
bHVlcywgYnV0IHNob3VsZG7igJl0CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xMDE3OTkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBJbiBzb21lIGNvbmZpZ3VyYXRpb25zLCBzZXR0aW5nIGtDVExpZ2F0dXJl
QXR0cmlidXRlTmFtZSB0byBpdHMgZGVmYXVsdCB2YWx1ZSBvZiAxIHlpZWxkcworICAgICAgICBk
aWZmZXJlbnQgYmVoYXZpb3IgZnJvbSBub3Qgc2V0dGluZyBpdCBhdCBhbGwuIFdlIGNhbiBnZXQg
dGhlIGNvcnJlY3QgYmVoYXZpb3IgYW5kIGdyZWF0bHkKKyAgICAgICAgc2ltcGxpZnkgdGhlIGNv
ZGUgYnkgbm90IHNldHRpbmcgYXR0cmlidXRlcyB0byB0aGVpciBkZWZhdWx0IHZhbHVlcy4KKwor
ICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL21hYy9TaW1wbGVGb250RGF0YUNvcmVUZXh0LmNw
cDoKKyAgICAgICAgUmVtb3ZlZCByZWR1bmRhbnQgI2ltcG9ydCBkaXJlY3RpdmVzIGFuZCBjaGFu
Z2VkIHRoZSByZW1haW5pbmcgb25lcyB0byAjaW5jbHVkZS4KKyAgICAgICAgKFdlYkNvcmU6OlNp
bXBsZUZvbnREYXRhOjpnZXRDRlN0cmluZ0F0dHJpYnV0ZXMpOiBDaGFuZ2VkIHRvIHVzZSBhIG11
dGFibGUgZGljdGlvbmFyeSBhbmQKKyAgICAgICAgb25seSBhZGQgYXR0cmlidXRlcyB0aGF0IGhh
dmUgbm9uLWRlZmF1bHQgdmFsdWVzLgorCiAyMDEyLTExLTA5ICBNaWNoYWVsIFNhYm9mZiAgPG1z
YWJvZmZAYXBwbGUuY29tPgogCiAgICAgICAgIEhUTUwgQXR0cmlidXRlcyBuYW1lcyBhbmQgdmFs
dWVzIHNob3VsZCBiZSBjcmVhdGVkIGFzIDggYml0IHN0cmluZyB3aGVyZSBwb3NzaWJsZQpJbmRl
eDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvbWFjL1NpbXBsZUZvbnREYXRhQ29y
ZVRleHQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L21hYy9TaW1wbGVGb250RGF0YUNvcmVUZXh0LmNwcAkocmV2aXNpb24gMTMzOTEyKQorKysgU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvbWFjL1NpbXBsZUZvbnREYXRhQ29yZVRleHQu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xLDQxICsxLDMzIEBACiAvKgotICogQ29weXJpZ2h0IChD
KSAyMDA1LCAyMDA2IEFwcGxlIENvbXB1dGVyLCBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgor
ICogQ29weXJpZ2h0IChDKSAyMDA1LCAyMDA2LCAyMDEyIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KICAqIENvcHlyaWdodCAoQykgMjAwNiBBbGV4ZXkgUHJvc2t1cnlha292CiAgKgog
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKICAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRp
b24uCiAgKgotICogMS4gIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLiAKLSAqIDIuICBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICog
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUKLSAqICAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLiAKLSAqIDMuICBOZWl0aGVyIHRoZSBu
YW1lIG9mIEFwcGxlIENvbXB1dGVyLCBJbmMuICgiQXBwbGUiKSBub3IgdGhlIG5hbWVzIG9mCi0g
KiAgICAgaXRzIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUg
cHJvZHVjdHMgZGVyaXZlZAotICogICAgIGZyb20gdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNp
ZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4gCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBBUFBMRSBBTkQgSVRTIENPTlRSSUJVVE9SUyAiQVMgSVMiIEFORCBBTlkKLSAq
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgVEhFIElNUExJRUQKLSAqIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUKLSAqIERJU0NMQUlNRUQuIElOIE5P
IEVWRU5UIFNIQUxMIEFQUExFIE9SIElUUyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkK
LSAqIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1Ig
Q09OU0VRVUVOVElBTCBEQU1BR0VTCi0gKiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7Ci0gKiBMT1NTIE9G
IFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVS
IENBVVNFRCBBTkQKLSAqIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENP
TlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VO
Q0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YKLSAq
IFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VD
SCBEQU1BR0UuCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5E
IElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExF
IElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVO
VElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQg
T0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBP
UiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJ
U0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
CiAgKi8KIAotI2ltcG9ydCAiY29uZmlnLmgiCi0jaW1wb3J0ICJTaW1wbGVGb250RGF0YS5oIgot
Ci0jaW1wb3J0ICJGb250LmgiCi0jaW1wb3J0ICJGb250Q2FjaGUuaCIKLSNpbXBvcnQgIkZvbnRE
ZXNjcmlwdGlvbi5oIgotI2ltcG9ydCA8QXBwbGljYXRpb25TZXJ2aWNlcy9BcHBsaWNhdGlvblNl
cnZpY2VzLmg+CisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiU2ltcGxlRm9udERhdGEu
aCIKIAotdXNpbmcgbmFtZXNwYWNlIHN0ZDsKKyNpbmNsdWRlIDxDb3JlVGV4dC9Db3JlVGV4dC5o
PgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKQEAgLTQ3LDMyICszOSwyNyBAQCBDRkRpY3Rpb25h
cnlSZWYgU2ltcGxlRm9udERhdGE6OmdldENGU3RyCiAgICAgaWYgKCFhZGRSZXN1bHQuaXNOZXdF
bnRyeSkKICAgICAgICAgcmV0dXJuIGF0dHJpYnV0ZXNEaWN0aW9uYXJ5LmdldCgpOwogICAgIAot
ICAgIGJvb2wgdHJlYXRMaW5lQXNWZXJ0aWNhbCA9IG9yaWVudGF0aW9uID09IFZlcnRpY2FsOwot
Ci0gICAgYm9vbCBhbGxvd0xpZ2F0dXJlcyA9ICghdHJlYXRMaW5lQXNWZXJ0aWNhbCAmJiBwbGF0
Zm9ybURhdGEoKS5hbGxvd3NMaWdhdHVyZXMoKSkgfHwgKHR5cGVzZXR0aW5nRmVhdHVyZXMgJiBM
aWdhdHVyZXMpOwotCi0gICAgc3RhdGljIGNvbnN0IGludCBsaWdhdHVyZXNOb3RBbGxvd2VkVmFs
dWUgPSAwOwotICAgIHN0YXRpYyBDRk51bWJlclJlZiBsaWdhdHVyZXNOb3RBbGxvd2VkID0gQ0ZO
dW1iZXJDcmVhdGUoa0NGQWxsb2NhdG9yRGVmYXVsdCwga0NGTnVtYmVySW50VHlwZSwgJmxpZ2F0
dXJlc05vdEFsbG93ZWRWYWx1ZSk7CisgICAgYXR0cmlidXRlc0RpY3Rpb25hcnkuYWRvcHRDRihD
RkRpY3Rpb25hcnlDcmVhdGVNdXRhYmxlKGtDRkFsbG9jYXRvckRlZmF1bHQsIDQsICZrQ0ZDb3B5
U3RyaW5nRGljdGlvbmFyeUtleUNhbGxCYWNrcywgJmtDRlR5cGVEaWN0aW9uYXJ5VmFsdWVDYWxs
QmFja3MpKTsKKyAgICBDRk11dGFibGVEaWN0aW9uYXJ5UmVmIG11dGFibGVBdHRyaWJ1dGVzID0g
KENGTXV0YWJsZURpY3Rpb25hcnlSZWYpYXR0cmlidXRlc0RpY3Rpb25hcnkuZ2V0KCk7CiAKLSAg
ICBzdGF0aWMgY29uc3QgaW50IGxpZ2F0dXJlc0FsbG93ZWRWYWx1ZSA9IDE7Ci0gICAgc3RhdGlj
IENGTnVtYmVyUmVmIGxpZ2F0dXJlc0FsbG93ZWQgPSBDRk51bWJlckNyZWF0ZShrQ0ZBbGxvY2F0
b3JEZWZhdWx0LCBrQ0ZOdW1iZXJJbnRUeXBlLCAmbGlnYXR1cmVzQWxsb3dlZFZhbHVlKTsKKyAg
ICBDRkRpY3Rpb25hcnlTZXRWYWx1ZShtdXRhYmxlQXR0cmlidXRlcywga0NURm9udEF0dHJpYnV0
ZU5hbWUsIHBsYXRmb3JtRGF0YSgpLmN0Rm9udCgpKTsKIAogICAgIGlmICghKHR5cGVzZXR0aW5n
RmVhdHVyZXMgJiBLZXJuaW5nKSkgewotICAgICAgICBzdGF0aWMgY29uc3QgZmxvYXQga2Vybmlu
Z0FkanVzdG1lbnRWYWx1ZSA9IDA7Ci0gICAgICAgIHN0YXRpYyBDRk51bWJlclJlZiBrZXJuaW5n
QWRqdXN0bWVudCA9IENGTnVtYmVyQ3JlYXRlKGtDRkFsbG9jYXRvckRlZmF1bHQsIGtDRk51bWJl
ckZsb2F0VHlwZSwgJmtlcm5pbmdBZGp1c3RtZW50VmFsdWUpOwotICAgICAgICBzdGF0aWMgY29u
c3Qgdm9pZCoga2V5c1dpdGhLZXJuaW5nRGlzYWJsZWRbXSA9IHsga0NURm9udEF0dHJpYnV0ZU5h
bWUsIGtDVEtlcm5BdHRyaWJ1dGVOYW1lLCBrQ1RMaWdhdHVyZUF0dHJpYnV0ZU5hbWUsIGtDVFZl
cnRpY2FsRm9ybXNBdHRyaWJ1dGVOYW1lIH07Ci0gICAgICAgIGNvbnN0IHZvaWQqIHZhbHVlc1dp
dGhLZXJuaW5nRGlzYWJsZWRbXSA9IHsgcGxhdGZvcm1EYXRhKCkuY3RGb250KCksIGtlcm5pbmdB
ZGp1c3RtZW50LCBhbGxvd0xpZ2F0dXJlcwotICAgICAgICAgICAgPyBsaWdhdHVyZXNBbGxvd2Vk
IDogbGlnYXR1cmVzTm90QWxsb3dlZCwgdHJlYXRMaW5lQXNWZXJ0aWNhbCA/IGtDRkJvb2xlYW5U
cnVlIDoga0NGQm9vbGVhbkZhbHNlIH07Ci0gICAgICAgIGF0dHJpYnV0ZXNEaWN0aW9uYXJ5LmFk
b3B0Q0YoQ0ZEaWN0aW9uYXJ5Q3JlYXRlKDAsIGtleXNXaXRoS2VybmluZ0Rpc2FibGVkLCB2YWx1
ZXNXaXRoS2VybmluZ0Rpc2FibGVkLAotICAgICAgICAgICAgV1RGX0FSUkFZX0xFTkdUSChrZXlz
V2l0aEtlcm5pbmdEaXNhYmxlZCksICZrQ0ZDb3B5U3RyaW5nRGljdGlvbmFyeUtleUNhbGxCYWNr
cywgJmtDRlR5cGVEaWN0aW9uYXJ5VmFsdWVDYWxsQmFja3MpKTsKLSAgICB9IGVsc2UgewotICAg
ICAgICAvLyBCeSBvbWl0dGluZyB0aGUga0NUS2VybkF0dHJpYnV0ZU5hbWUgYXR0cmlidXRlLCB3
ZSBnZXQgQ29yZSBUZXh0J3Mgc3RhbmRhcmQga2VybmluZy4KLSAgICAgICAgc3RhdGljIGNvbnN0
IHZvaWQqIGtleXNXaXRoS2VybmluZ0VuYWJsZWRbXSA9IHsga0NURm9udEF0dHJpYnV0ZU5hbWUs
IGtDVExpZ2F0dXJlQXR0cmlidXRlTmFtZSwga0NUVmVydGljYWxGb3Jtc0F0dHJpYnV0ZU5hbWUg
fTsKLSAgICAgICAgY29uc3Qgdm9pZCogdmFsdWVzV2l0aEtlcm5pbmdFbmFibGVkW10gPSB7IHBs
YXRmb3JtRGF0YSgpLmN0Rm9udCgpLCBhbGxvd0xpZ2F0dXJlcyA/IGxpZ2F0dXJlc0FsbG93ZWQg
OiBsaWdhdHVyZXNOb3RBbGxvd2VkLCB0cmVhdExpbmVBc1ZlcnRpY2FsID8ga0NGQm9vbGVhblRy
dWUgOiBrQ0ZCb29sZWFuRmFsc2UgfTsKLSAgICAgICAgYXR0cmlidXRlc0RpY3Rpb25hcnkuYWRv
cHRDRihDRkRpY3Rpb25hcnlDcmVhdGUoMCwga2V5c1dpdGhLZXJuaW5nRW5hYmxlZCwgdmFsdWVz
V2l0aEtlcm5pbmdFbmFibGVkLAotICAgICAgICAgICAgV1RGX0FSUkFZX0xFTkdUSChrZXlzV2l0
aEtlcm5pbmdFbmFibGVkKSwgJmtDRkNvcHlTdHJpbmdEaWN0aW9uYXJ5S2V5Q2FsbEJhY2tzLCAm
a0NGVHlwZURpY3Rpb25hcnlWYWx1ZUNhbGxCYWNrcykpOworICAgICAgICBzdGF0aWMgZmxvYXQg
emVybyA9IDA7CisgICAgICAgIHN0YXRpYyBDRk51bWJlclJlZiB6ZXJvS2VybmluZ1ZhbHVlID0g
Q0ZOdW1iZXJDcmVhdGUoa0NGQWxsb2NhdG9yRGVmYXVsdCwga0NGTnVtYmVyRmxvYXRUeXBlLCAm
emVybyk7CisgICAgICAgIENGRGljdGlvbmFyeVNldFZhbHVlKG11dGFibGVBdHRyaWJ1dGVzLCBr
Q1RLZXJuQXR0cmlidXRlTmFtZSwgemVyb0tlcm5pbmdWYWx1ZSk7CiAgICAgfQogCisgICAgYm9v
bCBhbGxvd0xpZ2F0dXJlcyA9IChvcmllbnRhdGlvbiA9PSBIb3Jpem9udGFsICYmIHBsYXRmb3Jt
RGF0YSgpLmFsbG93c0xpZ2F0dXJlcygpKSB8fCAodHlwZXNldHRpbmdGZWF0dXJlcyAmIExpZ2F0
dXJlcyk7CisgICAgaWYgKCFhbGxvd0xpZ2F0dXJlcykgeworICAgICAgICBzdGF0aWMgaW50IHpl
cm8gPSAwOworICAgICAgICBzdGF0aWMgQ0ZOdW1iZXJSZWYgZXNzZW50aWFsTGlnYXR1cmVzVmFs
dWUgPSBDRk51bWJlckNyZWF0ZShrQ0ZBbGxvY2F0b3JEZWZhdWx0LCBrQ0ZOdW1iZXJJbnRUeXBl
LCAmemVybyk7CisgICAgICAgIENGRGljdGlvbmFyeVNldFZhbHVlKG11dGFibGVBdHRyaWJ1dGVz
LCBrQ1RMaWdhdHVyZUF0dHJpYnV0ZU5hbWUsIGVzc2VudGlhbExpZ2F0dXJlc1ZhbHVlKTsKKyAg
ICB9CisKKyAgICBpZiAob3JpZW50YXRpb24gPT0gVmVydGljYWwpCisgICAgICAgIENGRGljdGlv
bmFyeVNldFZhbHVlKG11dGFibGVBdHRyaWJ1dGVzLCBrQ1RWZXJ0aWNhbEZvcm1zQXR0cmlidXRl
TmFtZSwga0NGQm9vbGVhblRydWUpOworCiAgICAgcmV0dXJuIGF0dHJpYnV0ZXNEaWN0aW9uYXJ5
LmdldCgpOwogfQogCg==
</data>
<flag name="review"
          id="188044"
          type_id="1"
          status="+"
          setter="ap"
    />
          </attachment>
      

    </bug>

</bugzilla>