<?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>128487</bug_id>
          
          <creation_ts>2014-02-08 22:09:49 -0800</creation_ts>
          <short_desc>IDB: storage/indexeddb/mozilla/object-store-remove-values.html fails</short_desc>
          <delta_ts>2015-06-03 22:58:13 -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>WebKit2</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>ASSIGNED</bug_status>
          <resolution></resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Brady Eidson">beidson</reporter>
          <assigned_to name="Brady Eidson">beidson</assigned_to>
          <cc>andersca</cc>
    
    <cc>ap</cc>
    
    <cc>commit-queue</cc>
    
    <cc>sam</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>978524</commentid>
    <comment_count>0</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2014-02-08 22:09:49 -0800</bug_when>
    <thetext>IDB: storage/indexeddb/mozilla/object-store-remove-values.html fails

The test does a deleteDatabase and then immediately reopens a connection to that same database name.  We don&apos;t handle the deleteDatabase cleanup properly in this case.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>979034</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2014-02-10 13:45:43 -0800</bug_when>
    <thetext>&lt;rdar://problem/16029319&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>979039</commentid>
    <comment_count>2</comment_count>
      <attachid>223740</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2014-02-10 13:53:31 -0800</bug_when>
    <thetext>Created attachment 223740
Patch v1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>979040</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-02-10 13:56:07 -0800</bug_when>
    <thetext>Attachment 223740 did not pass style-queue:


