<?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>154686</bug_id>
          
          <creation_ts>2016-02-25 11:56:59 -0800</creation_ts>
          <short_desc>Modern IDB: Reimplement Web Inspector code that was tied to Legacy IDB</short_desc>
          <delta_ts>2016-04-28 11:47:07 -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>Web Inspector</component>
          <version>Safari 9</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>157072</dependson>
          <blocked>149117</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Brady Eidson">beidson</reporter>
          <assigned_to name="Brady Eidson">beidson</assigned_to>
          <cc>bburg</cc>
    
    <cc>commit-queue</cc>
    
    <cc>graouts</cc>
    
    <cc>joepeck</cc>
    
    <cc>mattbaker</cc>
    
    <cc>nvasilyev</cc>
    
    <cc>timothy</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1168171</commentid>
    <comment_count>0</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2016-02-25 11:56:59 -0800</bug_when>
    <thetext>Modern IDB: Reimplement Web Inspector code that was tied to Legacy IDB

Modern IDB was enabled for both WK1 and WK2 in http://trac.webkit.org/changeset/197122

The Web Inspector code that relies on Legacy IDB constructs is now dead.

It will be pruned further in https://bugs.webkit.org/show_bug.cgi?id=150854

It needs to be reimplemented for Modern IDB.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1168172</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2016-02-25 11:57:12 -0800</bug_when>
    <thetext>&lt;rdar://problem/24842865&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1187536</commentid>
    <comment_count>2</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2016-04-26 15:12:48 -0700</bug_when>
    <thetext>I&apos;m reimplementing getDatabaseNames now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1187763</commentid>
    <comment_count>3</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2016-04-27 09:14:37 -0700</bug_when>
    <thetext>getAllDatabaseNames is just part of this, so I spun it off into its own bug: https://bugs.webkit.org/show_bug.cgi?id=157072</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1188140</commentid>
    <comment_count>4</comment_count>
      <attachid>277594</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2016-04-27 22:47:38 -0700</bug_when>
    <thetext>Created attachment 277594
Patch v1

This patch hooks up all the previous functionality that had been removed in r197131

It gets database info, object store info, and index info, and shows them in the tables off to the side.

However, the DataLoader and ClearObjectStore functionality do not work.

The reason is that the code doesn&apos;t wait for the IDBTransaction created to actually become active.

I won&apos;t have time to re-architect this to that end.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1188315</commentid>
    <comment_count>5</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2016-04-28 11:13:23 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; Created attachment 277594 [details]
&gt; 
&gt; However, the DataLoader and ClearObjectStore functionality do not work.
&gt; 
&gt; The reason is that the code doesn&apos;t wait for the IDBTransaction created to
&gt; actually become active.


This actually seems odd, as transactions are supposed to start out active.

I&apos;ll look into this outside of this patch landing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1188332</commentid>
    <comment_count>6</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2016-04-28 11:45:17 -0700</bug_when>
    <thetext>As EWS shows, this patch was good when uploaded.
http://trac.webkit.org/changeset/200192 broke it.

I&apos;ll update to match then land manually.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1188333</commentid>
    <comment_count>7</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2016-04-28 11:47:07 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/200202</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>277594</attachid>
            <date>2016-04-27 22:47:38 -0700</date>
            <delta_ts>2016-04-28 11:45:24 -0700</delta_ts>
            <desc>Patch v1</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>9945</size>
            <attacher name="Brady Eidson">beidson</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA4YWIzMzlmLi5iN2MyOTIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsMTcg
