<?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>153800</bug_id>
          
          <creation_ts>2016-02-02 13:40:10 -0800</creation_ts>
          <short_desc>Modern IDB: storage/indexeddb/cursor-primary-key-order.html fails with SQLite backend</short_desc>
          <delta_ts>2016-02-02 16:12:33 -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>WebCore Misc.</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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>149117</blocked>
    
    <blocked>153021</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Brady Eidson">beidson</reporter>
          <assigned_to name="Brady Eidson">beidson</assigned_to>
          <cc>achristensen</cc>
    
    <cc>alecflett</cc>
    
    <cc>commit-queue</cc>
    
    <cc>jsbell</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1161384</commentid>
    <comment_count>0</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2016-02-02 13:40:10 -0800</bug_when>
    <thetext>Modern IDB: storage/indexeddb/cursor-primary-key-order.html fails with SQLite backend

An Index cursor gets integers out of order. It should go:
-Inf, -2, -1, 0, 1, 2, Inf
...But instead it goes:
0, 1, 2, Inf, -1, -2, -Inf

I&apos;ve hard coded some debugging into SQLiteIDBCursor and found that, indeed, just stepping the cursor statement over and over does, in fact, give the out of order results.

This is either a bug in our key comparator, a bug in some SQL queries, or a bug in SQLite.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1161385</commentid>
    <comment_count>1</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2016-02-02 13:44:33 -0800</bug_when>
    <thetext>It&apos;s the statement creating the index record table.

It&apos;s currently:
CREATE TABLE IndexRecords (indexID INTEGER NOT NULL ON CONFLICT FAIL, objectStoreID INTEGER NOT NULL ON CONFLICT FAIL, key TEXT COLLATE IDBKEY NOT NULL ON CONFLICT FAIL, value NOT NULL ON CONFLICT FAIL);

It needs to be:
CREATE TABLE IndexRecords (indexID INTEGER NOT NULL ON CONFLICT FAIL, objectStoreID INTEGER NOT NULL ON CONFLICT FAIL, key TEXT COLLATE IDBKEY NOT NULL ON CONFLICT FAIL, value TEXT COLLATE IDBKEY NOT NULL ON CONFLICT FAIL);

Note the value (which is an IDBKey into the object store) needs IDBKey collation for sorting upon insertion.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1161409</commentid>
    <comment_count>2</comment_count>
      <attachid>270520</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2016-02-02 14:45:09 -0800</bug_when>
    <thetext>Created attachment 270520
Patch v1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1161449</commentid>
    <comment_count>3</comment_count>
      <attachid>270520</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-02-02 16:12:30 -0800</bug_when>
    <thetext>Comment on attachment 270520
Patch v1

Clearing flags on attachment: 270520

Committed r196038: &lt;http://trac.webkit.org/changeset/196038&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1161450</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-02-02 16:12:33 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>270520</attachid>
            <date>2016-02-02 14:45:09 -0800</date>
            <delta_ts>2016-02-02 16:12:30 -0800</delta_ts>
            <desc>Patch v1</desc>
            <filename>patch</filename>
            <type>text/plain</type>
            <size>10013</size>
            <attacher name="Brady Eidson">beidson</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCAwMzFkYjVkLi4zZDNhYmYwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsMTQgQEAKIDIwMTYtMDIt
