<?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>128093</bug_id>
          
          <creation_ts>2014-02-02 20:10:40 -0800</creation_ts>
          <short_desc>Modernize RenderSVGText::locateRenderSVGTextAncestor().</short_desc>
          <delta_ts>2014-02-02 21:00:10 -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>Layout and Rendering</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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Andreas Kling">kling</reporter>
          <assigned_to name="Andreas Kling">kling</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>d-r</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>fmalita</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>kling</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>pdr</cc>
    
    <cc>schenney</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>974892</commentid>
    <comment_count>0</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2014-02-02 20:10:40 -0800</bug_when>
    <thetext>Modernize RenderSVGText::locateRenderSVGTextAncestor().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>974893</commentid>
    <comment_count>1</comment_count>
      <attachid>222953</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2014-02-02 20:17:16 -0800</bug_when>
    <thetext>Created attachment 222953
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>974902</commentid>
    <comment_count>2</comment_count>
      <attachid>222955</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2014-02-02 20:46:18 -0800</bug_when>
    <thetext>Created attachment 222955
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>974909</commentid>
    <comment_count>3</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2014-02-02 21:00:10 -0800</bug_when>
    <thetext>Committed r163285: &lt;http://trac.webkit.org/changeset/163285&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>222953</attachid>
            <date>2014-02-02 20:17:16 -0800</date>
            <delta_ts>2014-02-02 20:46:18 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-128093.diff</filename>
            <type>text/plain</type>
            <size>13743</size>
            <attacher name="Andreas Kling">kling</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA4ZTk1ZGY2Li40MDJiYTJjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsNDIg
