<?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>205512</bug_id>
          
          <creation_ts>2019-12-20 11:20:00 -0800</creation_ts>
          <short_desc>Remove unneeded MemoryIDBBackingStore::create</short_desc>
          <delta_ts>2020-01-12 11:11:14 -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>WebKit 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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Darin Adler">darin</reporter>
          <assigned_to name="Darin Adler">darin</assigned_to>
          <cc>achristensen</cc>
    
    <cc>alecflett</cc>
    
    <cc>beidson</cc>
    
    <cc>cdumez</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>jsbell</cc>
    
    <cc>rbuis</cc>
    
    <cc>sam</cc>
    
    <cc>sihui_liu</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1600827</commentid>
    <comment_count>0</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2019-12-20 11:20:00 -0800</bug_when>
    <thetext>Remove unneeded MemoryIDBBackingStore::create</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1600830</commentid>
    <comment_count>1</comment_count>
      <attachid>386229</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2019-12-20 11:22:36 -0800</bug_when>
    <thetext>Created attachment 386229
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1600835</commentid>
    <comment_count>2</comment_count>
      <attachid>386230</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2019-12-20 11:28:29 -0800</bug_when>
    <thetext>Created attachment 386230
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1600853</commentid>
    <comment_count>3</comment_count>
    <who name="Sihui Liu">sihui_liu</who>
    <bug_when>2019-12-20 11:46:37 -0800</bug_when>
    <thetext>Looks good! Probably we can move functions in SQLiteIDBBackingStore to private too</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1601369</commentid>
    <comment_count>4</comment_count>
      <attachid>386230</attachid>
    <who name="Rob Buis">rbuis</who>
    <bug_when>2019-12-23 23:03:07 -0800</bug_when>
    <thetext>Comment on attachment 386230
Patch

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

&gt; Source/WebCore/ChangeLog:7
&gt; +

Optionally something like &quot;Covered by existing tests&quot; can be added.

&gt; Source/WebCore/ChangeLog:10
&gt; +        instead of MemoryIDBBackingStore::create.

I am guessing there are quite a few places in WebKit where we can do the same.

&gt; Source/WebCore/Modules/indexeddb/server/MemoryIDBBackingStore.h:45
&gt;      static std::unique_ptr&lt;MemoryIDBBackingStore&gt; create(PAL::SessionID, const IDBDatabaseIdentifier&amp;);

This can now be removed as well, right?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1601548</commentid>
    <comment_count>5</comment_count>
      <attachid>386230</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2019-12-26 17:33:00 -0800</bug_when>
    <thetext>Comment on attachment 386230
Patch

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

&gt;&gt; Source/WebCore/ChangeLog:10
&gt;&gt; +        instead of MemoryIDBBackingStore::create.
&gt; 
&gt; I am guessing there are quite a few places in WebKit where we can do the same.

Some, but maybe not as many as you think. We mostly use create functions when it’s more than just a makeUnique, for example for reference counted objects, where we want to prevent the mistake of allocating on the stack. There’s no reason to use create functions in cases like this one.

&gt;&gt; Source/WebCore/Modules/indexeddb/server/MemoryIDBBackingStore.h:45
&gt;&gt;      static std::unique_ptr&lt;MemoryIDBBackingStore&gt; create(PAL::SessionID, const IDBDatabaseIdentifier&amp;);
&gt; 
&gt; This can now be removed as well, right?

Yes, oops, good catch. I should have removed that!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1601764</commentid>
    <comment_count>6</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2019-12-29 09:10:00 -0800</bug_when>
    <thetext>Anyone interested in reviewing? As you can see, this is passing all the tests on EWS. I will make changes based on Rob’s comments.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1603532</commentid>
    <comment_count>7</comment_count>
      <attachid>386230</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2020-01-07 05:19:43 -0800</bug_when>
    <thetext>Comment on attachment 386230
Patch

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

&gt; Source/WebCore/Modules/indexeddb/server/MemoryIDBBackingStore.h:50
&gt;      IDBError getOrEstablishDatabaseInfo(IDBDatabaseInfo&amp;) final;

s/~MemoryIDBBackingStore() final;/~MemoryIDBBackingStore();/ as well now the class is final.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1605674</commentid>
    <comment_count>8</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-01-12 11:10:14 -0800</bug_when>
    <thetext>Committed r254414: &lt;https://trac.webkit.org/changeset/254414&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1605675</commentid>
    <comment_count>9</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-01-12 11:11:14 -0800</bug_when>
    <thetext>&lt;rdar://problem/58513490&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>386229</attachid>
            <date>2019-12-20 11:22:36 -0800</date>
            <delta_ts>2019-12-20 11:28:28 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-205512-20191220112232.patch</filename>
            <type>text/plain</type>
            <size>6077</size>
            <attacher name="Darin Adler">darin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjUzODI5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDFkYjliYWZkNjU0MzNi
MDFhYzliMDFlOTI3NTFmNmY5NTJmNmU4Ny4uZjgwN2ZiZjQ4MzcxOTA4N2Y1YzM2ZWE2YTA0MzY4
YWY4MzE1MWZiOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDE5LTEyLTIwICBEYXJp
biBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUgdW5uZWVkZWQgTWVt
b3J5SURCQmFja2luZ1N0b3JlOjpjcmVhdGUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIwNTUxMgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL0lEQlNlcnZlci5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpJREJTZXJ2ZXI6OklEQlNlcnZlcjo6Y3JlYXRlQmFja2lu
Z1N0b3JlKTogQ2FsbCBtYWtlVW5pcXVlCisgICAgICAgIGluc3RlYWQgb2YgTWVtb3J5SURCQmFj
a2luZ1N0b3JlOjpjcmVhdGUuCisKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIv
TWVtb3J5Q3Vyc29yLmNwcDogUmVtb3ZlZCB1bm5lZWRlZCBpbmNsdWRlCisgICAgICAgIG9mIE1l
bW9yeUlEQkJhY2tpbmdTdG9yZS5oLgorCisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvc2Vy
dmVyL01lbW9yeUlEQkJhY2tpbmdTdG9yZS5jcHA6IEZpeGVkIGNvbW1lbnQuCisgICAgICAgIChX
ZWJDb3JlOjpJREJTZXJ2ZXI6Ok1lbW9yeUlEQkJhY2tpbmdTdG9yZTo6Y3JlYXRlKTogRGVsZXRl
ZC4KKworICAgICAgICAqIE1vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9NZW1vcnlJREJCYWNraW5n
U3RvcmUuaDogTWFkZSB0aGUgY2xhc3MKKyAgICAgICAgZmluYWwsIG1hZGUgbW9yZSBvZiB0aGUg
bWVtYmVyIGZ1bmN0aW9ucyBwcml2YXRlLCBhbmQgbW92ZWQgYSBjb3VwbGUKKyAgICAgICAgZnVu
Y3Rpb24gbWVtYmVycyBvdXQgZnJvbSBpbiBiZXR3ZWVuIHRoZSBkYXRhIG1lbWJlcnMuCisKIDIw
MTktMTItMjAgIHlvdWVubiBmYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIFJl
bW92ZSB0aGUgY2VydGlmaWNhdGUgaW5mbyBjaGVja3MgcmVsYXRlZCB0byBnZXRVc2VyTWVkaWEK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9JREJT
ZXJ2ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL0lEQlNl
cnZlci5jcHAKaW5kZXggNWE2MWYzYmM4OGMxODYyOWYwM2Y5ZTliZDI2MDk2MGU3ZjgwYjNjNC4u
ZmExY2E2NjlhNTU1NDI0NWYyMzc5MDBiNThkYTVkMzU5NzU2NDYyNiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL0lEQlNlcnZlci5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL0lEQlNlcnZlci5jcHAKQEAg
LTEyOCw3ICsxMjgsNyBAQCBzdGQ6OnVuaXF1ZV9wdHI8SURCQmFja2luZ1N0b3JlPiBJREJTZXJ2
ZXI6OmNyZWF0ZUJhY2tpbmdTdG9yZShjb25zdCBJREJEYXRhYmFzZQogCiAgICAgYXV0byBkYXRh
YmFzZURpcmVjdG9yeVBhdGggPSB0aGlzLT5kYXRhYmFzZURpcmVjdG9yeVBhdGhJc29sYXRlZENv
cHkoKTsKICAgICBpZiAoZGF0YWJhc2VEaXJlY3RvcnlQYXRoLmlzRW1wdHkoKSkKLSAgICAgICAg
cmV0dXJuIE1lbW9yeUlEQkJhY2tpbmdTdG9yZTo6Y3JlYXRlKG1fc2Vzc2lvbklELCBpZGVudGlm
aWVyKTsKKyAgICAgICAgcmV0dXJuIG1ha2VVbmlxdWU8TWVtb3J5SURCQmFja2luZ1N0b3JlPiht
X3Nlc3Npb25JRCwgaWRlbnRpZmllcik7CiAKICAgICByZXR1cm4gbWFrZVVuaXF1ZTxTUUxpdGVJ
REJCYWNraW5nU3RvcmU+KG1fc2Vzc2lvbklELCBpZGVudGlmaWVyLCBkYXRhYmFzZURpcmVjdG9y
eVBhdGgpOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIv
c2VydmVyL01lbW9yeUN1cnNvci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRk
Yi9zZXJ2ZXIvTWVtb3J5Q3Vyc29yLmNwcAppbmRleCA2NzA1OWYzMTNhM2FmNjI3MzYxZjMxZGQ5
YzFmNmE3ZWQwYzNkOWI3Li44MmVhMTg0MDRkYTYyZDVhMWJjNWNhY2Q4YjgyOGUzZTBmYWU1NTkw
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvTWVt
b3J5Q3Vyc29yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2
ZXIvTWVtb3J5Q3Vyc29yLmNwcApAQCAtMjksNyArMjksNiBAQAogI2lmIEVOQUJMRShJTkRFWEVE
X0RBVEFCQVNFKQogCiAjaW5jbHVkZSAiSURCUmVzb3VyY2VJZGVudGlmaWVyLmgiCi0jaW5jbHVk
ZSAiTWVtb3J5SURCQmFja2luZ1N0b3JlLmgiCiAjaW5jbHVkZSA8d3RmL0hhc2hNYXAuaD4KICNp
bmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL01lbW9yeUlEQkJhY2tpbmdTdG9yZS5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvTWVtb3J5SURCQmFja2luZ1N0
b3JlLmNwcAppbmRleCBlZjVlYWUwZjJiZDQzNjY2YjY2ZDk5MzAzNDQ4YmZmZDQwZTA2NzgzLi40
MDEzMTM4MDc1NzliNzI4OWQzYjhjODdmYTM4OWQ0NTdmNDZkZmFlIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvTWVtb3J5SURCQmFja2luZ1N0b3Jl
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvTWVtb3J5
SURCQmFja2luZ1N0b3JlLmNwcApAQCAtNDMsMTQgKzQzLDkgQEAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIG5hbWVzcGFjZSBJREJTZXJ2ZXIgewogCi0vLyBUaGUgSW5kZXhlZERCIHNwZWMgc3RhdGVz
IHRoZSB2YWx1ZSB5b3UgY2FuIGdldCBmcm9tIHRoZSBrZXkgZ2VuZXJhdG9yIGlzIDJeNTMKKy8v
IFRoZSBJbmRleGVkREIgc3BlYyBzdGF0ZXMgdGhlIG1heGltdW0gdmFsdWUgeW91IGNhbiBnZXQg
ZnJvbSB0aGUga2V5IGdlbmVyYXRvciBpcyAyXjUzLgogc3RhdGljIHVpbnQ2NF90IG1heEdlbmVy
YXRlZEtleVZhbHVlID0gMHgyMDAwMDAwMDAwMDAwMDsKIAotc3RkOjp1bmlxdWVfcHRyPE1lbW9y
eUlEQkJhY2tpbmdTdG9yZT4gTWVtb3J5SURCQmFja2luZ1N0b3JlOjpjcmVhdGUoUEFMOjpTZXNz
aW9uSUQgc2Vzc2lvbklELCBjb25zdCBJREJEYXRhYmFzZUlkZW50aWZpZXImIGlkZW50aWZpZXIp
Ci17Ci0gICAgcmV0dXJuIG1ha2VVbmlxdWU8TWVtb3J5SURCQmFja2luZ1N0b3JlPihzZXNzaW9u
SUQsIGlkZW50aWZpZXIpOwotfQotCiBNZW1vcnlJREJCYWNraW5nU3RvcmU6Ok1lbW9yeUlEQkJh
Y2tpbmdTdG9yZShQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIGNvbnN0IElEQkRhdGFiYXNlSWRl
bnRpZmllciYgaWRlbnRpZmllcikKICAgICA6IG1faWRlbnRpZmllcihpZGVudGlmaWVyKQogICAg
ICwgbV9zZXNzaW9uSUQoc2Vzc2lvbklEKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9pbmRleGVkZGIvc2VydmVyL01lbW9yeUlEQkJhY2tpbmdTdG9yZS5oIGIvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL01lbW9yeUlEQkJhY2tpbmdTdG9yZS5oCmlu
ZGV4IGNmMjFkOTg2MGJkMWMwMzA1ZWFiMjdkYzkyNzczOTQxMjdiNGY0NjguLjA0M2YyMjRkYTk4
ZjBiZGViMDA3YmJlMDQyNDI0MWM3MzQ3YmM4YjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9NZW1vcnlJREJCYWNraW5nU3RvcmUuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvTWVtb3J5SURCQmFja2luZ1N0
b3JlLmgKQEAgLTM5LDcgKzM5LDcgQEAgbmFtZXNwYWNlIElEQlNlcnZlciB7CiAKIGNsYXNzIE1l
bW9yeU9iamVjdFN0b3JlOwogCi1jbGFzcyBNZW1vcnlJREJCYWNraW5nU3RvcmUgOiBwdWJsaWMg
SURCQmFja2luZ1N0b3JlIHsKK2NsYXNzIE1lbW9yeUlEQkJhY2tpbmdTdG9yZSBmaW5hbCA6IHB1
YmxpYyBJREJCYWNraW5nU3RvcmUgewogICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwogcHVi
bGljOgogICAgIHN0YXRpYyBzdGQ6OnVuaXF1ZV9wdHI8TWVtb3J5SURCQmFja2luZ1N0b3JlPiBj
cmVhdGUoUEFMOjpTZXNzaW9uSUQsIGNvbnN0IElEQkRhdGFiYXNlSWRlbnRpZmllciYpOwpAQCAt
NTAsNiArNTAsMTAgQEAgcHVibGljOgogICAgIElEQkVycm9yIGdldE9yRXN0YWJsaXNoRGF0YWJh
c2VJbmZvKElEQkRhdGFiYXNlSW5mbyYpIGZpbmFsOwogICAgIHZvaWQgc2V0RGF0YWJhc2VJbmZv
KGNvbnN0IElEQkRhdGFiYXNlSW5mbyYpOwogCisgICAgdm9pZCByZW1vdmVPYmplY3RTdG9yZUZv
clZlcnNpb25DaGFuZ2VBYm9ydChNZW1vcnlPYmplY3RTdG9yZSYpOworICAgIHZvaWQgcmVzdG9y
ZU9iamVjdFN0b3JlRm9yVmVyc2lvbkNoYW5nZUFib3J0KFJlZjxNZW1vcnlPYmplY3RTdG9yZT4m
Jik7CisKK3ByaXZhdGU6CiAgICAgSURCRXJyb3IgYmVnaW5UcmFuc2FjdGlvbihjb25zdCBJREJU
cmFuc2FjdGlvbkluZm8mKSBmaW5hbDsKICAgICBJREJFcnJvciBhYm9ydFRyYW5zYWN0aW9uKGNv
bnN0IElEQlJlc291cmNlSWRlbnRpZmllciYgdHJhbnNhY3Rpb25JZGVudGlmaWVyKSBmaW5hbDsK
ICAgICBJREJFcnJvciBjb21taXRUcmFuc2FjdGlvbihjb25zdCBJREJSZXNvdXJjZUlkZW50aWZp
ZXImIHRyYW5zYWN0aW9uSWRlbnRpZmllcikgZmluYWw7CkBAIC04MCwyNCArODQsMjEgQEAgcHVi
bGljOgogICAgIGJvb2wgc3VwcG9ydHNTaW11bHRhbmVvdXNUcmFuc2FjdGlvbnMoKSBmaW5hbCB7
IHJldHVybiB0cnVlOyB9CiAgICAgYm9vbCBpc0VwaGVtZXJhbCgpIGZpbmFsIHsgcmV0dXJuIHRy
dWU7IH0KIAotICAgIHZvaWQgcmVtb3ZlT2JqZWN0U3RvcmVGb3JWZXJzaW9uQ2hhbmdlQWJvcnQo
TWVtb3J5T2JqZWN0U3RvcmUmKTsKLSAgICB2b2lkIHJlc3RvcmVPYmplY3RTdG9yZUZvclZlcnNp
b25DaGFuZ2VBYm9ydChSZWY8TWVtb3J5T2JqZWN0U3RvcmU+JiYpOwotCiAgICAgYm9vbCBoYXNU
cmFuc2FjdGlvbihjb25zdCBJREJSZXNvdXJjZUlkZW50aWZpZXImIGlkZW50aWZpZXIpIGNvbnN0
IGZpbmFsIHsgcmV0dXJuIG1fdHJhbnNhY3Rpb25zLmNvbnRhaW5zKGlkZW50aWZpZXIpOyB9CiAK
LXByaXZhdGU6CiAgICAgUmVmUHRyPE1lbW9yeU9iamVjdFN0b3JlPiB0YWtlT2JqZWN0U3RvcmVC
eUlkZW50aWZpZXIodWludDY0X3QgaWRlbnRpZmllcik7CiAKICAgICB2b2lkIGNsb3NlKCkgZmlu
YWw7CiAKKyAgICB2b2lkIHJlZ2lzdGVyT2JqZWN0U3RvcmUoUmVmPE1lbW9yeU9iamVjdFN0b3Jl
PiYmKTsKKyAgICB2b2lkIHVucmVnaXN0ZXJPYmplY3RTdG9yZShNZW1vcnlPYmplY3RTdG9yZSYp
OworCiAgICAgSURCRGF0YWJhc2VJZGVudGlmaWVyIG1faWRlbnRpZmllcjsKICAgICBQQUw6OlNl
c3Npb25JRCBtX3Nlc3Npb25JRDsKICAgICBzdGQ6OnVuaXF1ZV9wdHI8SURCRGF0YWJhc2VJbmZv
PiBtX2RhdGFiYXNlSW5mbzsKIAogICAgIEhhc2hNYXA8SURCUmVzb3VyY2VJZGVudGlmaWVyLCBz
dGQ6OnVuaXF1ZV9wdHI8TWVtb3J5QmFja2luZ1N0b3JlVHJhbnNhY3Rpb24+PiBtX3RyYW5zYWN0
aW9uczsKIAotICAgIHZvaWQgcmVnaXN0ZXJPYmplY3RTdG9yZShSZWY8TWVtb3J5T2JqZWN0U3Rv
cmU+JiYpOwotICAgIHZvaWQgdW5yZWdpc3Rlck9iamVjdFN0b3JlKE1lbW9yeU9iamVjdFN0b3Jl
Jik7CiAgICAgSGFzaE1hcDx1aW50NjRfdCwgUmVmUHRyPE1lbW9yeU9iamVjdFN0b3JlPj4gbV9v
YmplY3RTdG9yZXNCeUlkZW50aWZpZXI7CiAgICAgSGFzaE1hcDxTdHJpbmcsIE1lbW9yeU9iamVj
dFN0b3JlKj4gbV9vYmplY3RTdG9yZXNCeU5hbWU7CiB9Owo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>386230</attachid>
            <date>2019-12-20 11:28:29 -0800</date>
            <delta_ts>2020-01-07 05:19:43 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-205512-20191220112825.patch</filename>
            <type>text/plain</type>
            <size>6166</size>
            <attacher name="Darin Adler">darin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjUzODI5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNDFkYjliYWZkNjU0MzNi
MDFhYzliMDFlOTI3NTFmNmY5NTJmNmU4Ny4uMzhiZDI5M2Y1OGQzNzc1Y2RmZTllYmNiNzJjZmU5
MmI4ZTJiY2YyNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDE5LTEyLTIwICBEYXJp
biBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUgdW5uZWVkZWQgTWVt
b3J5SURCQmFja2luZ1N0b3JlOjpjcmVhdGUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTIwNTUxMgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL0lEQlNlcnZlci5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpJREJTZXJ2ZXI6OklEQlNlcnZlcjo6Y3JlYXRlQmFja2lu
Z1N0b3JlKTogQ2FsbCBtYWtlVW5pcXVlCisgICAgICAgIGluc3RlYWQgb2YgTWVtb3J5SURCQmFj
a2luZ1N0b3JlOjpjcmVhdGUuCisKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIv
TWVtb3J5Q3Vyc29yLmNwcDogUmVtb3ZlZCB1bm5lZWRlZCBpbmNsdWRlCisgICAgICAgIG9mIE1l
bW9yeUlEQkJhY2tpbmdTdG9yZS5oLgorCisgICAgICAgICogTW9kdWxlcy9pbmRleGVkZGIvc2Vy
dmVyL01lbW9yeUlEQkJhY2tpbmdTdG9yZS5jcHA6IEZpeGVkIGEgY29tbWVudAorICAgICAgICBh
bmQgcmVwbGFjZWQgYSBnbG9iYWwgdmFyaWFibGUgd2l0aCBhIGNvbnN0YW50LgorICAgICAgICAo
V2ViQ29yZTo6SURCU2VydmVyOjpNZW1vcnlJREJCYWNraW5nU3RvcmU6OmNyZWF0ZSk6IERlbGV0
ZWQuCisKKyAgICAgICAgKiBNb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvTWVtb3J5SURCQmFja2lu
Z1N0b3JlLmg6IE1hZGUgdGhlIGNsYXNzCisgICAgICAgIGZpbmFsLCBtYWRlIG1vcmUgb2YgdGhl
IG1lbWJlciBmdW5jdGlvbnMgcHJpdmF0ZSwgYW5kIG1vdmVkIGEgY291cGxlCisgICAgICAgIGZ1
bmN0aW9uIG1lbWJlcnMgb3V0IGZyb20gaW4gYmV0d2VlbiB0aGUgZGF0YSBtZW1iZXJzLgorCiAy
MDE5LTEyLTIwICB5b3Vlbm4gZmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAogICAgICAgICBS
ZW1vdmUgdGhlIGNlcnRpZmljYXRlIGluZm8gY2hlY2tzIHJlbGF0ZWQgdG8gZ2V0VXNlck1lZGlh
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvSURC
U2VydmVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9JREJT
ZXJ2ZXIuY3BwCmluZGV4IDVhNjFmM2JjODhjMTg2MjlmMDNmOWU5YmQyNjA5NjBlN2Y4MGIzYzQu
LmZhMWNhNjY5YTU1NTQyNDVmMjM3OTAwYjU4ZGE1ZDM1OTc1NjQ2MjYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9JREJTZXJ2ZXIuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9JREJTZXJ2ZXIuY3BwCkBA
IC0xMjgsNyArMTI4LDcgQEAgc3RkOjp1bmlxdWVfcHRyPElEQkJhY2tpbmdTdG9yZT4gSURCU2Vy
dmVyOjpjcmVhdGVCYWNraW5nU3RvcmUoY29uc3QgSURCRGF0YWJhc2UKIAogICAgIGF1dG8gZGF0
YWJhc2VEaXJlY3RvcnlQYXRoID0gdGhpcy0+ZGF0YWJhc2VEaXJlY3RvcnlQYXRoSXNvbGF0ZWRD
b3B5KCk7CiAgICAgaWYgKGRhdGFiYXNlRGlyZWN0b3J5UGF0aC5pc0VtcHR5KCkpCi0gICAgICAg
IHJldHVybiBNZW1vcnlJREJCYWNraW5nU3RvcmU6OmNyZWF0ZShtX3Nlc3Npb25JRCwgaWRlbnRp
Zmllcik7CisgICAgICAgIHJldHVybiBtYWtlVW5pcXVlPE1lbW9yeUlEQkJhY2tpbmdTdG9yZT4o
bV9zZXNzaW9uSUQsIGlkZW50aWZpZXIpOwogCiAgICAgcmV0dXJuIG1ha2VVbmlxdWU8U1FMaXRl
SURCQmFja2luZ1N0b3JlPihtX3Nlc3Npb25JRCwgaWRlbnRpZmllciwgZGF0YWJhc2VEaXJlY3Rv
cnlQYXRoKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5kZXhlZGRi
L3NlcnZlci9NZW1vcnlDdXJzb3IuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVk
ZGIvc2VydmVyL01lbW9yeUN1cnNvci5jcHAKaW5kZXggNjcwNTlmMzEzYTNhZjYyNzM2MWYzMWRk
OWMxZjZhN2VkMGMzZDliNy4uODJlYTE4NDA0ZGE2MmQ1YTFiYzVjYWNkOGI4MjhlM2UwZmFlNTU5
MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL01l
bW9yeUN1cnNvci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2Vy
dmVyL01lbW9yeUN1cnNvci5jcHAKQEAgLTI5LDcgKzI5LDYgQEAKICNpZiBFTkFCTEUoSU5ERVhF
RF9EQVRBQkFTRSkKIAogI2luY2x1ZGUgIklEQlJlc291cmNlSWRlbnRpZmllci5oIgotI2luY2x1
ZGUgIk1lbW9yeUlEQkJhY2tpbmdTdG9yZS5oIgogI2luY2x1ZGUgPHd0Zi9IYXNoTWFwLmg+CiAj
aW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvaW5kZXhlZGRiL3NlcnZlci9NZW1vcnlJREJCYWNraW5nU3RvcmUuY3BwIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL01lbW9yeUlEQkJhY2tpbmdT
dG9yZS5jcHAKaW5kZXggZWY1ZWFlMGYyYmQ0MzY2NmI2NmQ5OTMwMzQ0OGJmZmQ0MGUwNjc4My4u
NDM1MjIyOTIwMWMzYmQ3MDViYzZiZThjMGQ4ZjQ3NDk4ZTEwYWQ2NCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL01lbW9yeUlEQkJhY2tpbmdTdG9y
ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVyL01lbW9y
eUlEQkJhY2tpbmdTdG9yZS5jcHAKQEAgLTQzLDEzICs0Myw4IEBACiBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiBuYW1lc3BhY2UgSURCU2VydmVyIHsKIAotLy8gVGhlIEluZGV4ZWREQiBzcGVjIHN0YXRl
cyB0aGUgdmFsdWUgeW91IGNhbiBnZXQgZnJvbSB0aGUga2V5IGdlbmVyYXRvciBpcyAyXjUzCi1z
dGF0aWMgdWludDY0X3QgbWF4R2VuZXJhdGVkS2V5VmFsdWUgPSAweDIwMDAwMDAwMDAwMDAwOwot
Ci1zdGQ6OnVuaXF1ZV9wdHI8TWVtb3J5SURCQmFja2luZ1N0b3JlPiBNZW1vcnlJREJCYWNraW5n
U3RvcmU6OmNyZWF0ZShQQUw6OlNlc3Npb25JRCBzZXNzaW9uSUQsIGNvbnN0IElEQkRhdGFiYXNl
SWRlbnRpZmllciYgaWRlbnRpZmllcikKLXsKLSAgICByZXR1cm4gbWFrZVVuaXF1ZTxNZW1vcnlJ
REJCYWNraW5nU3RvcmU+KHNlc3Npb25JRCwgaWRlbnRpZmllcik7Ci19CisvLyBUaGUgSW5kZXhl
ZERCIHNwZWMgc3RhdGVzIHRoZSBtYXhpbXVtIHZhbHVlIHlvdSBjYW4gZ2V0IGZyb20gdGhlIGtl
eSBnZW5lcmF0b3IgaXMgMl41My4KK2NvbnN0ZXhwciB1aW50NjRfdCBtYXhHZW5lcmF0ZWRLZXlW
YWx1ZSA9IDB4MjAwMDAwMDAwMDAwMDA7CiAKIE1lbW9yeUlEQkJhY2tpbmdTdG9yZTo6TWVtb3J5
SURCQmFja2luZ1N0b3JlKFBBTDo6U2Vzc2lvbklEIHNlc3Npb25JRCwgY29uc3QgSURCRGF0YWJh
c2VJZGVudGlmaWVyJiBpZGVudGlmaWVyKQogICAgIDogbV9pZGVudGlmaWVyKGlkZW50aWZpZXIp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9zZXJ2ZXIvTWVt
b3J5SURCQmFja2luZ1N0b3JlLmggYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL2luZGV4ZWRkYi9z
ZXJ2ZXIvTWVtb3J5SURCQmFja2luZ1N0b3JlLmgKaW5kZXggY2YyMWQ5ODYwYmQxYzAzMDVlYWIy
N2RjOTI3NzM5NDEyN2I0ZjQ2OC4uMDQzZjIyNGRhOThmMGJkZWIwMDdiYmUwNDI0MjQxYzczNDdi
YzhiMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9pbmRleGVkZGIvc2VydmVy
L01lbW9yeUlEQkJhY2tpbmdTdG9yZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvaW5k
ZXhlZGRiL3NlcnZlci9NZW1vcnlJREJCYWNraW5nU3RvcmUuaApAQCAtMzksNyArMzksNyBAQCBu
YW1lc3BhY2UgSURCU2VydmVyIHsKIAogY2xhc3MgTWVtb3J5T2JqZWN0U3RvcmU7CiAKLWNsYXNz
IE1lbW9yeUlEQkJhY2tpbmdTdG9yZSA6IHB1YmxpYyBJREJCYWNraW5nU3RvcmUgeworY2xhc3Mg
TWVtb3J5SURCQmFja2luZ1N0b3JlIGZpbmFsIDogcHVibGljIElEQkJhY2tpbmdTdG9yZSB7CiAg
ICAgV1RGX01BS0VfRkFTVF9BTExPQ0FURUQ7CiBwdWJsaWM6CiAgICAgc3RhdGljIHN0ZDo6dW5p
cXVlX3B0cjxNZW1vcnlJREJCYWNraW5nU3RvcmU+IGNyZWF0ZShQQUw6OlNlc3Npb25JRCwgY29u
c3QgSURCRGF0YWJhc2VJZGVudGlmaWVyJik7CkBAIC01MCw2ICs1MCwxMCBAQCBwdWJsaWM6CiAg
ICAgSURCRXJyb3IgZ2V0T3JFc3RhYmxpc2hEYXRhYmFzZUluZm8oSURCRGF0YWJhc2VJbmZvJikg
ZmluYWw7CiAgICAgdm9pZCBzZXREYXRhYmFzZUluZm8oY29uc3QgSURCRGF0YWJhc2VJbmZvJik7
CiAKKyAgICB2b2lkIHJlbW92ZU9iamVjdFN0b3JlRm9yVmVyc2lvbkNoYW5nZUFib3J0KE1lbW9y
eU9iamVjdFN0b3JlJik7CisgICAgdm9pZCByZXN0b3JlT2JqZWN0U3RvcmVGb3JWZXJzaW9uQ2hh
bmdlQWJvcnQoUmVmPE1lbW9yeU9iamVjdFN0b3JlPiYmKTsKKworcHJpdmF0ZToKICAgICBJREJF
cnJvciBiZWdpblRyYW5zYWN0aW9uKGNvbnN0IElEQlRyYW5zYWN0aW9uSW5mbyYpIGZpbmFsOwog
ICAgIElEQkVycm9yIGFib3J0VHJhbnNhY3Rpb24oY29uc3QgSURCUmVzb3VyY2VJZGVudGlmaWVy
JiB0cmFuc2FjdGlvbklkZW50aWZpZXIpIGZpbmFsOwogICAgIElEQkVycm9yIGNvbW1pdFRyYW5z
YWN0aW9uKGNvbnN0IElEQlJlc291cmNlSWRlbnRpZmllciYgdHJhbnNhY3Rpb25JZGVudGlmaWVy
KSBmaW5hbDsKQEAgLTgwLDI0ICs4NCwyMSBAQCBwdWJsaWM6CiAgICAgYm9vbCBzdXBwb3J0c1Np
bXVsdGFuZW91c1RyYW5zYWN0aW9ucygpIGZpbmFsIHsgcmV0dXJuIHRydWU7IH0KICAgICBib29s
IGlzRXBoZW1lcmFsKCkgZmluYWwgeyByZXR1cm4gdHJ1ZTsgfQogCi0gICAgdm9pZCByZW1vdmVP
YmplY3RTdG9yZUZvclZlcnNpb25DaGFuZ2VBYm9ydChNZW1vcnlPYmplY3RTdG9yZSYpOwotICAg
IHZvaWQgcmVzdG9yZU9iamVjdFN0b3JlRm9yVmVyc2lvbkNoYW5nZUFib3J0KFJlZjxNZW1vcnlP
YmplY3RTdG9yZT4mJik7Ci0KICAgICBib29sIGhhc1RyYW5zYWN0aW9uKGNvbnN0IElEQlJlc291
cmNlSWRlbnRpZmllciYgaWRlbnRpZmllcikgY29uc3QgZmluYWwgeyByZXR1cm4gbV90cmFuc2Fj
dGlvbnMuY29udGFpbnMoaWRlbnRpZmllcik7IH0KIAotcHJpdmF0ZToKICAgICBSZWZQdHI8TWVt
b3J5T2JqZWN0U3RvcmU+IHRha2VPYmplY3RTdG9yZUJ5SWRlbnRpZmllcih1aW50NjRfdCBpZGVu
dGlmaWVyKTsKIAogICAgIHZvaWQgY2xvc2UoKSBmaW5hbDsKIAorICAgIHZvaWQgcmVnaXN0ZXJP
YmplY3RTdG9yZShSZWY8TWVtb3J5T2JqZWN0U3RvcmU+JiYpOworICAgIHZvaWQgdW5yZWdpc3Rl
ck9iamVjdFN0b3JlKE1lbW9yeU9iamVjdFN0b3JlJik7CisKICAgICBJREJEYXRhYmFzZUlkZW50
aWZpZXIgbV9pZGVudGlmaWVyOwogICAgIFBBTDo6U2Vzc2lvbklEIG1fc2Vzc2lvbklEOwogICAg
IHN0ZDo6dW5pcXVlX3B0cjxJREJEYXRhYmFzZUluZm8+IG1fZGF0YWJhc2VJbmZvOwogCiAgICAg
SGFzaE1hcDxJREJSZXNvdXJjZUlkZW50aWZpZXIsIHN0ZDo6dW5pcXVlX3B0cjxNZW1vcnlCYWNr
aW5nU3RvcmVUcmFuc2FjdGlvbj4+IG1fdHJhbnNhY3Rpb25zOwogCi0gICAgdm9pZCByZWdpc3Rl
ck9iamVjdFN0b3JlKFJlZjxNZW1vcnlPYmplY3RTdG9yZT4mJik7Ci0gICAgdm9pZCB1bnJlZ2lz
dGVyT2JqZWN0U3RvcmUoTWVtb3J5T2JqZWN0U3RvcmUmKTsKICAgICBIYXNoTWFwPHVpbnQ2NF90
LCBSZWZQdHI8TWVtb3J5T2JqZWN0U3RvcmU+PiBtX29iamVjdFN0b3Jlc0J5SWRlbnRpZmllcjsK
ICAgICBIYXNoTWFwPFN0cmluZywgTWVtb3J5T2JqZWN0U3RvcmUqPiBtX29iamVjdFN0b3Jlc0J5
TmFtZTsKIH07Cg==
</data>
<flag name="review"
          id="402047"
          type_id="1"
          status="+"
          setter="youennf"
    />
          </attachment>
      

    </bug>

</bugzilla>