MDIgIEJyYWR5IEVpZHNvbiAgPGJlaWRzb25AYXBwbGUuY29tPgogCisgICAgICAgIE1vZGVybiBJ
REI6IHN0b3JhZ2UvaW5kZXhlZGRiL2N1cnNvci1wcmltYXJ5LWtleS1vcmRlci5odG1sIGZhaWxz
IHdpdGggU1FMaXRlIGJhY2tlbmQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xNTM4MDAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICAqIHBsYXRmb3JtL21hYy13azEvVGVzdEV4cGVjdGF0aW9uczoKKworMjAx
Ni0wMi0wMiAgQnJhZHkgRWlkc29uICA8YmVpZHNvbkBhcHBsZS5jb20+CisKICAgICAgICAgTW9k
ZXJuIElEQjogc3RvcmFnZS9pbmRleGVkZGIvY3Vyc29yLWNvbnRpbnVlLXZhbGlkaXR5Lmh0bWwg
ZmFpbHMuCiAgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
NTM3OTEKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMS9UZXN0RXhw
ZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMS9UZXN0RXhwZWN0YXRpb25z
CmluZGV4IDljZjU5N2IuLjRiMjQ1M2UgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3Jt
L21hYy13azEvVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMt
d2sxL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTI1MywxOCArMjUzLDE1IEBAIGluc3BlY3Rvci9zY3Jp
cHQtcHJvZmlsZXIvZXZlbnQtdHlwZS1BUEkuaHRtbAogIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIwogIyMjIFNUQVJUIE9GICgzKSBJbmRleGVkREIgZmFpbHVyZXMgd2l0
aCBTUUxpdGUKIAotIyBDb21wbGV0ZXMgc3VjY2Vzc2Z1bGx5IGFmdGVyIH40MCBzZWNvbmRzIGlu
IGEgZGVidWcgYnVpbGQgd2l0aCBsb2dnaW5nCisjIENvbXBsZXRlcyB3aXRoIHBhc3NpbmcgcmVz
dWx0cywgYnV0IHRvbyBzbG93bHkgZm9yIG91ciB0ZXN0IHRpbWVvdXRzLgogaW1wb3J0ZWQvdzNj
L2luZGV4ZWRkYi9pZGJpbmRleC1tdWx0aWVudHJ5LWJpZy5odG0gWyBGYWlsdXJlIF0KLQotIyBJ
bnRlZ2VyIHBhcnQgb2YgdGhlIHRlc3QgaXRlcmF0ZXMgMCwgMSwgMiwgSW5mLCAtMSwgLTIsIC1J
bmYgLSBTaG91bGQgYmUgaW4gb3JkZXIgZnJvbSAtSW5mIHRvIEluZi4KLXN0b3JhZ2UvaW5kZXhl
ZGRiL2N1cnNvci1wcmltYXJ5LWtleS1vcmRlci5odG1sIFsgRmFpbHVyZSBdCitpbXBvcnRlZC93
M2MvaW5kZXhlZGRiL2lkYmN1cnNvcl9pdGVyYXRpbmcuaHRtIFsgRmFpbHVyZSBdCiAKICMgU1FM
aXRlIGJhY2tlbmQgdGVzdHMgdGhhdCB0aW1lb3V0CiBzdG9yYWdlL2luZGV4ZWRkYi9tb2Rlcm4v
dHJhbnNhY3Rpb24tc2NoZWR1bGVyLTEuaHRtbCBbIFNraXAgXQogc3RvcmFnZS9pbmRleGVkZGIv
bW9kZXJuL3RyYW5zYWN0aW9uLXNjaGVkdWxlci0yLmh0bWwgWyBTa2lwIF0KIHN0b3JhZ2UvaW5k
ZXhlZGRiL21vZGVybi90cmFuc2FjdGlvbi1zY2hlZHVsZXItNS5odG1sIFsgU2tpcCBdCiBzdG9y
YWdlL2luZGV4ZWRkYi9tb2Rlcm4vdHJhbnNhY3Rpb24tc2NoZWR1bGVyLTYuaHRtbCBbIFNraXAg
XQotc3RvcmFnZS9pbmRleGVkZGIvcHJlZmV0Y2gtaW52YWxpZGF0aW9uLmh0bWwgWyBTa2lwIF0K
IHN0b3JhZ2UvaW5kZXhlZGRiL3RyYW5zYWN0aW9uLWNvb3JkaW5hdGlvbi13aXRoaW4tZGF0YWJh
c2UuaHRtbCBbIFNraXAgXQogCiAjIyMgRU5EIE9GICgzKSBJbmRleGVkREIgZmFpbHVyZXMgd2l0
aCBTUUxpdGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9X
ZWJDb3JlL0NoYW5nZUxvZwppbmRleCBhY2M5NTRmLi4zNDU2MzJmIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0x
LDUgKzEsMjcgQEAKIDIwMTYtMDItMDIgIEJyYWR5IEVpZHNvbiAgPGJlaWRzb25AYXBwbGUuY29t
PgogCisgICAgICAgIE1vZGVybiBJREI6IHN0b3JhZ2UvaW5kZXhlZGRiL2N1cnNvci1wcmltYXJ5
LWtleS1vcmRlci5odG1sIGZhaWxzIHdpdGggU1FMaXRlIGJhY2tlbmQuCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTM4MDAKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBObyBuZXcgdGVzdHMgKEV4aXN0aW5n
IHRlc3RzIG5vdyB1bnNraXBwZWQpLgorCisgICAgICAgIFRoZSBJbmRleFJlY29yZHMgU1FMIHNj
aGVtYSBkaWQgbm90IG9yZGVyIHRoaW5ncyBieSBwcmltYXJ5S2V5LgorICAgICAgICAKKyAgICAg
ICAgRWFzeSBmaXggdG8gdGhlIHNjaGVtYS4gU2FkbHkgcmVxdWlyZXMgYSBtaWdyYXRpb24uLi4K
KworICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9TUUxpdGVJREJCYWNraW5nU3Rv
cmUuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SURCU2VydmVyOjp2MUluZGV4UmVjb3Jkc1RhYmxl
U2NoZW1hKToKKyAgICAgICAgKFdlYkNvcmU6OklEQlNlcnZlcjo6djFJbmRleFJlY29yZHNUYWJs
ZVNjaGVtYUFsdGVybmF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpJREJTZXJ2ZXI6OnYySW5kZXhS
ZWNvcmRzVGFibGVTY2hlbWEpOgorICAgICAgICAoV2ViQ29yZTo6SURCU2VydmVyOjp2MkluZGV4
UmVjb3Jkc1RhYmxlU2NoZW1hQWx0ZXJuYXRlKToKKyAgICAgICAgKFdlYkNvcmU6OklEQlNlcnZl
cjo6U1FMaXRlSURCQmFja2luZ1N0b3JlOjplbnN1cmVWYWxpZEluZGV4UmVjb3Jkc1RhYmxlKToK
KyAgICAgICAgKFdlYkNvcmU6OklEQlNlcnZlcjo6U1FMaXRlSURCQmFja2luZ1N0b3JlOjpjcmVh
dGVBbmRQb3B1bGF0ZUluaXRpYWxEYXRhYmFzZUluZm8pOgorICAgICAgICAqIE1vZHVsZXMvaW5k
ZXhlZGRiL3NlcnZlci9TUUxpdGVJREJCYWNraW5nU3RvcmUuaDoKKworMjAxNi0wMi0wMiAgQnJh
ZHkgRWlkc29uICA8YmVpZHNvbkBhcHBsZS5jb20+CisKICAgICAgICAgTW9kZXJuIElEQjogc3Rv
cmFnZS9pbmRleGVkZGIvY3Vyc29yLWNvbnRpbnVlLXZhbGlkaXR5Lmh0bWwgZmFpbHMuCiAgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTM3OTEKIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL1NRTGl0ZUlE
QkJhY2tpbmdTdG9yZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2
ZXIvU1FMaXRlSURCQmFja2luZ1N0b3JlLmNwcAppbmRleCA0YTFiZDc2Li45MGJjZDFjIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvU1FMaXRlSURC
QmFja2luZ1N0b3JlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9z
ZXJ2ZXIvU1FMaXRlSURCQmFja2luZ1N0b3JlLmNwcApAQCAtMTA5LDYgKzEwOSw0MSBAQCBzdGF0
aWMgY29uc3QgU3RyaW5nJiB2MlJlY29yZHNUYWJsZVNjaGVtYUFsdGVybmF0ZSgpCiAgICAgcmV0
dXJuIHYyUmVjb3Jkc1RhYmxlU2NoZW1hU3RyaW5nOwogfQogCitzdGF0aWMgY29uc3QgU3RyaW5n
IHYxSW5kZXhSZWNvcmRzVGFibGVTY2hlbWEoY29uc3QgU3RyaW5nJiB0YWJsZU5hbWUpCit7Cisg
ICAgcmV0dXJuIG1ha2VTdHJpbmcoIkNSRUFURSBUQUJMRSAiLCB0YWJsZU5hbWUsICIgKGluZGV4
SUQgSU5URUdFUiBOT1QgTlVMTCBPTiBDT05GTElDVCBGQUlMLCBvYmplY3RTdG9yZUlEIElOVEVH
RVIgTk9UIE5VTEwgT04gQ09ORkxJQ1QgRkFJTCwga2V5IFRFWFQgQ09MTEFURSBJREJLRVkgTk9U
IE5VTEwgT04gQ09ORkxJQ1QgRkFJTCwgdmFsdWUgTk9UIE5VTEwgT04gQ09ORkxJQ1QgRkFJTCki
KTsKK30KKworc3RhdGljIGNvbnN0IFN0cmluZyYgdjFJbmRleFJlY29yZHNUYWJsZVNjaGVtYSgp
Cit7CisgICAgc3RhdGljIE5ldmVyRGVzdHJveWVkPFdURjo6U3RyaW5nPiB2MUluZGV4UmVjb3Jk
c1RhYmxlU2NoZW1hU3RyaW5nKHYxSW5kZXhSZWNvcmRzVGFibGVTY2hlbWEoIkluZGV4UmVjb3Jk
cyIpKTsKKyAgICByZXR1cm4gdjFJbmRleFJlY29yZHNUYWJsZVNjaGVtYVN0cmluZzsKK30KKwor
c3RhdGljIGNvbnN0IFN0cmluZyYgdjFJbmRleFJlY29yZHNUYWJsZVNjaGVtYUFsdGVybmF0ZSgp
Cit7CisgICAgc3RhdGljIE5ldmVyRGVzdHJveWVkPFdURjo6U3RyaW5nPiB2MUluZGV4UmVjb3Jk
c1RhYmxlU2NoZW1hU3RyaW5nKHYxSW5kZXhSZWNvcmRzVGFibGVTY2hlbWEoIlwiSW5kZXhSZWNv
cmRzXCIiKSk7CisgICAgcmV0dXJuIHYxSW5kZXhSZWNvcmRzVGFibGVTY2hlbWFTdHJpbmc7Cit9
CisKK3N0YXRpYyBjb25zdCBTdHJpbmcgdjJJbmRleFJlY29yZHNUYWJsZVNjaGVtYShjb25zdCBT
dHJpbmcmIHRhYmxlTmFtZSkKK3sKKyAgICByZXR1cm4gbWFrZVN0cmluZygiQ1JFQVRFIFRBQkxF
ICIsIHRhYmxlTmFtZSwgIiAoaW5kZXhJRCBJTlRFR0VSIE5PVCBOVUxMIE9OIENPTkZMSUNUIEZB
SUwsIG9iamVjdFN0b3JlSUQgSU5URUdFUiBOT1QgTlVMTCBPTiBDT05GTElDVCBGQUlMLCBrZXkg
VEVYVCBDT0xMQVRFIElEQktFWSBOT1QgTlVMTCBPTiBDT05GTElDVCBGQUlMLCB2YWx1ZSBURVhU
IENPTExBVEUgSURCS0VZIE5PVCBOVUxMIE9OIENPTkZMSUNUIEZBSUwpIik7Cit9CisKK3N0YXRp
YyBjb25zdCBTdHJpbmcmIHYySW5kZXhSZWNvcmRzVGFibGVTY2hlbWEoKQoreworICAgIHN0YXRp
YyBOZXZlckRlc3Ryb3llZDxXVEY6OlN0cmluZz4gdjJJbmRleFJlY29yZHNUYWJsZVNjaGVtYVN0
cmluZyh2MkluZGV4UmVjb3Jkc1RhYmxlU2NoZW1hKCJJbmRleFJlY29yZHMiKSk7CisgICAgcmV0
dXJuIHYySW5kZXhSZWNvcmRzVGFibGVTY2hlbWFTdHJpbmc7Cit9CisKK3N0YXRpYyBjb25zdCBT
dHJpbmcmIHYySW5kZXhSZWNvcmRzVGFibGVTY2hlbWFBbHRlcm5hdGUoKQoreworICAgIHN0YXRp
YyBOZXZlckRlc3Ryb3llZDxXVEY6OlN0cmluZz4gdjJJbmRleFJlY29yZHNUYWJsZVNjaGVtYVN0
cmluZyh2MkluZGV4UmVjb3Jkc1RhYmxlU2NoZW1hKCJcIkluZGV4UmVjb3Jkc1wiIikpOworICAg
IHJldHVybiB2MkluZGV4UmVjb3Jkc1RhYmxlU2NoZW1hU3RyaW5nOworfQorCisKIFNRTGl0ZUlE
QkJhY2tpbmdTdG9yZTo6U1FMaXRlSURCQmFja2luZ1N0b3JlKGNvbnN0IElEQkRhdGFiYXNlSWRl
bnRpZmllciYgaWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiBkYXRhYmFzZVJvb3REaXJlY3Rvcnkp
CiAgICAgOiBtX2lkZW50aWZpZXIoaWRlbnRpZmllcikKIHsKQEAgLTI0MCw2ICsyNzUsODAgQEAg
Ym9vbCBTUUxpdGVJREJCYWNraW5nU3RvcmU6OmVuc3VyZVZhbGlkUmVjb3Jkc1RhYmxlKCkKICAg
ICByZXR1cm4gdHJ1ZTsKIH0KIAorYm9vbCBTUUxpdGVJREJCYWNraW5nU3RvcmU6OmVuc3VyZVZh
bGlkSW5kZXhSZWNvcmRzVGFibGUoKQoreworICAgIEFTU0VSVChtX3NxbGl0ZURCKTsKKyAgICBB
U1NFUlQobV9zcWxpdGVEQi0+aXNPcGVuKCkpOworCisgICAgU3RyaW5nIGN1cnJlbnRTY2hlbWE7
CisgICAgeworICAgICAgICAvLyBGZXRjaCB0aGUgc2NoZW1hIGZvciBhbiBleGlzdGluZyBpbmRl
eCByZWNvcmQgdGFibGUuCisgICAgICAgIFNRTGl0ZVN0YXRlbWVudCBzdGF0ZW1lbnQoKm1fc3Fs
aXRlREIsICJTRUxFQ1QgdHlwZSwgc3FsIEZST00gc3FsaXRlX21hc3RlciBXSEVSRSB0YmxfbmFt
ZT0nSW5kZXhSZWNvcmRzJyIpOworICAgICAgICBpZiAoc3RhdGVtZW50LnByZXBhcmUoKSAhPSBT
UUxJVEVfT0spIHsKKyAgICAgICAgICAgIExPR19FUlJPUigiVW5hYmxlIHRvIHByZXBhcmUgc3Rh
dGVtZW50IHRvIGZldGNoIHNjaGVtYSBmb3IgdGhlIEluZGV4UmVjb3JkcyB0YWJsZS4iKTsKKyAg
ICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgfQorCisgICAgICAgIGludCBzcWxpdGVS
ZXN1bHQgPSBzdGF0ZW1lbnQuc3RlcCgpOworCisgICAgICAgIC8vIElmIHRoZXJlIGlzIG5vIElu
ZGV4UmVjb3JkcyB0YWJsZSBhdCBhbGwsIGNyZWF0ZSBpdCBhbmQgdGhlbiBiYWlsLgorICAgICAg
ICBpZiAoc3FsaXRlUmVzdWx0ID09IFNRTElURV9ET05FKSB7CisgICAgICAgICAgICBpZiAoIW1f
c3FsaXRlREItPmV4ZWN1dGVDb21tYW5kKHYySW5kZXhSZWNvcmRzVGFibGVTY2hlbWEoKSkpIHsK
KyAgICAgICAgICAgICAgICBMT0dfRVJST1IoIkNvdWxkIG5vdCBjcmVhdGUgSW5kZXhSZWNvcmRz
IHRhYmxlIGluIGRhdGFiYXNlICglaSkgLSAlcyIsIG1fc3FsaXRlREItPmxhc3RFcnJvcigpLCBt
X3NxbGl0ZURCLT5sYXN0RXJyb3JNc2coKSk7CisgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNl
OworICAgICAgICAgICAgfQorCisgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICAgICAgfQor
CisgICAgICAgIGlmIChzcWxpdGVSZXN1bHQgIT0gU1FMSVRFX1JPVykgeworICAgICAgICAgICAg
TE9HX0VSUk9SKCJFcnJvciBleGVjdXRpbmcgc3RhdGVtZW50IHRvIGZldGNoIHNjaGVtYSBmb3Ig
dGhlIEluZGV4UmVjb3JkcyB0YWJsZS4iKTsKKyAgICAgICAgICAgIHJldHVybiBmYWxzZTsKKyAg
ICAgICAgfQorCisgICAgICAgIGN1cnJlbnRTY2hlbWEgPSBzdGF0ZW1lbnQuZ2V0Q29sdW1uVGV4
dCgxKTsKKyAgICB9CisKKyAgICBBU1NFUlQoIWN1cnJlbnRTY2hlbWEuaXNFbXB0eSgpKTsKKwor
ICAgIC8vIElmIHRoZSBzY2hlbWEgaW4gdGhlIGJhY2tpbmcgc3RvcmUgaXMgdGhlIGN1cnJlbnQg
c2NoZW1hLCB3ZSdyZSBkb25lLgorICAgIGlmIChjdXJyZW50U2NoZW1hID09IHYySW5kZXhSZWNv
cmRzVGFibGVTY2hlbWEoKSB8fCBjdXJyZW50U2NoZW1hID09IHYySW5kZXhSZWNvcmRzVGFibGVT
Y2hlbWFBbHRlcm5hdGUoKSkKKyAgICAgICAgcmV0dXJuIHRydWU7CisKKyAgICAvLyBJZiB0aGUg
cmVjb3JkIHRhYmxlIGlzIG5vdCB0aGUgY3VycmVudCBzY2hlbWEgdGhlbiBpdCBtdXN0IGJlIG9u
ZSBvZiB0aGUgcHJldmlvdXMgc2NoZW1hcy4KKyAgICAvLyBJZiBpdCBpcyBub3QgdGhlbiB0aGUg
ZGF0YWJhc2UgaXMgaW4gYW4gdW5yZWNvdmVyYWJsZSBzdGF0ZSBhbmQgdGhpcyBzaG91bGQgYmUg
Y29uc2lkZXJlZCBhIGZhdGFsIGVycm9yLgorICAgIGlmIChjdXJyZW50U2NoZW1hICE9IHYxSW5k
ZXhSZWNvcmRzVGFibGVTY2hlbWEoKSAmJiBjdXJyZW50U2NoZW1hICE9IHYxSW5kZXhSZWNvcmRz
VGFibGVTY2hlbWFBbHRlcm5hdGUoKSkKKyAgICAgICAgUkVMRUFTRV9BU1NFUlRfTk9UX1JFQUNI
RUQoKTsKKworICAgIFNRTGl0ZVRyYW5zYWN0aW9uIHRyYW5zYWN0aW9uKCptX3NxbGl0ZURCKTsK
KyAgICB0cmFuc2FjdGlvbi5iZWdpbigpOworCisgICAgLy8gQ3JlYXRlIGEgdGVtcG9yYXJ5IHRh
YmxlIHdpdGggdGhlIGNvcnJlY3Qgc2NoZW1hIGFuZCBtaWdyYXRlIGFsbCBleGlzdGluZyBjb250
ZW50IG92ZXIuCisgICAgaWYgKCFtX3NxbGl0ZURCLT5leGVjdXRlQ29tbWFuZCh2MkluZGV4UmVj
b3Jkc1RhYmxlU2NoZW1hKCJfVGVtcF9JbmRleFJlY29yZHMiKSkpIHsKKyAgICAgICAgTE9HX0VS
Uk9SKCJDb3VsZCBub3QgY3JlYXRlIHRlbXBvcmFyeSBpbmRleCByZWNvcmRzIHRhYmxlIGluIGRh
dGFiYXNlICglaSkgLSAlcyIsIG1fc3FsaXRlREItPmxhc3RFcnJvcigpLCBtX3NxbGl0ZURCLT5s
YXN0RXJyb3JNc2coKSk7CisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisKKyAgICBpZiAo
IW1fc3FsaXRlREItPmV4ZWN1dGVDb21tYW5kKCJJTlNFUlQgSU5UTyBfVGVtcF9JbmRleFJlY29y
ZHMgU0VMRUNUICogRlJPTSBJbmRleFJlY29yZHMiKSkgeworICAgICAgICBMT0dfRVJST1IoIkNv
dWxkIG5vdCBtaWdyYXRlIGV4aXN0aW5nIEluZGV4UmVjb3JkcyBjb250ZW50ICglaSkgLSAlcyIs
IG1fc3FsaXRlREItPmxhc3RFcnJvcigpLCBtX3NxbGl0ZURCLT5sYXN0RXJyb3JNc2coKSk7Cisg
ICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisKKyAgICBpZiAoIW1fc3FsaXRlREItPmV4ZWN1
dGVDb21tYW5kKCJEUk9QIFRBQkxFIEluZGV4UmVjb3JkcyIpKSB7CisgICAgICAgIExPR19FUlJP
UigiQ291bGQgbm90IGRyb3AgZXhpc3RpbmcgSW5kZXhSZWNvcmRzIHRhYmxlICglaSkgLSAlcyIs
IG1fc3FsaXRlREItPmxhc3RFcnJvcigpLCBtX3NxbGl0ZURCLT5sYXN0RXJyb3JNc2coKSk7Cisg
ICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisKKyAgICBpZiAoIW1fc3FsaXRlREItPmV4ZWN1
dGVDb21tYW5kKCJBTFRFUiBUQUJMRSBfVGVtcF9JbmRleFJlY29yZHMgUkVOQU1FIFRPIEluZGV4
UmVjb3JkcyIpKSB7CisgICAgICAgIExPR19FUlJPUigiQ291bGQgbm90IHJlbmFtZSB0ZW1wb3Jh
cnkgSW5kZXhSZWNvcmRzIHRhYmxlICglaSkgLSAlcyIsIG1fc3FsaXRlREItPmxhc3RFcnJvcigp
LCBtX3NxbGl0ZURCLT5sYXN0RXJyb3JNc2coKSk7CisgICAgICAgIHJldHVybiBmYWxzZTsKKyAg
ICB9CisKKyAgICB0cmFuc2FjdGlvbi5jb21taXQoKTsKKworICAgIHJldHVybiB0cnVlOworfQor
CiBzdGQ6OnVuaXF1ZV9wdHI8SURCRGF0YWJhc2VJbmZvPiBTUUxpdGVJREJCYWNraW5nU3RvcmU6
OmNyZWF0ZUFuZFBvcHVsYXRlSW5pdGlhbERhdGFiYXNlSW5mbygpCiB7CiAgICAgQVNTRVJUKG1f
c3FsaXRlREIpOwpAQCAtMjYzLDcgKzM3Miw3IEBAIHN0ZDo6dW5pcXVlX3B0cjxJREJEYXRhYmFz
ZUluZm8+IFNRTGl0ZUlEQkJhY2tpbmdTdG9yZTo6Y3JlYXRlQW5kUG9wdWxhdGVJbml0aWFsCiAg
ICAgICAgIHJldHVybiBudWxscHRyOwogICAgIH0KIAotICAgIGlmICghbV9zcWxpdGVEQi0+ZXhl
Y3V0ZUNvbW1hbmQoIkNSRUFURSBUQUJMRSBJbmRleFJlY29yZHMgKGluZGV4SUQgSU5URUdFUiBO
T1QgTlVMTCBPTiBDT05GTElDVCBGQUlMLCBvYmplY3RTdG9yZUlEIElOVEVHRVIgTk9UIE5VTEwg
T04gQ09ORkxJQ1QgRkFJTCwga2V5IFRFWFQgQ09MTEFURSBJREJLRVkgTk9UIE5VTEwgT04gQ09O
RkxJQ1QgRkFJTCwgdmFsdWUgTk9UIE5VTEwgT04gQ09ORkxJQ1QgRkFJTCk7IikpIHsKKyAgICBp
ZiAoIWVuc3VyZVZhbGlkSW5kZXhSZWNvcmRzVGFibGUoKSkgewogICAgICAgICBMT0dfRVJST1Io
IkNvdWxkIG5vdCBjcmVhdGUgSW5kZXhSZWNvcmRzIHRhYmxlIGluIGRhdGFiYXNlICglaSkgLSAl
cyIsIG1fc3FsaXRlREItPmxhc3RFcnJvcigpLCBtX3NxbGl0ZURCLT5sYXN0RXJyb3JNc2coKSk7
CiAgICAgICAgIG1fc3FsaXRlREIgPSBudWxscHRyOwogICAgICAgICByZXR1cm4gbnVsbHB0cjsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9TUUxp
dGVJREJCYWNraW5nU3RvcmUuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3Nl
cnZlci9TUUxpdGVJREJCYWNraW5nU3RvcmUuaAppbmRleCA4NmRjY2I1Li44OGRmNGQ2IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvU1FMaXRlSURC
QmFja2luZ1N0b3JlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2Vy
dmVyL1NRTGl0ZUlEQkJhY2tpbmdTdG9yZS5oCkBAIC04NCw2ICs4NCw3IEBAIHByaXZhdGU6CiAg
ICAgU3RyaW5nIGZ1bGxEYXRhYmFzZVBhdGgoKSBjb25zdDsKIAogICAgIGJvb2wgZW5zdXJlVmFs
aWRSZWNvcmRzVGFibGUoKTsKKyAgICBib29sIGVuc3VyZVZhbGlkSW5kZXhSZWNvcmRzVGFibGUo
KTsKICAgICBzdGQ6OnVuaXF1ZV9wdHI8SURCRGF0YWJhc2VJbmZvPiBjcmVhdGVBbmRQb3B1bGF0
ZUluaXRpYWxEYXRhYmFzZUluZm8oKTsKICAgICBzdGQ6OnVuaXF1ZV9wdHI8SURCRGF0YWJhc2VJ
bmZvPiBleHRyYWN0RXhpc3RpbmdEYXRhYmFzZUluZm8oKTsKIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>