<?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>139613</bug_id>
          
          <creation_ts>2014-12-12 18:28:19 -0800</creation_ts>
          <short_desc>Get rid of the DONT_FINALIZE_ON_MAIN_THREAD #define</short_desc>
          <delta_ts>2014-12-15 15:52:58 -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>New Bugs</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="Anders Carlsson">andersca</reporter>
          <assigned_to name="Anders Carlsson">andersca</assigned_to>
          <cc>benjamin</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>commit-queue</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1055373</commentid>
    <comment_count>0</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2014-12-12 18:28:19 -0800</bug_when>
    <thetext>Get rid of the DONT_FINALIZE_ON_MAIN_THREAD #define</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1055374</commentid>
    <comment_count>1</comment_count>
      <attachid>243240</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2014-12-12 18:32:49 -0800</bug_when>
    <thetext>Created attachment 243240
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1055628</commentid>
    <comment_count>2</comment_count>
      <attachid>243240</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2014-12-15 09:07:28 -0800</bug_when>
    <thetext>Comment on attachment 243240
Patch

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

&gt; Source/WebCore/platform/mac/WebCoreObjCExtras.h:36
&gt; +#if defined(OBJC_NO_GC) &amp;&amp; OBJC_NO_GC

This checks both the defined’ness and value of OBJC_NO_GC.

&gt; Source/WebCore/platform/mac/WebCoreObjCExtras.mm:39
&gt; +#ifndef OBJC_NO_GC

This checks only the defined’ness of OBJC_NO_GC.

These two can’t both be correct.

&gt; Source/WebCore/platform/mac/WebCoreObjCExtras.mm:62
&gt; +        Method method = class_getInstanceMethod(cls, @selector(dealloc));
&gt; +
&gt; +        IMP imp = method_getImplementation(method);
&gt; +        wtfCallIMP&lt;void&gt;(imp, object, @selector(dealloc));

We should remove the strangely arbitrary blank line.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1055632</commentid>
    <comment_count>3</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2014-12-15 09:16:47 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; Comment on attachment 243240 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=243240&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/platform/mac/WebCoreObjCExtras.h:36
&gt; &gt; +#if defined(OBJC_NO_GC) &amp;&amp; OBJC_NO_GC
&gt; 
&gt; This checks both the defined’ness and value of OBJC_NO_GC.
&gt; 
&gt; &gt; Source/WebCore/platform/mac/WebCoreObjCExtras.mm:39
&gt; &gt; +#ifndef OBJC_NO_GC
&gt; 
&gt; This checks only the defined’ness of OBJC_NO_GC.
&gt; 
&gt; These two can’t both be correct.

Here&apos;s what the API docs say:

 * OBJC_NO_GC 1: GC is not supported
 * OBJC_NO_GC undef: GC is supported

in the first case, we want to check that OBJC_NO_GC is define to 1. IN the second case, we want to check that it&apos;s not set.

I could make the second check more stringent by checking !defined(OBJC_NO_GC) || !OBJC_NO_GC, but I&apos;m going to change things and make WebCoreObjCFinalizeOnMainThread be inlined unconditionally.

&gt; 
&gt; &gt; Source/WebCore/platform/mac/WebCoreObjCExtras.mm:62
&gt; &gt; +        Method method = class_getInstanceMethod(cls, @selector(dealloc));
&gt; &gt; +
&gt; &gt; +        IMP imp = method_getImplementation(method);
&gt; &gt; +        wtfCallIMP&lt;void&gt;(imp, object, @selector(dealloc));
&gt; 
&gt; We should remove the strangely arbitrary blank line.

Agreed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1055769</commentid>
    <comment_count>4</comment_count>
      <attachid>243318</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2014-12-15 15:30:23 -0800</bug_when>
    <thetext>Created attachment 243318
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1055784</commentid>
    <comment_count>5</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2014-12-15 15:52:58 -0800</bug_when>
    <thetext>Committed r177319: &lt;http://trac.webkit.org/changeset/177319&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>243240</attachid>
            <date>2014-12-12 18:32:49 -0800</date>
            <delta_ts>2014-12-15 15:30:19 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-139613-20141212183334.patch</filename>
            <type>text/plain</type>
            <size>10916</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTc3MjUyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IGM3YjJmNmUwOGI2OWY0NDdmYjY0M2Fm