QEAKIDIwMTYtMDQtMjcgIEJyYWR5IEVpZHNvbiAgPGJlaWRzb25AYXBwbGUuY29tPgogCisgICAg
ICAgIE1vZGVybiBJREI6IFJlaW1wbGVtZW50IFdlYiBJbnNwZWN0b3IgY29kZSB0aGF0IHdhcyB0
aWVkIHRvIExlZ2FjeSBJREIuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xNTQ2ODYKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBObyBuZXcgdGVzdHMgKEluc3BlY3RvciBmb2xrcyB3aWxsIGhhdmUgdG8gd3Jp
dGUgdGhlbSBpZiB0aGV5J3JlIHBvc3NpYmxlKS4KKworICAgICAgICAqIGluc3BlY3Rvci9JbnNw
ZWN0b3JJbmRleGVkREJBZ2VudC5jcHA6IFJlaW1wbGVtZW50IG1pc3NpbmcgZnVuY3Rpb25hbGl0
eSBtb3N0bHkgd2l0aCBjb2RlIHRoYXQgd2FzIAorICAgICAgICAgIHJlbW92ZWQgaW4gaHR0cDov
L3RyYWMud2Via2l0Lm9yZy9jaGFuZ2VzZXQvMTk3MTMxL3RydW5rL1NvdXJjZS9XZWJDb3JlL2lu
c3BlY3Rvci9JbnNwZWN0b3JJbmRleGVkREJBZ2VudC5jcHAKKworMjAxNi0wNC0yNyAgQnJhZHkg
RWlkc29uICA8YmVpZHNvbkBhcHBsZS5jb20+CisKICAgICAgICAgQnVpbGQgZml4IGZvbGxvd3Vw
IHRvIHIyMDAxNjMKICAgICAgICAgCiAgICAgICAgIFVucmV2aWV3ZWQuCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9ySW5kZXhlZERCQWdlbnQuY3BwIGIvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckluZGV4ZWREQkFnZW50LmNwcAppbmRleCA1
NjkzMjdhLi43NWEyMDkwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5z
cGVjdG9ySW5kZXhlZERCQWdlbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9J
bnNwZWN0b3JJbmRleGVkREJBZ2VudC5jcHAKQEAgLTk2LDcgKzk2LDcgQEAgcHVibGljOgogICAg
ICAgICA6IG1fY29udGV4dChjb250ZXh0KSB7IH0KICAgICB2aXJ0dWFsIH5FeGVjdXRhYmxlV2l0
aERhdGFiYXNlKCkgeyB9OwogICAgIHZvaWQgc3RhcnQoSURCRmFjdG9yeSosIFNlY3VyaXR5T3Jp
Z2luKiwgY29uc3QgU3RyaW5nJiBkYXRhYmFzZU5hbWUpOwotICAgIHZpcnR1YWwgdm9pZCBleGVj
dXRlKCkgPSAwOworICAgIHZpcnR1YWwgdm9pZCBleGVjdXRlKElEQkRhdGFiYXNlJikgPSAwOwog
ICAgIHZpcnR1YWwgUmVxdWVzdENhbGxiYWNrJiByZXF1ZXN0Q2FsbGJhY2soKSA9IDA7CiAgICAg
U2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCgpIHsgcmV0dXJuIG1fY29udGV4dDsgfTsK
IHByaXZhdGU6CkBAIC0xMzUsOSArMTM1LDggQEAgcHVibGljOgogICAgICAgICAgICAgcmV0dXJu
OwogICAgICAgICB9CiAKLSAgICAgICAgLy8gRklYTUUgKHdlYmtpdC5vcmcvYi8xNTQ2ODYpIC0g
UmVpbXBsZW1lbnQgdGhpcy4KLSAgICAgICAgbV9leGVjdXRhYmxlV2l0aERhdGFiYXNlLT5yZXF1
ZXN0Q2FsbGJhY2soKS5zZW5kRmFpbHVyZSgiTW9kZXJuIElEQiBpcyBub3Qgc3VwcG9ydGVkIHll
dCIpOwotICAgICAgICByZXR1cm47CisgICAgICAgIG1fZXhlY3V0YWJsZVdpdGhEYXRhYmFzZS0+
ZXhlY3V0ZSgqZGF0YWJhc2VSZXN1bHQpOworICAgICAgICBkYXRhYmFzZVJlc3VsdC0+Y2xvc2Uo
KTsKICAgICB9CiAKIHByaXZhdGU6CkBAIC0xNjUsNiArMTY0LDY3IEBAIHZvaWQgRXhlY3V0YWJs
ZVdpdGhEYXRhYmFzZTo6c3RhcnQoSURCRmFjdG9yeSogaWRiRmFjdG9yeSwgU2VjdXJpdHlPcmln
aW4qLCBjb25zCiAgICAgaWRiT3BlbkRCUmVxdWVzdC0+YWRkRXZlbnRMaXN0ZW5lcihldmVudE5h
bWVzKCkuc3VjY2Vzc0V2ZW50LCBXVEZNb3ZlKGNhbGxiYWNrKSwgZmFsc2UpOwogfQogCisKK3N0
YXRpYyBSZWZQdHI8S2V5UGF0aD4ga2V5UGF0aEZyb21JREJLZXlQYXRoKGNvbnN0IElEQktleVBh
dGgmIGlkYktleVBhdGgpCit7CisgICAgUmVmUHRyPEtleVBhdGg+IGtleVBhdGg7CisgICAgc3dp
dGNoIChpZGJLZXlQYXRoLnR5cGUoKSkgeworICAgIGNhc2UgSW5kZXhlZERCOjpLZXlQYXRoVHlw
ZTo6TnVsbDoKKyAgICAgICAga2V5UGF0aCA9IEtleVBhdGg6OmNyZWF0ZSgpCisgICAgICAgICAg
ICAuc2V0VHlwZShLZXlQYXRoOjpUeXBlOjpOdWxsKQorICAgICAgICAgICAgLnJlbGVhc2UoKTsK
KyAgICAgICAgYnJlYWs7CisgICAgY2FzZSBJbmRleGVkREI6OktleVBhdGhUeXBlOjpTdHJpbmc6
CisgICAgICAgIGtleVBhdGggPSBLZXlQYXRoOjpjcmVhdGUoKQorICAgICAgICAgICAgLnNldFR5
cGUoS2V5UGF0aDo6VHlwZTo6U3RyaW5nKQorICAgICAgICAgICAgLnJlbGVhc2UoKTsKKyAgICAg
ICAga2V5UGF0aC0+c2V0U3RyaW5nKGlkYktleVBhdGguc3RyaW5nKCkpOworCisgICAgICAgIGJy
ZWFrOworICAgIGNhc2UgSW5kZXhlZERCOjpLZXlQYXRoVHlwZTo6QXJyYXk6IHsKKyAgICAgICAg
YXV0byBhcnJheSA9IEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFycmF5PFN0cmluZz46OmNyZWF0ZSgp
OworICAgICAgICBmb3IgKGF1dG8mIHN0cmluZyA6IGlkYktleVBhdGguYXJyYXkoKSkKKyAgICAg
ICAgICAgIGFycmF5LT5hZGRJdGVtKHN0cmluZyk7CisgICAgICAgIGtleVBhdGggPSBLZXlQYXRo
OjpjcmVhdGUoKQorICAgICAgICAgICAgLnNldFR5cGUoS2V5UGF0aDo6VHlwZTo6QXJyYXkpCisg
ICAgICAgICAgICAucmVsZWFzZSgpOworICAgICAgICBrZXlQYXRoLT5zZXRBcnJheShXVEZNb3Zl
KGFycmF5KSk7CisgICAgICAgIGJyZWFrOworICAgIH0KKyAgICBkZWZhdWx0OgorICAgICAgICBB
U1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICB9CisKKyAgICByZXR1cm4ga2V5UGF0aDsKK30KKwor
c3RhdGljIFJlZlB0cjxJREJUcmFuc2FjdGlvbj4gdHJhbnNhY3Rpb25Gb3JEYXRhYmFzZShTY3Jp
cHRFeGVjdXRpb25Db250ZXh0KiBzY3JpcHRFeGVjdXRpb25Db250ZXh0LCBJREJEYXRhYmFzZSog
aWRiRGF0YWJhc2UsIGNvbnN0IFN0cmluZyYgb2JqZWN0U3RvcmVOYW1lLCBjb25zdCBTdHJpbmcm
IG1vZGUgPSBJREJUcmFuc2FjdGlvbjo6bW9kZVJlYWRPbmx5KCkpCit7CisgICAgRXhjZXB0aW9u
Q29kZVdpdGhNZXNzYWdlIGVjOworICAgIFJlZlB0cjxJREJUcmFuc2FjdGlvbj4gaWRiVHJhbnNh
Y3Rpb24gPSBpZGJEYXRhYmFzZS0+dHJhbnNhY3Rpb24oc2NyaXB0RXhlY3V0aW9uQ29udGV4dCwg
b2JqZWN0U3RvcmVOYW1lLCBtb2RlLCBlYyk7CisgICAgaWYgKGVjLmNvZGUpCisgICAgICAgIHJl
dHVybiBudWxscHRyOworICAgIHJldHVybiBpZGJUcmFuc2FjdGlvbjsKK30KKworc3RhdGljIFJl
ZlB0cjxJREJPYmplY3RTdG9yZT4gb2JqZWN0U3RvcmVGb3JUcmFuc2FjdGlvbihJREJUcmFuc2Fj
dGlvbiogaWRiVHJhbnNhY3Rpb24sIGNvbnN0IFN0cmluZyYgb2JqZWN0U3RvcmVOYW1lKQorewor
ICAgIEV4Y2VwdGlvbkNvZGVXaXRoTWVzc2FnZSBlYzsKKyAgICBSZWZQdHI8SURCT2JqZWN0U3Rv
cmU+IGlkYk9iamVjdFN0b3JlID0gaWRiVHJhbnNhY3Rpb24tPm9iamVjdFN0b3JlKG9iamVjdFN0
b3JlTmFtZSwgZWMpOworICAgIGlmIChlYy5jb2RlKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsK
KyAgICByZXR1cm4gaWRiT2JqZWN0U3RvcmU7Cit9CisKK3N0YXRpYyBSZWZQdHI8SURCSW5kZXg+
IGluZGV4Rm9yT2JqZWN0U3RvcmUoSURCT2JqZWN0U3RvcmUqIGlkYk9iamVjdFN0b3JlLCBjb25z
dCBTdHJpbmcmIGluZGV4TmFtZSkKK3sKKyAgICBFeGNlcHRpb25Db2RlV2l0aE1lc3NhZ2UgZWM7
CisgICAgUmVmUHRyPElEQkluZGV4PiBpZGJJbmRleCA9IGlkYk9iamVjdFN0b3JlLT5pbmRleChp
bmRleE5hbWUsIGVjKTsKKyAgICBpZiAoZWMuY29kZSkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7
CisgICAgcmV0dXJuIGlkYkluZGV4OworfQorCiBjbGFzcyBEYXRhYmFzZUxvYWRlciA6IHB1Ymxp
YyBFeGVjdXRhYmxlV2l0aERhdGFiYXNlIHsKIHB1YmxpYzoKICAgICBzdGF0aWMgUmVmPERhdGFi
YXNlTG9hZGVyPiBjcmVhdGUoU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgUmVmPFJl
cXVlc3REYXRhYmFzZUNhbGxiYWNrPiYmIHJlcXVlc3RDYWxsYmFjaykKQEAgLTE3NCwxMiArMjM0
LDQ4IEBAIHB1YmxpYzoKIAogICAgIHZpcnR1YWwgfkRhdGFiYXNlTG9hZGVyKCkgeyB9CiAKLSAg
ICB2b2lkIGV4ZWN1dGUoKSBvdmVycmlkZQorICAgIHZvaWQgZXhlY3V0ZShJREJEYXRhYmFzZSYg
ZGF0YWJhc2UpIG92ZXJyaWRlCiAgICAgewogICAgICAgICBpZiAoIXJlcXVlc3RDYWxsYmFjaygp
LmlzQWN0aXZlKCkpCiAgICAgICAgICAgICByZXR1cm47Ci0KLSAgICAgICAgLy8gRklYTUUgKHdl
YmtpdC5vcmcvYi8xNTQ2ODYpIC0gUmVpbXBsZW1lbnQgdGhpcy4KKyAgICAKKyAgICAgICAgYXV0
byYgZGF0YWJhc2VJbmZvID0gZGF0YWJhc2UuaW5mbygpOworICAgICAgICBhdXRvIG9iamVjdFN0
b3JlcyA9IEluc3BlY3Rvcjo6UHJvdG9jb2w6OkFycmF5PEluc3BlY3Rvcjo6UHJvdG9jb2w6Oklu
ZGV4ZWREQjo6T2JqZWN0U3RvcmU+OjpjcmVhdGUoKTsKKyAgICAgICAgYXV0byBvYmplY3RTdG9y
ZU5hbWVzID0gZGF0YWJhc2VJbmZvLm9iamVjdFN0b3JlTmFtZXMoKTsKKyAgICAgICAgZm9yIChh
dXRvJiBuYW1lIDogb2JqZWN0U3RvcmVOYW1lcykgeworICAgICAgICAgICAgYXV0byogb2JqZWN0
U3RvcmVJbmZvID0gZGF0YWJhc2VJbmZvLmluZm9Gb3JFeGlzdGluZ09iamVjdFN0b3JlKG5hbWUp
OworICAgICAgICAgICAgaWYgKCFvYmplY3RTdG9yZUluZm8pCisgICAgICAgICAgICAgICAgY29u
dGludWU7CisKKyAgICAgICAgICAgIGF1dG8gaW5kZXhlcyA9IEluc3BlY3Rvcjo6UHJvdG9jb2w6
OkFycmF5PEluc3BlY3Rvcjo6UHJvdG9jb2w6OkluZGV4ZWREQjo6T2JqZWN0U3RvcmVJbmRleD46
OmNyZWF0ZSgpOworICAgIAorICAgICAgICAgICAgZm9yIChhdXRvJiBpbmRleEluZm8gOiBvYmpl
Y3RTdG9yZUluZm8tPmluZGV4TWFwKCkudmFsdWVzKCkpIHsKKyAgICAgICAgICAgICAgICBSZWY8
T2JqZWN0U3RvcmVJbmRleD4gb2JqZWN0U3RvcmVJbmRleCA9IE9iamVjdFN0b3JlSW5kZXg6OmNy
ZWF0ZSgpCisgICAgICAgICAgICAgICAgICAgIC5zZXROYW1lKGluZGV4SW5mby5uYW1lKCkpCisg
ICAgICAgICAgICAgICAgICAgIC5zZXRLZXlQYXRoKGtleVBhdGhGcm9tSURCS2V5UGF0aChpbmRl
eEluZm8ua2V5UGF0aCgpKSkKKyAgICAgICAgICAgICAgICAgICAgLnNldFVuaXF1ZShpbmRleElu
Zm8udW5pcXVlKCkpCisgICAgICAgICAgICAgICAgICAgIC5zZXRNdWx0aUVudHJ5KGluZGV4SW5m
by5tdWx0aUVudHJ5KCkpCisgICAgICAgICAgICAgICAgICAgIC5yZWxlYXNlKCk7CisgICAgICAg
ICAgICAgICAgaW5kZXhlcy0+YWRkSXRlbShXVEZNb3ZlKG9iamVjdFN0b3JlSW5kZXgpKTsKKyAg
ICAgICAgICAgIH0KKyAgICAKKyAgICAgICAgICAgIFJlZjxPYmplY3RTdG9yZT4gb2JqZWN0U3Rv
cmUgPSBPYmplY3RTdG9yZTo6Y3JlYXRlKCkKKyAgICAgICAgICAgICAgICAuc2V0TmFtZShvYmpl
Y3RTdG9yZUluZm8tPm5hbWUoKSkKKyAgICAgICAgICAgICAgICAuc2V0S2V5UGF0aChrZXlQYXRo
RnJvbUlEQktleVBhdGgob2JqZWN0U3RvcmVJbmZvLT5rZXlQYXRoKCkpKQorICAgICAgICAgICAg
ICAgIC5zZXRBdXRvSW5jcmVtZW50KG9iamVjdFN0b3JlSW5mby0+YXV0b0luY3JlbWVudCgpKQor
ICAgICAgICAgICAgICAgIC5zZXRJbmRleGVzKFdURk1vdmUoaW5kZXhlcykpCisgICAgICAgICAg
ICAgICAgLnJlbGVhc2UoKTsKKyAgICAgICAgCisgICAgICAgICAgICBvYmplY3RTdG9yZXMtPmFk
ZEl0ZW0oV1RGTW92ZShvYmplY3RTdG9yZSkpOworICAgICAgICB9CisgICAgCisgICAgICAgIFJl
ZjxEYXRhYmFzZVdpdGhPYmplY3RTdG9yZXM+IHJlc3VsdCA9IERhdGFiYXNlV2l0aE9iamVjdFN0
b3Jlczo6Y3JlYXRlKCkKKyAgICAgICAgICAgIC5zZXROYW1lKGRhdGFiYXNlSW5mby5uYW1lKCkp
CisgICAgICAgICAgICAuc2V0VmVyc2lvbihkYXRhYmFzZUluZm8udmVyc2lvbigpKQorICAgICAg
ICAgICAgLnNldE9iamVjdFN0b3JlcyhXVEZNb3ZlKG9iamVjdFN0b3JlcykpCisgICAgICAgICAg
ICAucmVsZWFzZSgpOworICAgICAgICAKKyAgICAgICAgbV9yZXF1ZXN0Q2FsbGJhY2stPnNlbmRT
dWNjZXNzKFdURk1vdmUocmVzdWx0KSk7CiAgICAgfQogCiAgICAgUmVxdWVzdENhbGxiYWNrJiBy
ZXF1ZXN0Q2FsbGJhY2soKSBvdmVycmlkZSB7IHJldHVybiBtX3JlcXVlc3RDYWxsYmFjay5nZXQo
KTsgfQpAQCAtMzcyLDEyICs0NjgsNDIgQEAgcHVibGljOgogCiAgICAgdmlydHVhbCB+RGF0YUxv
YWRlcigpIHsgfQogCi0gICAgdm9pZCBleGVjdXRlKCkgb3ZlcnJpZGUKKyAgICB2b2lkIGV4ZWN1
dGUoSURCRGF0YWJhc2UmIGRhdGFiYXNlKSBvdmVycmlkZQogICAgIHsKICAgICAgICAgaWYgKCFy
ZXF1ZXN0Q2FsbGJhY2soKS5pc0FjdGl2ZSgpKQogICAgICAgICAgICAgcmV0dXJuOworICAgICAg
ICBSZWZQdHI8SURCVHJhbnNhY3Rpb24+IGlkYlRyYW5zYWN0aW9uID0gdHJhbnNhY3Rpb25Gb3JE
YXRhYmFzZShjb250ZXh0KCksICZkYXRhYmFzZSwgbV9vYmplY3RTdG9yZU5hbWUpOworICAgICAg
ICBpZiAoIWlkYlRyYW5zYWN0aW9uKSB7CisgICAgICAgICAgICBtX3JlcXVlc3RDYWxsYmFjay0+
c2VuZEZhaWx1cmUoIkNvdWxkIG5vdCBnZXQgdHJhbnNhY3Rpb24iKTsKKyAgICAgICAgICAgIHJl
dHVybjsKKyAgICAgICAgfQorICAgICAgICBSZWZQdHI8SURCT2JqZWN0U3RvcmU+IGlkYk9iamVj
dFN0b3JlID0gb2JqZWN0U3RvcmVGb3JUcmFuc2FjdGlvbihpZGJUcmFuc2FjdGlvbi5nZXQoKSwg
bV9vYmplY3RTdG9yZU5hbWUpOworICAgICAgICBpZiAoIWlkYk9iamVjdFN0b3JlKSB7CisgICAg
ICAgICAgICBtX3JlcXVlc3RDYWxsYmFjay0+c2VuZEZhaWx1cmUoIkNvdWxkIG5vdCBnZXQgb2Jq
ZWN0IHN0b3JlIik7CisgICAgICAgICAgICByZXR1cm47CisgICAgICAgIH0KKworICAgICAgICBS
ZWY8T3BlbkN1cnNvckNhbGxiYWNrPiBvcGVuQ3Vyc29yQ2FsbGJhY2sgPSBPcGVuQ3Vyc29yQ2Fs
bGJhY2s6OmNyZWF0ZShtX2luamVjdGVkU2NyaXB0LCBtX3JlcXVlc3RDYWxsYmFjay5jb3B5UmVm
KCksIDAsIG1fcGFnZVNpemUpOworCisgICAgICAgIEV4Y2VwdGlvbkNvZGVXaXRoTWVzc2FnZSBl
YzsKKyAgICAgICAgUmVmUHRyPElEQlJlcXVlc3Q+IGlkYlJlcXVlc3Q7CisgICAgICAgIGlmICgh
bV9pbmRleE5hbWUuaXNFbXB0eSgpKSB7CisgICAgICAgICAgICBSZWZQdHI8SURCSW5kZXg+IGlk
YkluZGV4ID0gaW5kZXhGb3JPYmplY3RTdG9yZShpZGJPYmplY3RTdG9yZS5nZXQoKSwgbV9pbmRl
eE5hbWUpOworICAgICAgICAgICAgaWYgKCFpZGJJbmRleCkgeworICAgICAgICAgICAgICAgIG1f
cmVxdWVzdENhbGxiYWNrLT5zZW5kRmFpbHVyZSgiQ291bGQgbm90IGdldCBpbmRleCIpOworICAg
ICAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgaWRiUmVx
dWVzdCA9IGlkYkluZGV4LT5vcGVuQ3Vyc29yKCpjb250ZXh0KCksIG1faWRiS2V5UmFuZ2UuZ2V0
KCksIGVjKTsKKyAgICAgICAgfSBlbHNlCisgICAgICAgICAgICBpZGJSZXF1ZXN0ID0gaWRiT2Jq
ZWN0U3RvcmUtPm9wZW5DdXJzb3IoKmNvbnRleHQoKSwgbV9pZGJLZXlSYW5nZS5nZXQoKSwgZWMp
OworCisgICAgICAgIGlmICghaWRiUmVxdWVzdCkgeworICAgICAgICAgICAgbV9yZXF1ZXN0Q2Fs
bGJhY2stPnNlbmRGYWlsdXJlKCJDb3VsZCBub3Qgb3BlbiBjdXJzb3IgdG8gcG9wdWxhdGUgZGF0
YWJhc2UgZGF0YSIpOworICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CiAKLSAgICAgICAg
Ly8gRklYTUUgKHdlYmtpdC5vcmcvYi8xNTQ2ODYpIC0gUmVpbXBsZW1lbnQgdGhpcy4KKyAgICAg
ICAgaWRiUmVxdWVzdC0+YWRkRXZlbnRMaXN0ZW5lcihldmVudE5hbWVzKCkuc3VjY2Vzc0V2ZW50
LCBXVEZNb3ZlKG9wZW5DdXJzb3JDYWxsYmFjayksIGZhbHNlKTsKICAgICB9CiAKICAgICBSZXF1
ZXN0Q2FsbGJhY2smIHJlcXVlc3RDYWxsYmFjaygpIG92ZXJyaWRlIHsgcmV0dXJuIG1fcmVxdWVz
dENhbGxiYWNrLmdldCgpOyB9CkBAIC01NjAsNyArNjg2LDYgQEAgcHJpdmF0ZToKICAgICBSZWY8
Q2xlYXJPYmplY3RTdG9yZUNhbGxiYWNrPiBtX3JlcXVlc3RDYWxsYmFjazsKIH07CiAKLQogY2xh
c3MgQ2xlYXJPYmplY3RTdG9yZSA6IHB1YmxpYyBFeGVjdXRhYmxlV2l0aERhdGFiYXNlIHsKIHB1
YmxpYzoKICAgICBzdGF0aWMgUmVmPENsZWFyT2JqZWN0U3RvcmU+IGNyZWF0ZShTY3JpcHRFeGVj
dXRpb25Db250ZXh0KiBjb250ZXh0LCBjb25zdCBTdHJpbmcmIG9iamVjdFN0b3JlTmFtZSwgUmVm
PENsZWFyT2JqZWN0U3RvcmVDYWxsYmFjaz4mJiByZXF1ZXN0Q2FsbGJhY2spCkBAIC01NzUsMTIg
KzcwMCwzMCBAQCBwdWJsaWM6CiAgICAgewogICAgIH0KIAotICAgIHZvaWQgZXhlY3V0ZSgpIG92
ZXJyaWRlCisgICAgdm9pZCBleGVjdXRlKElEQkRhdGFiYXNlJiBkYXRhYmFzZSkgb3ZlcnJpZGUK
ICAgICB7CiAgICAgICAgIGlmICghcmVxdWVzdENhbGxiYWNrKCkuaXNBY3RpdmUoKSkKICAgICAg
ICAgICAgIHJldHVybjsKIAotICAgICAgICAvLyBGSVhNRSAod2Via2l0Lm9yZy9iLzE1NDY4Nikg
LSBSZWltcGxlbWVudCB0aGlzLgorICAgICAgICBSZWZQdHI8SURCVHJhbnNhY3Rpb24+IGlkYlRy
YW5zYWN0aW9uID0gdHJhbnNhY3Rpb25Gb3JEYXRhYmFzZShjb250ZXh0KCksICZkYXRhYmFzZSwg
bV9vYmplY3RTdG9yZU5hbWUpOworICAgICAgICBpZiAoIWlkYlRyYW5zYWN0aW9uKSB7CisgICAg
ICAgICAgICBtX3JlcXVlc3RDYWxsYmFjay0+c2VuZEZhaWx1cmUoIkNvdWxkIG5vdCBnZXQgdHJh
bnNhY3Rpb24iKTsKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgfQorICAgICAgICBSZWZQ
dHI8SURCT2JqZWN0U3RvcmU+IGlkYk9iamVjdFN0b3JlID0gb2JqZWN0U3RvcmVGb3JUcmFuc2Fj
dGlvbihpZGJUcmFuc2FjdGlvbi5nZXQoKSwgbV9vYmplY3RTdG9yZU5hbWUpOworICAgICAgICBp
ZiAoIWlkYk9iamVjdFN0b3JlKSB7CisgICAgICAgICAgICBtX3JlcXVlc3RDYWxsYmFjay0+c2Vu
ZEZhaWx1cmUoIkNvdWxkIG5vdCBnZXQgb2JqZWN0IHN0b3JlIik7CisgICAgICAgICAgICByZXR1
cm47CisgICAgICAgIH0KKworICAgICAgICBFeGNlcHRpb25Db2RlV2l0aE1lc3NhZ2UgZWM7Cisg
ICAgICAgIFJlZlB0cjxJREJSZXF1ZXN0PiBpZGJSZXF1ZXN0ID0gaWRiT2JqZWN0U3RvcmUtPmNs
ZWFyKCpjb250ZXh0KCksIGVjKTsKKyAgICAgICAgQVNTRVJUKCFlYy5jb2RlKTsKKyAgICAgICAg
aWYgKGVjLmNvZGUpIHsKKyAgICAgICAgICAgIG1fcmVxdWVzdENhbGxiYWNrLT5zZW5kRmFpbHVy
ZShTdHJpbmc6OmZvcm1hdCgiQ291bGQgbm90IGNsZWFyIG9iamVjdCBzdG9yZSAnJXMnOiAlZCIs
IG1fb2JqZWN0U3RvcmVOYW1lLnV0ZjgoKS5kYXRhKCksIGVjLmNvZGUpKTsKKyAgICAgICAgICAg
IHJldHVybjsKKyAgICAgICAgfQorICAgICAgICBpZGJUcmFuc2FjdGlvbi0+YWRkRXZlbnRMaXN0
ZW5lcihldmVudE5hbWVzKCkuY29tcGxldGVFdmVudCwgQ2xlYXJPYmplY3RTdG9yZUxpc3RlbmVy
OjpjcmVhdGUobV9yZXF1ZXN0Q2FsbGJhY2suY29weVJlZigpKSwgZmFsc2UpOwogICAgIH0KIAog
ICAgIFJlcXVlc3RDYWxsYmFjayYgcmVxdWVzdENhbGxiYWNrKCkgb3ZlcnJpZGUgeyByZXR1cm4g
bV9yZXF1ZXN0Q2FsbGJhY2suZ2V0KCk7IH0K
</data>
<flag name="review"
          id="301742"
          type_id="1"
          status="+"
          setter="achristensen"
    />
    <flag name="commit-queue"
          id="301785"
          type_id="3"
          status="-"
          setter="beidson"
    />
          </attachment>
      

    </bug>

</bugzilla>