QEAKIDIwMTQtMDItMDIgIEFuZHJlYXMgS2xpbmcgIDxha2xpbmdAYXBwbGUuY29tPgogCisgICAg
ICAgIE1vZGVybml6ZSBSZW5kZXJTVkdUZXh0Ojpsb2NhdGVSZW5kZXJTVkdUZXh0QW5jZXN0b3Io
KS4KKyAgICAgICAgPGh0dHBzOi8vd2Via2l0Lm9yZy9iLzEyODA5Mz4KKworICAgICAgICBNYWtl
IGxvY2F0ZVJlbmRlclNWR1RleHRBbmNlc3RvcigpIHRha2UgYSByZWZlcmVuY2UsIGFuZCBzaW1w
bGlmeSBpdAorICAgICAgICBpbnRlcm5hbGx5IHdpdGggbGluZWFnZU9mVHlwZS4KKworICAgICAg
ICBTd2l0Y2hlZCBjYWxsZXJzIHRvIHVzZSAnYXV0bycgZm9yIHRoZSByZXR1cm4gdHlwZSBzbyB3
ZSBnZXQgc29tZQorICAgICAgICBkZXZpcnR1YWxpemF0aW9uIGZyZWViaWVzLgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogcmVuZGVyaW5nL3N2Zy9S
ZW5kZXJTVkdJbmxpbmUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU1ZHSW5saW5lOjpv
YmplY3RCb3VuZGluZ0JveCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJTVkdJbmxpbmU6OnN0
cm9rZUJvdW5kaW5nQm94KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclNWR0lubGluZTo6cmVw
YWludFJlY3RJbkxvY2FsQ29vcmRpbmF0ZXMpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU1ZH
SW5saW5lOjphYnNvbHV0ZVF1YWRzKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclNWR0lubGlu
ZTo6YWRkQ2hpbGQpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU1ZHSW5saW5lOjpyZW1vdmVD
aGlsZCk6CisgICAgICAgICogcmVuZGVyaW5nL3N2Zy9SZW5kZXJTVkdJbmxpbmVUZXh0LmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclNWR0lubGluZVRleHQ6OnNldFRleHRJbnRlcm5hbCk6
CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJTVkdJbmxpbmVUZXh0OjpzdHlsZURpZENoYW5nZSk6
CisgICAgICAgICogcmVuZGVyaW5nL3N2Zy9SZW5kZXJTVkdSZXNvdXJjZUdyYWRpZW50LmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OmNyZWF0ZU1hc2tBbmRTd2FwQ29udGV4dEZvclRleHRHcmFkaWVu
dCk6CisgICAgICAgIChXZWJDb3JlOjpjbGlwVG9UZXh0TWFzayk6CisgICAgICAgICogcmVuZGVy
aW5nL3N2Zy9SZW5kZXJTVkdUZXh0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclNWR1Rl
eHQ6OmxvY2F0ZVJlbmRlclNWR1RleHRBbmNlc3Rvcik6CisgICAgICAgICogcmVuZGVyaW5nL3N2
Zy9SZW5kZXJTVkdUZXh0Lmg6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJTVkdUZXh0Pik6Cisg
ICAgICAgICogcmVuZGVyaW5nL3N2Zy9TVkdUZXh0TGF5b3V0QXR0cmlidXRlc0J1aWxkZXIuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6U1ZHVGV4dExheW91dEF0dHJpYnV0ZXNCdWlsZGVyOjpidWls
ZExheW91dEF0dHJpYnV0ZXNGb3JUZXh0UmVuZGVyZXIpOgorICAgICAgICAqIHJlbmRlcmluZy9z
dmcvU1ZHVGV4dE1ldHJpY3NCdWlsZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR1RleHRN
ZXRyaWNzQnVpbGRlcjo6bWVhc3VyZVRleHRSZW5kZXJlcik6CisgICAgICAgICogc3ZnL1NWR1Rl
eHRQb3NpdGlvbmluZ0VsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U1ZHVGV4dFBvc2l0
aW9uaW5nRWxlbWVudDo6c3ZnQXR0cmlidXRlQ2hhbmdlZCk6CisKKzIwMTQtMDItMDIgIEFuZHJl
YXMgS2xpbmcgIDxha2xpbmdAYXBwbGUuY29tPgorCiAgICAgICAgIE1vZGVybml6ZSB0aGUgdG9S
ZW5kZXJTVkdSZXNvdXJjZUNvbnRhaW5lcigpIGhlbHBlci4KICAgICAgICAgPGh0dHBzOi8vd2Vi
a2l0Lm9yZy9iLzEyODA5MT4KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L3N2Zy9SZW5kZXJTVkdJbmxpbmUuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N2Zy9S
ZW5kZXJTVkdJbmxpbmUuY3BwCmluZGV4IGYxZjM4NGUuLjQ5MDc3MWQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdmcvUmVuZGVyU1ZHSW5saW5lLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1JlbmRlclNWR0lubGluZS5jcHAKQEAgLTQ3LDI0ICs0
NywyNCBAQCBzdGQ6OnVuaXF1ZV9wdHI8SW5saW5lRmxvd0JveD4gUmVuZGVyU1ZHSW5saW5lOjpj
cmVhdGVJbmxpbmVGbG93Qm94KCkKIAogRmxvYXRSZWN0IFJlbmRlclNWR0lubGluZTo6b2JqZWN0
Qm91bmRpbmdCb3goKSBjb25zdAogewotICAgIGlmIChjb25zdCBSZW5kZXJPYmplY3QqIG9iamVj
dCA9IFJlbmRlclNWR1RleHQ6OmxvY2F0ZVJlbmRlclNWR1RleHRBbmNlc3Rvcih0aGlzKSkKLSAg
ICAgICAgcmV0dXJuIG9iamVjdC0+b2JqZWN0Qm91bmRpbmdCb3goKTsKKyAgICBpZiAoYXV0byog
dGV4dEFuY2VzdG9yID0gUmVuZGVyU1ZHVGV4dDo6bG9jYXRlUmVuZGVyU1ZHVGV4dEFuY2VzdG9y
KCp0aGlzKSkKKyAgICAgICAgcmV0dXJuIHRleHRBbmNlc3Rvci0+b2JqZWN0Qm91bmRpbmdCb3go
KTsKIAogICAgIHJldHVybiBGbG9hdFJlY3QoKTsKIH0KIAogRmxvYXRSZWN0IFJlbmRlclNWR0lu
bGluZTo6c3Ryb2tlQm91bmRpbmdCb3goKSBjb25zdAogewotICAgIGlmIChjb25zdCBSZW5kZXJP
YmplY3QqIG9iamVjdCA9IFJlbmRlclNWR1RleHQ6OmxvY2F0ZVJlbmRlclNWR1RleHRBbmNlc3Rv
cih0aGlzKSkKLSAgICAgICAgcmV0dXJuIG9iamVjdC0+c3Ryb2tlQm91bmRpbmdCb3goKTsKKyAg
ICBpZiAoYXV0byogdGV4dEFuY2VzdG9yID0gUmVuZGVyU1ZHVGV4dDo6bG9jYXRlUmVuZGVyU1ZH
VGV4dEFuY2VzdG9yKCp0aGlzKSkKKyAgICAgICAgcmV0dXJuIHRleHRBbmNlc3Rvci0+c3Ryb2tl
Qm91bmRpbmdCb3goKTsKIAogICAgIHJldHVybiBGbG9hdFJlY3QoKTsKIH0KIAogRmxvYXRSZWN0
IFJlbmRlclNWR0lubGluZTo6cmVwYWludFJlY3RJbkxvY2FsQ29vcmRpbmF0ZXMoKSBjb25zdAog
ewotICAgIGlmIChjb25zdCBSZW5kZXJPYmplY3QqIG9iamVjdCA9IFJlbmRlclNWR1RleHQ6Omxv
Y2F0ZVJlbmRlclNWR1RleHRBbmNlc3Rvcih0aGlzKSkKLSAgICAgICAgcmV0dXJuIG9iamVjdC0+
cmVwYWludFJlY3RJbkxvY2FsQ29vcmRpbmF0ZXMoKTsKKyAgICBpZiAoYXV0byogdGV4dEFuY2Vz
dG9yID0gUmVuZGVyU1ZHVGV4dDo6bG9jYXRlUmVuZGVyU1ZHVGV4dEFuY2VzdG9yKCp0aGlzKSkK
KyAgICAgICAgcmV0dXJuIHRleHRBbmNlc3Rvci0+cmVwYWludFJlY3RJbkxvY2FsQ29vcmRpbmF0
ZXMoKTsKIAogICAgIHJldHVybiBGbG9hdFJlY3QoKTsKIH0KQEAgLTkxLDExICs5MSwxMSBAQCBj
b25zdCBSZW5kZXJPYmplY3QqIFJlbmRlclNWR0lubGluZTo6cHVzaE1hcHBpbmdUb0NvbnRhaW5l
cihjb25zdCBSZW5kZXJMYXllck1vZAogCiB2b2lkIFJlbmRlclNWR0lubGluZTo6YWJzb2x1dGVR
dWFkcyhWZWN0b3I8RmxvYXRRdWFkPiYgcXVhZHMsIGJvb2wqIHdhc0ZpeGVkKSBjb25zdAogewot
ICAgIGNvbnN0IFJlbmRlck9iamVjdCogb2JqZWN0ID0gUmVuZGVyU1ZHVGV4dDo6bG9jYXRlUmVu
ZGVyU1ZHVGV4dEFuY2VzdG9yKHRoaXMpOwotICAgIGlmICghb2JqZWN0KQorICAgIGF1dG8qIHRl
eHRBbmNlc3RvciA9IFJlbmRlclNWR1RleHQ6OmxvY2F0ZVJlbmRlclNWR1RleHRBbmNlc3Rvcigq
dGhpcyk7CisgICAgaWYgKCF0ZXh0QW5jZXN0b3IpCiAgICAgICAgIHJldHVybjsKIAotICAgIEZs
b2F0UmVjdCB0ZXh0Qm91bmRpbmdCb3ggPSBvYmplY3QtPnN0cm9rZUJvdW5kaW5nQm94KCk7Cisg
ICAgRmxvYXRSZWN0IHRleHRCb3VuZGluZ0JveCA9IHRleHRBbmNlc3Rvci0+c3Ryb2tlQm91bmRp
bmdCb3goKTsKICAgICBmb3IgKElubGluZUZsb3dCb3gqIGJveCA9IGZpcnN0TGluZUJveCgpOyBi
b3g7IGJveCA9IGJveC0+bmV4dExpbmVCb3goKSkKICAgICAgICAgcXVhZHMuYXBwZW5kKGxvY2Fs
VG9BYnNvbHV0ZVF1YWQoRmxvYXRSZWN0KHRleHRCb3VuZGluZ0JveC54KCkgKyBib3gtPngoKSwg
dGV4dEJvdW5kaW5nQm94LnkoKSArIGJveC0+eSgpLCBib3gtPmxvZ2ljYWxXaWR0aCgpLCBib3gt
PmxvZ2ljYWxIZWlnaHQoKSksIGZhbHNlLCB3YXNGaXhlZCkpOwogfQpAQCAtMTE5LDIzICsxMTks
MjMgQEAgdm9pZCBSZW5kZXJTVkdJbmxpbmU6OmFkZENoaWxkKFJlbmRlck9iamVjdCogY2hpbGQs
IFJlbmRlck9iamVjdCogYmVmb3JlQ2hpbGQpCiAgICAgUmVuZGVySW5saW5lOjphZGRDaGlsZChj
aGlsZCwgYmVmb3JlQ2hpbGQpOwogICAgIFNWR1Jlc291cmNlc0NhY2hlOjpjbGllbnRXYXNBZGRl
ZFRvVHJlZSgqY2hpbGQpOwogCi0gICAgaWYgKFJlbmRlclNWR1RleHQqIHRleHRSZW5kZXJlciA9
IFJlbmRlclNWR1RleHQ6OmxvY2F0ZVJlbmRlclNWR1RleHRBbmNlc3Rvcih0aGlzKSkKLSAgICAg
ICAgdGV4dFJlbmRlcmVyLT5zdWJ0cmVlQ2hpbGRXYXNBZGRlZChjaGlsZCk7CisgICAgaWYgKGF1
dG8qIHRleHRBbmNlc3RvciA9IFJlbmRlclNWR1RleHQ6OmxvY2F0ZVJlbmRlclNWR1RleHRBbmNl
c3RvcigqdGhpcykpCisgICAgICAgIHRleHRBbmNlc3Rvci0+c3VidHJlZUNoaWxkV2FzQWRkZWQo
Y2hpbGQpOwogfQogCiB2b2lkIFJlbmRlclNWR0lubGluZTo6cmVtb3ZlQ2hpbGQoUmVuZGVyT2Jq
ZWN0JiBjaGlsZCkKIHsKICAgICBTVkdSZXNvdXJjZXNDYWNoZTo6Y2xpZW50V2lsbEJlUmVtb3Zl
ZEZyb21UcmVlKGNoaWxkKTsKIAotICAgIFJlbmRlclNWR1RleHQqIHRleHRSZW5kZXJlciA9IFJl
bmRlclNWR1RleHQ6OmxvY2F0ZVJlbmRlclNWR1RleHRBbmNlc3Rvcih0aGlzKTsKLSAgICBpZiAo
IXRleHRSZW5kZXJlcikgeworICAgIGF1dG8qIHRleHRBbmNlc3RvciA9IFJlbmRlclNWR1RleHQ6
OmxvY2F0ZVJlbmRlclNWR1RleHRBbmNlc3RvcigqdGhpcyk7CisgICAgaWYgKCF0ZXh0QW5jZXN0
b3IpIHsKICAgICAgICAgUmVuZGVySW5saW5lOjpyZW1vdmVDaGlsZChjaGlsZCk7CiAgICAgICAg
IHJldHVybjsKICAgICB9CiAgICAgVmVjdG9yPFNWR1RleHRMYXlvdXRBdHRyaWJ1dGVzKiwgMj4g
YWZmZWN0ZWRBdHRyaWJ1dGVzOwotICAgIHRleHRSZW5kZXJlci0+c3VidHJlZUNoaWxkV2lsbEJl
UmVtb3ZlZCgmY2hpbGQsIGFmZmVjdGVkQXR0cmlidXRlcyk7CisgICAgdGV4dEFuY2VzdG9yLT5z
dWJ0cmVlQ2hpbGRXaWxsQmVSZW1vdmVkKCZjaGlsZCwgYWZmZWN0ZWRBdHRyaWJ1dGVzKTsKICAg
ICBSZW5kZXJJbmxpbmU6OnJlbW92ZUNoaWxkKGNoaWxkKTsKLSAgICB0ZXh0UmVuZGVyZXItPnN1
YnRyZWVDaGlsZFdhc1JlbW92ZWQoYWZmZWN0ZWRBdHRyaWJ1dGVzKTsKKyAgICB0ZXh0QW5jZXN0
b3ItPnN1YnRyZWVDaGlsZFdhc1JlbW92ZWQoYWZmZWN0ZWRBdHRyaWJ1dGVzKTsKIH0KIAogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N2Zy9SZW5kZXJTVkdJbmxpbmVU
ZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdmcvUmVuZGVyU1ZHSW5saW5lVGV4
dC5jcHAKaW5kZXggYWZhMThhYS4uMTc0MTliYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3N2Zy9SZW5kZXJTVkdJbmxpbmVUZXh0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvc3ZnL1JlbmRlclNWR0lubGluZVRleHQuY3BwCkBAIC04Miw4ICs4Miw4IEBA
IFN0cmluZyBSZW5kZXJTVkdJbmxpbmVUZXh0OjpvcmlnaW5hbFRleHQoKSBjb25zdAogdm9pZCBS
ZW5kZXJTVkdJbmxpbmVUZXh0OjpzZXRUZXh0SW50ZXJuYWwoY29uc3QgU3RyaW5nJiB0ZXh0KQog
ewogICAgIFJlbmRlclRleHQ6OnNldFRleHRJbnRlcm5hbCh0ZXh0KTsKLSAgICBpZiAoUmVuZGVy
U1ZHVGV4dCogdGV4dFJlbmRlcmVyID0gUmVuZGVyU1ZHVGV4dDo6bG9jYXRlUmVuZGVyU1ZHVGV4
dEFuY2VzdG9yKHRoaXMpKQotICAgICAgICB0ZXh0UmVuZGVyZXItPnN1YnRyZWVUZXh0RGlkQ2hh
bmdlKHRoaXMpOworICAgIGlmIChhdXRvKiB0ZXh0QW5jZXN0b3IgPSBSZW5kZXJTVkdUZXh0Ojps
b2NhdGVSZW5kZXJTVkdUZXh0QW5jZXN0b3IoKnRoaXMpKQorICAgICAgICB0ZXh0QW5jZXN0b3It
PnN1YnRyZWVUZXh0RGlkQ2hhbmdlKHRoaXMpOwogfQogCiB2b2lkIFJlbmRlclNWR0lubGluZVRl
eHQ6OnN0eWxlRGlkQ2hhbmdlKFN0eWxlRGlmZmVyZW5jZSBkaWZmLCBjb25zdCBSZW5kZXJTdHls
ZSogb2xkU3R5bGUpCkBAIC0xMDcsOCArMTA3LDggQEAgdm9pZCBSZW5kZXJTVkdJbmxpbmVUZXh0
OjpzdHlsZURpZENoYW5nZShTdHlsZURpZmZlcmVuY2UgZGlmZiwgY29uc3QgUmVuZGVyU3R5bGUK
ICAgICAgICAgcmV0dXJuOwogCiAgICAgLy8gVGhlIHRleHQgbWV0cmljcyBtYXkgYmUgaW5mbHVl
bmNlZCBieSBzdHlsZSBjaGFuZ2VzLgotICAgIGlmIChSZW5kZXJTVkdUZXh0KiB0ZXh0UmVuZGVy
ZXIgPSBSZW5kZXJTVkdUZXh0Ojpsb2NhdGVSZW5kZXJTVkdUZXh0QW5jZXN0b3IodGhpcykpCi0g
ICAgICAgIHRleHRSZW5kZXJlci0+c3VidHJlZVN0eWxlRGlkQ2hhbmdlKHRoaXMpOworICAgIGlm
IChhdXRvKiB0ZXh0QW5jZXN0b3IgPSBSZW5kZXJTVkdUZXh0Ojpsb2NhdGVSZW5kZXJTVkdUZXh0
QW5jZXN0b3IoKnRoaXMpKQorICAgICAgICB0ZXh0QW5jZXN0b3ItPnN1YnRyZWVTdHlsZURpZENo
YW5nZSh0aGlzKTsKIH0KIAogc3RkOjp1bmlxdWVfcHRyPElubGluZVRleHRCb3g+IFJlbmRlclNW
R0lubGluZVRleHQ6OmNyZWF0ZVRleHRCb3goKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3N2Zy9SZW5kZXJTVkdSZXNvdXJjZUdyYWRpZW50LmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9zdmcvUmVuZGVyU1ZHUmVzb3VyY2VHcmFkaWVudC5jcHAKaW5kZXggNjYz
OWRmZi4uNDMyNjNlNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N2Zy9S
ZW5kZXJTVkdSZXNvdXJjZUdyYWRpZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvc3ZnL1JlbmRlclNWR1Jlc291cmNlR3JhZGllbnQuY3BwCkBAIC01Nyw3ICs1Nyw3IEBAIHZv
aWQgUmVuZGVyU1ZHUmVzb3VyY2VHcmFkaWVudDo6cmVtb3ZlQ2xpZW50RnJvbUNhY2hlKFJlbmRl
ck9iamVjdCYgY2xpZW50LCBib29sCiAjaWYgVVNFKENHKQogc3RhdGljIGlubGluZSBib29sIGNy
ZWF0ZU1hc2tBbmRTd2FwQ29udGV4dEZvclRleHRHcmFkaWVudChHcmFwaGljc0NvbnRleHQqJiBj
b250ZXh0LCBHcmFwaGljc0NvbnRleHQqJiBzYXZlZENvbnRleHQsIHN0ZDo6dW5pcXVlX3B0cjxJ
bWFnZUJ1ZmZlcj4mIGltYWdlQnVmZmVyLCBSZW5kZXJPYmplY3QqIG9iamVjdCkKIHsKLSAgICBS
ZW5kZXJPYmplY3QqIHRleHRSb290QmxvY2sgPSBSZW5kZXJTVkdUZXh0Ojpsb2NhdGVSZW5kZXJT
VkdUZXh0QW5jZXN0b3Iob2JqZWN0KTsKKyAgICBhdXRvKiB0ZXh0Um9vdEJsb2NrID0gUmVuZGVy
U1ZHVGV4dDo6bG9jYXRlUmVuZGVyU1ZHVGV4dEFuY2VzdG9yKCpvYmplY3QpOwogICAgIEFTU0VS
VCh0ZXh0Um9vdEJsb2NrKTsKIAogICAgIEFmZmluZVRyYW5zZm9ybSBhYnNvbHV0ZVRyYW5zZm9y
bTsKQEAgLTc5LDcgKzc5LDcgQEAgc3RhdGljIGlubGluZSBib29sIGNyZWF0ZU1hc2tBbmRTd2Fw
Q29udGV4dEZvclRleHRHcmFkaWVudChHcmFwaGljc0NvbnRleHQqJiBjb24KIAogc3RhdGljIGlu
bGluZSBBZmZpbmVUcmFuc2Zvcm0gY2xpcFRvVGV4dE1hc2soR3JhcGhpY3NDb250ZXh0KiBjb250
ZXh0LCBzdGQ6OnVuaXF1ZV9wdHI8SW1hZ2VCdWZmZXI+JiBpbWFnZUJ1ZmZlciwgRmxvYXRSZWN0
JiB0YXJnZXRSZWN0LCBSZW5kZXJPYmplY3QqIG9iamVjdCwgYm9vbCBib3VuZGluZ0JveE1vZGUs
IGNvbnN0IEFmZmluZVRyYW5zZm9ybSYgZ3JhZGllbnRUcmFuc2Zvcm0pCiB7Ci0gICAgUmVuZGVy
T2JqZWN0KiB0ZXh0Um9vdEJsb2NrID0gUmVuZGVyU1ZHVGV4dDo6bG9jYXRlUmVuZGVyU1ZHVGV4
dEFuY2VzdG9yKG9iamVjdCk7CisgICAgYXV0byogdGV4dFJvb3RCbG9jayA9IFJlbmRlclNWR1Rl
eHQ6OmxvY2F0ZVJlbmRlclNWR1RleHRBbmNlc3Rvcigqb2JqZWN0KTsKICAgICBBU1NFUlQodGV4
dFJvb3RCbG9jayk7CiAKICAgICBBZmZpbmVUcmFuc2Zvcm0gYWJzb2x1dGVUcmFuc2Zvcm07CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1JlbmRlclNWR1RleHQuY3Bw
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N2Zy9SZW5kZXJTVkdUZXh0LmNwcAppbmRleCAy
MmMxY2RhLi5iNmMyZTk4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3Zn
L1JlbmRlclNWR1RleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdmcvUmVu
ZGVyU1ZHVGV4dC5jcHAKQEAgLTc3LDI0ICs3NywxNCBAQCBib29sIFJlbmRlclNWR1RleHQ6Omlz
Q2hpbGRBbGxvd2VkKGNvbnN0IFJlbmRlck9iamVjdCYgY2hpbGQsIGNvbnN0IFJlbmRlclN0eWxl
JgogICAgIHJldHVybiBjaGlsZC5pc0lubGluZSgpOwogfQogCi1SZW5kZXJTVkdUZXh0KiBSZW5k
ZXJTVkdUZXh0Ojpsb2NhdGVSZW5kZXJTVkdUZXh0QW5jZXN0b3IoUmVuZGVyT2JqZWN0KiBzdGFy
dCkKK1JlbmRlclNWR1RleHQqIFJlbmRlclNWR1RleHQ6OmxvY2F0ZVJlbmRlclNWR1RleHRBbmNl
c3RvcihSZW5kZXJPYmplY3QmIHN0YXJ0KQogewotICAgIEFTU0VSVChzdGFydCk7Ci0gICAgd2hp
bGUgKHN0YXJ0ICYmICFzdGFydC0+aXNTVkdUZXh0KCkpCi0gICAgICAgIHN0YXJ0ID0gc3RhcnQt
PnBhcmVudCgpOwotICAgIGlmICghc3RhcnQgfHwgIXN0YXJ0LT5pc1NWR1RleHQoKSkKLSAgICAg
ICAgcmV0dXJuIDA7Ci0gICAgcmV0dXJuIHRvUmVuZGVyU1ZHVGV4dChzdGFydCk7CisgICAgcmV0
dXJuIGxpbmVhZ2VPZlR5cGU8UmVuZGVyU1ZHVGV4dD4oc3RhcnQpLmZpcnN0KCk7CiB9CiAKLWNv
bnN0IFJlbmRlclNWR1RleHQqIFJlbmRlclNWR1RleHQ6OmxvY2F0ZVJlbmRlclNWR1RleHRBbmNl
c3Rvcihjb25zdCBSZW5kZXJPYmplY3QqIHN0YXJ0KQorY29uc3QgUmVuZGVyU1ZHVGV4dCogUmVu
ZGVyU1ZHVGV4dDo6bG9jYXRlUmVuZGVyU1ZHVGV4dEFuY2VzdG9yKGNvbnN0IFJlbmRlck9iamVj
dCYgc3RhcnQpCiB7Ci0gICAgQVNTRVJUKHN0YXJ0KTsKLSAgICB3aGlsZSAoc3RhcnQgJiYgIXN0
YXJ0LT5pc1NWR1RleHQoKSkKLSAgICAgICAgc3RhcnQgPSBzdGFydC0+cGFyZW50KCk7Ci0gICAg
aWYgKCFzdGFydCB8fCAhc3RhcnQtPmlzU1ZHVGV4dCgpKQotICAgICAgICByZXR1cm4gMDsKLSAg
ICByZXR1cm4gdG9SZW5kZXJTVkdUZXh0KHN0YXJ0KTsKKyAgICByZXR1cm4gbGluZWFnZU9mVHlw
ZTxSZW5kZXJTVkdUZXh0PihzdGFydCkuZmlyc3QoKTsKIH0KIAogTGF5b3V0UmVjdCBSZW5kZXJT
VkdUZXh0OjpjbGlwcGVkT3ZlcmZsb3dSZWN0Rm9yUmVwYWludChjb25zdCBSZW5kZXJMYXllck1v
ZGVsT2JqZWN0KiByZXBhaW50Q29udGFpbmVyKSBjb25zdApkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL3N2Zy9SZW5kZXJTVkdUZXh0LmggYi9Tb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvc3ZnL1JlbmRlclNWR1RleHQuaAppbmRleCA5M2FjNDQyNC4uMDFiOWEwZiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N2Zy9SZW5kZXJTVkdUZXh0LmgKKysrIGIv
U291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N2Zy9SZW5kZXJTVkdUZXh0LmgKQEAgLTQ3LDggKzQ3
LDggQEAgcHVibGljOgogICAgIHZvaWQgc2V0TmVlZHNUZXh0TWV0cmljc1VwZGF0ZSgpIHsgbV9u
ZWVkc1RleHRNZXRyaWNzVXBkYXRlID0gdHJ1ZTsgfQogICAgIHZpcnR1YWwgRmxvYXRSZWN0IHJl
cGFpbnRSZWN0SW5Mb2NhbENvb3JkaW5hdGVzKCkgY29uc3Q7CiAKLSAgICBzdGF0aWMgUmVuZGVy
U1ZHVGV4dCogbG9jYXRlUmVuZGVyU1ZHVGV4dEFuY2VzdG9yKFJlbmRlck9iamVjdCopOwotICAg
IHN0YXRpYyBjb25zdCBSZW5kZXJTVkdUZXh0KiBsb2NhdGVSZW5kZXJTVkdUZXh0QW5jZXN0b3Io
Y29uc3QgUmVuZGVyT2JqZWN0Kik7CisgICAgc3RhdGljIFJlbmRlclNWR1RleHQqIGxvY2F0ZVJl
bmRlclNWR1RleHRBbmNlc3RvcihSZW5kZXJPYmplY3QmKTsKKyAgICBzdGF0aWMgY29uc3QgUmVu
ZGVyU1ZHVGV4dCogbG9jYXRlUmVuZGVyU1ZHVGV4dEFuY2VzdG9yKGNvbnN0IFJlbmRlck9iamVj
dCYpOwogCiAgICAgYm9vbCBuZWVkc1Jlb3JkZXJpbmcoKSBjb25zdCB7IHJldHVybiBtX25lZWRz
UmVvcmRlcmluZzsgfQogICAgIFZlY3RvcjxTVkdUZXh0TGF5b3V0QXR0cmlidXRlcyo+JiBsYXlv
dXRBdHRyaWJ1dGVzKCkgeyByZXR1cm4gbV9sYXlvdXRBdHRyaWJ1dGVzOyB9CkBAIC01OSw2ICs1
OSw5IEBAIHB1YmxpYzoKICAgICB2b2lkIHN1YnRyZWVTdHlsZURpZENoYW5nZShSZW5kZXJTVkdJ
bmxpbmVUZXh0Kik7CiAgICAgdm9pZCBzdWJ0cmVlVGV4dERpZENoYW5nZShSZW5kZXJTVkdJbmxp
bmVUZXh0Kik7CiAKKyAgICB2aXJ0dWFsIEZsb2F0UmVjdCBvYmplY3RCb3VuZGluZ0JveCgpIGNv
bnN0IG92ZXJyaWRlIHsgcmV0dXJuIGZyYW1lUmVjdCgpOyB9CisgICAgdmlydHVhbCBGbG9hdFJl
Y3Qgc3Ryb2tlQm91bmRpbmdCb3goKSBjb25zdCBvdmVycmlkZTsKKwogcHJpdmF0ZToKICAgICB2
b2lkIGdyYXBoaWNzRWxlbWVudCgpIGNvbnN0ID0gZGVsZXRlOwogCkBAIC04NSw5ICs4OCw2IEBA
IHByaXZhdGU6CiAgICAgdmlydHVhbCB2b2lkIHJlbW92ZUNoaWxkKFJlbmRlck9iamVjdCYpIG92
ZXJyaWRlOwogICAgIHZpcnR1YWwgdm9pZCB3aWxsQmVEZXN0cm95ZWQoKSBvdmVycmlkZTsKIAot
ICAgIHZpcnR1YWwgRmxvYXRSZWN0IG9iamVjdEJvdW5kaW5nQm94KCkgY29uc3QgeyByZXR1cm4g
ZnJhbWVSZWN0KCk7IH0KLSAgICB2aXJ0dWFsIEZsb2F0UmVjdCBzdHJva2VCb3VuZGluZ0JveCgp
IGNvbnN0OwotCiAgICAgdmlydHVhbCBjb25zdCBBZmZpbmVUcmFuc2Zvcm0mIGxvY2FsVG9QYXJl
bnRUcmFuc2Zvcm0oKSBjb25zdCB7IHJldHVybiBtX2xvY2FsVHJhbnNmb3JtOyB9CiAgICAgdmly
dHVhbCBBZmZpbmVUcmFuc2Zvcm0gbG9jYWxUcmFuc2Zvcm0oKSBjb25zdCB7IHJldHVybiBtX2xv
Y2FsVHJhbnNmb3JtOyB9CiAgICAgdmlydHVhbCBzdGQ6OnVuaXF1ZV9wdHI8Um9vdElubGluZUJv
eD4gY3JlYXRlUm9vdElubGluZUJveCgpIG92ZXJyaWRlOwpAQCAtMTA2LDYgKzEwNiw3IEBAIHBy
aXZhdGU6CiAgICAgVmVjdG9yPFNWR1RleHRMYXlvdXRBdHRyaWJ1dGVzKj4gbV9sYXlvdXRBdHRy
aWJ1dGVzOwogfTsKIAordGVtcGxhdGU8PiBpbmxpbmUgYm9vbCBpc1JlbmRlcmVyT2ZUeXBlPGNv
bnN0IFJlbmRlclNWR1RleHQ+KGNvbnN0IFJlbmRlck9iamVjdCYgcmVuZGVyZXIpIHsgcmV0dXJu
IHJlbmRlcmVyLmlzU1ZHVGV4dCgpOyB9CiBSRU5ERVJfT0JKRUNUX1RZUEVfQ0FTVFMoUmVuZGVy
U1ZHVGV4dCwgaXNTVkdUZXh0KCkpCiAKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9zdmcvU1ZHVGV4dExheW91dEF0dHJpYnV0ZXNCdWlsZGVyLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3JlbmRlcmluZy9zdmcvU1ZHVGV4dExheW91dEF0dHJpYnV0ZXNCdWlsZGVyLmNwcApp
bmRleCA2NTI4YTk2Li41NzJkYjgyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvc3ZnL1NWR1RleHRMYXlvdXRBdHRyaWJ1dGVzQnVpbGRlci5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL3N2Zy9TVkdUZXh0TGF5b3V0QXR0cmlidXRlc0J1aWxkZXIuY3BwCkBA
IC0zNSw3ICszNSw3IEBAIFNWR1RleHRMYXlvdXRBdHRyaWJ1dGVzQnVpbGRlcjo6U1ZHVGV4dExh
eW91dEF0dHJpYnV0ZXNCdWlsZGVyKCkKIAogdm9pZCBTVkdUZXh0TGF5b3V0QXR0cmlidXRlc0J1
aWxkZXI6OmJ1aWxkTGF5b3V0QXR0cmlidXRlc0ZvclRleHRSZW5kZXJlcihSZW5kZXJTVkdJbmxp
bmVUZXh0JiB0ZXh0KQogewotICAgIFJlbmRlclNWR1RleHQqIHRleHRSb290ID0gUmVuZGVyU1ZH
VGV4dDo6bG9jYXRlUmVuZGVyU1ZHVGV4dEFuY2VzdG9yKCZ0ZXh0KTsKKyAgICBhdXRvKiB0ZXh0
Um9vdCA9IFJlbmRlclNWR1RleHQ6OmxvY2F0ZVJlbmRlclNWR1RleHRBbmNlc3Rvcih0ZXh0KTsK
ICAgICBpZiAoIXRleHRSb290KQogICAgICAgICByZXR1cm47CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9zdmcvU1ZHVGV4dE1ldHJpY3NCdWlsZGVyLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9zdmcvU1ZHVGV4dE1ldHJpY3NCdWlsZGVyLmNwcAppbmRleCA4
NjAwOWU2Li4xNzM0NGU4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3Zn
L1NWR1RleHRNZXRyaWNzQnVpbGRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L3N2Zy9TVkdUZXh0TWV0cmljc0J1aWxkZXIuY3BwCkBAIC0yMDcsNyArMjA3LDcgQEAgdm9pZCBT
VkdUZXh0TWV0cmljc0J1aWxkZXI6Om1lYXN1cmVUZXh0UmVuZGVyZXIoUmVuZGVyU1ZHSW5saW5l
VGV4dCogdGV4dCkKIHsKICAgICBBU1NFUlQodGV4dCk7CiAKLSAgICBSZW5kZXJTVkdUZXh0KiB0
ZXh0Um9vdCA9IFJlbmRlclNWR1RleHQ6OmxvY2F0ZVJlbmRlclNWR1RleHRBbmNlc3Rvcih0ZXh0
KTsKKyAgICBhdXRvKiB0ZXh0Um9vdCA9IFJlbmRlclNWR1RleHQ6OmxvY2F0ZVJlbmRlclNWR1Rl
eHRBbmNlc3RvcigqdGV4dCk7CiAgICAgaWYgKCF0ZXh0Um9vdCkKICAgICAgICAgcmV0dXJuOwog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHVGV4dFBvc2l0aW9uaW5nRWxlbWVu
dC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHVGV4dFBvc2l0aW9uaW5nRWxlbWVudC5jcHAK
aW5kZXggODJlNzA2My4uNDAzODY5YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NW
R1RleHRQb3NpdGlvbmluZ0VsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdU
ZXh0UG9zaXRpb25pbmdFbGVtZW50LmNwcApAQCAtMTQwLDggKzE0MCw4IEBAIHZvaWQgU1ZHVGV4
dFBvc2l0aW9uaW5nRWxlbWVudDo6c3ZnQXR0cmlidXRlQ2hhbmdlZChjb25zdCBRdWFsaWZpZWRO
YW1lJiBhdHRyTmFtCiAgICAgICAgIHJldHVybjsKIAogICAgIGlmICh1cGRhdGVSZWxhdGl2ZUxl
bmd0aHMgfHwgYXR0ck5hbWUgPT0gU1ZHTmFtZXM6OnJvdGF0ZUF0dHIpIHsKLSAgICAgICAgaWYg
KFJlbmRlclNWR1RleHQqIHRleHRSZW5kZXJlciA9IFJlbmRlclNWR1RleHQ6OmxvY2F0ZVJlbmRl
clNWR1RleHRBbmNlc3RvcihyZW5kZXJlcikpCi0gICAgICAgICAgICB0ZXh0UmVuZGVyZXItPnNl
dE5lZWRzUG9zaXRpb25pbmdWYWx1ZXNVcGRhdGUoKTsKKyAgICAgICAgaWYgKGF1dG8qIHRleHRB
bmNlc3RvciA9IFJlbmRlclNWR1RleHQ6OmxvY2F0ZVJlbmRlclNWR1RleHRBbmNlc3RvcigqcmVu
ZGVyZXIpKQorICAgICAgICAgICAgdGV4dEFuY2VzdG9yLT5zZXROZWVkc1Bvc2l0aW9uaW5nVmFs
dWVzVXBkYXRlKCk7CiAgICAgICAgIFJlbmRlclNWR1Jlc291cmNlOjptYXJrRm9yTGF5b3V0QW5k
UGFyZW50UmVzb3VyY2VJbnZhbGlkYXRpb24oKnJlbmRlcmVyKTsKICAgICAgICAgcmV0dXJuOwog
ICAgIH0K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>222955</attachid>
            <date>2014-02-02 20:46:18 -0800</date>
            <delta_ts>2014-02-02 20:52:08 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-128093-2.diff</filename>
            <type>text/plain</type>
            <size>13978</size>
            <attacher name="Andreas Kling">kling</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAwMGNmOWJiLi41OWJhMDBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsNDIg
QEAKIDIwMTQtMDItMDIgIEFuZHJlYXMgS2xpbmcgIDxha2xpbmdAYXBwbGUuY29tPgogCisgICAg
ICAgIE1vZGVybml6ZSBSZW5kZXJTVkdUZXh0Ojpsb2NhdGVSZW5kZXJTVkdUZXh0QW5jZXN0b3Io
KS4KKyAgICAgICAgPGh0dHBzOi8vd2Via2l0Lm9yZy9iLzEyODA5Mz4KKworICAgICAgICBNYWtl
IGxvY2F0ZVJlbmRlclNWR1RleHRBbmNlc3RvcigpIHRha2UgYSByZWZlcmVuY2UsIGFuZCBzaW1w
bGlmeSBpdAorICAgICAgICBpbnRlcm5hbGx5IHdpdGggbGluZWFnZU9mVHlwZS4KKworICAgICAg
ICBTd2l0Y2hlZCBjYWxsZXJzIHRvIHVzZSAnYXV0bycgZm9yIHRoZSByZXR1cm4gdHlwZSBzbyB3
ZSBnZXQgc29tZQorICAgICAgICBkZXZpcnR1YWxpemF0aW9uIGZyZWViaWVzLgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogcmVuZGVyaW5nL3N2Zy9S
ZW5kZXJTVkdJbmxpbmUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU1ZHSW5saW5lOjpv
YmplY3RCb3VuZGluZ0JveCk6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJTVkdJbmxpbmU6OnN0
cm9rZUJvdW5kaW5nQm94KToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclNWR0lubGluZTo6cmVw
YWludFJlY3RJbkxvY2FsQ29vcmRpbmF0ZXMpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU1ZH
SW5saW5lOjphYnNvbHV0ZVF1YWRzKToKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclNWR0lubGlu
ZTo6YWRkQ2hpbGQpOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyU1ZHSW5saW5lOjpyZW1vdmVD
aGlsZCk6CisgICAgICAgICogcmVuZGVyaW5nL3N2Zy9SZW5kZXJTVkdJbmxpbmVUZXh0LmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclNWR0lubGluZVRleHQ6OnNldFRleHRJbnRlcm5hbCk6
CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJTVkdJbmxpbmVUZXh0OjpzdHlsZURpZENoYW5nZSk6
CisgICAgICAgICogcmVuZGVyaW5nL3N2Zy9SZW5kZXJTVkdSZXNvdXJjZUdyYWRpZW50LmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OmNyZWF0ZU1hc2tBbmRTd2FwQ29udGV4dEZvclRleHRHcmFkaWVu
dCk6CisgICAgICAgIChXZWJDb3JlOjpjbGlwVG9UZXh0TWFzayk6CisgICAgICAgICogcmVuZGVy
aW5nL3N2Zy9SZW5kZXJTVkdUZXh0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclNWR1Rl
eHQ6OmxvY2F0ZVJlbmRlclNWR1RleHRBbmNlc3Rvcik6CisgICAgICAgICogcmVuZGVyaW5nL3N2
Zy9SZW5kZXJTVkdUZXh0Lmg6CisgICAgICAgIChXZWJDb3JlOjpSZW5kZXJTVkdUZXh0Pik6Cisg
ICAgICAgICogcmVuZGVyaW5nL3N2Zy9TVkdUZXh0TGF5b3V0QXR0cmlidXRlc0J1aWxkZXIuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6U1ZHVGV4dExheW91dEF0dHJpYnV0ZXNCdWlsZGVyOjpidWls
ZExheW91dEF0dHJpYnV0ZXNGb3JUZXh0UmVuZGVyZXIpOgorICAgICAgICAqIHJlbmRlcmluZy9z
dmcvU1ZHVGV4dE1ldHJpY3NCdWlsZGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR1RleHRN
ZXRyaWNzQnVpbGRlcjo6bWVhc3VyZVRleHRSZW5kZXJlcik6CisgICAgICAgICogc3ZnL1NWR1Rl
eHRQb3NpdGlvbmluZ0VsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U1ZHVGV4dFBvc2l0
aW9uaW5nRWxlbWVudDo6c3ZnQXR0cmlidXRlQ2hhbmdlZCk6CisKKzIwMTQtMDItMDIgIEFuZHJl
YXMgS2xpbmcgIDxha2xpbmdAYXBwbGUuY29tPgorCiAgICAgICAgIE1vZGVybml6ZSB0aGUgdG9S
ZW5kZXJTVkdSZXNvdXJjZUNvbnRhaW5lcigpIGhlbHBlci4KICAgICAgICAgPGh0dHBzOi8vd2Vi
a2l0Lm9yZy9iLzEyODA5MT4KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L3N2Zy9SZW5kZXJTVkdJbmxpbmUuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N2Zy9S
ZW5kZXJTVkdJbmxpbmUuY3BwCmluZGV4IGYxZjM4NGUuLjQ5MDc3MWQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdmcvUmVuZGVyU1ZHSW5saW5lLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1JlbmRlclNWR0lubGluZS5jcHAKQEAgLTQ3LDI0ICs0
NywyNCBAQCBzdGQ6OnVuaXF1ZV9wdHI8SW5saW5lRmxvd0JveD4gUmVuZGVyU1ZHSW5saW5lOjpj
cmVhdGVJbmxpbmVGbG93Qm94KCkKIAogRmxvYXRSZWN0IFJlbmRlclNWR0lubGluZTo6b2JqZWN0
Qm91bmRpbmdCb3goKSBjb25zdAogewotICAgIGlmIChjb25zdCBSZW5kZXJPYmplY3QqIG9iamVj
dCA9IFJlbmRlclNWR1RleHQ6OmxvY2F0ZVJlbmRlclNWR1RleHRBbmNlc3Rvcih0aGlzKSkKLSAg
ICAgICAgcmV0dXJuIG9iamVjdC0+b2JqZWN0Qm91bmRpbmdCb3goKTsKKyAgICBpZiAoYXV0byog
dGV4dEFuY2VzdG9yID0gUmVuZGVyU1ZHVGV4dDo6bG9jYXRlUmVuZGVyU1ZHVGV4dEFuY2VzdG9y
KCp0aGlzKSkKKyAgICAgICAgcmV0dXJuIHRleHRBbmNlc3Rvci0+b2JqZWN0Qm91bmRpbmdCb3go
KTsKIAogICAgIHJldHVybiBGbG9hdFJlY3QoKTsKIH0KIAogRmxvYXRSZWN0IFJlbmRlclNWR0lu
bGluZTo6c3Ryb2tlQm91bmRpbmdCb3goKSBjb25zdAogewotICAgIGlmIChjb25zdCBSZW5kZXJP
YmplY3QqIG9iamVjdCA9IFJlbmRlclNWR1RleHQ6OmxvY2F0ZVJlbmRlclNWR1RleHRBbmNlc3Rv
cih0aGlzKSkKLSAgICAgICAgcmV0dXJuIG9iamVjdC0+c3Ryb2tlQm91bmRpbmdCb3goKTsKKyAg
ICBpZiAoYXV0byogdGV4dEFuY2VzdG9yID0gUmVuZGVyU1ZHVGV4dDo6bG9jYXRlUmVuZGVyU1ZH
VGV4dEFuY2VzdG9yKCp0aGlzKSkKKyAgICAgICAgcmV0dXJuIHRleHRBbmNlc3Rvci0+c3Ryb2tl
Qm91bmRpbmdCb3goKTsKIAogICAgIHJldHVybiBGbG9hdFJlY3QoKTsKIH0KIAogRmxvYXRSZWN0
IFJlbmRlclNWR0lubGluZTo6cmVwYWludFJlY3RJbkxvY2FsQ29vcmRpbmF0ZXMoKSBjb25zdAog
ewotICAgIGlmIChjb25zdCBSZW5kZXJPYmplY3QqIG9iamVjdCA9IFJlbmRlclNWR1RleHQ6Omxv
Y2F0ZVJlbmRlclNWR1RleHRBbmNlc3Rvcih0aGlzKSkKLSAgICAgICAgcmV0dXJuIG9iamVjdC0+
cmVwYWludFJlY3RJbkxvY2FsQ29vcmRpbmF0ZXMoKTsKKyAgICBpZiAoYXV0byogdGV4dEFuY2Vz
dG9yID0gUmVuZGVyU1ZHVGV4dDo6bG9jYXRlUmVuZGVyU1ZHVGV4dEFuY2VzdG9yKCp0aGlzKSkK
KyAgICAgICAgcmV0dXJuIHRleHRBbmNlc3Rvci0+cmVwYWludFJlY3RJbkxvY2FsQ29vcmRpbmF0
ZXMoKTsKIAogICAgIHJldHVybiBGbG9hdFJlY3QoKTsKIH0KQEAgLTkxLDExICs5MSwxMSBAQCBj
b25zdCBSZW5kZXJPYmplY3QqIFJlbmRlclNWR0lubGluZTo6cHVzaE1hcHBpbmdUb0NvbnRhaW5l
cihjb25zdCBSZW5kZXJMYXllck1vZAogCiB2b2lkIFJlbmRlclNWR0lubGluZTo6YWJzb2x1dGVR
dWFkcyhWZWN0b3I8RmxvYXRRdWFkPiYgcXVhZHMsIGJvb2wqIHdhc0ZpeGVkKSBjb25zdAogewot
ICAgIGNvbnN0IFJlbmRlck9iamVjdCogb2JqZWN0ID0gUmVuZGVyU1ZHVGV4dDo6bG9jYXRlUmVu
ZGVyU1ZHVGV4dEFuY2VzdG9yKHRoaXMpOwotICAgIGlmICghb2JqZWN0KQorICAgIGF1dG8qIHRl
eHRBbmNlc3RvciA9IFJlbmRlclNWR1RleHQ6OmxvY2F0ZVJlbmRlclNWR1RleHRBbmNlc3Rvcigq
dGhpcyk7CisgICAgaWYgKCF0ZXh0QW5jZXN0b3IpCiAgICAgICAgIHJldHVybjsKIAotICAgIEZs
b2F0UmVjdCB0ZXh0Qm91bmRpbmdCb3ggPSBvYmplY3QtPnN0cm9rZUJvdW5kaW5nQm94KCk7Cisg
ICAgRmxvYXRSZWN0IHRleHRCb3VuZGluZ0JveCA9IHRleHRBbmNlc3Rvci0+c3Ryb2tlQm91bmRp
bmdCb3goKTsKICAgICBmb3IgKElubGluZUZsb3dCb3gqIGJveCA9IGZpcnN0TGluZUJveCgpOyBi
b3g7IGJveCA9IGJveC0+bmV4dExpbmVCb3goKSkKICAgICAgICAgcXVhZHMuYXBwZW5kKGxvY2Fs
VG9BYnNvbHV0ZVF1YWQoRmxvYXRSZWN0KHRleHRCb3VuZGluZ0JveC54KCkgKyBib3gtPngoKSwg
dGV4dEJvdW5kaW5nQm94LnkoKSArIGJveC0+eSgpLCBib3gtPmxvZ2ljYWxXaWR0aCgpLCBib3gt
PmxvZ2ljYWxIZWlnaHQoKSksIGZhbHNlLCB3YXNGaXhlZCkpOwogfQpAQCAtMTE5LDIzICsxMTks
MjMgQEAgdm9pZCBSZW5kZXJTVkdJbmxpbmU6OmFkZENoaWxkKFJlbmRlck9iamVjdCogY2hpbGQs
IFJlbmRlck9iamVjdCogYmVmb3JlQ2hpbGQpCiAgICAgUmVuZGVySW5saW5lOjphZGRDaGlsZChj
aGlsZCwgYmVmb3JlQ2hpbGQpOwogICAgIFNWR1Jlc291cmNlc0NhY2hlOjpjbGllbnRXYXNBZGRl
ZFRvVHJlZSgqY2hpbGQpOwogCi0gICAgaWYgKFJlbmRlclNWR1RleHQqIHRleHRSZW5kZXJlciA9
IFJlbmRlclNWR1RleHQ6OmxvY2F0ZVJlbmRlclNWR1RleHRBbmNlc3Rvcih0aGlzKSkKLSAgICAg
ICAgdGV4dFJlbmRlcmVyLT5zdWJ0cmVlQ2hpbGRXYXNBZGRlZChjaGlsZCk7CisgICAgaWYgKGF1
dG8qIHRleHRBbmNlc3RvciA9IFJlbmRlclNWR1RleHQ6OmxvY2F0ZVJlbmRlclNWR1RleHRBbmNl
c3RvcigqdGhpcykpCisgICAgICAgIHRleHRBbmNlc3Rvci0+c3VidHJlZUNoaWxkV2FzQWRkZWQo
Y2hpbGQpOwogfQogCiB2b2lkIFJlbmRlclNWR0lubGluZTo6cmVtb3ZlQ2hpbGQoUmVuZGVyT2Jq
ZWN0JiBjaGlsZCkKIHsKICAgICBTVkdSZXNvdXJjZXNDYWNoZTo6Y2xpZW50V2lsbEJlUmVtb3Zl
ZEZyb21UcmVlKGNoaWxkKTsKIAotICAgIFJlbmRlclNWR1RleHQqIHRleHRSZW5kZXJlciA9IFJl
bmRlclNWR1RleHQ6OmxvY2F0ZVJlbmRlclNWR1RleHRBbmNlc3Rvcih0aGlzKTsKLSAgICBpZiAo
IXRleHRSZW5kZXJlcikgeworICAgIGF1dG8qIHRleHRBbmNlc3RvciA9IFJlbmRlclNWR1RleHQ6
OmxvY2F0ZVJlbmRlclNWR1RleHRBbmNlc3RvcigqdGhpcyk7CisgICAgaWYgKCF0ZXh0QW5jZXN0
b3IpIHsKICAgICAgICAgUmVuZGVySW5saW5lOjpyZW1vdmVDaGlsZChjaGlsZCk7CiAgICAgICAg
IHJldHVybjsKICAgICB9CiAgICAgVmVjdG9yPFNWR1RleHRMYXlvdXRBdHRyaWJ1dGVzKiwgMj4g
YWZmZWN0ZWRBdHRyaWJ1dGVzOwotICAgIHRleHRSZW5kZXJlci0+c3VidHJlZUNoaWxkV2lsbEJl
UmVtb3ZlZCgmY2hpbGQsIGFmZmVjdGVkQXR0cmlidXRlcyk7CisgICAgdGV4dEFuY2VzdG9yLT5z
dWJ0cmVlQ2hpbGRXaWxsQmVSZW1vdmVkKCZjaGlsZCwgYWZmZWN0ZWRBdHRyaWJ1dGVzKTsKICAg
ICBSZW5kZXJJbmxpbmU6OnJlbW92ZUNoaWxkKGNoaWxkKTsKLSAgICB0ZXh0UmVuZGVyZXItPnN1
YnRyZWVDaGlsZFdhc1JlbW92ZWQoYWZmZWN0ZWRBdHRyaWJ1dGVzKTsKKyAgICB0ZXh0QW5jZXN0
b3ItPnN1YnRyZWVDaGlsZFdhc1JlbW92ZWQoYWZmZWN0ZWRBdHRyaWJ1dGVzKTsKIH0KIAogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N2Zy9SZW5kZXJTVkdJbmxpbmVU
ZXh0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdmcvUmVuZGVyU1ZHSW5saW5lVGV4
dC5jcHAKaW5kZXggYWZhMThhYS4uMTc0MTliYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3N2Zy9SZW5kZXJTVkdJbmxpbmVUZXh0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvc3ZnL1JlbmRlclNWR0lubGluZVRleHQuY3BwCkBAIC04Miw4ICs4Miw4IEBA
IFN0cmluZyBSZW5kZXJTVkdJbmxpbmVUZXh0OjpvcmlnaW5hbFRleHQoKSBjb25zdAogdm9pZCBS
ZW5kZXJTVkdJbmxpbmVUZXh0OjpzZXRUZXh0SW50ZXJuYWwoY29uc3QgU3RyaW5nJiB0ZXh0KQog
ewogICAgIFJlbmRlclRleHQ6OnNldFRleHRJbnRlcm5hbCh0ZXh0KTsKLSAgICBpZiAoUmVuZGVy
U1ZHVGV4dCogdGV4dFJlbmRlcmVyID0gUmVuZGVyU1ZHVGV4dDo6bG9jYXRlUmVuZGVyU1ZHVGV4
dEFuY2VzdG9yKHRoaXMpKQotICAgICAgICB0ZXh0UmVuZGVyZXItPnN1YnRyZWVUZXh0RGlkQ2hh
bmdlKHRoaXMpOworICAgIGlmIChhdXRvKiB0ZXh0QW5jZXN0b3IgPSBSZW5kZXJTVkdUZXh0Ojps
b2NhdGVSZW5kZXJTVkdUZXh0QW5jZXN0b3IoKnRoaXMpKQorICAgICAgICB0ZXh0QW5jZXN0b3It
PnN1YnRyZWVUZXh0RGlkQ2hhbmdlKHRoaXMpOwogfQogCiB2b2lkIFJlbmRlclNWR0lubGluZVRl
eHQ6OnN0eWxlRGlkQ2hhbmdlKFN0eWxlRGlmZmVyZW5jZSBkaWZmLCBjb25zdCBSZW5kZXJTdHls
ZSogb2xkU3R5bGUpCkBAIC0xMDcsOCArMTA3LDggQEAgdm9pZCBSZW5kZXJTVkdJbmxpbmVUZXh0
OjpzdHlsZURpZENoYW5nZShTdHlsZURpZmZlcmVuY2UgZGlmZiwgY29uc3QgUmVuZGVyU3R5bGUK
ICAgICAgICAgcmV0dXJuOwogCiAgICAgLy8gVGhlIHRleHQgbWV0cmljcyBtYXkgYmUgaW5mbHVl
bmNlZCBieSBzdHlsZSBjaGFuZ2VzLgotICAgIGlmIChSZW5kZXJTVkdUZXh0KiB0ZXh0UmVuZGVy
ZXIgPSBSZW5kZXJTVkdUZXh0Ojpsb2NhdGVSZW5kZXJTVkdUZXh0QW5jZXN0b3IodGhpcykpCi0g
ICAgICAgIHRleHRSZW5kZXJlci0+c3VidHJlZVN0eWxlRGlkQ2hhbmdlKHRoaXMpOworICAgIGlm
IChhdXRvKiB0ZXh0QW5jZXN0b3IgPSBSZW5kZXJTVkdUZXh0Ojpsb2NhdGVSZW5kZXJTVkdUZXh0
QW5jZXN0b3IoKnRoaXMpKQorICAgICAgICB0ZXh0QW5jZXN0b3ItPnN1YnRyZWVTdHlsZURpZENo
YW5nZSh0aGlzKTsKIH0KIAogc3RkOjp1bmlxdWVfcHRyPElubGluZVRleHRCb3g+IFJlbmRlclNW
R0lubGluZVRleHQ6OmNyZWF0ZVRleHRCb3goKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3N2Zy9SZW5kZXJTVkdSZXNvdXJjZUdyYWRpZW50LmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9zdmcvUmVuZGVyU1ZHUmVzb3VyY2VHcmFkaWVudC5jcHAKaW5kZXggNjYz
OWRmZi4uNDMyNjNlNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N2Zy9S
ZW5kZXJTVkdSZXNvdXJjZUdyYWRpZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJp
bmcvc3ZnL1JlbmRlclNWR1Jlc291cmNlR3JhZGllbnQuY3BwCkBAIC01Nyw3ICs1Nyw3IEBAIHZv
aWQgUmVuZGVyU1ZHUmVzb3VyY2VHcmFkaWVudDo6cmVtb3ZlQ2xpZW50RnJvbUNhY2hlKFJlbmRl
ck9iamVjdCYgY2xpZW50LCBib29sCiAjaWYgVVNFKENHKQogc3RhdGljIGlubGluZSBib29sIGNy
ZWF0ZU1hc2tBbmRTd2FwQ29udGV4dEZvclRleHRHcmFkaWVudChHcmFwaGljc0NvbnRleHQqJiBj
b250ZXh0LCBHcmFwaGljc0NvbnRleHQqJiBzYXZlZENvbnRleHQsIHN0ZDo6dW5pcXVlX3B0cjxJ
bWFnZUJ1ZmZlcj4mIGltYWdlQnVmZmVyLCBSZW5kZXJPYmplY3QqIG9iamVjdCkKIHsKLSAgICBS
ZW5kZXJPYmplY3QqIHRleHRSb290QmxvY2sgPSBSZW5kZXJTVkdUZXh0Ojpsb2NhdGVSZW5kZXJT
VkdUZXh0QW5jZXN0b3Iob2JqZWN0KTsKKyAgICBhdXRvKiB0ZXh0Um9vdEJsb2NrID0gUmVuZGVy
U1ZHVGV4dDo6bG9jYXRlUmVuZGVyU1ZHVGV4dEFuY2VzdG9yKCpvYmplY3QpOwogICAgIEFTU0VS
VCh0ZXh0Um9vdEJsb2NrKTsKIAogICAgIEFmZmluZVRyYW5zZm9ybSBhYnNvbHV0ZVRyYW5zZm9y
bTsKQEAgLTc5LDcgKzc5LDcgQEAgc3RhdGljIGlubGluZSBib29sIGNyZWF0ZU1hc2tBbmRTd2Fw
Q29udGV4dEZvclRleHRHcmFkaWVudChHcmFwaGljc0NvbnRleHQqJiBjb24KIAogc3RhdGljIGlu
bGluZSBBZmZpbmVUcmFuc2Zvcm0gY2xpcFRvVGV4dE1hc2soR3JhcGhpY3NDb250ZXh0KiBjb250
ZXh0LCBzdGQ6OnVuaXF1ZV9wdHI8SW1hZ2VCdWZmZXI+JiBpbWFnZUJ1ZmZlciwgRmxvYXRSZWN0
JiB0YXJnZXRSZWN0LCBSZW5kZXJPYmplY3QqIG9iamVjdCwgYm9vbCBib3VuZGluZ0JveE1vZGUs
IGNvbnN0IEFmZmluZVRyYW5zZm9ybSYgZ3JhZGllbnRUcmFuc2Zvcm0pCiB7Ci0gICAgUmVuZGVy
T2JqZWN0KiB0ZXh0Um9vdEJsb2NrID0gUmVuZGVyU1ZHVGV4dDo6bG9jYXRlUmVuZGVyU1ZHVGV4
dEFuY2VzdG9yKG9iamVjdCk7CisgICAgYXV0byogdGV4dFJvb3RCbG9jayA9IFJlbmRlclNWR1Rl
eHQ6OmxvY2F0ZVJlbmRlclNWR1RleHRBbmNlc3Rvcigqb2JqZWN0KTsKICAgICBBU1NFUlQodGV4
dFJvb3RCbG9jayk7CiAKICAgICBBZmZpbmVUcmFuc2Zvcm0gYWJzb2x1dGVUcmFuc2Zvcm07CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1JlbmRlclNWR1RleHQuY3Bw
IGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N2Zy9SZW5kZXJTVkdUZXh0LmNwcAppbmRleCAy
MmMxY2RhLi4yMmUwOTU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3Zn
L1JlbmRlclNWR1RleHQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdmcvUmVu
ZGVyU1ZHVGV4dC5jcHAKQEAgLTM2LDYgKzM2LDcgQEAKICNpbmNsdWRlICJIaXRUZXN0UmVzdWx0
LmgiCiAjaW5jbHVkZSAiTGF5b3V0UmVwYWludGVyLmgiCiAjaW5jbHVkZSAiUG9pbnRlckV2ZW50
c0hpdFJ1bGVzLmgiCisjaW5jbHVkZSAiUmVuZGVySXRlcmF0b3IuaCIKICNpbmNsdWRlICJSZW5k
ZXJTVkdJbmxpbmVUZXh0LmgiCiAjaW5jbHVkZSAiUmVuZGVyU1ZHUmVzb3VyY2UuaCIKICNpbmNs
dWRlICJSZW5kZXJTVkdSb290LmgiCkBAIC03NywyNCArNzgsMTQgQEAgYm9vbCBSZW5kZXJTVkdU
ZXh0Ojppc0NoaWxkQWxsb3dlZChjb25zdCBSZW5kZXJPYmplY3QmIGNoaWxkLCBjb25zdCBSZW5k
ZXJTdHlsZSYKICAgICByZXR1cm4gY2hpbGQuaXNJbmxpbmUoKTsKIH0KIAotUmVuZGVyU1ZHVGV4
dCogUmVuZGVyU1ZHVGV4dDo6bG9jYXRlUmVuZGVyU1ZHVGV4dEFuY2VzdG9yKFJlbmRlck9iamVj
dCogc3RhcnQpCitSZW5kZXJTVkdUZXh0KiBSZW5kZXJTVkdUZXh0Ojpsb2NhdGVSZW5kZXJTVkdU
ZXh0QW5jZXN0b3IoUmVuZGVyT2JqZWN0JiBzdGFydCkKIHsKLSAgICBBU1NFUlQoc3RhcnQpOwot
ICAgIHdoaWxlIChzdGFydCAmJiAhc3RhcnQtPmlzU1ZHVGV4dCgpKQotICAgICAgICBzdGFydCA9
IHN0YXJ0LT5wYXJlbnQoKTsKLSAgICBpZiAoIXN0YXJ0IHx8ICFzdGFydC0+aXNTVkdUZXh0KCkp
Ci0gICAgICAgIHJldHVybiAwOwotICAgIHJldHVybiB0b1JlbmRlclNWR1RleHQoc3RhcnQpOwor
ICAgIHJldHVybiBsaW5lYWdlT2ZUeXBlPFJlbmRlclNWR1RleHQ+KHN0YXJ0KS5maXJzdCgpOwog
fQogCi1jb25zdCBSZW5kZXJTVkdUZXh0KiBSZW5kZXJTVkdUZXh0Ojpsb2NhdGVSZW5kZXJTVkdU
ZXh0QW5jZXN0b3IoY29uc3QgUmVuZGVyT2JqZWN0KiBzdGFydCkKK2NvbnN0IFJlbmRlclNWR1Rl
eHQqIFJlbmRlclNWR1RleHQ6OmxvY2F0ZVJlbmRlclNWR1RleHRBbmNlc3Rvcihjb25zdCBSZW5k
ZXJPYmplY3QmIHN0YXJ0KQogewotICAgIEFTU0VSVChzdGFydCk7Ci0gICAgd2hpbGUgKHN0YXJ0
ICYmICFzdGFydC0+aXNTVkdUZXh0KCkpCi0gICAgICAgIHN0YXJ0ID0gc3RhcnQtPnBhcmVudCgp
OwotICAgIGlmICghc3RhcnQgfHwgIXN0YXJ0LT5pc1NWR1RleHQoKSkKLSAgICAgICAgcmV0dXJu
IDA7Ci0gICAgcmV0dXJuIHRvUmVuZGVyU1ZHVGV4dChzdGFydCk7CisgICAgcmV0dXJuIGxpbmVh
Z2VPZlR5cGU8UmVuZGVyU1ZHVGV4dD4oc3RhcnQpLmZpcnN0KCk7CiB9CiAKIExheW91dFJlY3Qg
UmVuZGVyU1ZHVGV4dDo6Y2xpcHBlZE92ZXJmbG93UmVjdEZvclJlcGFpbnQoY29uc3QgUmVuZGVy
TGF5ZXJNb2RlbE9iamVjdCogcmVwYWludENvbnRhaW5lcikgY29uc3QKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdmcvUmVuZGVyU1ZHVGV4dC5oIGIvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL3N2Zy9SZW5kZXJTVkdUZXh0LmgKaW5kZXggOTNhYzQ0MjQuLjAxYjlhMGYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdmcvUmVuZGVyU1ZHVGV4dC5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdmcvUmVuZGVyU1ZHVGV4dC5oCkBAIC00
Nyw4ICs0Nyw4IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldE5lZWRzVGV4dE1ldHJpY3NVcGRhdGUo
KSB7IG1fbmVlZHNUZXh0TWV0cmljc1VwZGF0ZSA9IHRydWU7IH0KICAgICB2aXJ0dWFsIEZsb2F0
UmVjdCByZXBhaW50UmVjdEluTG9jYWxDb29yZGluYXRlcygpIGNvbnN0OwogCi0gICAgc3RhdGlj
IFJlbmRlclNWR1RleHQqIGxvY2F0ZVJlbmRlclNWR1RleHRBbmNlc3RvcihSZW5kZXJPYmplY3Qq
KTsKLSAgICBzdGF0aWMgY29uc3QgUmVuZGVyU1ZHVGV4dCogbG9jYXRlUmVuZGVyU1ZHVGV4dEFu
Y2VzdG9yKGNvbnN0IFJlbmRlck9iamVjdCopOworICAgIHN0YXRpYyBSZW5kZXJTVkdUZXh0KiBs
b2NhdGVSZW5kZXJTVkdUZXh0QW5jZXN0b3IoUmVuZGVyT2JqZWN0Jik7CisgICAgc3RhdGljIGNv
bnN0IFJlbmRlclNWR1RleHQqIGxvY2F0ZVJlbmRlclNWR1RleHRBbmNlc3Rvcihjb25zdCBSZW5k
ZXJPYmplY3QmKTsKIAogICAgIGJvb2wgbmVlZHNSZW9yZGVyaW5nKCkgY29uc3QgeyByZXR1cm4g
bV9uZWVkc1Jlb3JkZXJpbmc7IH0KICAgICBWZWN0b3I8U1ZHVGV4dExheW91dEF0dHJpYnV0ZXMq
PiYgbGF5b3V0QXR0cmlidXRlcygpIHsgcmV0dXJuIG1fbGF5b3V0QXR0cmlidXRlczsgfQpAQCAt
NTksNiArNTksOSBAQCBwdWJsaWM6CiAgICAgdm9pZCBzdWJ0cmVlU3R5bGVEaWRDaGFuZ2UoUmVu
ZGVyU1ZHSW5saW5lVGV4dCopOwogICAgIHZvaWQgc3VidHJlZVRleHREaWRDaGFuZ2UoUmVuZGVy
U1ZHSW5saW5lVGV4dCopOwogCisgICAgdmlydHVhbCBGbG9hdFJlY3Qgb2JqZWN0Qm91bmRpbmdC
b3goKSBjb25zdCBvdmVycmlkZSB7IHJldHVybiBmcmFtZVJlY3QoKTsgfQorICAgIHZpcnR1YWwg
RmxvYXRSZWN0IHN0cm9rZUJvdW5kaW5nQm94KCkgY29uc3Qgb3ZlcnJpZGU7CisKIHByaXZhdGU6
CiAgICAgdm9pZCBncmFwaGljc0VsZW1lbnQoKSBjb25zdCA9IGRlbGV0ZTsKIApAQCAtODUsOSAr
ODgsNiBAQCBwcml2YXRlOgogICAgIHZpcnR1YWwgdm9pZCByZW1vdmVDaGlsZChSZW5kZXJPYmpl
Y3QmKSBvdmVycmlkZTsKICAgICB2aXJ0dWFsIHZvaWQgd2lsbEJlRGVzdHJveWVkKCkgb3ZlcnJp
ZGU7CiAKLSAgICB2aXJ0dWFsIEZsb2F0UmVjdCBvYmplY3RCb3VuZGluZ0JveCgpIGNvbnN0IHsg
cmV0dXJuIGZyYW1lUmVjdCgpOyB9Ci0gICAgdmlydHVhbCBGbG9hdFJlY3Qgc3Ryb2tlQm91bmRp
bmdCb3goKSBjb25zdDsKLQogICAgIHZpcnR1YWwgY29uc3QgQWZmaW5lVHJhbnNmb3JtJiBsb2Nh
bFRvUGFyZW50VHJhbnNmb3JtKCkgY29uc3QgeyByZXR1cm4gbV9sb2NhbFRyYW5zZm9ybTsgfQog
ICAgIHZpcnR1YWwgQWZmaW5lVHJhbnNmb3JtIGxvY2FsVHJhbnNmb3JtKCkgY29uc3QgeyByZXR1
cm4gbV9sb2NhbFRyYW5zZm9ybTsgfQogICAgIHZpcnR1YWwgc3RkOjp1bmlxdWVfcHRyPFJvb3RJ
bmxpbmVCb3g+IGNyZWF0ZVJvb3RJbmxpbmVCb3goKSBvdmVycmlkZTsKQEAgLTEwNiw2ICsxMDYs
NyBAQCBwcml2YXRlOgogICAgIFZlY3RvcjxTVkdUZXh0TGF5b3V0QXR0cmlidXRlcyo+IG1fbGF5
b3V0QXR0cmlidXRlczsKIH07CiAKK3RlbXBsYXRlPD4gaW5saW5lIGJvb2wgaXNSZW5kZXJlck9m
VHlwZTxjb25zdCBSZW5kZXJTVkdUZXh0Pihjb25zdCBSZW5kZXJPYmplY3QmIHJlbmRlcmVyKSB7
IHJldHVybiByZW5kZXJlci5pc1NWR1RleHQoKTsgfQogUkVOREVSX09CSkVDVF9UWVBFX0NBU1RT
KFJlbmRlclNWR1RleHQsIGlzU1ZHVGV4dCgpKQogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9yZW5kZXJpbmcvc3ZnL1NWR1RleHRMYXlvdXRBdHRyaWJ1dGVzQnVpbGRlci5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1NWR1RleHRMYXlvdXRBdHRyaWJ1dGVzQnVpbGRl
ci5jcHAKaW5kZXggNjUyOGE5Ni4uNTcyZGI4MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL3N2Zy9TVkdUZXh0TGF5b3V0QXR0cmlidXRlc0J1aWxkZXIuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdmcvU1ZHVGV4dExheW91dEF0dHJpYnV0ZXNCdWlsZGVy
LmNwcApAQCAtMzUsNyArMzUsNyBAQCBTVkdUZXh0TGF5b3V0QXR0cmlidXRlc0J1aWxkZXI6OlNW
R1RleHRMYXlvdXRBdHRyaWJ1dGVzQnVpbGRlcigpCiAKIHZvaWQgU1ZHVGV4dExheW91dEF0dHJp
YnV0ZXNCdWlsZGVyOjpidWlsZExheW91dEF0dHJpYnV0ZXNGb3JUZXh0UmVuZGVyZXIoUmVuZGVy
U1ZHSW5saW5lVGV4dCYgdGV4dCkKIHsKLSAgICBSZW5kZXJTVkdUZXh0KiB0ZXh0Um9vdCA9IFJl
bmRlclNWR1RleHQ6OmxvY2F0ZVJlbmRlclNWR1RleHRBbmNlc3RvcigmdGV4dCk7CisgICAgYXV0
byogdGV4dFJvb3QgPSBSZW5kZXJTVkdUZXh0Ojpsb2NhdGVSZW5kZXJTVkdUZXh0QW5jZXN0b3Io
dGV4dCk7CiAgICAgaWYgKCF0ZXh0Um9vdCkKICAgICAgICAgcmV0dXJuOwogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1NWR1RleHRNZXRyaWNzQnVpbGRlci5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1NWR1RleHRNZXRyaWNzQnVpbGRlci5jcHAK
aW5kZXggODYwMDllNi4uMTczNDRlOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcmVuZGVy
aW5nL3N2Zy9TVkdUZXh0TWV0cmljc0J1aWxkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9zdmcvU1ZHVGV4dE1ldHJpY3NCdWlsZGVyLmNwcApAQCAtMjA3LDcgKzIwNyw3IEBA
IHZvaWQgU1ZHVGV4dE1ldHJpY3NCdWlsZGVyOjptZWFzdXJlVGV4dFJlbmRlcmVyKFJlbmRlclNW
R0lubGluZVRleHQqIHRleHQpCiB7CiAgICAgQVNTRVJUKHRleHQpOwogCi0gICAgUmVuZGVyU1ZH
VGV4dCogdGV4dFJvb3QgPSBSZW5kZXJTVkdUZXh0Ojpsb2NhdGVSZW5kZXJTVkdUZXh0QW5jZXN0
b3IodGV4dCk7CisgICAgYXV0byogdGV4dFJvb3QgPSBSZW5kZXJTVkdUZXh0Ojpsb2NhdGVSZW5k
ZXJTVkdUZXh0QW5jZXN0b3IoKnRleHQpOwogICAgIGlmICghdGV4dFJvb3QpCiAgICAgICAgIHJl
dHVybjsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1RleHRQb3NpdGlvbmlu
Z0VsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvc3ZnL1NWR1RleHRQb3NpdGlvbmluZ0VsZW1l
bnQuY3BwCmluZGV4IDgyZTcwNjMuLjQwMzg2OWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3N2Zy9TVkdUZXh0UG9zaXRpb25pbmdFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9z
dmcvU1ZHVGV4dFBvc2l0aW9uaW5nRWxlbWVudC5jcHAKQEAgLTE0MCw4ICsxNDAsOCBAQCB2b2lk
IFNWR1RleHRQb3NpdGlvbmluZ0VsZW1lbnQ6OnN2Z0F0dHJpYnV0ZUNoYW5nZWQoY29uc3QgUXVh
bGlmaWVkTmFtZSYgYXR0ck5hbQogICAgICAgICByZXR1cm47CiAKICAgICBpZiAodXBkYXRlUmVs
YXRpdmVMZW5ndGhzIHx8IGF0dHJOYW1lID09IFNWR05hbWVzOjpyb3RhdGVBdHRyKSB7Ci0gICAg
ICAgIGlmIChSZW5kZXJTVkdUZXh0KiB0ZXh0UmVuZGVyZXIgPSBSZW5kZXJTVkdUZXh0Ojpsb2Nh
dGVSZW5kZXJTVkdUZXh0QW5jZXN0b3IocmVuZGVyZXIpKQotICAgICAgICAgICAgdGV4dFJlbmRl
cmVyLT5zZXROZWVkc1Bvc2l0aW9uaW5nVmFsdWVzVXBkYXRlKCk7CisgICAgICAgIGlmIChhdXRv
KiB0ZXh0QW5jZXN0b3IgPSBSZW5kZXJTVkdUZXh0Ojpsb2NhdGVSZW5kZXJTVkdUZXh0QW5jZXN0
b3IoKnJlbmRlcmVyKSkKKyAgICAgICAgICAgIHRleHRBbmNlc3Rvci0+c2V0TmVlZHNQb3NpdGlv
bmluZ1ZhbHVlc1VwZGF0ZSgpOwogICAgICAgICBSZW5kZXJTVkdSZXNvdXJjZTo6bWFya0Zvckxh
eW91dEFuZFBhcmVudFJlc291cmNlSW52YWxpZGF0aW9uKCpyZW5kZXJlcik7CiAgICAgICAgIHJl
dHVybjsKICAgICB9Cg==
</data>
<flag name="review"
          id="246979"
          type_id="1"
          status="+"
          setter="andersca"
    />
          </attachment>
      

    </bug>

</bugzilla>