ODdiYzgyYWRmMWJkYjMzYTguLmE3YjNmMDllYjJkYzI4ZDFlZTNjNWMyMmQ1NWNkZDU0NjVmY2Vh
ZjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTQtMTItMTIgIEFuZGVycyBDYXJsc3NvbiAgPGFu
ZGVyc2NhQGFwcGxlLmNvbT4KKworICAgICAgICBHZXQgcmlkIG9mIHRoZSBET05UX0ZJTkFMSVpF
X09OX01BSU5fVEhSRUFEICNkZWZpbmUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTEzOTYxMworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgICogd3RmL1BsYXRmb3JtLmg6CisgICAgICAgIFJlbW92ZSB0aGUgI2Rl
ZmluZS4KKwogMjAxNC0xMi0xMCAgR2VvZmZyZXkgR2FyZW4gIDxnZ2FyZW5AYXBwbGUuY29tPgog
CiAgICAgICAgIFBsZWFzZSBkaXNhYmxlIHRoZSB3ZWJraXRGaXJzdFZlcnNpb25XaXRoSW5pdENv
bnN0cnVjdG9yU3VwcG9ydCBjaGVjayBvbiBBcHBsZSBUVgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IGQ2YjY1NTg5
MDFjYWMxMTA2OGIzMDYzNmRkMjQ0MzI1YTM0ZDNhM2EuLjU2ZWVjYmNmZTQyZWZmZmQ3ZDRiZWJj
NjdiMmY0NjYyN2E1NjFhMDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwor
KysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMyBAQAorMjAxNC0xMi0x
MiAgQW5kZXJzIENhcmxzc29uICA8YW5kZXJzY2FAYXBwbGUuY29tPgorCisgICAgICAgIEdldCBy
aWQgb2YgdGhlIERPTlRfRklOQUxJWkVfT05fTUFJTl9USFJFQUQgI2RlZmluZQorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM5NjEzCisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgIFJlbW92ZSAtV25vLWRlcHJlY2F0ZWQtZGVjbGFy
YXRpb25zIGZyb20gdGhlIFdlYkNvcmVPYmpDRXh0cmFzLm1tIGJ1aWxkIGZsYWdzLgorICAgICAg
ICAKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvV2ViQ29yZU9iakNFeHRyYXMuaDoKKyAgICAgICAg
SWYgT0JKQ19OT19HQyBpcyBkZWZpbmVkIHRvIDEsIGp1c3QgbWFrZSBXZWJDb3JlT2JqQ0ZpbmFs
aXplT25NYWluVGhyZWFkIGEgbm8tb3AgaW5saW5lIGZ1bmN0aW9uLgorCisgICAgICAgICogcGxh
dGZvcm0vbWFjL1dlYkNvcmVPYmpDRXh0cmFzLm1tOgorICAgICAgICAoV2ViQ29yZU9iakNGaW5h
bGl6ZU9uTWFpblRocmVhZCk6CisgICAgICAgIE9ubHkgZGVmaW5lIHRoaXMgaWYgT0JKQ19OT19H
QyBpcyBub3QgZGVmaW5lZC4gVXNlIGxvY2FsICNwcmFnbWFzIGluc3RlYWQgb2YgdGhlIGNvbXBp
bGUgZmxhZy4KKworICAgICAgICAoV2ViQ29yZU9iakNTY2hlZHVsZURlYWxsb2NhdGVPbk1haW5U
aHJlYWQpOgorICAgICAgICBVc2UgYSBsYW1iZGEuCisKIDIwMTQtMTItMTIgIERlYW4gSmFja3Nv
biAgPGRpbm9AYXBwbGUuY29tPgogCiAgICAgICAgIFtNZWRpYSBpT1NdIElubGluZSB2aWRlbyBj
b250cm9scyBoYXZlIGFuIG91dGxpbmVkIHNjcnViYmVyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RG
L3d0Zi9QbGF0Zm9ybS5oIGIvU291cmNlL1dURi93dGYvUGxhdGZvcm0uaAppbmRleCA4MjBjMWNh
Yzg0NjVlMDdkNWM4ZTJiZTM0ZjIxMjllYWViZDcwNjFmLi5lOWVkZmNhNjJmODhhODIxMmMyNzk5
NDQwYmM3YzQ3YWRkZjEzN2IyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybS5o
CisrKyBiL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtLmgKQEAgLTUxMiw3ICs1MTIsNiBAQAogCiAj
aWYgUExBVEZPUk0oSU9TKQogCi0jZGVmaW5lIERPTlRfRklOQUxJWkVfT05fTUFJTl9USFJFQUQg
MQogI2RlZmluZSBIQVZFX1JFQURMSU5FIDEKICNpZiBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQog
I2RlZmluZSBXVEZfVVNFX0NGTkVUV09SSyAxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggMjFkNWMzYjYyZDQ4NjViMmQ5YjkwOTZm
MzA4NjJkZDE5ZTRlMDgxMy4uZWExMGE1MDIwZGM4MDBhMTkwMTI0OTgxMmQ4MDVhNTEzMzRjOTI0
NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvagpAQCAtNDk0Nyw3ICs0OTQ3LDcgQEAKIAkJQjJGQTNFMTcwQUI3NUE2RjAwMEU1QUM0IC8q
IEpTU1ZHVmlld0VsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEIyRkEzRDJGMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR1ZpZXdFbGVtZW50Lmgg
Ki87IH07CiAJCUIyRkEzRTE4MEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR1pvb21FdmVudC5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCMkZBM0QzMDBB
Qjc1QTZGMDAwRTVBQzQgLyogSlNTVkdab29tRXZlbnQuY3BwICovOyB9OwogCQlCMkZBM0UxOTBB
Qjc1QTZGMDAwRTVBQzQgLyogSlNTVkdab29tRXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyRkEzRDMxMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NW
R1pvb21FdmVudC5oICovOyB9OwotCQlCNTBGNUI4MTBFOTZDRDk5MDBBRDcxQTYgLyogV2ViQ29y
ZU9iakNFeHRyYXMubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSBCNTBGNUI4MDBFOTZDRDk5MDBBRDcxQTYgLyogV2ViQ29yZU9iakNFeHRyYXMubW0gKi87
IHNldHRpbmdzID0ge0NPTVBJTEVSX0ZMQUdTID0gIi1Xbm8tZGVwcmVjYXRlZC1kZWNsYXJhdGlv
bnMiOyB9OyB9OworCQlCNTBGNUI4MTBFOTZDRDk5MDBBRDcxQTYgLyogV2ViQ29yZU9iakNFeHRy
YXMubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCNTBG
NUI4MDBFOTZDRDk5MDBBRDcxQTYgLyogV2ViQ29yZU9iakNFeHRyYXMubW0gKi87IH07CiAJCUI1
MUEyRjNGMTdEN0QzQUUwMDcyNTE3QSAvKiBJbWFnZVF1YWxpdHlDb250cm9sbGVyLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCNTFBMkYzRTE3RDdEM0E0
MDA3MjUxN0EgLyogSW1hZ2VRdWFsaXR5Q29udHJvbGxlci5oICovOyB9OwogCQlCNTFBMkY0MTE3
RDdENURFMDA3MjUxN0EgLyogSW1hZ2VRdWFsaXR5Q29udHJvbGxlci5jcHAgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCNTFBMkY0MDE3RDdENURBMDA3MjUx
N0EgLyogSW1hZ2VRdWFsaXR5Q29udHJvbGxlci5jcHAgKi87IH07CiAJCUI1MjVBOTY1MTFDQTIz
NDAwMDNBMjNBOCAvKiBKU1NRTEV4Y2VwdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQjUyNUE5NjMxMUNBMjM0MDAwM0EyM0E4IC8qIEpTU1FMRXhj
ZXB0aW9uLmggKi87IH07CkBAIC05NDk1LDggKzk0OTUsOCBAQAogCQk3MjRFRDMyOTFBM0E3RTU0
MDBGNUYxM0MgLyogRVhUQmxlbmRNaW5NYXguY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBuYW1lID0gRVhUQmxlbmRNaW5NYXguY3BwOyBwYXRoID0gY2FudmFzL0VYVEJsZW5kTWlu
TWF4LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNzI0RUQzMkExQTNBN0U1NDAw
RjVGMTNDIC8qIEVYVEJsZW5kTWluTWF4LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFt
ZSA9IEVYVEJsZW5kTWluTWF4Lmg7IHBhdGggPSBjYW52YXMvRVhUQmxlbmRNaW5NYXguaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNzI0RUQzMkIxQTNBN0U1NDAwRjVGMTNDIC8qIEVY
VEJsZW5kTWluTWF4LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IG5hbWUgPSBFWFRCbGVuZE1pbk1heC5p
ZGw7IHBhdGggPSBjYW52YXMvRVhUQmxlbmRNaW5NYXguaWRsOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwotCQk3MjRFRDMyRjFBM0E4QjIzMDBGNUYxM0MgLyogSlNFWFRCbGVuZE1pbk1heC5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBKU0VYVEJsZW5kTWluTWF4
LmNwcDsgcGF0aCA9ICJKU0VYVEJsZW5kTWluTWF4LmNwcCI7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07Ci0JCTcyNEVEMzMwMUEzQThCMjMwMEY1RjEzQyAvKiBKU0VYVEJsZW5kTWluTWF4Lmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IEpTRVhUQmxlbmRNaW5NYXguaDsgcGF0
aCA9ICJKU0VYVEJsZW5kTWluTWF4LmgiOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3
MjRFRDMyRjFBM0E4QjIzMDBGNUYxM0MgLyogSlNFWFRCbGVuZE1pbk1heC5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0VYVEJsZW5kTWluTWF4LmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzI0RUQzMzAxQTNBOEIyMzAwRjVGMTNDIC8qIEpTRVhU
QmxlbmRNaW5NYXguaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNFWFRCbGVu
ZE1pbk1heC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk3MjYyNkUwMTBFRjAyMkZF
MDBBMDdFMjAgLyogRm9udEZhc3RQYXRoLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEZvbnRGYXN0UGF0aC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTcyN0FGRUQxMUEyRUE2QTAwMDA0NDJFOCAvKiBFWFRzUkdCLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgbmFtZSA9IEVYVHNSR0IuY3BwOyBwYXRoID0gY2FudmFzL0VYVHNSR0Iu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk3MjdBRkVEMjFBMkVBNkEwMDAwNDQy
RTggLyogRVhUc1JHQi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBFWFRzUkdC
Lmg7IHBhdGggPSBjYW52YXMvRVhUc1JHQi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpA
QCAtOTUwNiw4ICs5NTA2LDggQEAKIAkJNzJGMUFEOUYxQTM5MDRDMzAwMDE0RTE4IC8qIEVYVEZy
YWdEZXB0aC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBFWFRGcmFn
RGVwdGguY3BwOyBwYXRoID0gY2FudmFzL0VYVEZyYWdEZXB0aC5jcHA7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTcyRjFBREEwMUEzOTA0QzMwMDAxNEUxOCAvKiBFWFRGcmFnRGVwdGgu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gRVhURnJhZ0RlcHRoLmg7IHBhdGgg
PSBjYW52YXMvRVhURnJhZ0RlcHRoLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTcy
RjFBREExMUEzOTA0QzMwMDAxNEUxOCAvKiBFWFRGcmFnRGVwdGguaWRsICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4
dDsgbmFtZSA9IEVYVEZyYWdEZXB0aC5pZGw7IHBhdGggPSBjYW52YXMvRVhURnJhZ0RlcHRoLmlk
bDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNzJGMUFEQTMxQTM5MEI5RjAwMDE0RTE4
IC8qIEpTRVhURnJhZ0RlcHRoLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFt
ZSA9IEpTRVhURnJhZ0RlcHRoLmNwcDsgcGF0aCA9ICJKU0VYVEZyYWdEZXB0aC5jcHAiOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk3MkYxQURBNDFBMzkwQjlGMDAwMTRFMTggLyogSlNF
WFRGcmFnRGVwdGguaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gSlNFWFRGcmFn
RGVwdGguaDsgcGF0aCA9ICJKU0VYVEZyYWdEZXB0aC5oIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNzJGMUFEQTMxQTM5MEI5RjAwMDE0RTE4IC8qIEpTRVhURnJhZ0RlcHRoLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRVhURnJhZ0RlcHRoLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzJGMUFEQTQxQTM5MEI5RjAwMDE0RTE4IC8q
IEpTRVhURnJhZ0RlcHRoLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTRVhU
RnJhZ0RlcHRoLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTc1NDEzM0E3MTAyRTAw
RTgwMDA3NUQwMCAvKiBJbnNwZWN0b3JUaW1lbGluZUFnZW50LmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEluc3BlY3RvclRpbWVsaW5lQWdlbnQuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJNzU0MTMzQTkxMDJFMDBGNDAwMDc1RDAwIC8qIEluc3BlY3RvclRpbWVs
aW5lQWdlbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSW5zcGVj
dG9yVGltZWxpbmVBZ2VudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTc1NTND
RkU2MTA4RjQ3M0YwMEVBMjgxRSAvKiBUaW1lbGluZVJlY29yZEZhY3RvcnkuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVGltZWxpbmVSZWNvcmRGYWN0b3J5Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9t
YWMvV2ViQ29yZU9iakNFeHRyYXMuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9XZWJD
b3JlT2JqQ0V4dHJhcy5oCmluZGV4IDI1NmU2MTg2YmU1ZTAwYWRhZjU1MzU5ZWJjNTg2NDg1YWE1
YmE1MzEuLmQ4YTgzZDVkYjk5MDg4NTNlNTVkZDYxMTVjMTYzYWI1OGY1YjAxZjYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9XZWJDb3JlT2JqQ0V4dHJhcy5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9XZWJDb3JlT2JqQ0V4dHJhcy5oCkBAIC0zMyw3
ICszMywxMSBAQAogZXh0ZXJuICJDIiB7CiAjZW5kaWYKIAorI2lmIGRlZmluZWQoT0JKQ19OT19H
QykgJiYgT0JKQ19OT19HQworaW5saW5lIHZvaWQgV2ViQ29yZU9iakNGaW5hbGl6ZU9uTWFpblRo
cmVhZChDbGFzcykgeyB9CisjZWxzZQogV0VCQ09SRV9FWFBPUlQgdm9pZCBXZWJDb3JlT2JqQ0Zp
bmFsaXplT25NYWluVGhyZWFkKENsYXNzIGNscyk7CisjZW5kaWYKIAogLy8gVGhlICdDbGFzcycg
dGhhdCBzaG91bGQgYmUgcGFzc2VkIGluIGhlcmUgaXMgdGhlIGNsYXNzIG9mIHRoZQogLy8gb2Jq
ZWN0IHRoYXQgaW1wbGVtZW50cyB0aGUgZGVhbGxvYyBtZXRob2QgdGhhdCB0aGlzIGZ1bmN0aW9u
IGlzIGNhbGxlZCBmcm9tLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFj
L1dlYkNvcmVPYmpDRXh0cmFzLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1dlYkNv
cmVPYmpDRXh0cmFzLm1tCmluZGV4IDljMjc0YzFmNjA2ODI5YjAwMDliOTc3YTU0NWQ2NDhiZjVh
MjNiODAuLjBkNzkwZWIwODU3NGIxYjUxMDEzZjE4ODhmZmRlMGUzMGY3MTMyNjEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9XZWJDb3JlT2JqQ0V4dHJhcy5tbQorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvV2ViQ29yZU9iakNFeHRyYXMubW0KQEAgLTI2
LDQwICsyNiwyNyBAQAogICogVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0vLyBUaGlzIGZpbGUgaW50ZW50aW9u
YWxseSBjYWxscyBvYmpjX2ZpbmFsaXplT25NYWluVGhyZWFkLCB3aGljaCBpcyBkZXByZWNhdGVk
LgotLy8gQWNjb3JkaW5nIHRvIGh0dHA6Ly9nY2MuZ251Lm9yZy9vbmxpbmVkb2NzL2djYy00LjIu
MS9nY2MvRGlhZ25vc3RpYy1QcmFnbWFzLmh0bWwjRGlhZ25vc3RpYy1QcmFnbWFzCi0vLyB3ZSBu
ZWVkIHRvIHBsYWNlIHRoaXMgZGlyZWN0aXZlIGJlZm9yZSBhbnkgZGF0YSBvciBmdW5jdGlvbnMg
YXJlIGRlZmluZWQuCi0jcHJhZ21hIEdDQyBkaWFnbm9zdGljIGlnbm9yZWQgIi1XZGVwcmVjYXRl
ZC1kZWNsYXJhdGlvbnMiCi0KICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJXZWJDb3Jl
T2JqQ0V4dHJhcy5oIgogCiAjaW5jbHVkZSA8b2JqYy9vYmpjLWF1dG8uaD4KICNpbmNsdWRlIDx1
dGlsaXR5PgogI2luY2x1ZGUgPHd0Zi9Bc3NlcnRpb25zLmg+Ci0jaW5jbHVkZSA8d3RmL0Z1bmN0
aW9uYWwuaD4KICNpbmNsdWRlIDx3dGYvTWFpblRocmVhZC5oPgogI2luY2x1ZGUgPHd0Zi9PYmpj
UnVudGltZUV4dHJhcy5oPgogI2luY2x1ZGUgPHd0Zi9UaHJlYWRpbmcuaD4KIAorI2lmbmRlZiBP
QkpDX05PX0dDCiB2b2lkIFdlYkNvcmVPYmpDRmluYWxpemVPbk1haW5UaHJlYWQoQ2xhc3MgY2xz
KQogeworI3ByYWdtYSBjbGFuZyBkaWFnbm9zdGljIHB1c2gKKyNwcmFnbWEgY2xhbmcgZGlhZ25v
c3RpYyBpZ25vcmVkICItV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zIgogICAgIC8vIFRoaXMgbWV0
aG9kIHJlbGllcyBvbiB0aHJlYWRpbmcgYmVpbmcgaW5pdGlhbGl6ZWQgYnkgdGhlIGNhbGxlciwg
b3RoZXJ3aXNlCiAgICAgLy8gV2ViQ29yZU9iakNTY2hlZHVsZURlYWxsb2NhdGVPbk1haW5UaHJl
YWQgd2lsbCBjcmFzaC4KLSNpZm5kZWYgRE9OVF9GSU5BTElaRV9PTl9NQUlOX1RIUkVBRAogICAg
IG9iamNfZmluYWxpemVPbk1haW5UaHJlYWQoY2xzKTsKLSNlbHNlCi0gICAgVU5VU0VEX1BBUkFN
KGNscyk7Ci0jZW5kaWYKLX0KLQotc3RhdGljIHZvaWQgZGVhbGxvY0NhbGxiYWNrKENsYXNzIGNs
cywgaWQgb2JqZWN0KQotewotICAgIE1ldGhvZCBtZXRob2QgPSBjbGFzc19nZXRJbnN0YW5jZU1l
dGhvZChjbHMsIEBzZWxlY3RvcihkZWFsbG9jKSk7Ci0KLSAgICBJTVAgaW1wID0gbWV0aG9kX2dl
dEltcGxlbWVudGF0aW9uKG1ldGhvZCk7Ci0gICAgd3RmQ2FsbElNUDx2b2lkPihpbXAsIG9iamVj
dCwgQHNlbGVjdG9yKGRlYWxsb2MpKTsKKyNwcmFnbWEgY2xhbmcgZGlhZ25vc3RpYyBwb3AKIH0K
KyNlbmRpZgogCiBib29sIFdlYkNvcmVPYmpDU2NoZWR1bGVEZWFsbG9jYXRlT25NYWluVGhyZWFk
KENsYXNzIGNscywgaWQgb2JqZWN0KQogewpAQCAtNjgsNyArNTUsMTMgQEAgYm9vbCBXZWJDb3Jl
T2JqQ1NjaGVkdWxlRGVhbGxvY2F0ZU9uTWFpblRocmVhZChDbGFzcyBjbHMsIGlkIG9iamVjdCkK
ICAgICBpZiAoaXNNYWluVGhyZWFkKCkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIGNh
bGxPbk1haW5UaHJlYWQoYmluZChkZWFsbG9jQ2FsbGJhY2ssIGNscywgb2JqZWN0KSk7CisgICAg
Y2FsbE9uTWFpblRocmVhZChbY2xzLCBvYmplY3RdIHsKKyAgICAgICAgTWV0aG9kIG1ldGhvZCA9
IGNsYXNzX2dldEluc3RhbmNlTWV0aG9kKGNscywgQHNlbGVjdG9yKGRlYWxsb2MpKTsKKworICAg
ICAgICBJTVAgaW1wID0gbWV0aG9kX2dldEltcGxlbWVudGF0aW9uKG1ldGhvZCk7CisgICAgICAg
IHd0ZkNhbGxJTVA8dm9pZD4oaW1wLCBvYmplY3QsIEBzZWxlY3RvcihkZWFsbG9jKSk7CisgICAg
fSk7CisKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>243318</attachid>
            <date>2014-12-15 15:30:23 -0800</date>
            <delta_ts>2014-12-15 15:41:48 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-139613-20141215153111.patch</filename>
            <type>text/plain</type>
            <size>12263</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTc3MzEwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IGE0MjI2MWI0MGZlNGIwODYyNDhjMzhk
