<?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>39084</bug_id>
          
          <creation_ts>2010-05-13 13:38:19 -0700</creation_ts>
          <short_desc>More :visited link optimizations to reduce memory usage</short_desc>
          <delta_ts>2010-05-14 10:01: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>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</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>InRadar</keywords>
          <priority>P1</priority>
          <bug_severity>Critical</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Dave Hyatt">hyatt</reporter>
          <assigned_to name="Dave Hyatt">hyatt</assigned_to>
          <cc>abarth</cc>
    
    <cc>eric</cc>
    
    <cc>hamaji</cc>
    
    <cc>mitz</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>225475</commentid>
    <comment_count>0</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2010-05-13 13:38:19 -0700</bug_when>
    <thetext>More :visited link optimizations to reduce memory usage</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>225476</commentid>
    <comment_count>1</comment_count>
      <attachid>56015</attachid>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2010-05-13 13:39:06 -0700</bug_when>
    <thetext>Created attachment 56015
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>225477</commentid>
    <comment_count>2</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2010-05-13 13:39:44 -0700</bug_when>
    <thetext>&lt;rdar://problem/7965202&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>225482</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-05-13 13:42:52 -0700</bug_when>
    <thetext>Attachment 56015 did not pass style-queue:

Failed to run &quot;[&apos;WebKitTools/Scripts/check-webkit-style&apos;, &apos;--no-squash&apos;]&quot; exit_code: 1
WebCore/css/CSSStyleSelector.cpp:1171:  One space before end of line comments  [whitespace/comments] [5]
WebCore/css/CSSStyleSelector.cpp:1470:  One space before end of line comments  [whitespace/comments] [5]
WebCore/css/CSSStyleSelector.cpp:2935:  A case label should not be indented, but line up with its switch statement.  [whitespace/indent] [4]
WebCore/css/CSSStyleSelector.cpp:2934:  Missing space before ( in switch(  [whitespace/parens] [5]
Total errors found: 4 in 3 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>225516</commentid>
    <comment_count>4</comment_count>
      <attachid>56015</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2010-05-13 14:47:30 -0700</bug_when>
    <thetext>Comment on attachment 56015
Patch

Looks good, r=me!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>225519</commentid>
    <comment_count>5</comment_count>
    <who name="Dave Hyatt">hyatt</who>
    <bug_when>2010-05-13 14:51:51 -0700</bug_when>
    <thetext>Fixed in r59386.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>225549</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-05-13 15:55:49 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/59387 might have broken Qt Windows 32-bit Release
The following changes are on the blame list:
http://trac.webkit.org/changeset/59387
http://trac.webkit.org/changeset/59388
http://trac.webkit.org/changeset/59389</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>225895</commentid>
    <comment_count>7</comment_count>
    <who name="Shinichiro Hamaji">hamaji</who>
    <bug_when>2010-05-14 09:56:02 -0700</bug_when>
    <thetext>Committed r59477: &lt;http://trac.webkit.org/changeset/59477&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>225897</commentid>
    <comment_count>8</comment_count>
    <who name="Shinichiro Hamaji">hamaji</who>
    <bug_when>2010-05-14 10:01:45 -0700</bug_when>
    <thetext>(In reply to comment #7)
&gt; Committed r59477: &lt;http://trac.webkit.org/changeset/59477&gt;

This is a small attempt to fix chromium&apos;s memory bot. Please check ChangeLog for detail.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>56015</attachid>
            <date>2010-05-13 13:39:06 -0700</date>
            <delta_ts>2010-05-13 14:47:29 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-39084-20100513153905.patch</filename>
            <type>text/plain</type>
            <size>15560</size>
            <attacher name="Dave Hyatt">hyatt</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA1OTM4MykKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMzMgQEAKKzIwMTAtMDUtMTMgIERhdmlkIEh5YXR0ICA8aHlhdHRAYXBwbGUuY29t
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEltcHJv
dmUgOnZpc2l0ZWQgc3R5bGUgcmVzb2x1dGlvbiB0byByZWR1Y2UgaXRzIG1lbW9yeSBmb290cHJp
bnQgYW5kIHRvIG1ha2Ugc29tZSBzcGVlZCBhZGp1c3RtZW50cyBhbmQKKyAgICAgICAgc2ltcGxp
ZmljYXRpb25zLgorCisgICAgICAgICgxKSBUaWUgdGhlIGNhY2hpbmcgb2YgbGluayBzdGF0ZSBv
biBDU1NTdHlsZVNlbGVjdG9yIHRvIHRoZSBlbGVtZW50LiAgSnVzdCBjbGVhciBvdXQgdGhlIGVs
ZW1lbnQgd2hlbgorICAgICAgICBzdHlsZSByZXNvbHV0aW9uIGZpbmlzaGVzIGZvciB0aGUgdW52
aXNpdGVkIGNhc2UgdG8gYXZvaWQgY2FjaGluZyBhY3Jvc3MgZXh0ZXJuYWwgY2FsbHMuICBUaGUg
aW50ZXJuYWwKKyAgICAgICAgY2FsbHMgc2hhcmUgdGhlIGNhY2hlIGp1c3QgZmluZSBieSBkb2lu
ZyB0aGlzLgorCisgICAgICAgICgyKSBEZWxldGUgdGhlIFJlbmRlclN0eWxlIGlmIHRoZSBsaW5r
IGlzIHVudmlzaXRlZC4gIFRoaXMgc2hvdWxkbid0IHRha2UgbG9uZyBlbm91Z2ggdG8gbWFrZSB1
cyB2dWxuZXJhYmxlCisgICAgICAgIHRvIHRpbWluZyBhdHRhY2tzLCBhbmQgaXQgbWFrZXMgc3Vy
ZSB0aGUgb3ZlcmFsbCBmb290cHJpbnQgc3RheXMgdGhlIHdheSBpdCB1c2VkIHRvIGJlIGZvciB1
bnZpc2l0ZWQgbGlua3MuCisKKyAgICAgICAgKDMpIExpbWl0IHRoZSBzZXQgb2YgcHJvcGVydGll
cyB0aGF0IGNhbiBiZSBhcHBsaWVkIHRvIDp2aXNpdGVkIGxpbmtzIHRvIG9ubHkgdGhlIGNvbG9y
cyBpdCBzdXBwb3J0cy4gIFRoaXMKKyAgICAgICAgc3RvcHMgaW1hZ2VzIGZyb20gYmVpbmcgbG9h
ZGFibGUgZnJvbSA6dmlzaXRlZCBydWxlcy4KKworICAgICAgICAqIGNzcy9DU1NTdHlsZVNlbGVj
dG9yLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU1N0eWxlU2VsZWN0b3I6OmluaXQpOgorICAg
ICAgICAoV2ViQ29yZTo6Q1NTU3R5bGVTZWxlY3Rvcjo6U2VsZWN0b3JDaGVja2VyOjpkZXRlcm1p
bmVMaW5rU3RhdGUpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTU3R5bGVTZWxlY3Rvcjo6aW5pdEVs
ZW1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTU3R5bGVTZWxlY3Rvcjo6Y2FuU2hhcmVTdHls
ZVdpdGhFbGVtZW50KToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1N0eWxlU2VsZWN0b3I6OnN0eWxl
Rm9yRWxlbWVudCk6CisgICAgICAgIChXZWJDb3JlOjpDU1NTdHlsZVNlbGVjdG9yOjpwc2V1ZG9T
dHlsZUZvckVsZW1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6aXNWYWxpZFZpc2l0ZWRMaW5rUHJv
cGVydHkpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTU3R5bGVTZWxlY3Rvcjo6YXBwbHlQcm9wZXJ0
eSk6CisgICAgICAgICogY3NzL0NTU1N0eWxlU2VsZWN0b3IuaDoKKyAgICAgICAgKiByZW5kZXJp
bmcvc3R5bGUvUmVuZGVyU3R5bGUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Y29sb3JJbmNsdWRp
bmdGYWxsYmFjayk6CisKIDIwMTAtMDUtMTMgIFNoZXJpZmYgQm90ICA8d2Via2l0LnJldmlldy5i
b3RAZ21haWwuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHI1OTM3Ni4K
SW5kZXg6IFdlYkNvcmUvY3NzL0NTU1N0eWxlU2VsZWN0b3IuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdl
YkNvcmUvY3NzL0NTU1N0eWxlU2VsZWN0b3IuY3BwCShyZXZpc2lvbiA1OTI2NykKKysrIFdlYkNv
cmUvY3NzL0NTU1N0eWxlU2VsZWN0b3IuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00OTAsOCArNDkw
LDcgQEAgdm9pZCBDU1NTdHlsZVNlbGVjdG9yOjphZGRLZXlmcmFtZVN0eWxlKAogCiB2b2lkIENT
U1N0eWxlU2VsZWN0b3I6OmluaXQoKQogewotICAgIG1fZWxlbWVudCA9IDA7Ci0gICAgbV9oYXZl
Q2FjaGVkTGlua1N0YXRlID0gZmFsc2U7CisgICAgaW5pdEVsZW1lbnQoMCk7CiAgICAgbV9tYXRj
aGVkRGVjbHMuY2xlYXIoKTsKICAgICBtX3J1bGVMaXN0ID0gMDsKICAgICBtX3Jvb3REZWZhdWx0
U3R5bGUgPSAwOwpAQCAtODA0LDEzICs4MDMsMjAgQEAgdm9pZCBDU1NTdHlsZVNlbGVjdG9yOjpz
b3J0TWF0Y2hlZFJ1bGVzKAogICAgICAgICBtX21hdGNoZWRSdWxlc1tpXSA9IHJ1bGVzTWVyZ2VC
dWZmZXJbaSAtIHN0YXJ0XTsKIH0KIAotaW5saW5lIHZvaWQgQ1NTU3R5bGVTZWxlY3Rvcjo6aW5p
dEVsZW1lbnQoRWxlbWVudCogZSwgYm9vbCBoZWxwZXJDYWxsRm9yVmlzaXRlZFN0eWxlID0gZmFs
c2UpCitpbmxpbmUgRUluc2lkZUxpbmsgQ1NTU3R5bGVTZWxlY3Rvcjo6U2VsZWN0b3JDaGVja2Vy
OjpkZXRlcm1pbmVMaW5rU3RhdGUoRWxlbWVudCogZWxlbWVudCkgY29uc3QKIHsKLSAgICBpZiAo
IWhlbHBlckNhbGxGb3JWaXNpdGVkU3R5bGUpCi0gICAgICAgIG1faGF2ZUNhY2hlZExpbmtTdGF0
ZSA9IGZhbHNlOwotCi0gICAgbV9lbGVtZW50ID0gZTsKLSAgICBtX3N0eWxlZEVsZW1lbnQgPSBt
X2VsZW1lbnQgJiYgbV9lbGVtZW50LT5pc1N0eWxlZEVsZW1lbnQoKSA/IHN0YXRpY19jYXN0PFN0
eWxlZEVsZW1lbnQqPihtX2VsZW1lbnQpIDogMDsKKyAgICBpZiAoIWVsZW1lbnQgfHwgIWVsZW1l
bnQtPmlzTGluaygpKQorICAgICAgICByZXR1cm4gTm90SW5zaWRlTGluazsKKyAgICByZXR1cm4g
ZGV0ZXJtaW5lTGlua1N0YXRlU2xvd0Nhc2UoZWxlbWVudCk7Cit9CisgICAgCitpbmxpbmUgdm9p
ZCBDU1NTdHlsZVNlbGVjdG9yOjppbml0RWxlbWVudChFbGVtZW50KiBlKQoreworICAgIGlmICht
X2VsZW1lbnQgIT0gZSkgeworICAgICAgICBtX2VsZW1lbnQgPSBlOworICAgICAgICBtX3N0eWxl
ZEVsZW1lbnQgPSBtX2VsZW1lbnQgJiYgbV9lbGVtZW50LT5pc1N0eWxlZEVsZW1lbnQoKSA/IHN0
YXRpY19jYXN0PFN0eWxlZEVsZW1lbnQqPihtX2VsZW1lbnQpIDogMDsKKyAgICAgICAgbV9lbGVt
ZW50TGlua1N0YXRlID0gbV9jaGVja2VyLmRldGVybWluZUxpbmtTdGF0ZShtX2VsZW1lbnQpOwor
ICAgIH0KIH0KIAogaW5saW5lIHZvaWQgQ1NTU3R5bGVTZWxlY3Rvcjo6aW5pdEZvclN0eWxlUmVz
b2x2ZShFbGVtZW50KiBlLCBSZW5kZXJTdHlsZSogcGFyZW50U3R5bGUsIFBzZXVkb0lkIHBzZXVk
b0lEKQpAQCAtODgxLDE0ICs4ODcsNiBAQCBDU1NTdHlsZVNlbGVjdG9yOjpTZWxlY3RvckNoZWNr
ZXI6OlNlbGVjCiB7CiB9CiAKLWlubGluZSBFSW5zaWRlTGluayBDU1NTdHlsZVNlbGVjdG9yOjpT
ZWxlY3RvckNoZWNrZXI6OmRldGVybWluZUxpbmtTdGF0ZShFbGVtZW50KiBlbGVtZW50KSBjb25z
dAotewotICAgIGlmICghZWxlbWVudC0+aXNMaW5rKCkpCi0gICAgICAgIHJldHVybiBOb3RJbnNp
ZGVMaW5rOwotICAgIHJldHVybiBkZXRlcm1pbmVMaW5rU3RhdGVTbG93Q2FzZShlbGVtZW50KTsK
LX0KLSAgICAKLQogRUluc2lkZUxpbmsgQ1NTU3R5bGVTZWxlY3Rvcjo6U2VsZWN0b3JDaGVja2Vy
OjpkZXRlcm1pbmVMaW5rU3RhdGVTbG93Q2FzZShFbGVtZW50KiBlbGVtZW50KSBjb25zdAogewog
ICAgIEFTU0VSVChlbGVtZW50LT5pc0xpbmsoKSk7CkBAIC0xMDM5LDcgKzEwMzcsNyBAQCBib29s
IENTU1N0eWxlU2VsZWN0b3I6OmNhblNoYXJlU3R5bGVXaXRoCiAgICAgICAgICAgICAgICAgICAg
IG1hcHBlZEF0dHJzTWF0Y2ggPSBzLT5tYXBwZWRBdHRyaWJ1dGVzKCktPm1hcHNFcXVpdmFsZW50
KG1fc3R5bGVkRWxlbWVudC0+bWFwcGVkQXR0cmlidXRlcygpKTsKICAgICAgICAgICAgICAgICBp
ZiAobWFwcGVkQXR0cnNNYXRjaCkgewogICAgICAgICAgICAgICAgICAgICBpZiAocy0+aXNMaW5r
KCkpIHsKLSAgICAgICAgICAgICAgICAgICAgICAgIGlmIChjdXJyZW50RWxlbWVudExpbmtTdGF0
ZSgpICE9IHN0eWxlLT5pbnNpZGVMaW5rKCkpCisgICAgICAgICAgICAgICAgICAgICAgICBpZiAo
bV9lbGVtZW50TGlua1N0YXRlICE9IHN0eWxlLT5pbnNpZGVMaW5rKCkpCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgICAgICAgICAgICAgICB9CiAgICAg
ICAgICAgICAgICAgICAgIHJldHVybiB0cnVlOwpAQCAtMTEzMiw3ICsxMTMwLDcgQEAgUGFzc1Jl
ZlB0cjxSZW5kZXJTdHlsZT4gQ1NTU3R5bGVTZWxlY3RvcgogLy8gSWYgcmVzb2x2ZUZvclJvb3RE
ZWZhdWx0IGlzIHRydWUsIHN0eWxlIGJhc2VkIG9uIHVzZXIgYWdlbnQgc3R5bGUgc2hlZXQgb25s
eS4gVGhpcyBpcyB1c2VkIGluIG1lZGlhIHF1ZXJpZXMsIHdoZXJlCiAvLyByZWxhdGl2ZSB1bml0
cyBhcmUgaW50ZXJwcmV0ZWQgYWNjb3JkaW5nIHRvIGRvY3VtZW50IHJvb3QgZWxlbWVudCBzdHls
ZSwgc3R5bGVkIG9ubHkgd2l0aCBVQSBzdHlsZXNoZWV0CiAKLVBhc3NSZWZQdHI8UmVuZGVyU3R5
bGU+IENTU1N0eWxlU2VsZWN0b3I6OnN0eWxlRm9yRWxlbWVudChFbGVtZW50KiBlLCBSZW5kZXJT
dHlsZSogZGVmYXVsdFBhcmVudCwgYm9vbCBhbGxvd1NoYXJpbmcsIGJvb2wgcmVzb2x2ZUZvclJv
b3REZWZhdWx0LCBib29sIGhlbHBlckNhbGxGb3JWaXNpdGVkU3R5bGUpCitQYXNzUmVmUHRyPFJl
bmRlclN0eWxlPiBDU1NTdHlsZVNlbGVjdG9yOjpzdHlsZUZvckVsZW1lbnQoRWxlbWVudCogZSwg
UmVuZGVyU3R5bGUqIGRlZmF1bHRQYXJlbnQsIGJvb2wgYWxsb3dTaGFyaW5nLCBib29sIHJlc29s
dmVGb3JSb290RGVmYXVsdCwgYm9vbCBtYXRjaFZpc2l0ZWRQc2V1ZG9DbGFzcykKIHsKICAgICAv
LyBPbmNlIGFuIGVsZW1lbnQgaGFzIGEgcmVuZGVyZXIsIHdlIGRvbid0IHRyeSB0byBkZXN0cm95
IGl0LCBzaW5jZSBvdGhlcndpc2UgdGhlIHJlbmRlcmVyCiAgICAgLy8gd2lsbCB2YW5pc2ggaWYg
YSBzdHlsZSByZWNhbGMgaGFwcGVucyBkdXJpbmcgbG9hZGluZy4KQEAgLTExNDgsNyArMTE0Niw3
IEBAIFBhc3NSZWZQdHI8UmVuZGVyU3R5bGU+IENTU1N0eWxlU2VsZWN0b3IKICAgICAgICAgcmV0
dXJuIHNfc3R5bGVOb3RZZXRBdmFpbGFibGU7CiAgICAgfQogCi0gICAgaW5pdEVsZW1lbnQoZSwg
aGVscGVyQ2FsbEZvclZpc2l0ZWRTdHlsZSk7CisgICAgaW5pdEVsZW1lbnQoZSk7CiAgICAgaWYg
KGFsbG93U2hhcmluZykgewogICAgICAgICBSZW5kZXJTdHlsZSogc2hhcmVkU3R5bGUgPSBsb2Nh
dGVTaGFyZWRTdHlsZSgpOwogICAgICAgICBpZiAoc2hhcmVkU3R5bGUpCkBAIC0xMTU4LDcgKzEx
NTYsNyBAQCBQYXNzUmVmUHRyPFJlbmRlclN0eWxlPiBDU1NTdHlsZVNlbGVjdG9yCiAKICAgICAv
LyBDb21wdXRlIG91ciBzdHlsZSBhbGxvd2luZyA6dmlzaXRlZCB0byBtYXRjaCBmaXJzdC4KICAg
ICBSZWZQdHI8UmVuZGVyU3R5bGU+IHZpc2l0ZWRTdHlsZTsKLSAgICBpZiAoIWhlbHBlckNhbGxG
b3JWaXNpdGVkU3R5bGUgJiYgbV9wYXJlbnRTdHlsZSAmJiAobV9wYXJlbnRTdHlsZS0+aW5zaWRl
TGluaygpIHx8IGUtPmlzTGluaygpKSAmJiBlLT5kb2N1bWVudCgpLT51c2VzTGlua1J1bGVzKCkp
IHsKKyAgICBpZiAoIW1hdGNoVmlzaXRlZFBzZXVkb0NsYXNzICYmIG1fcGFyZW50U3R5bGUgJiYg
KG1fcGFyZW50U3R5bGUtPmluc2lkZUxpbmsoKSB8fCBlLT5pc0xpbmsoKSkgJiYgZS0+ZG9jdW1l
bnQoKS0+dXNlc0xpbmtSdWxlcygpKSB7CiAgICAgICAgIC8vIEZldGNoIG91ciBwYXJlbnQgc3R5
bGUuCiAgICAgICAgIFJlbmRlclN0eWxlKiBwYXJlbnRTdHlsZSA9IG1fcGFyZW50U3R5bGU7CiAg
ICAgICAgIGlmICghZS0+aXNMaW5rKCkpIHsKQEAgLTExNjgsMTEgKzExNjYsMTYgQEAgUGFzc1Jl
ZlB0cjxSZW5kZXJTdHlsZT4gQ1NTU3R5bGVTZWxlY3RvcgogICAgICAgICAgICAgICAgIHBhcmVu
dFN0eWxlID0gcGFyZW50VmlzaXRlZFN0eWxlOwogICAgICAgICB9CiAgICAgICAgIHZpc2l0ZWRT
dHlsZSA9IHN0eWxlRm9yRWxlbWVudChlLCBwYXJlbnRTdHlsZSwgZmFsc2UsIGZhbHNlLCB0cnVl
KTsKLSAgICAgICAgdmlzaXRlZFN0eWxlLT5zZXRTdHlsZVR5cGUoVklTSVRFRF9MSU5LKTsKKyAg
ICAgICAgaWYgKHZpc2l0ZWRTdHlsZSkgeworICAgICAgICAgICAgaWYgKG1fZWxlbWVudExpbmtT
dGF0ZSA9PSBJbnNpZGVVbnZpc2l0ZWRMaW5rKQorICAgICAgICAgICAgICAgIHZpc2l0ZWRTdHls
ZSA9IDA7ICAvLyBXZSBtYWRlIHRoZSBzdHlsZSB0byBhdm9pZCB0aW1pbmcgYXR0YWNrcy4gSnVz
dCB0aHJvdyBpdCBhd2F5IG5vdyB0aGF0IHdlIGRpZCB0aGF0LCBzaW5jZSB3ZSBkb24ndCBuZWVk
IGl0LgorICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHZpc2l0ZWRTdHlsZS0+c2V0
U3R5bGVUeXBlKFZJU0lURURfTElOSyk7CisgICAgICAgIH0KICAgICAgICAgaW5pdEZvclN0eWxl
UmVzb2x2ZShlLCBkZWZhdWx0UGFyZW50KTsKICAgICB9CiAKLSAgICBtX2NoZWNrZXIubV9tYXRj
aFZpc2l0ZWRQc2V1ZG9DbGFzcyA9IGhlbHBlckNhbGxGb3JWaXNpdGVkU3R5bGU7CisgICAgbV9j
aGVja2VyLm1fbWF0Y2hWaXNpdGVkUHNldWRvQ2xhc3MgPSBtYXRjaFZpc2l0ZWRQc2V1ZG9DbGFz
czsKIAogICAgIG1fc3R5bGUgPSBSZW5kZXJTdHlsZTo6Y3JlYXRlKCk7CiAKQEAgLTExODMsNyAr
MTE4Niw3IEBAIFBhc3NSZWZQdHI8UmVuZGVyU3R5bGU+IENTU1N0eWxlU2VsZWN0b3IKIAogICAg
IGlmIChlLT5pc0xpbmsoKSkgewogICAgICAgICBtX3N0eWxlLT5zZXRJc0xpbmsodHJ1ZSk7Ci0g
ICAgICAgIG1fc3R5bGUtPnNldEluc2lkZUxpbmsoY3VycmVudEVsZW1lbnRMaW5rU3RhdGUoKSk7
CisgICAgICAgIG1fc3R5bGUtPnNldEluc2lkZUxpbmsobV9lbGVtZW50TGlua1N0YXRlKTsKICAg
ICB9CiAgICAgCiAgICAgaWYgKHNpbXBsZURlZmF1bHRTdHlsZVNoZWV0ICYmICFlbGVtZW50Q2Fu
VXNlU2ltcGxlRGVmYXVsdFN0eWxlKGUpKQpAQCAtMTI5OCw3ICsxMzAxLDcgQEAgUGFzc1JlZlB0
cjxSZW5kZXJTdHlsZT4gQ1NTU3R5bGVTZWxlY3RvcgogICAgIH0KIAogICAgIC8vIFJlc2V0IHRo
ZSB2YWx1ZSBiYWNrIGJlZm9yZSBhcHBseWluZyBwcm9wZXJ0aWVzLCBzbyB0aGF0IC13ZWJraXQt
bGluayBrbm93cyB3aGF0IGNvbG9yIHRvIHVzZS4KLSAgICBtX2NoZWNrZXIubV9tYXRjaFZpc2l0
ZWRQc2V1ZG9DbGFzcyA9IGhlbHBlckNhbGxGb3JWaXNpdGVkU3R5bGU7CisgICAgbV9jaGVja2Vy
Lm1fbWF0Y2hWaXNpdGVkUHNldWRvQ2xhc3MgPSBtYXRjaFZpc2l0ZWRQc2V1ZG9DbGFzczsKICAg
ICAKICAgICAvLyBOb3cgd2UgaGF2ZSBhbGwgb2YgdGhlIG1hdGNoZWQgcnVsZXMgaW4gdGhlIGFw
cHJvcHJpYXRlIG9yZGVyLiAgV2FsayB0aGUgcnVsZXMgYW5kIGFwcGx5CiAgICAgLy8gaGlnaC1w
cmlvcml0eSBwcm9wZXJ0aWVzIGZpcnN0LCBpLmUuLCB0aG9zZSBwcm9wZXJ0aWVzIHRoYXQgb3Ro
ZXIgcHJvcGVydGllcyBkZXBlbmQgb24uCkBAIC0xMzU5LDYgKzEzNjIsOSBAQCBQYXNzUmVmUHRy
PFJlbmRlclN0eWxlPiBDU1NTdHlsZVNlbGVjdG9yCiAgICAgICAgIG1fc3R5bGUtPmFkZENhY2hl
ZFBzZXVkb1N0eWxlKHZpc2l0ZWRTdHlsZS5yZWxlYXNlKCkpOwogICAgIH0KIAorICAgIGlmICgh
bWF0Y2hWaXNpdGVkUHNldWRvQ2xhc3MpCisgICAgICAgIGluaXRFbGVtZW50KDApOyAvLyBDbGVh
ciBvdXQgZm9yIHRoZSBuZXh0IHJlc29sdmUuCisKICAgICAvLyBOb3cgcmV0dXJuIHRoZSBzdHls
ZS4KICAgICByZXR1cm4gbV9zdHlsZS5yZWxlYXNlKCk7CiB9CkBAIC0xNDQ1LDI3ICsxNDUxLDMy
IEBAIHZvaWQgQ1NTU3R5bGVTZWxlY3Rvcjo6a2V5ZnJhbWVTdHlsZXNGb3IKICAgICAgICAgbGlz
dC5jbGVhcigpOwogfQogCi1QYXNzUmVmUHRyPFJlbmRlclN0eWxlPiBDU1NTdHlsZVNlbGVjdG9y
Ojpwc2V1ZG9TdHlsZUZvckVsZW1lbnQoUHNldWRvSWQgcHNldWRvLCBFbGVtZW50KiBlLCBSZW5k
ZXJTdHlsZSogcGFyZW50U3R5bGUsIGJvb2wgaGVscGVyQ2FsbEZvclZpc2l0ZWRTdHlsZSkKK1Bh
c3NSZWZQdHI8UmVuZGVyU3R5bGU+IENTU1N0eWxlU2VsZWN0b3I6OnBzZXVkb1N0eWxlRm9yRWxl
bWVudChQc2V1ZG9JZCBwc2V1ZG8sIEVsZW1lbnQqIGUsIFJlbmRlclN0eWxlKiBwYXJlbnRTdHls
ZSwgYm9vbCBtYXRjaFZpc2l0ZWRQc2V1ZG9DbGFzcykKIHsKICAgICBpZiAoIWUpCiAgICAgICAg
IHJldHVybiAwOwogCisgICAgaW5pdEVsZW1lbnQoZSk7CisKICAgICAvLyBDb21wdXRlIG91ciA6
dmlzaXRlZCBzdHlsZSBmaXJzdCwgc28gdGhhdCB3ZSBrbm93IHdoZXRoZXIgb3Igbm90IHdlJ2xs
IG5lZWQgdG8gY3JlYXRlIGEgbm9ybWFsIHN0eWxlIGp1c3QgdG8gaGFuZyBpdAogICAgIC8vIG9m
ZiBvZi4KICAgICBSZWZQdHI8UmVuZGVyU3R5bGU+IHZpc2l0ZWRTdHlsZTsKLSAgICBpZiAoIWhl
bHBlckNhbGxGb3JWaXNpdGVkU3R5bGUgJiYgcGFyZW50U3R5bGUgJiYgcGFyZW50U3R5bGUtPmlu
c2lkZUxpbmsoKSkgeworICAgIGlmICghbWF0Y2hWaXNpdGVkUHNldWRvQ2xhc3MgJiYgcGFyZW50
U3R5bGUgJiYgcGFyZW50U3R5bGUtPmluc2lkZUxpbmsoKSkgewogICAgICAgICAvLyBGZXRjaCBv
dXIgcGFyZW50IHN0eWxlIHdpdGggOnZpc2l0ZWQgaW4gZWZmZWN0LgogICAgICAgICBSZW5kZXJT
dHlsZSogcGFyZW50VmlzaXRlZFN0eWxlID0gcGFyZW50U3R5bGUtPmdldENhY2hlZFBzZXVkb1N0
eWxlKFZJU0lURURfTElOSyk7CiAgICAgICAgIHZpc2l0ZWRTdHlsZSA9IHBzZXVkb1N0eWxlRm9y
RWxlbWVudChwc2V1ZG8sIGUsIHBhcmVudFZpc2l0ZWRTdHlsZSA/IHBhcmVudFZpc2l0ZWRTdHls
ZSA6IHBhcmVudFN0eWxlLCB0cnVlKTsKLSAgICAgICAgaWYgKHZpc2l0ZWRTdHlsZSkKLSAgICAg
ICAgICAgIHZpc2l0ZWRTdHlsZS0+c2V0U3R5bGVUeXBlKFZJU0lURURfTElOSyk7CisgICAgICAg
IGlmICh2aXNpdGVkU3R5bGUpIHsKKyAgICAgICAgICAgIGlmIChtX2VsZW1lbnRMaW5rU3RhdGUg
PT0gSW5zaWRlVW52aXNpdGVkTGluaykKKyAgICAgICAgICAgICAgICB2aXNpdGVkU3R5bGUgPSAw
OyAgLy8gV2UgbWFkZSB0aGUgc3R5bGUgdG8gYXZvaWQgdGltaW5nIGF0dGFja3MuIEp1c3QgdGhy
b3cgaXQgYXdheSBub3cgdGhhdCB3ZSBkaWQgdGhhdC4KKyAgICAgICAgICAgIGVsc2UKKyAgICAg
ICAgICAgICAgICB2aXNpdGVkU3R5bGUtPnNldFN0eWxlVHlwZShWSVNJVEVEX0xJTkspOworICAg
ICAgICB9CiAgICAgfQogCi0gICAgaW5pdEVsZW1lbnQoZSwgaGVscGVyQ2FsbEZvclZpc2l0ZWRT
dHlsZSk7CiAgICAgaW5pdEZvclN0eWxlUmVzb2x2ZShlLCBwYXJlbnRTdHlsZSwgcHNldWRvKTsK
ICAgICBtX3N0eWxlID0gcGFyZW50U3R5bGU7CiAgICAgCi0gICAgbV9jaGVja2VyLm1fbWF0Y2hW
aXNpdGVkUHNldWRvQ2xhc3MgPSBoZWxwZXJDYWxsRm9yVmlzaXRlZFN0eWxlOworICAgIG1fY2hl
Y2tlci5tX21hdGNoVmlzaXRlZFBzZXVkb0NsYXNzID0gbWF0Y2hWaXNpdGVkUHNldWRvQ2xhc3M7
CiAKICAgICAvLyBTaW5jZSB3ZSBkb24ndCB1c2UgcHNldWRvLWVsZW1lbnRzIGluIGFueSBvZiBv
dXIgcXVpcmsvcHJpbnQgdXNlciBhZ2VudCBydWxlcywgZG9uJ3Qgd2FzdGUgdGltZSB3YWxraW5n
CiAgICAgLy8gdGhvc2UgcnVsZXMuCkBAIC0xNDkxLDcgKzE1MDIsNyBAQCBQYXNzUmVmUHRyPFJl
bmRlclN0eWxlPiBDU1NTdHlsZVNlbGVjdG9yCiAgICAgbV9saW5lSGVpZ2h0VmFsdWUgPSAwOwog
ICAgIAogICAgIC8vIFJlc2V0IHRoZSB2YWx1ZSBiYWNrIGJlZm9yZSBhcHBseWluZyBwcm9wZXJ0
aWVzLCBzbyB0aGF0IC13ZWJraXQtbGluayBrbm93cyB3aGF0IGNvbG9yIHRvIHVzZS4KLSAgICBt
X2NoZWNrZXIubV9tYXRjaFZpc2l0ZWRQc2V1ZG9DbGFzcyA9IGhlbHBlckNhbGxGb3JWaXNpdGVk
U3R5bGU7CisgICAgbV9jaGVja2VyLm1fbWF0Y2hWaXNpdGVkUHNldWRvQ2xhc3MgPSBtYXRjaFZp
c2l0ZWRQc2V1ZG9DbGFzczsKIAogICAgIC8vIEhpZ2gtcHJpb3JpdHkgcHJvcGVydGllcy4KICAg
ICBhcHBseURlY2xhcmF0aW9uczx0cnVlPihmYWxzZSwgMCwgbV9tYXRjaGVkRGVjbHMuc2l6ZSgp
IC0gMSk7CkBAIC0yOTE4LDYgKzI5MjksMzkgQEAgdm9pZCBDU1NTdHlsZVNlbGVjdG9yOjphcHBs
eVByb3BlcnR5VG9TdAogICAgIGFwcGx5UHJvcGVydHkoaWQsIHZhbHVlKTsKIH0KIAoraW5saW5l
IGJvb2wgaXNWYWxpZFZpc2l0ZWRMaW5rUHJvcGVydHkoaW50IGlkKQoreworICAgIHN3aXRjaChz
dGF0aWNfY2FzdDxDU1NQcm9wZXJ0eUlEPihpZCkpIHsKKyAgICAgICAgY2FzZSBDU1NQcm9wZXJ0
eUJhY2tncm91bmRDb2xvcjoKKyAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlckxlZnRDb2xv
cjoKKyAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eUJvcmRlclJpZ2h0Q29sb3I6CisgICAgICAgIGNh
c2UgQ1NTUHJvcGVydHlCb3JkZXJUb3BDb2xvcjoKKyAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eUJv
cmRlckJvdHRvbUNvbG9yOgorICAgICAgICBjYXNlIENTU1Byb3BlcnR5Q29sb3I6CisgICAgICAg
IGNhc2UgQ1NTUHJvcGVydHlPdXRsaW5lQ29sb3I6CisgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlX
ZWJraXRDb2x1bW5SdWxlQ29sb3I6CisgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlXZWJraXRUZXh0
RmlsbENvbG9yOgorICAgICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0VGV4dFN0cm9rZUNvbG9y
OgorICAgICAgICAvLyBBbHNvIGFsbG93IHNob3J0aGFuZHMgc28gdGhhdCBpbmhlcml0L2luaXRp
YWwgc3RpbGwgd29yay4KKyAgICAgICAgY2FzZSBDU1NQcm9wZXJ0eUJhY2tncm91bmQ6CisgICAg
ICAgIGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJMZWZ0OgorICAgICAgICBjYXNlIENTU1Byb3BlcnR5
Qm9yZGVyUmlnaHQ6CisgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJUb3A6CisgICAgICAg
IGNhc2UgQ1NTUHJvcGVydHlCb3JkZXJCb3R0b206CisgICAgICAgIGNhc2UgQ1NTUHJvcGVydHlP
dXRsaW5lOgorICAgICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0Q29sdW1uUnVsZToKKyNpZiBF
TkFCTEUoU1ZHKQorICAgICAgICBjYXNlIENTU1Byb3BlcnR5RmlsbDoKKyAgICAgICAgY2FzZSBD
U1NQcm9wZXJ0eVN0cm9rZToKKyNlbmRpZgorICAgICAgICAgICAgcmV0dXJuIHRydWU7CisgICAg
ICAgIGRlZmF1bHQ6CisgICAgICAgICAgICBicmVhazsKKyAgICB9CisKKyAgICByZXR1cm4gZmFs
c2U7Cit9CisKIHZvaWQgQ1NTU3R5bGVTZWxlY3Rvcjo6YXBwbHlQcm9wZXJ0eShpbnQgaWQsIENT
U1ZhbHVlICp2YWx1ZSkKIHsKICAgICBDU1NQcmltaXRpdmVWYWx1ZSogcHJpbWl0aXZlVmFsdWUg
PSAwOwpAQCAtMjk1MCw2ICsyOTk0LDExIEBAIHZvaWQgQ1NTU3R5bGVTZWxlY3Rvcjo6YXBwbHlQ
cm9wZXJ0eShpbnQKICAgICBlbHNlIGlmIChpZCA9PSBDU1NQcm9wZXJ0eVdlYmtpdFBhZGRpbmdT
dGFydCkKICAgICAgICAgaWQgPSBtX3N0eWxlLT5kaXJlY3Rpb24oKSA9PSBMVFIgPyBDU1NQcm9w
ZXJ0eVBhZGRpbmdMZWZ0IDogQ1NTUHJvcGVydHlQYWRkaW5nUmlnaHQ7CiAKKyAgICBpZiAobV9j
aGVja2VyLm1fbWF0Y2hWaXNpdGVkUHNldWRvQ2xhc3MgJiYgIWlzVmFsaWRWaXNpdGVkTGlua1By
b3BlcnR5KGlkKSkgeworICAgICAgICAvLyBMaW1pdCB0aGUgcHJvcGVydGllcyB0aGF0IGNhbiBi
ZSBhcHBsaWVkIHRvIG9ubHkgdGhlIG9uZXMgaG9ub3JlZCBieSA6dmlzaXRlZC4KKyAgICAgICAg
cmV0dXJuOworICAgIH0KKyAgICAKICAgICAvLyBXaGF0IGZvbGxvd3MgaXMgYSBsaXN0IHRoYXQg
bWFwcyB0aGUgQ1NTIHByb3BlcnRpZXMgaW50byB0aGVpciBjb3JyZXNwb25kaW5nIGZyb250LWVu
ZAogICAgIC8vIFJlbmRlclN0eWxlIHZhbHVlcy4gIFNob3J0aGFuZHMgKGUuZy4gYm9yZGVyLCBi
YWNrZ3JvdW5kKSBvY2N1ciBpbiB0aGlzIGxpc3QgYXMgd2VsbCBhbmQKICAgICAvLyBhcmUgb25s
eSBoaXQgd2hlbiBtYXBwaW5nICJpbmhlcml0IiBvciAiaW5pdGlhbCIgaW50byBmcm9udC1lbmQg
dmFsdWVzLgpJbmRleDogV2ViQ29yZS9jc3MvQ1NTU3R5bGVTZWxlY3Rvci5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFdlYkNvcmUvY3NzL0NTU1N0eWxlU2VsZWN0b3IuaAkocmV2aXNpb24gNTkyNjcpCisrKyBX
ZWJDb3JlL2Nzcy9DU1NTdHlsZVNlbGVjdG9yLmgJKHdvcmtpbmcgY29weSkKQEAgLTg3LDEwICs4
NywxMSBAQCBwdWJsaWM6CiAgICAgICAgIH5DU1NTdHlsZVNlbGVjdG9yKCk7CiAKICAgICAgICAg
dm9pZCBpbml0Rm9yU3R5bGVSZXNvbHZlKEVsZW1lbnQqLCBSZW5kZXJTdHlsZSogcGFyZW50U3R5
bGUgPSAwLCBQc2V1ZG9JZCA9IE5PUFNFVURPKTsKLSAgICAgICAgUGFzc1JlZlB0cjxSZW5kZXJT
dHlsZT4gc3R5bGVGb3JFbGVtZW50KEVsZW1lbnQqIGUsIFJlbmRlclN0eWxlKiBwYXJlbnRTdHls
ZSA9IDAsIGJvb2wgYWxsb3dTaGFyaW5nID0gdHJ1ZSwgYm9vbCByZXNvbHZlRm9yUm9vdERlZmF1
bHQgPSBmYWxzZSkgeyByZXR1cm4gc3R5bGVGb3JFbGVtZW50KGUsIHBhcmVudFN0eWxlLCBhbGxv
d1NoYXJpbmcsIHJlc29sdmVGb3JSb290RGVmYXVsdCwgZmFsc2UpOyB9CisgICAgICAgIFBhc3NS
ZWZQdHI8UmVuZGVyU3R5bGU+IHN0eWxlRm9yRWxlbWVudChFbGVtZW50KiBlLCBSZW5kZXJTdHls
ZSogcGFyZW50U3R5bGUgPSAwLCBib29sIGFsbG93U2hhcmluZyA9IHRydWUsIGJvb2wgcmVzb2x2
ZUZvclJvb3REZWZhdWx0ID0gZmFsc2UsIGJvb2wgbWF0Y2hWaXNpdGVkUHNldWRvQ2xhc3MgPSBm
YWxzZSk7CisgICAgICAgIAogICAgICAgICB2b2lkIGtleWZyYW1lU3R5bGVzRm9yQW5pbWF0aW9u
KEVsZW1lbnQqLCBjb25zdCBSZW5kZXJTdHlsZSosIEtleWZyYW1lTGlzdCYgbGlzdCk7CiAKLSAg
ICAgICAgUGFzc1JlZlB0cjxSZW5kZXJTdHlsZT4gcHNldWRvU3R5bGVGb3JFbGVtZW50KFBzZXVk
b0lkIHBzZXVkbywgRWxlbWVudCogZSwgUmVuZGVyU3R5bGUqIHBhcmVudFN0eWxlID0gMCkgeyBy
ZXR1cm4gcHNldWRvU3R5bGVGb3JFbGVtZW50KHBzZXVkbywgZSwgcGFyZW50U3R5bGUsIGZhbHNl
KTsgfQorICAgICAgICBQYXNzUmVmUHRyPFJlbmRlclN0eWxlPiBwc2V1ZG9TdHlsZUZvckVsZW1l
bnQoUHNldWRvSWQgcHNldWRvLCBFbGVtZW50KiBlLCBSZW5kZXJTdHlsZSogcGFyZW50U3R5bGUg
PSAwLCBib29sIG1hdGNoVmlzaXRlZFBzZXVkb0NsYXNzID0gZmFsc2UpOwogCiAgICAgICAgIHN0
YXRpYyBQYXNzUmVmUHRyPFJlbmRlclN0eWxlPiBzdHlsZUZvckRvY3VtZW50KERvY3VtZW50Kik7
CiAKQEAgLTEwMSw5ICsxMDIsNyBAQCBwdWJsaWM6CiAjZW5kaWYKIAogICAgIHByaXZhdGU6Ci0g
ICAgICAgIFBhc3NSZWZQdHI8UmVuZGVyU3R5bGU+IHN0eWxlRm9yRWxlbWVudChFbGVtZW50Kiwg
UmVuZGVyU3R5bGUqIHBhcmVudFN0eWxlLCBib29sIGFsbG93U2hhcmluZywgYm9vbCByZXNvbHZl
Rm9yUm9vdERlZmF1bHQsIGJvb2wgaGVscGVyQ2FsbEZvclZpc2l0ZWRTdHlsZSk7Ci0gICAgICAg
IFBhc3NSZWZQdHI8UmVuZGVyU3R5bGU+IHBzZXVkb1N0eWxlRm9yRWxlbWVudChQc2V1ZG9JZCwg
RWxlbWVudCosIFJlbmRlclN0eWxlKiwgYm9vbCBoZWxwZXJDYWxsRm9yVmlzaXRlZFN0eWxlKTsK
LSAgICAgICAgdm9pZCBpbml0RWxlbWVudChFbGVtZW50KiwgYm9vbCk7CisgICAgICAgIHZvaWQg
aW5pdEVsZW1lbnQoRWxlbWVudCopOwogICAgICAgICBSZW5kZXJTdHlsZSogbG9jYXRlU2hhcmVk
U3R5bGUoKTsKICAgICAgICAgTm9kZSogbG9jYXRlQ291c2luTGlzdChFbGVtZW50KiBwYXJlbnQs
IHVuc2lnbmVkIGRlcHRoID0gMSk7CiAgICAgICAgIGJvb2wgY2FuU2hhcmVTdHlsZVdpdGhFbGVt
ZW50KE5vZGUqKTsKQEAgLTI1OCwxOSArMjU3LDYgQEAgcHVibGljOgogCiAgICAgICAgIFN0eWxl
SW1hZ2UqIHN0eWxlSW1hZ2UoQ1NTVmFsdWUqIHZhbHVlKTsKIAotCi0gICAgICAgIEVJbnNpZGVM
aW5rIGN1cnJlbnRFbGVtZW50TGlua1N0YXRlKCkgY29uc3QKLSAgICAgICAgewotICAgICAgICAg
ICAgaWYgKCFtX2hhdmVDYWNoZWRMaW5rU3RhdGUpIHsKLSAgICAgICAgICAgICAgICBtX2NhY2hl
ZExpbmtTdGF0ZSA9IG1fY2hlY2tlci5kZXRlcm1pbmVMaW5rU3RhdGUobV9lbGVtZW50KTsKLSAg
ICAgICAgICAgICAgICBtX2hhdmVDYWNoZWRMaW5rU3RhdGUgPSB0cnVlOwotICAgICAgICAgICAg
fQotICAgICAgICAgICAgcmV0dXJuIG1fY2FjaGVkTGlua1N0YXRlOwotICAgICAgICB9Ci0KLSAg
ICAgICAgbXV0YWJsZSBFSW5zaWRlTGluayBtX2NhY2hlZExpbmtTdGF0ZTsKLSAgICAgICAgbXV0
YWJsZSBib29sIG1faGF2ZUNhY2hlZExpbmtTdGF0ZTsKLQogICAgICAgICAvLyBXZSBjb2xsZWN0
IHRoZSBzZXQgb2YgZGVjbHMgdGhhdCBtYXRjaCBpbiB8bV9tYXRjaGVkRGVjbHN8LiAgV2UgdGhl
biB3YWxrIHRoZQogICAgICAgICAvLyBzZXQgb2YgbWF0Y2hlZCBkZWNscyBmb3VyIHRpbWVzLCBv
bmNlIGZvciB0aG9zZSBwcm9wZXJ0aWVzIHRoYXQgb3RoZXJzIGRlcGVuZCBvbiAobGlrZSBmb250
LXNpemUpLAogICAgICAgICAvLyBhbmQgdGhlbiBhIHNlY29uZCB0aW1lIGZvciBhbGwgdGhlIHJl
bWFpbmluZyBwcm9wZXJ0aWVzLiAgV2UgdGhlbiBkbyB0aGUgc2FtZSB0d28gcGFzc2VzCkBAIC0y
OTUsNiArMjgxLDcgQEAgcHVibGljOgogICAgICAgICBSZW5kZXJTdHlsZSogbV9yb290RWxlbWVu
dFN0eWxlOwogICAgICAgICBFbGVtZW50KiBtX2VsZW1lbnQ7CiAgICAgICAgIFN0eWxlZEVsZW1l
bnQqIG1fc3R5bGVkRWxlbWVudDsKKyAgICAgICAgRUluc2lkZUxpbmsgbV9lbGVtZW50TGlua1N0
YXRlOwogICAgICAgICBOb2RlKiBtX3BhcmVudE5vZGU7CiAgICAgICAgIENTU1ZhbHVlKiBtX2xp
bmVIZWlnaHRWYWx1ZTsKICAgICAgICAgYm9vbCBtX2ZvbnREaXJ0eTsKSW5kZXg6IFdlYkNvcmUv
cmVuZGVyaW5nL3N0eWxlL1JlbmRlclN0eWxlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3Jl
bmRlcmluZy9zdHlsZS9SZW5kZXJTdHlsZS5jcHAJKHJldmlzaW9uIDU5MjY3KQorKysgV2ViQ29y
ZS9yZW5kZXJpbmcvc3R5bGUvUmVuZGVyU3R5bGUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMDM1
LDcgKzEwMzUsNiBAQCBzdGF0aWMgQ29sb3IgY29sb3JJbmNsdWRpbmdGYWxsYmFjayhjb25zCiAg
ICAgICAgIHJlc3VsdCA9IHN0eWxlLT50ZXh0U3Ryb2tlQ29sb3IoKTsKICAgICAgICAgYnJlYWs7
CiAgICAgZGVmYXVsdDoKLSAgICAgICAgLy8gRklYTUU6IEFkZCBTVkcgZmlsbCBhbmQgc3Ryb2tl
LgogICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKICAgICAgICAgYnJlYWs7CiAgICAgfQo=
</data>
<flag name="review"
          id="40335"
          type_id="1"
          status="+"
          setter="andersca"
    />
          </attachment>
      

    </bug>

</bugzilla>