ERROR: Source/WebKit2/DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:165:  This { should be at the end of the previous line  [whitespace/braces] [4]
Total errors found: 1 in 10 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>979044</commentid>
    <comment_count>4</comment_count>
      <attachid>223740</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2014-02-10 14:05:07 -0800</bug_when>
    <thetext>Comment on attachment 223740
Patch v1

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

&gt; Source/WebKit2/DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.cpp:62
&gt; +    if (m_uniqueIDBDatabase)

early return instead?

&gt; Source/WebKit2/DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:166
&gt; +    while (performNextMainThreadTaskWithoutAdoptRef())
&gt; +    {
&gt; +    }

Indentation/brace location looks weird to me.

&gt; Source/WebKit2/DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:79
&gt; +        JSLockHolder lockHolder(JSLockHolder(m_vm.get()));

wut</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>979046</commentid>
    <comment_count>5</comment_count>
      <attachid>223740</attachid>
    <who name="Mark Hahnenberg">mhahnenberg</who>
    <bug_when>2014-02-10 14:10:26 -0800</bug_when>
    <thetext>Comment on attachment 223740
Patch v1

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

&gt;&gt; Source/WebKit2/DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:79
&gt;&gt; +        JSLockHolder lockHolder(JSLockHolder(m_vm.get()));
&gt; 
&gt; wut

I think you only want one level of JSLockHolder here. It probably works because C++ is auto generating a copy constructor that does something at least somewhat reasonable.

JSLockHolder holder(m_vm.get());

should work.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>979048</commentid>
    <comment_count>6</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2014-02-10 14:11:38 -0800</bug_when>
    <thetext>(In reply to comment #5)
&gt; (From update of attachment 223740 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=223740&amp;action=review
&gt; 
&gt; &gt;&gt; Source/WebKit2/DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:79
&gt; &gt;&gt; +        JSLockHolder lockHolder(JSLockHolder(m_vm.get()));
&gt; &gt; 
&gt; &gt; wut
&gt; 
&gt; I think you only want one level of JSLockHolder here. It probably works because C++ is auto generating a copy constructor that does something at least somewhat reasonable.
&gt; 
&gt; JSLockHolder holder(m_vm.get());
&gt; 
&gt; should work.

You are, of course, very correct.  *sigh*

Just landed in http://trac.webkit.org/changeset/163817 but will followup.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>979050</commentid>
    <comment_count>7</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2014-02-10 14:15:01 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/163817
and followup http://trac.webkit.org/changeset/163818</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1099410</commentid>
    <comment_count>8</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2015-06-03 22:58:13 -0700</bug_when>
    <thetext>Has this been finished? See bug 145623 though.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>223740</attachid>
            <date>2014-02-10 13:53:31 -0800</date>
            <delta_ts>2014-02-10 14:10:26 -0800</delta_ts>
            <desc>Patch v1</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>14637</size>
            <attacher name="Brady Eidson">beidson</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAyNDhkYWE2Li43N2MxOTg4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsMTUgQEAKIDIwMTQtMDIt
MTAgIEJyYWR5IEVpZHNvbiAgPGJlaWRzb25AYXBwbGUuY29tPgogCisgICAgICAgIElEQjogc3Rv
cmFnZS9pbmRleGVkZGIvbW96aWxsYS9vYmplY3Qtc3RvcmUtcmVtb3ZlLXZhbHVlcy5odG1sIGZh
aWxzCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8xNjAyOTMxOT4gYW5kIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjg0ODcKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHBsYXRmb3JtL21hYy13azIvVGVzdEV4cGVjdGF0
aW9uczogQWRkIHRoZSBub3ctcGFzc2luZyB0ZXN0IChza2lwcGVkIGJlY2F1c2Ugb2YKKyAgICAg
ICAgICB1bnJlbGF0ZWQgZmxha2luZXNzIGluIElEQiB0ZXN0cykKKworMjAxNC0wMi0xMCAgQnJh
ZHkgRWlkc29uICA8YmVpZHNvbkBhcHBsZS5jb20+CisKICAgICAgICAgU2tpcCBpbmRleGVkZGIg
dGVzdHMgZm9yIG5vdyB1bnRpbCBzb21lYm9keSBjYW4gZXhwbG9yZSAxMjgzNDEuCiAgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjgzNDEKIApkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMi9UZXN0RXhwZWN0YXRpb25zIGIvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMi9UZXN0RXhwZWN0YXRpb25zCmluZGV4IDAzOGNhNmQu
LjUxYzVlMTQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azIvVGVzdEV4
cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2syL1Rlc3RFeHBlY3Rh
dGlvbnMKQEAgLTQ4MSw2ICs0ODEsNyBAQCBmdWxsc2NyZWVuL2Fub255bW91cy1ibG9jay1tZXJn
ZS1jcmFzaC5odG1sIFsgUGFzcyBdCiAjIHN0b3JhZ2UvaW5kZXhlZGRiL21vemlsbGEvY3Vyc29y
cy5odG1sIFsgUGFzcyBdCiAjIHN0b3JhZ2UvaW5kZXhlZGRiL21vemlsbGEvaW5kZXgtcHJldi1u
by1kdXBsaWNhdGUuaHRtbCBbIFBhc3MgXQogIyBzdG9yYWdlL2luZGV4ZWRkYi9tb3ppbGxhL29i
amVjdC1jdXJzb3JzLmh0bWwgWyBQYXNzIF0KKyMgc3RvcmFnZS9pbmRleGVkZGIvbW96aWxsYS9v
YmplY3Qtc3RvcmUtcmVtb3ZlLXZhbHVlcy5odG1sIFsgUGFzcyBdCiAjIHN0b3JhZ2UvaW5kZXhl
ZGRiL21vemlsbGEvdmVyc2lvbmNoYW5nZS1hYm9ydC5odG1sIFsgUGFzcyBdCiAKICMjIyBFTkQg
T0YgKDUpIEZlYXR1cmVzIHRoYXQgYXJlIG5vdCBzdXBwb3J0ZWQgaW4gV2ViS2l0MSwgc28gc2tp
cHBlZCBpbiBtYWMvVGVzdEV4cGVjdGF0aW9ucyB0aGVuIHJlLWVuYWJsZWQgaGVyZQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9n
CmluZGV4IDliNzMyMTQuLjRjNmYyMGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0NoYW5n
ZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzNyBAQAorMjAx
NC0wMi0xMCAgQnJhZHkgRWlkc29uICA8YmVpZHNvbkBhcHBsZS5jb20+CisKKyAgICAgICAgSURC
OiBzdG9yYWdlL2luZGV4ZWRkYi9tb3ppbGxhL29iamVjdC1zdG9yZS1yZW1vdmUtdmFsdWVzLmh0
bWwgZmFpbHMKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzE2MDI5MzE5PiBhbmQgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyODQ4NworCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogRGF0YWJhc2VQcm9jZXNzL0luZGV4ZWRE
Qi9EYXRhYmFzZVByb2Nlc3NJREJDb25uZWN0aW9uLmNwcDoKKyAgICAgICAgKFdlYktpdDo6RGF0
YWJhc2VQcm9jZXNzSURCQ29ubmVjdGlvbjo6ZGlzY29ubmVjdGVkRnJvbVdlYlByb2Nlc3MpOgor
ICAgICAgICAoV2ViS2l0OjpEYXRhYmFzZVByb2Nlc3NJREJDb25uZWN0aW9uOjpnZXRPckVzdGFi
bGlzaElEQkRhdGFiYXNlTWV0YWRhdGEpOiBVcGRhdGUgbG9nZ2luZy4KKyAgICAgICAgKFdlYktp
dDo6RGF0YWJhc2VQcm9jZXNzSURCQ29ubmVjdGlvbjo6ZGVsZXRlRGF0YWJhc2UpOiBJZiBkZWxl
dGVEYXRhYmFzZSBzdWNjZWVkcywKKyAgICAgICAgICBhbHNvIGRpc2Nvbm5lY3QgZnJvbSB0aGUg
VW5pcXVlSURCRGF0YWJhc2Ugc28gaXQgY2FuIGJlIGNsZWFuZWQgdXAgcHJvcGVybHkuCisgICAg
ICAgIChXZWJLaXQ6OkRhdGFiYXNlUHJvY2Vzc0lEQkNvbm5lY3Rpb246OmNsb3NlKTogTmV3IG1l
c3NhZ2UgZnJvbSB0aGUgV2ViUHJvY2VzcyB0byBoYW5kbGUKKyAgICAgICAgICBjbGVhbiBjbG9z
dXJlcy4KKyAgICAgICAgKiBEYXRhYmFzZVByb2Nlc3MvSW5kZXhlZERCL0RhdGFiYXNlUHJvY2Vz
c0lEQkNvbm5lY3Rpb24uaDoKKyAgICAgICAgKiBEYXRhYmFzZVByb2Nlc3MvSW5kZXhlZERCL0Rh
dGFiYXNlUHJvY2Vzc0lEQkNvbm5lY3Rpb24ubWVzc2FnZXMuaW46CisKKyAgICAgICAgKiBEYXRh
YmFzZVByb2Nlc3MvSW5kZXhlZERCL1VuaXF1ZUlEQkRhdGFiYXNlLmNwcDoKKyAgICAgICAgKFdl
YktpdDo6VW5pcXVlSURCRGF0YWJhc2U6OnNodXRkb3duKTogTW92ZSBtb3N0IG9mIHRoZSBjbGVh
bnVwIHRvIGRpZFNodXRkb3duQmFja2luZ1N0b3JlLgorICAgICAgICAoV2ViS2l0OjpVbmlxdWVJ
REJEYXRhYmFzZTo6ZGlkU2h1dGRvd25CYWNraW5nU3RvcmUpOiBFeGVjdXRlIGFsbCByZW1haW5p
bmcgbWFpblRocmVhZFRhc2tzCisgICAgICAgICAgKGFzIHRoZXkgcmVwcmVzZW50IHJlYWwgcmVz
dWx0cyBmcm9tIHRoZSBiYWNraW5nIHN0b3JlIHRocmVhZCkuIAorICAgICAgICAoV2ViS2l0OjpV
bmlxdWVJREJEYXRhYmFzZTo6ZGVsZXRlRGF0YWJhc2UpOiBBZGQgYW4gQVNTRVJULgorICAgICAg
ICAoV2ViS2l0OjpVbmlxdWVJREJEYXRhYmFzZTo6cGVyZm9ybU5leHRNYWluVGhyZWFkVGFzayk6
IENhbGwgdGhyb3VnaCB0byBwZXJmb3JtTmV4dE1haW5UaHJlYWRUYXNrV2l0aG91dEFkb3B0UmVm
LgorICAgICAgICAoV2ViS2l0OjpVbmlxdWVJREJEYXRhYmFzZTo6cGVyZm9ybU5leHRNYWluVGhy
ZWFkVGFza1dpdGhvdXRBZG9wdFJlZik6IEV4ZWN1dGUgYSB0YXNrLAorICAgICAgICAgIHJldHVy
bmluZyB0cnVlIGlmIHRoZXJlIGFyZSBtb3JlIHRhc2tzIGxlZnQgdG8gZXhlY3V0ZS4KKyAgICAg
ICAgKiBEYXRhYmFzZVByb2Nlc3MvSW5kZXhlZERCL1VuaXF1ZUlEQkRhdGFiYXNlLmg6CisKKyAg
ICAgICAgKiBEYXRhYmFzZVByb2Nlc3MvSW5kZXhlZERCL3NxbGl0ZS9VbmlxdWVJREJEYXRhYmFz
ZUJhY2tpbmdTdG9yZVNRTGl0ZS5jcHA6CisgICAgICAgIChXZWJLaXQ6OlVuaXF1ZUlEQkRhdGFi
YXNlQmFja2luZ1N0b3JlU1FMaXRlOjp+VW5pcXVlSURCRGF0YWJhc2VCYWNraW5nU3RvcmVTUUxp
dGUpOiBQcm9wZXJseQorICAgICAgICAgIGhhbmRsZSBKU0MgY2xlYW51cC4KKworICAgICAgICAq
IFdlYlByb2Nlc3MvRGF0YWJhc2VzL0luZGV4ZWREQi9XZWJJREJTZXJ2ZXJDb25uZWN0aW9uLmNw
cDoKKyAgICAgICAgKFdlYktpdDo6V2ViSURCU2VydmVyQ29ubmVjdGlvbjo6Y2xvc2UpOiBJbXBs
ZW1lbnQgdGhpcy4KKwogMjAxNC0wMi0xMCAgTWFydGluIEhvY2sgIDxtaG9ja0BhcHBsZS5jb20+
CiAKICAgICAgICAgQWRkIEFQSSBmb3IgYWNjZXNzaW5nIHNlc3Npb24gZXBoZW1lcmFsaXR5IGZy
b20gYSBwYWdlIGJ1bmRsZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvRGF0YWJhc2VQcm9j
ZXNzL0luZGV4ZWREQi9EYXRhYmFzZVByb2Nlc3NJREJDb25uZWN0aW9uLmNwcCBiL1NvdXJjZS9X
ZWJLaXQyL0RhdGFiYXNlUHJvY2Vzcy9JbmRleGVkREIvRGF0YWJhc2VQcm9jZXNzSURCQ29ubmVj
dGlvbi5jcHAKaW5kZXggZDY1Y2M1OS4uYzM2ZWE3MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dDIvRGF0YWJhc2VQcm9jZXNzL0luZGV4ZWREQi9EYXRhYmFzZVByb2Nlc3NJREJDb25uZWN0aW9u
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9EYXRhYmFzZVByb2Nlc3MvSW5kZXhlZERCL0RhdGFi
YXNlUHJvY2Vzc0lEQkNvbm5lY3Rpb24uY3BwCkBAIC01Nyw4ICs1NywxMiBAQCBEYXRhYmFzZVBy
b2Nlc3NJREJDb25uZWN0aW9uOjp+RGF0YWJhc2VQcm9jZXNzSURCQ29ubmVjdGlvbigpCiAKIHZv
aWQgRGF0YWJhc2VQcm9jZXNzSURCQ29ubmVjdGlvbjo6ZGlzY29ubmVjdGVkRnJvbVdlYlByb2Nl
c3MoKQogewotICAgIG1fdW5pcXVlSURCRGF0YWJhc2UtPnVucmVnaXN0ZXJDb25uZWN0aW9uKCp0
aGlzKTsKLSAgICBtX3VuaXF1ZUlEQkRhdGFiYXNlLmNsZWFyKCk7CisgICAgLy8gSXQncyBwb3Nz
aWJsZSB0aGF0IHRoZSBtX3VuaXF1ZUlEQkRhdGFiYXNlIHBvaW50ZXIgaGFzIGFscmVhZHkgYmVl
biBjbGVhcmVkCisgICAgLy8gaWYgdGhlIHJlcHJlc2VudGVkIGRhdGFiYXNlIHdhcyBkZWxldGVk
LgorICAgIGlmIChtX3VuaXF1ZUlEQkRhdGFiYXNlKQorICAgICAgICBtX3VuaXF1ZUlEQkRhdGFi
YXNlLT51bnJlZ2lzdGVyQ29ubmVjdGlvbigqdGhpcyk7CisKKyAgICBtX3VuaXF1ZUlEQkRhdGFi
YXNlID0gbnVsbHB0cjsKIH0KIAogdm9pZCBEYXRhYmFzZVByb2Nlc3NJREJDb25uZWN0aW9uOjpl
c3RhYmxpc2hDb25uZWN0aW9uKGNvbnN0IFN0cmluZyYgZGF0YWJhc2VOYW1lLCBjb25zdCBTZWN1
cml0eU9yaWdpbkRhdGEmIG9wZW5pbmdPcmlnaW4sIGNvbnN0IFNlY3VyaXR5T3JpZ2luRGF0YSYg
bWFpbkZyYW1lT3JpZ2luKQpAQCAtNzEsNyArNzUsNyBAQCB2b2lkIERhdGFiYXNlUHJvY2Vzc0lE
QkNvbm5lY3Rpb246OmdldE9yRXN0YWJsaXNoSURCRGF0YWJhc2VNZXRhZGF0YSh1aW50NjRfdCBy
ZQogewogICAgIEFTU0VSVChtX3VuaXF1ZUlEQkRhdGFiYXNlKTsKIAotICAgIExPRyhJREIsICJE
YXRhYmFzZVByb2Nlc3MgZ2V0T3JFc3RhYmxpc2hJREJEYXRhYmFzZU1ldGFkYXRhIHJlcXVlc3Qg
SUQgJWxsdSIsIHJlcXVlc3RJRCk7CisgICAgTE9HKElEQiwgIkRhdGFiYXNlUHJvY2VzcyBnZXRP
ckVzdGFibGlzaElEQkRhdGFiYXNlTWV0YWRhdGEgcmVxdWVzdCBJRCAlbGx1IChjb25uZWN0aW9u
ICVwKSIsIHJlcXVlc3RJRCwgdGhpcyk7CiAKICAgICBSZWZQdHI8RGF0YWJhc2VQcm9jZXNzSURC
Q29ubmVjdGlvbj4gY29ubmVjdGlvbih0aGlzKTsKICAgICBtX3VuaXF1ZUlEQkRhdGFiYXNlLT5n
ZXRPckVzdGFibGlzaElEQkRhdGFiYXNlTWV0YWRhdGEoW2Nvbm5lY3Rpb24sIHJlcXVlc3RJRF0o
Ym9vbCBzdWNjZXNzLCBjb25zdCBJREJEYXRhYmFzZU1ldGFkYXRhJiBtZXRhZGF0YSkgewpAQCAt
ODMsNyArODcsNyBAQCB2b2lkIERhdGFiYXNlUHJvY2Vzc0lEQkNvbm5lY3Rpb246OmRlbGV0ZURh
dGFiYXNlKHVpbnQ2NF90IHJlcXVlc3RJRCwgY29uc3QgU3RyaQogewogICAgIEFTU0VSVChtX3Vu
aXF1ZUlEQkRhdGFiYXNlKTsKIAotICAgIExPRyhJREIsICJEYXRhYmFzZVByb2Nlc3MgZGVsZXRl
RGF0YWJhc2UgcmVxdWVzdCBJRCAlbGx1IiwgcmVxdWVzdElEKTsKKyAgICBMT0coSURCLCAiRGF0
YWJhc2VQcm9jZXNzIGRlbGV0ZURhdGFiYXNlIHJlcXVlc3QgSUQgJWxsdSAoY29ubmVjdGlvbiAl
cCkiLCByZXF1ZXN0SUQsIHRoaXMpOwogCiAgICAgaWYgKGRhdGFiYXNlTmFtZSAhPSBtX3VuaXF1
ZUlEQkRhdGFiYXNlLT5pZGVudGlmaWVyKCkuZGF0YWJhc2VOYW1lKCkpIHsKICAgICAgICAgTE9H
X0VSUk9SKCJSZXF1ZXN0IHRvIGRlbGV0ZSBkYXRhYmFzZSBuYW1lIHRoYXQgZG9lc24ndCBtYXRj
aCB3aXRoIHRoaXMgZGF0YWJhc2UgY29ubmVjdGlvbidzIGRhdGFiYXNlIG5hbWUiKTsKQEAgLTkx
LDcgKzk1LDEyIEBAIHZvaWQgRGF0YWJhc2VQcm9jZXNzSURCQ29ubmVjdGlvbjo6ZGVsZXRlRGF0
YWJhc2UodWludDY0X3QgcmVxdWVzdElELCBjb25zdCBTdHJpCiAgICAgfQogCiAgICAgUmVmUHRy
PERhdGFiYXNlUHJvY2Vzc0lEQkNvbm5lY3Rpb24+IGNvbm5lY3Rpb24odGhpcyk7Ci0gICAgbV91
bmlxdWVJREJEYXRhYmFzZS0+ZGVsZXRlRGF0YWJhc2UoW2Nvbm5lY3Rpb24sIHJlcXVlc3RJRF0o
Ym9vbCBzdWNjZXNzKSB7CisgICAgbV91bmlxdWVJREJEYXRhYmFzZS0+ZGVsZXRlRGF0YWJhc2Uo
W2Nvbm5lY3Rpb24sIHRoaXMsIHJlcXVlc3RJRF0oYm9vbCBzdWNjZXNzKSB7CisgICAgICAgIGlm
IChzdWNjZXNzKSB7CisgICAgICAgICAgICAvLyBJZiB0aGUgZGF0YWJhc2Ugd2FzIGRlbGV0ZWQs
IHRoaXMgY29ubmVjdGlvbiBzaG91bGQgZGV0YWNoIGZyb20gaXQgc28gaXQgY2FuIGJlIGNsZWFu
ZWQgdXAuCisgICAgICAgICAgICBtX3VuaXF1ZUlEQkRhdGFiYXNlLT51bnJlZ2lzdGVyQ29ubmVj
dGlvbigqdGhpcyk7CisgICAgICAgICAgICBtX3VuaXF1ZUlEQkRhdGFiYXNlID0gbnVsbHB0cjsK
KyAgICAgICAgfQogICAgICAgICBjb25uZWN0aW9uLT5zZW5kKE1lc3NhZ2VzOjpXZWJJREJTZXJ2
ZXJDb25uZWN0aW9uOjpEaWREZWxldGVEYXRhYmFzZShyZXF1ZXN0SUQsIHN1Y2Nlc3MpKTsKICAg
ICB9KTsKIH0KQEAgLTMyNiw2ICszMzUsMTMgQEAgdm9pZCBEYXRhYmFzZVByb2Nlc3NJREJDb25u
ZWN0aW9uOjpjdXJzb3JJdGVyYXRlKHVpbnQ2NF90IHJlcXVlc3RJRCwgaW50NjRfdCBjdXIKICAg
ICB9KTsKIH0KIAordm9pZCBEYXRhYmFzZVByb2Nlc3NJREJDb25uZWN0aW9uOjpjbG9zZSgpCit7
CisgICAgTE9HKElEQiwgIkRhdGFiYXNlUHJvY2Vzc0lEQkNvbm5lY3Rpb24gY2xvc2UiKTsKKwor
ICAgIGRpc2Nvbm5lY3RlZEZyb21XZWJQcm9jZXNzKCk7Cit9CisKIElQQzo6Q29ubmVjdGlvbiog
RGF0YWJhc2VQcm9jZXNzSURCQ29ubmVjdGlvbjo6bWVzc2FnZVNlbmRlckNvbm5lY3Rpb24oKQog
ewogICAgIHJldHVybiBtX2Nvbm5lY3Rpb24tPmNvbm5lY3Rpb24oKTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQyL0RhdGFiYXNlUHJvY2Vzcy9JbmRleGVkREIvRGF0YWJhc2VQcm9jZXNzSURC
Q29ubmVjdGlvbi5oIGIvU291cmNlL1dlYktpdDIvRGF0YWJhc2VQcm9jZXNzL0luZGV4ZWREQi9E
YXRhYmFzZVByb2Nlc3NJREJDb25uZWN0aW9uLmgKaW5kZXggNjdhNjA3OC4uOTIzYjUyZCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdDIvRGF0YWJhc2VQcm9jZXNzL0luZGV4ZWREQi9EYXRhYmFz
ZVByb2Nlc3NJREJDb25uZWN0aW9uLmgKKysrIGIvU291cmNlL1dlYktpdDIvRGF0YWJhc2VQcm9j
ZXNzL0luZGV4ZWREQi9EYXRhYmFzZVByb2Nlc3NJREJDb25uZWN0aW9uLmgKQEAgLTkwLDYgKzkw
LDggQEAgcHJpdmF0ZToKICAgICB2b2lkIGNvdW50KHVpbnQ2NF90IHJlcXVlc3RJRCwgaW50NjRf
dCB0cmFuc2FjdGlvbklELCBpbnQ2NF90IG9iamVjdFN0b3JlSUQsIGludDY0X3QgaW5kZXhJRCwg
Y29uc3QgV2ViQ29yZTo6SURCS2V5UmFuZ2VEYXRhJik7CiAgICAgdm9pZCBkZWxldGVSYW5nZSh1
aW50NjRfdCByZXF1ZXN0SUQsIGludDY0X3QgdHJhbnNhY3Rpb25JRCwgaW50NjRfdCBvYmplY3RT
dG9yZUlELCBjb25zdCBXZWJDb3JlOjpJREJLZXlSYW5nZURhdGEmIGtleVJhbmdlKTsKIAorICAg
IHZvaWQgY2xvc2UoKTsKKwogICAgIFJlZjxEYXRhYmFzZVRvV2ViUHJvY2Vzc0Nvbm5lY3Rpb24+
IG1fY29ubmVjdGlvbjsKICAgICB1aW50NjRfdCBtX3NlcnZlckNvbm5lY3Rpb25JZGVudGlmaWVy
OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9EYXRhYmFzZVByb2Nlc3MvSW5kZXhlZERC
L0RhdGFiYXNlUHJvY2Vzc0lEQkNvbm5lY3Rpb24ubWVzc2FnZXMuaW4gYi9Tb3VyY2UvV2ViS2l0
Mi9EYXRhYmFzZVByb2Nlc3MvSW5kZXhlZERCL0RhdGFiYXNlUHJvY2Vzc0lEQkNvbm5lY3Rpb24u
bWVzc2FnZXMuaW4KaW5kZXggYjVhNWFiNy4uMWVkYTM1YyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdDIvRGF0YWJhc2VQcm9jZXNzL0luZGV4ZWREQi9EYXRhYmFzZVByb2Nlc3NJREJDb25uZWN0
aW9uLm1lc3NhZ2VzLmluCisrKyBiL1NvdXJjZS9XZWJLaXQyL0RhdGFiYXNlUHJvY2Vzcy9JbmRl
eGVkREIvRGF0YWJhc2VQcm9jZXNzSURCQ29ubmVjdGlvbi5tZXNzYWdlcy5pbgpAQCAtNDksNiAr
NDksOCBAQCBtZXNzYWdlcyAtPiBEYXRhYmFzZVByb2Nlc3NJREJDb25uZWN0aW9uIExlZ2FjeVJl
Y2VpdmVyIHsKICAgICAKICAgICBDb3VudCh1aW50NjRfdCByZXF1ZXN0SUQsIGludDY0X3QgdHJh
bnNhY3Rpb25JRCwgaW50NjRfdCBvYmplY3RTdG9yZUlELCBpbnQ2NF90IGluZGV4SUQsIFdlYkNv
cmU6OklEQktleVJhbmdlRGF0YSBrZXlSYW5nZSkKICAgICBEZWxldGVSYW5nZSh1aW50NjRfdCBy
ZXF1ZXN0SUQsIGludDY0X3QgdHJhbnNhY3Rpb25JRCwgaW50NjRfdCBvYmplY3RTdG9yZUlELCBX
ZWJDb3JlOjpJREJLZXlSYW5nZURhdGEga2V5UmFuZ2UpCisgICAgCisgICAgQ2xvc2UoKQogfQog
CiAjZW5kaWYgLy8gRU5BQkxFKElOREVYRURfREFUQUJBU0UpICYmIEVOQUJMRShEQVRBQkFTRV9Q
Uk9DRVNTKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvRGF0YWJhc2VQcm9jZXNzL0luZGV4
ZWREQi9VbmlxdWVJREJEYXRhYmFzZS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9EYXRhYmFzZVByb2Nl
c3MvSW5kZXhlZERCL1VuaXF1ZUlEQkRhdGFiYXNlLmNwcAppbmRleCBlZGQ2MmFkLi5mZmFmYTZh
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9EYXRhYmFzZVByb2Nlc3MvSW5kZXhlZERCL1Vu
aXF1ZUlEQkRhdGFiYXNlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9EYXRhYmFzZVByb2Nlc3Mv
SW5kZXhlZERCL1VuaXF1ZUlEQkRhdGFiYXNlLmNwcApAQCAtMTI2LDMyICsxMjYsMTQgQEAgdm9p
ZCBVbmlxdWVJREJEYXRhYmFzZTo6c2h1dGRvd24oVW5pcXVlSURCRGF0YWJhc2VTaHV0ZG93blR5
cGUgdHlwZSkKIAogICAgIG1fYWNjZXB0aW5nTmV3UmVxdWVzdHMgPSBmYWxzZTsKIAorICAgIC8v
IEJhbGFuY2VkIGJ5IGFuIGFkb3B0UmVmIGluIDo6ZGlkU2h1dGRvd25CYWNraW5nU3RvcmUoKQor
ICAgIHJlZigpOworCiAgICAgewogICAgICAgICBNdXRleExvY2tlciBsb2NrZXIobV9kYXRhYmFz
ZVRhc2tNdXRleCk7CiAgICAgICAgIG1fZGF0YWJhc2VUYXNrcy5jbGVhcigpOwogICAgIH0KIAot
ICAgIHsKLSAgICAgICAgTXV0ZXhMb2NrZXIgbG9ja2VyKG1fbWFpblRocmVhZFRhc2tNdXRleCk7
Ci0gICAgICAgIG1fbWFpblRocmVhZFRhc2tzLmNsZWFyKCk7Ci0gICAgfQotCi0gICAgZm9yIChj
b25zdCBhdXRvJiBpdCA6IG1fcGVuZGluZ01ldGFkYXRhUmVxdWVzdHMpCi0gICAgICAgIGl0LT5y
ZXF1ZXN0QWJvcnRlZCgpOwotCi0gICAgZm9yIChjb25zdCBhdXRvJiBpdCA6IG1fcGVuZGluZ1Ry
YW5zYWN0aW9uUmVxdWVzdHMpCi0gICAgICAgIGl0LnZhbHVlLT5yZXF1ZXN0QWJvcnRlZCgpOwot
Ci0gICAgZm9yIChjb25zdCBhdXRvJiBpdCA6IG1fcGVuZGluZ0RhdGFiYXNlVGFza3MpCi0gICAg
ICAgIGl0LnZhbHVlLT5yZXF1ZXN0QWJvcnRlZCgpOwotCi0gICAgbV9wZW5kaW5nTWV0YWRhdGFS
ZXF1ZXN0cy5jbGVhcigpOwotICAgIG1fcGVuZGluZ1RyYW5zYWN0aW9uUmVxdWVzdHMuY2xlYXIo
KTsKLSAgICBtX3BlbmRpbmdEYXRhYmFzZVRhc2tzLmNsZWFyKCk7Ci0gICAgICAgIAotICAgIC8v
IEJhbGFuY2VkIGJ5IGFuIGFkb3B0UmVmIGluIDo6ZGlkU2h1dGRvd25CYWNraW5nU3RvcmUoKQot
ICAgIHJlZigpOwotCiAgICAgcG9zdERhdGFiYXNlVGFzayhjcmVhdGVBc3luY1Rhc2soKnRoaXMs
ICZVbmlxdWVJREJEYXRhYmFzZTo6c2h1dGRvd25CYWNraW5nU3RvcmUsIHR5cGUsIGFic29sdXRl
RGF0YWJhc2VEaXJlY3RvcnkoKSksIERhdGFiYXNlVGFza1R5cGU6OlNodXRkb3duKTsKIH0KIApA
QCAtMTc4LDYgKzE2MCwyMyBAQCB2b2lkIFVuaXF1ZUlEQkRhdGFiYXNlOjpkaWRTaHV0ZG93bkJh
Y2tpbmdTdG9yZShVbmlxdWVJREJEYXRhYmFzZVNodXRkb3duVHlwZSB0eQogICAgIC8vIEJhbGFu
Y2VkIGJ5IGEgcmVmIGluIDo6c2h1dGRvd24oKQogICAgIFJlZlB0cjxVbmlxdWVJREJEYXRhYmFz
ZT4gcHJvdGVjdG9yKGFkb3B0UmVmKHRoaXMpKTsKIAorICAgIC8vIEVtcHR5IG91dCByZW1haW5p
bmcgbWFpbiB0aHJlYWQgdGFza3MuCisgICAgd2hpbGUgKHBlcmZvcm1OZXh0TWFpblRocmVhZFRh
c2tXaXRob3V0QWRvcHRSZWYoKSkKKyAgICB7CisgICAgfQorCisgICAgLy8gTm8gbW9yZSByZXF1
ZXN0cyB3aWxsIGJlIGhhbmRsZWQsIHNvIGFib3J0IGFsbCBvdXRzdGFuZGluZyByZXF1ZXN0cy4K
KyAgICBmb3IgKGNvbnN0IGF1dG8mIGl0IDogbV9wZW5kaW5nTWV0YWRhdGFSZXF1ZXN0cykKKyAg
ICAgICAgaXQtPnJlcXVlc3RBYm9ydGVkKCk7CisgICAgZm9yIChjb25zdCBhdXRvJiBpdCA6IG1f
cGVuZGluZ1RyYW5zYWN0aW9uUmVxdWVzdHMpCisgICAgICAgIGl0LnZhbHVlLT5yZXF1ZXN0QWJv
cnRlZCgpOworICAgIGZvciAoY29uc3QgYXV0byYgaXQgOiBtX3BlbmRpbmdEYXRhYmFzZVRhc2tz
KQorICAgICAgICBpdC52YWx1ZS0+cmVxdWVzdEFib3J0ZWQoKTsKKworICAgIG1fcGVuZGluZ01l
dGFkYXRhUmVxdWVzdHMuY2xlYXIoKTsKKyAgICBtX3BlbmRpbmdUcmFuc2FjdGlvblJlcXVlc3Rz
LmNsZWFyKCk7CisgICAgbV9wZW5kaW5nRGF0YWJhc2VUYXNrcy5jbGVhcigpOworCiAgICAgaWYg
KG1fcGVuZGluZ1NodXRkb3duVGFzaykKICAgICAgICAgbV9wZW5kaW5nU2h1dGRvd25UYXNrLT5j
b21wbGV0ZVJlcXVlc3QodHlwZSk7CiAKQEAgLTE4Niw2ICsxODUsOCBAQCB2b2lkIFVuaXF1ZUlE
QkRhdGFiYXNlOjpkaWRTaHV0ZG93bkJhY2tpbmdTdG9yZShVbmlxdWVJREJEYXRhYmFzZVNodXRk
b3duVHlwZSB0eQogCiB2b2lkIFVuaXF1ZUlEQkRhdGFiYXNlOjpkZWxldGVEYXRhYmFzZShzdGQ6
OmZ1bmN0aW9uPHZvaWQoYm9vbCk+IHN1Y2Nlc3NDYWxsYmFjaykKIHsKKyAgICBBU1NFUlQoaXNN
YWluVGhyZWFkKCkpOworCiAgICAgaWYgKCFtX2FjY2VwdGluZ05ld1JlcXVlc3RzKSB7CiAgICAg
ICAgIC8vIFNvbWVvbmUgZWxzZSBoYXMgYWxyZWFkeSBzaHV0ZG93biB0aGlzIGRhdGFiYXNlLCBz
byB3ZSBjYW4ndCByZXF1ZXN0IGEgZGVsZXRlLgogICAgICAgICBjYWxsT25NYWluVGhyZWFkKFtz
dWNjZXNzQ2FsbGJhY2tdKCkgewpAQCAtMTA5MywxOCArMTA5NCwyOCBAQCB2b2lkIFVuaXF1ZUlE
QkRhdGFiYXNlOjpwZXJmb3JtTmV4dE1haW5UaHJlYWRUYXNrKCkKICAgICAvLyBCYWxhbmNlZCBi
eSBhIHJlZigpIGluIDo6cG9zdE1haW5UaHJlYWRUYXNrCiAgICAgUmVmUHRyPFVuaXF1ZUlEQkRh
dGFiYXNlPiBwcm90ZWN0b3IoYWRvcHRSZWYodGhpcykpOwogCisgICAgcGVyZm9ybU5leHRNYWlu
VGhyZWFkVGFza1dpdGhvdXRBZG9wdFJlZigpOworfQorCitib29sIFVuaXF1ZUlEQkRhdGFiYXNl
OjpwZXJmb3JtTmV4dE1haW5UaHJlYWRUYXNrV2l0aG91dEFkb3B0UmVmKCkKK3sKKyAgICBib29s
IG1vcmVUYXNrczsKKwogICAgIHN0ZDo6dW5pcXVlX3B0cjxBc3luY1Rhc2s+IHRhc2s7CiAgICAg
ewogICAgICAgICBNdXRleExvY2tlciBsb2NrZXIobV9tYWluVGhyZWFkVGFza011dGV4KTsKIAog
ICAgICAgICAvLyBUaGlzIGRhdGFiYXNlIG1pZ2h0IGJlIHNodXR0aW5nIGRvd24sIGluIHdoaWNo
IGNhc2UgdGhlIHRhc2sgcXVldWUgbWlnaHQgYmUgZW1wdHkuCiAgICAgICAgIGlmIChtX21haW5U
aHJlYWRUYXNrcy5pc0VtcHR5KCkpCi0gICAgICAgICAgICByZXR1cm47CisgICAgICAgICAgICBy
ZXR1cm4gZmFsc2U7CiAKICAgICAgICAgdGFzayA9IG1fbWFpblRocmVhZFRhc2tzLnRha2VGaXJz
dCgpOworICAgICAgICBtb3JlVGFza3MgPSAhbV9tYWluVGhyZWFkVGFza3MuaXNFbXB0eSgpOwog
ICAgIH0KIAogICAgIHRhc2stPnBlcmZvcm1UYXNrKCk7CisKKyAgICByZXR1cm4gbW9yZVRhc2tz
OwogfQogCiB2b2lkIFVuaXF1ZUlEQkRhdGFiYXNlOjpwb3N0RGF0YWJhc2VUYXNrKHN0ZDo6dW5p
cXVlX3B0cjxBc3luY1Rhc2s+IHRhc2ssIERhdGFiYXNlVGFza1R5cGUgdGFza1R5cGUpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9EYXRhYmFzZVByb2Nlc3MvSW5kZXhlZERCL1VuaXF1ZUlE
QkRhdGFiYXNlLmggYi9Tb3VyY2UvV2ViS2l0Mi9EYXRhYmFzZVByb2Nlc3MvSW5kZXhlZERCL1Vu
aXF1ZUlEQkRhdGFiYXNlLmgKaW5kZXggZmRiNDA0Yy4uZTk2MzYzMiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdDIvRGF0YWJhc2VQcm9jZXNzL0luZGV4ZWREQi9VbmlxdWVJREJEYXRhYmFzZS5o
CisrKyBiL1NvdXJjZS9XZWJLaXQyL0RhdGFiYXNlUHJvY2Vzcy9JbmRleGVkREIvVW5pcXVlSURC
RGF0YWJhc2UuaApAQCAtMTY1LDYgKzE2NSw3IEBAIHByaXZhdGU6CiAKICAgICAvLyBDYWxsYmFj
a3MgZnJvbSB0aGUgZGF0YWJhc2Ugd29ya3F1ZXVlIHRocmVhZCwgdG8gYmUgcGVyZm9ybWVkIG9u
IHRoZSBtYWluIHRocmVhZCBvbmx5CiAgICAgdm9pZCBwZXJmb3JtTmV4dE1haW5UaHJlYWRUYXNr
KCk7CisgICAgYm9vbCBwZXJmb3JtTmV4dE1haW5UaHJlYWRUYXNrV2l0aG91dEFkb3B0UmVmKCk7
CiAgICAgdm9pZCBkaWRPcGVuQmFja2luZ1N0b3JlQW5kUmVhZE1ldGFkYXRhKGNvbnN0IFdlYkNv
cmU6OklEQkRhdGFiYXNlTWV0YWRhdGEmLCBib29sIHN1Y2Nlc3MpOwogICAgIHZvaWQgZGlkQ29t
cGxldGVUcmFuc2FjdGlvbk9wZXJhdGlvbihjb25zdCBJREJJZGVudGlmaWVyJiB0cmFuc2FjdGlv
bklkZW50aWZpZXIsIGJvb2wgc3VjY2Vzcyk7CiAgICAgdm9pZCBkaWRDaGFuZ2VEYXRhYmFzZVZl
cnNpb24odWludDY0X3QgcmVxdWVzdElELCBib29sIHN1Y2Nlc3MpOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdDIvRGF0YWJhc2VQcm9jZXNzL0luZGV4ZWREQi9zcWxpdGUvVW5pcXVlSURCRGF0
YWJhc2VCYWNraW5nU3RvcmVTUUxpdGUuY3BwIGIvU291cmNlL1dlYktpdDIvRGF0YWJhc2VQcm9j
ZXNzL0luZGV4ZWREQi9zcWxpdGUvVW5pcXVlSURCRGF0YWJhc2VCYWNraW5nU3RvcmVTUUxpdGUu
Y3BwCmluZGV4IDNlZGY0NmMuLjczZTU2MjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0Rh
dGFiYXNlUHJvY2Vzcy9JbmRleGVkREIvc3FsaXRlL1VuaXF1ZUlEQkRhdGFiYXNlQmFja2luZ1N0
b3JlU1FMaXRlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9EYXRhYmFzZVByb2Nlc3MvSW5kZXhl
ZERCL3NxbGl0ZS9VbmlxdWVJREJEYXRhYmFzZUJhY2tpbmdTdG9yZVNRTGl0ZS5jcHAKQEAgLTc0
LDYgKzc0LDEyIEBAIFVuaXF1ZUlEQkRhdGFiYXNlQmFja2luZ1N0b3JlU1FMaXRlOjp+VW5pcXVl
SURCRGF0YWJhc2VCYWNraW5nU3RvcmVTUUxpdGUoKQogCiAgICAgbV90cmFuc2FjdGlvbnMuY2xl
YXIoKTsKICAgICBtX3NxbGl0ZURCID0gbnVsbHB0cjsKKworICAgIGlmIChtX3ZtKSB7CisgICAg
ICAgIEpTTG9ja0hvbGRlciBsb2NrSG9sZGVyKEpTTG9ja0hvbGRlcihtX3ZtLmdldCgpKSk7Cisg
ICAgICAgIG1fZ2xvYmFsT2JqZWN0LmNsZWFyKCk7CisgICAgICAgIG1fdm0gPSBudWxscHRyOwor
ICAgIH0KIH0KIAogc3RkOjp1bmlxdWVfcHRyPElEQkRhdGFiYXNlTWV0YWRhdGE+IFVuaXF1ZUlE
QkRhdGFiYXNlQmFja2luZ1N0b3JlU1FMaXRlOjpjcmVhdGVBbmRQb3B1bGF0ZUluaXRpYWxNZXRh
ZGF0YSgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL0RhdGFiYXNlcy9J
bmRleGVkREIvV2ViSURCU2VydmVyQ29ubmVjdGlvbi5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL0RhdGFiYXNlcy9JbmRleGVkREIvV2ViSURCU2VydmVyQ29ubmVjdGlvbi5jcHAKaW5k
ZXggMDFjOTYxMi4uZGU5MGY5OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9EYXRhYmFzZXMvSW5kZXhlZERCL1dlYklEQlNlcnZlckNvbm5lY3Rpb24uY3BwCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvRGF0YWJhc2VzL0luZGV4ZWREQi9XZWJJREJTZXJ2ZXJD
b25uZWN0aW9uLmNwcApAQCAtMTQ0LDYgKzE0NCwxNSBAQCB2b2lkIFdlYklEQlNlcnZlckNvbm5l
Y3Rpb246OmRpZEdldE9yRXN0YWJsaXNoSURCRGF0YWJhc2VNZXRhZGF0YSh1aW50NjRfdCByZXF1
ZQogCiB2b2lkIFdlYklEQlNlcnZlckNvbm5lY3Rpb246OmNsb3NlKCkKIHsKKyAgICBMT0coSURC
LCAiV2ViUHJvY2VzcyBjbG9zZSIpOworCisgICAgUmVmUHRyPFdlYklEQlNlcnZlckNvbm5lY3Rp
b24+IHByb3RlY3Rvcih0aGlzKTsKKworICAgIGZvciAoYXV0byYgcmVxdWVzdCA6IG1fc2VydmVy
UmVxdWVzdHMpCisgICAgICAgIHJlcXVlc3QudmFsdWUtPnJlcXVlc3RBYm9ydGVkKCk7CisgICAg
bV9zZXJ2ZXJSZXF1ZXN0cy5jbGVhcigpOworCisgICAgc2VuZChNZXNzYWdlczo6RGF0YWJhc2VQ
cm9jZXNzSURCQ29ubmVjdGlvbjo6Q2xvc2UoKSk7CiB9CiAKIHZvaWQgV2ViSURCU2VydmVyQ29u
bmVjdGlvbjo6b3BlblRyYW5zYWN0aW9uKGludDY0X3QgdHJhbnNhY3Rpb25JRCwgY29uc3QgSGFz
aFNldDxpbnQ2NF90PiYgb2JqZWN0U3RvcmVJRHMsIEluZGV4ZWREQjo6VHJhbnNhY3Rpb25Nb2Rl
IG1vZGUsIEJvb2xDYWxsYmFja0Z1bmN0aW9uIHN1Y2Nlc3NDYWxsYmFjaykK
</data>
<flag name="review"
          id="247810"
          type_id="1"
          status="+"
          setter="thorton"
    />
          </attachment>
      

    </bug>

</bugzilla>