MjBkOTllMjViNDIyZjU1ODAuLjUwMzZmZGZjNjIyY2I4MDg5NjRiNDdjM2E0MjQwZjg5NDc1NWQ1
MDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTQtMTItMTIgIEFuZGVycyBDYXJsc3NvbiAgPGFu
ZGVyc2NhQGFwcGxlLmNvbT4KKworICAgICAgICBHZXQgcmlkIG9mIHRoZSBET05UX0ZJTkFMSVpF
X09OX01BSU5fVEhSRUFEICNkZWZpbmUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTEzOTYxMworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgICogd3RmL1BsYXRmb3JtLmg6CisgICAgICAgIFJlbW92ZSB0aGUgI2Rl
ZmluZS4KKwogMjAxNC0xMi0xNSAgQW5kcmVhcyBLbGluZyAgPGFrbGluZ0BhcHBsZS5jb20+CiAK
ICAgICAgICAgUHVyZ2UgUGFzc1JlZlB0ciBmcm9tIEZvY3VzRXZlbnQgY29kZS4KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpp
bmRleCAyNWU5MmRmMWM0NzhjMzJlNDc2ODFiMTc5NTQ4ODUzMjFhYjE1ZTYyLi43NzhmZTBmZjUx
NTBiMDU0ZmVlZWFjMGM5OTUyNGVmZmJmMjIzZGRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjYg
QEAKKzIwMTQtMTItMTIgIEFuZGVycyBDYXJsc3NvbiAgPGFuZGVyc2NhQGFwcGxlLmNvbT4KKwor
ICAgICAgICBHZXQgcmlkIG9mIHRoZSBET05UX0ZJTkFMSVpFX09OX01BSU5fVEhSRUFEICNkZWZp
bmUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzOTYx
MworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogV2Vi
Q29yZS5leHAuaW46CisgICAgICAgIFVwZGF0ZSBzeW1ib2xzLgorCisgICAgICAgICogV2ViQ29y
ZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICBSZW1vdmUgLVduby1kZXByZWNh
dGVkLWRlY2xhcmF0aW9ucyBmcm9tIHRoZSBXZWJDb3JlT2JqQ0V4dHJhcy5tbSBidWlsZCBmbGFn
cy4KKworICAgICAgICAqIHBsYXRmb3JtL21hYy9XZWJDb3JlT2JqQ0V4dHJhcy5oOgorICAgICAg
ICBJZiBPQkpDX05PX0dDIGlzIGRlZmluZWQgdG8gMSwganVzdCBtYWtlIFdlYkNvcmVPYmpDRmlu
YWxpemVPbk1haW5UaHJlYWQgYSBuby1vcCBpbmxpbmUgZnVuY3Rpb24uCisKKyAgICAgICAgKiBw
bGF0Zm9ybS9tYWMvV2ViQ29yZU9iakNFeHRyYXMubW06CisgICAgICAgIChXZWJDb3JlT2JqQ0Zp
bmFsaXplT25NYWluVGhyZWFkKToKKyAgICAgICAgTW92ZSB0aGlzIHRvIHRoZSAuaCBmaWxlIGZv
ciBlYXNpZXIgaW5saW5pbmcuCisKKyAgICAgICAgKFdlYkNvcmVPYmpDU2NoZWR1bGVEZWFsbG9j
YXRlT25NYWluVGhyZWFkKToKKyAgICAgICAgVXNlIGEgbGFtYmRhLgorCiAyMDE0LTEyLTE1ICBK
YXZpZXIgRmVybmFuZGV6ICA8amZlcm5hbmRlekBpZ2FsaWEuY29tPgogCiAgICAgICAgIEZsb2F0
cyBEb24ndCBPdmVyaGFuZyBUaGVpciBCbG9jayBGb3JtYXR0aW5nIENvbnRleApkaWZmIC0tZ2l0
IGEvU291cmNlL1dURi93dGYvUGxhdGZvcm0uaCBiL1NvdXJjZS9XVEYvd3RmL1BsYXRmb3JtLmgK
aW5kZXggODIwYzFjYWM4NDY1ZTA3ZDVjOGUyYmUzNGYyMTI5ZWFlYmQ3MDYxZi4uZTllZGZjYTYy
Zjg4YTgyMTJjMjc5OTQ0MGJjN2M0N2FkZGYxMzdiMiAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93
dGYvUGxhdGZvcm0uaAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9QbGF0Zm9ybS5oCkBAIC01MTIsNyAr
NTEyLDYgQEAKIAogI2lmIFBMQVRGT1JNKElPUykKIAotI2RlZmluZSBET05UX0ZJTkFMSVpFX09O
X01BSU5fVEhSRUFEIDEKICNkZWZpbmUgSEFWRV9SRUFETElORSAxCiAjaWYgVVNFKEFQUExFX0lO
VEVSTkFMX1NESykKICNkZWZpbmUgV1RGX1VTRV9DRk5FVFdPUksgMQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvV2ViQ29yZS5leHAuaW4gYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5p
bgppbmRleCBiNTdiYmEzMTI0YTZkYTI1MDkzZmMzODkyZjRhMzNlYzdjMmI5N2M0Li5iYjliNTdk
ZTBlNmJhMGNiN2YzZTVhMjIxNDg4MGY0NDBlNTI1NTU4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9XZWJDb3JlLmV4cC5pbgorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgpA
QCAtNDQsOCArNDQsNiBAQCBfRE9NRXZlbnRFeGNlcHRpb24KIF9ET01FeGNlcHRpb24KIF9ET01S
YW5nZUV4Y2VwdGlvbgogX0RPTVhQYXRoRXhjZXB0aW9uCi1fV2ViQ29yZU9iakNGaW5hbGl6ZU9u
TWFpblRocmVhZAotX1dlYkNvcmVPYmpDU2NoZWR1bGVEZWFsbG9jYXRlT25NYWluVGhyZWFkCiBf
X1oyNlJlcG9ydEJsb2NrZWRPYmpDRXhjZXB0aW9uUDExTlNFeGNlcHRpb24KIF9fWjNraXRQTjdX
ZWJDb3JlMTFIVE1MRWxlbWVudEUKIF9fWjNraXRQTjdXZWJDb3JlMTVIVE1MRm9ybUVsZW1lbnRF
CkBAIC01Nyw2ICs1NSw3IEBAIF9fWjNraXRQTjdXZWJDb3JlNE5vZGVFCiBfX1oza2l0UE43V2Vi
Q29yZTVSYW5nZUUKIF9fWjNraXRQTjdXZWJDb3JlN0VsZW1lbnRFCiBfX1oza2l0UE43V2ViQ29y
ZThEb2N1bWVudEUKK19fWjQxV2ViQ29yZU9iakNTY2hlZHVsZURlYWxsb2NhdGVPbk1haW5UaHJl
YWRQMTBvYmpjX2NsYXNzUDExb2JqY19vYmplY3QKIF9fWjRjb3JlUDEwRE9NRWxlbWVudAogX19a
NGNvcmVQMTFET01Eb2N1bWVudAogX19aNGNvcmVQMTNET01XaGVlbEV2ZW50CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3Vy
Y2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggNDJlYTEy
NTViMjY1NzBhZmRjZmY2MmVkYTU4MDBlMjEyYTc2NGY4NS4uM2JmYTMzNWQ5NjgxMWQyMWRlYzYz
ZTNjZjMxYzIyNGZlMmJkMTVlMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtNDkzOSw3ICs0OTM5LDcgQEAKIAkJQjJGQTNFMTcw
QUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHVmlld0VsZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyRkEzRDJGMEFCNzVBNkYwMDBFNUFDNCAvKiBK
U1NWR1ZpZXdFbGVtZW50LmggKi87IH07CiAJCUIyRkEzRTE4MEFCNzVBNkYwMDBFNUFDNCAvKiBK
U1NWR1pvb21FdmVudC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBCMkZBM0QzMDBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdab29tRXZlbnQuY3BwICov
OyB9OwogCQlCMkZBM0UxOTBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdab29tRXZlbnQuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEIyRkEzRDMxMEFCNzVB
NkYwMDBFNUFDNCAvKiBKU1NWR1pvb21FdmVudC5oICovOyB9OwotCQlCNTBGNUI4MTBFOTZDRDk5
MDBBRDcxQTYgLyogV2ViQ29yZU9iakNFeHRyYXMubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCNTBGNUI4MDBFOTZDRDk5MDBBRDcxQTYgLyogV2ViQ29y
ZU9iakNFeHRyYXMubW0gKi87IHNldHRpbmdzID0ge0NPTVBJTEVSX0ZMQUdTID0gIi1Xbm8tZGVw
cmVjYXRlZC1kZWNsYXJhdGlvbnMiOyB9OyB9OworCQlCNTBGNUI4MTBFOTZDRDk5MDBBRDcxQTYg
LyogV2ViQ29yZU9iakNFeHRyYXMubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBCNTBGNUI4MDBFOTZDRDk5MDBBRDcxQTYgLyogV2ViQ29yZU9iakNFeHRy
YXMubW0gKi87IH07CiAJCUI1MUEyRjNGMTdEN0QzQUUwMDcyNTE3QSAvKiBJbWFnZVF1YWxpdHlD
b250cm9sbGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBCNTFBMkYzRTE3RDdEM0E0MDA3MjUxN0EgLyogSW1hZ2VRdWFsaXR5Q29udHJvbGxlci5oICov
OyB9OwogCQlCNTFBMkY0MTE3RDdENURFMDA3MjUxN0EgLyogSW1hZ2VRdWFsaXR5Q29udHJvbGxl
ci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCNTFB
MkY0MDE3RDdENURBMDA3MjUxN0EgLyogSW1hZ2VRdWFsaXR5Q29udHJvbGxlci5jcHAgKi87IH07
CiAJCUI1MjVBOTY1MTFDQTIzNDAwMDNBMjNBOCAvKiBKU1NRTEV4Y2VwdGlvbi5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQjUyNUE5NjMxMUNBMjM0MDAw
M0EyM0E4IC8qIEpTU1FMRXhjZXB0aW9uLmggKi87IH07CkBAIC05NDg0LDggKzk0ODQsOCBAQAog
CQk3MjRFRDMyOTFBM0E3RTU0MDBGNUYxM0MgLyogRVhUQmxlbmRNaW5NYXguY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gRVhUQmxlbmRNaW5NYXguY3BwOyBwYXRoID0g
Y2FudmFzL0VYVEJsZW5kTWluTWF4LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
NzI0RUQzMkExQTNBN0U1NDAwRjVGMTNDIC8qIEVYVEJsZW5kTWluTWF4LmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgbmFtZSA9IEVYVEJsZW5kTWluTWF4Lmg7IHBhdGggPSBjYW52YXMvRVhU
QmxlbmRNaW5NYXguaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNzI0RUQzMkIxQTNB
N0U1NDAwRjVGMTNDIC8qIEVYVEJsZW5kTWluTWF4LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IG5hbWUg
PSBFWFRCbGVuZE1pbk1heC5pZGw7IHBhdGggPSBjYW52YXMvRVhUQmxlbmRNaW5NYXguaWRsOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk3MjRFRDMyRjFBM0E4QjIzMDBGNUYxM0MgLyog
SlNFWFRCbGVuZE1pbk1heC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUg
PSBKU0VYVEJsZW5kTWluTWF4LmNwcDsgcGF0aCA9ICJKU0VYVEJsZW5kTWluTWF4LmNwcCI7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTcyNEVEMzMwMUEzQThCMjMwMEY1RjEzQyAvKiBK
U0VYVEJsZW5kTWluTWF4LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IEpTRVhU
QmxlbmRNaW5NYXguaDsgcGF0aCA9ICJKU0VYVEJsZW5kTWluTWF4LmgiOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQk3MjRFRDMyRjFBM0E4QjIzMDBGNUYxM0MgLyogSlNFWFRCbGVuZE1p
bk1heC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0VYVEJsZW5k
TWluTWF4LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzI0RUQzMzAxQTNBOEIy
MzAwRjVGMTNDIC8qIEpTRVhUQmxlbmRNaW5NYXguaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gSlNFWFRCbGVuZE1pbk1heC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQk3MjYyNkUwMTBFRjAyMkZFMDBBMDdFMjAgLyogRm9udEZhc3RQYXRoLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEZvbnRGYXN0UGF0aC5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTcyN0FGRUQxMUEyRUE2QTAwMDA0NDJFOCAvKiBFWFRzUkdCLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IEVYVHNSR0IuY3BwOyBwYXRo
ID0gY2FudmFzL0VYVHNSR0IuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk3MjdB
RkVEMjFBMkVBNkEwMDAwNDQyRTggLyogRVhUc1JHQi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IG5hbWUgPSBFWFRzUkdCLmg7IHBhdGggPSBjYW52YXMvRVhUc1JHQi5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwpAQCAtOTQ5NSw4ICs5NDk1LDggQEAKIAkJNzJGMUFEOUYxQTM5MDRD
MzAwMDE0RTE4IC8qIEVYVEZyYWdEZXB0aC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IG5hbWUgPSBFWFRGcmFnRGVwdGguY3BwOyBwYXRoID0gY2FudmFzL0VYVEZyYWdEZXB0aC5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTcyRjFBREEwMUEzOTA0QzMwMDAxNEUx
OCAvKiBFWFRGcmFnRGVwdGguaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gRVhU
RnJhZ0RlcHRoLmg7IHBhdGggPSBjYW52YXMvRVhURnJhZ0RlcHRoLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTcyRjFBREExMUEzOTA0QzMwMDAxNEUxOCAvKiBFWFRGcmFnRGVwdGgu
aWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gdGV4dDsgbmFtZSA9IEVYVEZyYWdEZXB0aC5pZGw7IHBhdGggPSBjYW52
YXMvRVhURnJhZ0RlcHRoLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJNzJGMUFE
QTMxQTM5MEI5RjAwMDE0RTE4IC8qIEpTRVhURnJhZ0RlcHRoLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgbmFtZSA9IEpTRVhURnJhZ0RlcHRoLmNwcDsgcGF0aCA9ICJKU0VYVEZy
YWdEZXB0aC5jcHAiOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQk3MkYxQURBNDFBMzkw
QjlGMDAwMTRFMTggLyogSlNFWFRGcmFnRGVwdGguaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBuYW1lID0gSlNFWFRGcmFnRGVwdGguaDsgcGF0aCA9ICJKU0VYVEZyYWdEZXB0aC5oIjsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzJGMUFEQTMxQTM5MEI5RjAwMDE0RTE4IC8qIEpT
RVhURnJhZ0RlcHRoLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpT
RVhURnJhZ0RlcHRoLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzJGMUFEQTQx
QTM5MEI5RjAwMDE0RTE4IC8qIEpTRVhURnJhZ0RlcHRoLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEpTRVhURnJhZ0RlcHRoLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTc1NDEzM0E3MTAyRTAwRTgwMDA3NUQwMCAvKiBJbnNwZWN0b3JUaW1lbGluZUFnZW50Lmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEluc3BlY3RvclRpbWVsaW5lQWdlbnQu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJNzU0MTMzQTkxMDJFMDBGNDAwMDc1RDAw
IC8qIEluc3BlY3RvclRpbWVsaW5lQWdlbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gSW5zcGVjdG9yVGltZWxpbmVBZ2VudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTc1NTNDRkU2MTA4RjQ3M0YwMEVBMjgxRSAvKiBUaW1lbGluZVJlY29yZEZh
Y3RvcnkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVGltZWxpbmVSZWNvcmRG
YWN0b3J5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9tYWMvV2ViQ29yZU9iakNFeHRyYXMuaCBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL21hYy9XZWJDb3JlT2JqQ0V4dHJhcy5oCmluZGV4IDI1NmU2MTg2YmU1ZTAwYWRh
ZjU1MzU5ZWJjNTg2NDg1YWE1YmE1MzEuLjRjMTMxNjkxY2MzNTMwZjMzNTFkMjE3M2RiZGY2NTYw
Y2NiYTdkMjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9XZWJDb3Jl
T2JqQ0V4dHJhcy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9XZWJDb3JlT2Jq
Q0V4dHJhcy5oCkBAIC0yNiwxOSArMjYsMjggQEAKICAqIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAorI2lmbmRl
ZiBXZWJDb3JlT2JqQ0V4dHJhc19oCisjZGVmaW5lIFdlYkNvcmVPYmpDRXh0cmFzX2gKKwogI2lu
Y2x1ZGUgPENvcmVGb3VuZGF0aW9uL0NGQmFzZS5oPgotI2luY2x1ZGUgPG9iamMvb2JqYy5oPgor
I2luY2x1ZGUgPG9iamMvb2JqYy1hdXRvLmg+CiAKLSNpZmRlZiBfX2NwbHVzcGx1cwotZXh0ZXJu
ICJDIiB7CitpbmxpbmUgdm9pZCBXZWJDb3JlT2JqQ0ZpbmFsaXplT25NYWluVGhyZWFkKENsYXNz
IGNscykKK3sKKyNpZm5kZWYgT0JKQ19OT19HQworI3ByYWdtYSBjbGFuZyBkaWFnbm9zdGljIHB1
c2gKKyNwcmFnbWEgY2xhbmcgZGlhZ25vc3RpYyBpZ25vcmVkICItV2RlcHJlY2F0ZWQtZGVjbGFy
YXRpb25zIgorICAgIC8vIFRoaXMgbWV0aG9kIHJlbGllcyBvbiB0aHJlYWRpbmcgYmVpbmcgaW5p
dGlhbGl6ZWQgYnkgdGhlIGNhbGxlciwgb3RoZXJ3aXNlCisgICAgLy8gV2ViQ29yZU9iakNTY2hl
ZHVsZURlYWxsb2NhdGVPbk1haW5UaHJlYWQgd2lsbCBjcmFzaC4KKyAgICBvYmpjX2ZpbmFsaXpl
T25NYWluVGhyZWFkKGNscyk7CisjcHJhZ21hIGNsYW5nIGRpYWdub3N0aWMgcG9wCisjZWxzZQor
ICAgIFVOVVNFRF9QQVJBTShjbHMpOwogI2VuZGlmCi0KLVdFQkNPUkVfRVhQT1JUIHZvaWQgV2Vi
Q29yZU9iakNGaW5hbGl6ZU9uTWFpblRocmVhZChDbGFzcyBjbHMpOworfQogCiAvLyBUaGUgJ0Ns
YXNzJyB0aGF0IHNob3VsZCBiZSBwYXNzZWQgaW4gaGVyZSBpcyB0aGUgY2xhc3Mgb2YgdGhlCiAv
LyBvYmplY3QgdGhhdCBpbXBsZW1lbnRzIHRoZSBkZWFsbG9jIG1ldGhvZCB0aGF0IHRoaXMgZnVu
Y3Rpb24gaXMgY2FsbGVkIGZyb20uCiBXRUJDT1JFX0VYUE9SVCBib29sIFdlYkNvcmVPYmpDU2No
ZWR1bGVEZWFsbG9jYXRlT25NYWluVGhyZWFkKENsYXNzIGNscywgaWQpOwogCi0jaWZkZWYgX19j
cGx1c3BsdXMKLX0KLSNlbmRpZgorI2VuZGlmIC8vIFdlYkNvcmVPYmpDRXh0cmFzX2gKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9XZWJDb3JlT2JqQ0V4dHJhcy5tbSBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9XZWJDb3JlT2JqQ0V4dHJhcy5tbQppbmRleCA5
YzI3NGMxZjYwNjgyOWIwMDA5Yjk3N2E1NDVkNjQ4YmY1YTIzYjgwLi5jNWQ5ZjkxNjNiYWJmNWIw
NWFkODhlYTdjZWRkNjg3MDJhZDRhNjkxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9tYWMvV2ViQ29yZU9iakNFeHRyYXMubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbWFjL1dlYkNvcmVPYmpDRXh0cmFzLm1tCkBAIC0yNiw0MSArMjYsMTUgQEAKICAqIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuCiAgKi8KIAotLy8gVGhpcyBmaWxlIGludGVudGlvbmFsbHkgY2FsbHMgb2JqY19maW5hbGl6
ZU9uTWFpblRocmVhZCwgd2hpY2ggaXMgZGVwcmVjYXRlZC4KLS8vIEFjY29yZGluZyB0byBodHRw
Oi8vZ2NjLmdudS5vcmcvb25saW5lZG9jcy9nY2MtNC4yLjEvZ2NjL0RpYWdub3N0aWMtUHJhZ21h
cy5odG1sI0RpYWdub3N0aWMtUHJhZ21hcwotLy8gd2UgbmVlZCB0byBwbGFjZSB0aGlzIGRpcmVj
dGl2ZSBiZWZvcmUgYW55IGRhdGEgb3IgZnVuY3Rpb25zIGFyZSBkZWZpbmVkLgotI3ByYWdtYSBH
Q0MgZGlhZ25vc3RpYyBpZ25vcmVkICItV2RlcHJlY2F0ZWQtZGVjbGFyYXRpb25zIgotCiAjaW5j
bHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiV2ViQ29yZU9iakNFeHRyYXMuaCIKIAotI2luY2x1
ZGUgPG9iamMvb2JqYy1hdXRvLmg+CiAjaW5jbHVkZSA8dXRpbGl0eT4KICNpbmNsdWRlIDx3dGYv
QXNzZXJ0aW9ucy5oPgotI2luY2x1ZGUgPHd0Zi9GdW5jdGlvbmFsLmg+CiAjaW5jbHVkZSA8d3Rm
L01haW5UaHJlYWQuaD4KICNpbmNsdWRlIDx3dGYvT2JqY1J1bnRpbWVFeHRyYXMuaD4KICNpbmNs
dWRlIDx3dGYvVGhyZWFkaW5nLmg+CiAKLXZvaWQgV2ViQ29yZU9iakNGaW5hbGl6ZU9uTWFpblRo
cmVhZChDbGFzcyBjbHMpCi17Ci0gICAgLy8gVGhpcyBtZXRob2QgcmVsaWVzIG9uIHRocmVhZGlu
ZyBiZWluZyBpbml0aWFsaXplZCBieSB0aGUgY2FsbGVyLCBvdGhlcndpc2UKLSAgICAvLyBXZWJD
b3JlT2JqQ1NjaGVkdWxlRGVhbGxvY2F0ZU9uTWFpblRocmVhZCB3aWxsIGNyYXNoLgotI2lmbmRl
ZiBET05UX0ZJTkFMSVpFX09OX01BSU5fVEhSRUFECi0gICAgb2JqY19maW5hbGl6ZU9uTWFpblRo
cmVhZChjbHMpOwotI2Vsc2UKLSAgICBVTlVTRURfUEFSQU0oY2xzKTsKLSNlbmRpZgotfQotCi1z
dGF0aWMgdm9pZCBkZWFsbG9jQ2FsbGJhY2soQ2xhc3MgY2xzLCBpZCBvYmplY3QpCi17Ci0gICAg
TWV0aG9kIG1ldGhvZCA9IGNsYXNzX2dldEluc3RhbmNlTWV0aG9kKGNscywgQHNlbGVjdG9yKGRl
YWxsb2MpKTsKLQotICAgIElNUCBpbXAgPSBtZXRob2RfZ2V0SW1wbGVtZW50YXRpb24obWV0aG9k
KTsKLSAgICB3dGZDYWxsSU1QPHZvaWQ+KGltcCwgb2JqZWN0LCBAc2VsZWN0b3IoZGVhbGxvYykp
OwotfQotCiBib29sIFdlYkNvcmVPYmpDU2NoZWR1bGVEZWFsbG9jYXRlT25NYWluVGhyZWFkKENs
YXNzIGNscywgaWQgb2JqZWN0KQogewogICAgIEFTU0VSVChbb2JqZWN0IGlzS2luZE9mQ2xhc3M6
Y2xzXSk7CkBAIC02OCw3ICs0MiwxMiBAQCBib29sIFdlYkNvcmVPYmpDU2NoZWR1bGVEZWFsbG9j
YXRlT25NYWluVGhyZWFkKENsYXNzIGNscywgaWQgb2JqZWN0KQogICAgIGlmIChpc01haW5UaHJl
YWQoKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCi0gICAgY2FsbE9uTWFpblRocmVhZChiaW5k
KGRlYWxsb2NDYWxsYmFjaywgY2xzLCBvYmplY3QpKTsKKyAgICBjYWxsT25NYWluVGhyZWFkKFtj
bHMsIG9iamVjdF0geworICAgICAgICBNZXRob2QgbWV0aG9kID0gY2xhc3NfZ2V0SW5zdGFuY2VN
ZXRob2QoY2xzLCBAc2VsZWN0b3IoZGVhbGxvYykpOworICAgICAgICBJTVAgaW1wID0gbWV0aG9k
X2dldEltcGxlbWVudGF0aW9uKG1ldGhvZCk7CisgICAgICAgIHd0ZkNhbGxJTVA8dm9pZD4oaW1w
LCBvYmplY3QsIEBzZWxlY3RvcihkZWFsbG9jKSk7CisgICAgfSk7CisKICAgICByZXR1cm4gdHJ1
ZTsKIH0KIAo=
</data>
<flag name="review"
          id="268185"
          type_id="1"
          status="+"
          setter="sam"
    />
          </attachment>
      

    </bug>

</bugzilla>