<?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>215718</bug_id>
          
          <creation_ts>2020-08-20 17:03:31 -0700</creation_ts>
          <short_desc>PlatformPasteboard::getPathnamesForType() assumes the pasteboard type property list is an NSArray of NSStrings</short_desc>
          <delta_ts>2020-09-08 14:06:54 -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>WebKit Misc.</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>WONTFIX</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="Kate Cheney">katherine_cheney</reporter>
          <assigned_to name="Kate Cheney">katherine_cheney</assigned_to>
          <cc>darin</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1681865</commentid>
    <comment_count>0</comment_count>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2020-08-20 17:03:31 -0700</bug_when>
    <thetext>This is not always the case, so we should probably handle other cases</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1681866</commentid>
    <comment_count>1</comment_count>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2020-08-20 17:04:00 -0700</bug_when>
    <thetext>&lt;rdar://problem/67505327&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1681868</commentid>
    <comment_count>2</comment_count>
      <attachid>406979</attachid>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2020-08-20 17:11:01 -0700</bug_when>
    <thetext>Created attachment 406979
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1683532</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-08-27 17:09:49 -0700</bug_when>
    <thetext>&lt;rdar://problem/67906582&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1686710</commentid>
    <comment_count>4</comment_count>
      <attachid>408262</attachid>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2020-09-08 13:17:01 -0700</bug_when>
    <thetext>Created attachment 408262
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1686713</commentid>
    <comment_count>5</comment_count>
      <attachid>408262</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-09-08 13:25:01 -0700</bug_when>
    <thetext>Comment on attachment 408262
Patch

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

&gt; Source/WebCore/platform/mac/PlatformPasteboardMac.mm:113
&gt; +        if ([[paths objectAtIndex:0] isKindOfClass:[NSArray class]]) {
&gt; +            [paths enumerateObjectsUsingBlock:^(NSArray *plistEntry, NSUInteger, BOOL *) {
&gt; +                pathnames.appendVector(makeVector&lt;String&gt;(plistEntry));
&gt; +            }];
&gt; +            return;
&gt; +        }

This is very interesting. What is the semantics of this array of arrays? Why is it correct to flatten out this array of arrays into a single vector of strings? Are all the strings in all these arrays pathnames? Why is this structured that way?

(Separately, sadly appendVector(makeVector) is not particularly efficient, and we might want to improve that later.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1686723</commentid>
    <comment_count>6</comment_count>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2020-09-08 13:43:06 -0700</bug_when>
    <thetext>(In reply to Darin Adler from comment #5)
&gt; Comment on attachment 408262 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=408262&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/platform/mac/PlatformPasteboardMac.mm:113
&gt; &gt; +        if ([[paths objectAtIndex:0] isKindOfClass:[NSArray class]]) {
&gt; &gt; +            [paths enumerateObjectsUsingBlock:^(NSArray *plistEntry, NSUInteger, BOOL *) {
&gt; &gt; +                pathnames.appendVector(makeVector&lt;String&gt;(plistEntry));
&gt; &gt; +            }];
&gt; &gt; +            return;
&gt; &gt; +        }
&gt; 
&gt; This is very interesting. What is the semantics of this array of arrays? Why
&gt; is it correct to flatten out this array of arrays into a single vector of
&gt; strings? Are all the strings in all these arrays pathnames? Why is this
&gt; structured that way?

I noticed this while investigating another bug, but haven&apos;t actually been able to reproduce any user-facing impact (trying now). I thought it was strange that WebKit itself sets property lists of NSArrays of NSArrays but here assumes the type is an NSArray of NSStrings. Maybe we don&apos;t care about that case in PlatformPasteboard::getPathnamesForType().

&gt; 
&gt; (Separately, sadly appendVector(makeVector) is not particularly efficient,
&gt; and we might want to improve that later.)

Noted, I did not know it was inefficient.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1686736</commentid>
    <comment_count>7</comment_count>
    <who name="Kate Cheney">katherine_cheney</who>
    <bug_when>2020-09-08 14:06:03 -0700</bug_when>
    <thetext>(In reply to katherine_cheney from comment #6)
&gt; (In reply to Darin Adler from comment #5)
&gt; &gt; Comment on attachment 408262 [details]
&gt; &gt; Patch
&gt; &gt; 
&gt; &gt; View in context:
&gt; &gt; https://bugs.webkit.org/attachment.cgi?id=408262&amp;action=review
&gt; &gt; 
&gt; &gt; &gt; Source/WebCore/platform/mac/PlatformPasteboardMac.mm:113
&gt; &gt; &gt; +        if ([[paths objectAtIndex:0] isKindOfClass:[NSArray class]]) {
&gt; &gt; &gt; +            [paths enumerateObjectsUsingBlock:^(NSArray *plistEntry, NSUInteger, BOOL *) {
&gt; &gt; &gt; +                pathnames.appendVector(makeVector&lt;String&gt;(plistEntry));
&gt; &gt; &gt; +            }];
&gt; &gt; &gt; +            return;
&gt; &gt; &gt; +        }
&gt; &gt; 
&gt; &gt; This is very interesting. What is the semantics of this array of arrays? Why
&gt; &gt; is it correct to flatten out this array of arrays into a single vector of
&gt; &gt; strings? Are all the strings in all these arrays pathnames? Why is this
&gt; &gt; structured that way?
&gt; 
&gt; I noticed this while investigating another bug, but haven&apos;t actually been
&gt; able to reproduce any user-facing impact (trying now). I thought it was
&gt; strange that WebKit itself sets property lists of NSArrays of NSArrays but
&gt; here assumes the type is an NSArray of NSStrings. Maybe we don&apos;t care about
&gt; that case in PlatformPasteboard::getPathnamesForType().
&gt; 

Actually, looking at other parts of the code, you&apos;re right. PlatformPasteboard::getPathnamesForType() should only need to handle the case of NSArray of NSStrings, because the NSArray of NSArray case is not pathname-related. Closing this bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>406979</attachid>
            <date>2020-08-20 17:11:01 -0700</date>
            <delta_ts>2020-09-08 13:16:59 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-215718-20200820171100.patch</filename>
            <type>text/plain</type>
            <size>5409</size>
            <attacher name="Kate Cheney">katherine_cheney</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY1OTQzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzllM2QxYjhmN2EyNDVm
MDU0MDBiZDcxZWQ3YWRhZDZkYTcxMGM3Zi4uMDY2MjkwZDkzNzRkOTE5MDcyMDNlNjdmZDlkOTEz
ODcxMDUxZWQ5NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDIwLTA4LTIwICBLYXRl
IENoZW5leSAgPGthdGhlcmluZV9jaGVuZXlAYXBwbGUuY29tPgorCisgICAgICAgIFBsYXRmb3Jt
UGFzdGVib2FyZDo6Z2V0UGF0aG5hbWVzRm9yVHlwZSgpIGFzc3VtZXMgdGhlIHBhc3RlYm9hcmQg
dHlwZSBwcm9wZXJ0eSBsaXN0IGlzIGFuIE5TQXJyYXkgb2YgTlNTdHJpbmdzCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTU3MTgKKyAgICAgICAgPHJk
YXI6Ly9wcm9ibGVtLzY3NTA1MzI3PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIERvbid0IGF1dG9tYXRpY2FsbHkgYXNzdW1lIHByb3BlcnR5TGlzdEZv
clR5cGU6IHJldHVybnMgYW4gTlNBcnJheSBvZgorICAgICAgICBOU1N0cmluZ3MuIEhhbmRsZSB0
aGUgY2FzZSBvZiBOU0FycmF5IG9mIE5TQXJyYXlzLCB3aGljaCBhbHNvIGNvdWxkCisgICAgICAg
IGJlIHVzZWQuIEFkZCBhbiBBU1NFUlQgaWYgdGhlIHR5cGUgaXMgbm90IGVpdGhlciBvZiB0aG9z
ZSwgc28gd2UgY2FuCisgICAgICAgIHRyYWNrIGRvd24gYW5kIGhhbmRsZSBvdGhlciBjYXNlcy4K
KworICAgICAgICAqIHBsYXRmb3JtL21hYy9QbGF0Zm9ybVBhc3RlYm9hcmRNYWMubW06CisgICAg
ICAgIChXZWJDb3JlOjpQbGF0Zm9ybVBhc3RlYm9hcmQ6OmdldFBhdGhuYW1lc0ZvclR5cGUgY29u
c3QpOgorCiAyMDIwLTA4LTE5ICBLYXRlIENoZW5leSAgPGthdGhlcmluZV9jaGVuZXlAYXBwbGUu
Y29tPgogCiAgICAgICAgIFRoaXJkIHBhcnR5IGRvbWFpbnMgYXJlIG5vdCBzdG9yZWQgaW4gdGhl
IGNhc2Ugb2YgYmFjay9mb3J3YXJkIG5hdmlnYXRpb25zCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9tYWMvUGxhdGZvcm1QYXN0ZWJvYXJkTWFjLm1tIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbWFjL1BsYXRmb3JtUGFzdGVib2FyZE1hYy5tbQppbmRleCBmYmVhNTM2MWI5
YzNlOGMzMDc2OGRlM2ZhZWVhMzllNWFiOWNmZDFlLi4yMTJhOGEyODU0MmU5MzgzYTE3NjU3Y2Ez
ZjRmZGVhZGNkOWNkYWJkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMv
UGxhdGZvcm1QYXN0ZWJvYXJkTWFjLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21h
Yy9QbGF0Zm9ybVBhc3RlYm9hcmRNYWMubW0KQEAgLTk4LDcgKzk4LDIzIEBAIHZvaWQgUGxhdGZv
cm1QYXN0ZWJvYXJkOjpnZXRQYXRobmFtZXNGb3JUeXBlKFZlY3RvcjxTdHJpbmc+JiBwYXRobmFt
ZXMsIGNvbnN0IFN0CiAgICAgICAgIHBhdGhuYW1lcy5hcHBlbmQoKE5TU3RyaW5nICopcGF0aHMp
OwogICAgICAgICByZXR1cm47CiAgICAgfQotICAgIHBhdGhuYW1lcyA9IG1ha2VWZWN0b3I8U3Ry
aW5nPihwYXRocyk7CisgICAgaWYgKFtwYXRocyBpc0tpbmRPZkNsYXNzOltOU0FycmF5IGNsYXNz
XV0pIHsKKyAgICAgICAgaWYgKCFbcGF0aHMgY291bnRdKQorICAgICAgICAgICAgcmV0dXJuOwor
ICAgICAgICBpZCBwbGlzdE9iamVjdCA9IFtwYXRocyBvYmplY3RBdEluZGV4OjBdOworICAgICAg
ICBpZiAoW3BsaXN0T2JqZWN0IGlzS2luZE9mQ2xhc3M6W05TU3RyaW5nIGNsYXNzXV0pIHsKKyAg
ICAgICAgICAgIHBhdGhuYW1lcyA9IG1ha2VWZWN0b3I8U3RyaW5nPihwYXRocyk7CisgICAgICAg
ICAgICByZXR1cm47CisgICAgICAgIH0KKyAgICAgICAgaWYgKFtwbGlzdE9iamVjdCBpc0tpbmRP
ZkNsYXNzOltOU0FycmF5IGNsYXNzXV0pIHsKKyAgICAgICAgICAgIFtwYXRocyBlbnVtZXJhdGVP
YmplY3RzVXNpbmdCbG9jazpeKE5TQXJyYXkgKnBsaXN0RW50cnksIE5TVUludGVnZXIsIEJPT0wg
KikgeworICAgICAgICAgICAgICAgIHBhdGhuYW1lcy5hcHBlbmRWZWN0b3IobWFrZVZlY3RvcjxT
dHJpbmc+KHBsaXN0RW50cnkpKTsKKyAgICAgICAgICAgIH1dOworICAgICAgICAgICAgcmV0dXJu
OworICAgICAgICB9CisgICAgfQorICAgIC8vIFdlIGRvIG5vdCBoYW5kbGUgcHJvcGVydHkgbGlz
dHMgdGhhdCBhcmUgbm90IG9mIHRoZSBmb3JtIE5TQXJyYXk8TlNTdHJpbmc+IG9yIE5TQXJyYXk8
TlNBcnJheTxOU1N0cmluZz4+LgorICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwogfQogCiBzdGF0
aWMgYm9vbCBwYXN0ZWJvYXJkTWF5Q29udGFpbkZpbGVQYXRocyhOU1Bhc3RlYm9hcmQgKnBhc3Rl
Ym9hcmQpCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5k
ZXggNmMxMmU5NzhiOGJjNmFiN2E5MThiOTNmZjIwYWQ1NzliYzQ0MzM3ZC4uYTA0Y2M2OWE1MWUy
NzhkNDE3MjAzZTA2ODBjY2Y0ZTlhMzJiYjVlZCAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9n
CisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDIwLTA4LTIwICBLYXRl
IENoZW5leSAgPGthdGhlcmluZV9jaGVuZXlAYXBwbGUuY29tPgorCisgICAgICAgIFBsYXRmb3Jt
UGFzdGVib2FyZDo6Z2V0UGF0aG5hbWVzRm9yVHlwZSgpIGFzc3VtZXMgdGhlIHBhc3RlYm9hcmQg
dHlwZSBwcm9wZXJ0eSBsaXN0IGlzIGFuIE5TQXJyYXkgb2YgTlNTdHJpbmdzCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTU3MTgKKyAgICAgICAgPHJk
YXI6Ly9wcm9ibGVtLzY3NTA1MzI3PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIEFkZCBBUEkgdGVzdCBjb3ZlcmFnZS4gVGhpcyB1c2VzIHRoZSBjYXNl
IG9mCisgICAgICAgIFBsYXRmb3JtUGFzdGVib2FyZDo6c2V0VVJMKCksIHdoaWNoIHNldHMgdGhl
IHByb3BlcnR5TGlzdEZvclR5cGUKKyAgICAgICAgdmFsdWUgdG8gYmUgYW4gTlNBcnJheSBvZiBO
U0FycmF5cy4gV2UgY2FuIHRoZW4gY2FsbAorICAgICAgICBQbGF0Zm9ybVBhc3RlYm9hcmQ6Omdl
dFBhdGhuYW1lc0ZvclR5cGUoKSBhbmQgbWFrZSBzdXJlIGl0IHJldHVybnMgdGhlCisgICAgICAg
IGNvcnJlY3QgdmFsdWVzLgorCisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRD
b2NvYS9EcmFnQW5kRHJvcFRlc3RzLm1tOgorICAgICAgICAoVEVTVCk6CisKIDIwMjAtMDgtMjAg
IEpvbmF0aGFuIEJlZGFyZCAgPGpiZWRhcmRAYXBwbGUuY29tPgogCiAgICAgICAgIFt3ZWJraXRj
b3JlcHldIE1vdmUgVGltZW91dCB0byB3ZWJraXRjb3JlcHkgKFBhcnQgMSkKZGlmZiAtLWdpdCBh
L1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvRHJhZ0FuZERyb3BUZXN0cy5t
bSBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvRHJhZ0FuZERyb3BUZXN0
cy5tbQppbmRleCBlNzdlNWE1Mzk2NDc5NWRkYTM1NjY3M2Y5ODhkZjRiYTQ1ZjljODI3Li5iOTll
OTY4ZDI3NDI3NWQ4YzA5M2M2OTNiM2Q0NWIzY2JlM2E1YWMyIDEwMDY0NAotLS0gYS9Ub29scy9U
ZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL0RyYWdBbmREcm9wVGVzdHMubW0KKysrIGIv
VG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9EcmFnQW5kRHJvcFRlc3RzLm1t
CkBAIC0zMCw4ICszMCwxMSBAQAogCiAjaW1wb3J0ICJEcmFnQW5kRHJvcFNpbXVsYXRvci5oIgog
I2ltcG9ydCAiUGxhdGZvcm1VdGlsaXRpZXMuaCIKKyNpbXBvcnQgPFdlYkNvcmUvUGxhdGZvcm1Q
YXN0ZWJvYXJkLmg+CiAjaW1wb3J0IDxXZWJLaXQvV0tQcmVmZXJlbmNlc1ByaXZhdGUuaD4KICNp
bXBvcnQgPFdlYktpdC9XZWJBcmNoaXZlLmg+CisjaW1wb3J0IDx3dGYvVmVjdG9yLmg+CisjaW5j
bHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQog
I2ltcG9ydCA8TW9iaWxlQ29yZVNlcnZpY2VzL01vYmlsZUNvcmVTZXJ2aWNlcy5oPgpAQCAtMzgx
LDYgKzM4NCwyNiBAQCBURVNUKERyYWdBbmREcm9wVGVzdHMsIENvbG9ySW5wdXRFdmVudHMpCiAg
ICAgVGVzdFdlYktpdEFQSTo6VXRpbDo6cnVuKCZjaGFuZ2VFdmVudEZpcmVkKTsKIH0KIAorVEVT
VChEcmFnQW5kRHJvcFRlc3RzLCBTZXRVUkxUaGVuR2V0UGF0aG5hbWVzKQoreworICAgIGF1dG8g
c2ltdWxhdG9yID0gYWRvcHROUyhbW0RyYWdBbmREcm9wU2ltdWxhdG9yIGFsbG9jXSBpbml0V2l0
aFdlYlZpZXdGcmFtZTpDR1JlY3RNYWtlKDAsIDAsIDMyMCwgNTAwKV0pOworICAgIGF1dG8gd2Vi
VmlldyA9IFtzaW11bGF0b3Igd2ViVmlld107CisgICAgV0tQcmVmZXJlbmNlc1NldEN1c3RvbVBh
c3RlYm9hcmREYXRhRW5hYmxlZCgoX19icmlkZ2UgV0tQcmVmZXJlbmNlc1JlZilbd2ViVmlldyBj
b25maWd1cmF0aW9uXS5wcmVmZXJlbmNlcywgdHJ1ZSk7CisKKyAgICAvLyBMb2FkIGEgZmlsZSB3
aGljaCBzZXRzIGEgcGFzdGVib2FyZCBVUkwgdmlhIFBsYXRmb3JtUGFzdGVib2FyZDo6c2V0VVJM
KCkuIEluIHRoaXMgY2FzZSBpdCBpcyBhcHBsZS5jb20uCisgICAgW3dlYlZpZXcgc3luY2hyb25v
dXNseUxvYWRUZXN0UGFnZU5hbWVkOkAibGluay1hbmQtdGFyZ2V0LWRpdiJdOworICAgIFtzaW11
bGF0b3IgcnVuRnJvbTpDR1BvaW50TWFrZSgxNjAsIDEwMCkgdG86Q0dQb2ludE1ha2UoMTYwLCAz
MDApXTsKKworICAgIFZlY3RvcjxTdHJpbmc+IHBhdGhuYW1lczsKKyAgICBOU1N0cmluZyAqcGFz
dGVib2FyZFR5cGUgPSBbTlNTdHJpbmcgc3RyaW5nV2l0aFVURjhTdHJpbmc6IldlYlVSTHNXaXRo
VGl0bGVzUGJvYXJkVHlwZSJdOworICAgIFN0cmluZyBwYXN0ZWJvYXJkTmFtZSA9ICJBcHBsZSBD
RlBhc3RlYm9hcmQgZHJhZyI7CisgICAgV2ViQ29yZTo6UGxhdGZvcm1QYXN0ZWJvYXJkKHBhc3Rl
Ym9hcmROYW1lKS5nZXRQYXRobmFtZXNGb3JUeXBlKHBhdGhuYW1lcywgcGFzdGVib2FyZFR5cGUp
OworCisgICAgRVhQRUNUX0VRKHN0YXRpY19jYXN0PGludD4ocGF0aG5hbWVzLnNpemUoKSksIDIp
OworICAgIEVYUEVDVF9XS19TVFJFUShwYXRobmFtZXMuYXQoMCksICJodHRwczovL3d3dy5hcHBs
ZS5jb20vIik7CisgICAgRVhQRUNUX1dLX1NUUkVRKHBhdGhuYW1lcy5hdCgxKSwgIkhlbGxvIHdv
cmxkIik7Cit9CisKICNlbmRpZiAvLyBFTkFCTEUoSU5QVVRfVFlQRV9DT0xPUikKIAogI2VuZGlm
IC8vIEVOQUJMRShEUkFHX1NVUFBPUlQpICYmICFQTEFURk9STShNQUNDQVRBTFlTVCkK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>408262</attachid>
            <date>2020-09-08 13:17:01 -0700</date>
            <delta_ts>2020-09-08 14:06:10 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-215718-20200908131700.patch</filename>
            <type>text/plain</type>
            <size>5821</size>
            <attacher name="Kate Cheney">katherine_cheney</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY2NzI3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTNiYjdlMGU0MTA4MDRh
Y2Q0YjU4MGMyYjJkMjBiOWE1YjY4ZmEwYS4uZjliYTAzNjJiMTIwNDBjYzg2MWMwNzdiNTg5NmE4
NDAxYzNlZjgyMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDIwLTA5LTA4ICBLYXRl
IENoZW5leSAgPGthdGhlcmluZV9jaGVuZXlAYXBwbGUuY29tPgorCisgICAgICAgIFBsYXRmb3Jt
UGFzdGVib2FyZDo6Z2V0UGF0aG5hbWVzRm9yVHlwZSgpIGFzc3VtZXMgdGhlIHBhc3RlYm9hcmQg
dHlwZSBwcm9wZXJ0eSBsaXN0IGlzIGFuIE5TQXJyYXkgb2YgTlNTdHJpbmdzCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTU3MTgKKyAgICAgICAgPHJk
YXI6Ly9wcm9ibGVtLzY3NTA1MzI3PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIERvbid0IGF1dG9tYXRpY2FsbHkgYXNzdW1lIHRoZSBwcm9wZXJ0eUxp
c3RGb3JUeXBlOiBOU1Bhc3RlYm9hcmQgZnVuY3Rpb24KKyAgICAgICAgcmV0dXJucyBhbiBOU0Fy
cmF5IG9mIE5TU3RyaW5ncy4gSGFuZGxlIHRoZSBjYXNlIG9mIE5TQXJyYXkgb2YgTlNBcnJheXMs
CisgICAgICAgIHdoaWNoIGFsc28gY291bGQgYmUgdXNlZCwgZm9yIGV4YW1wbGUgd2hlbiB1c2lu
ZyBQbGF0Zm9ybVBhc3RlYm9hcmQ6OnNldFVSTCgpLgorICAgICAgICBBZGQgYW4gQVNTRVJUIGlm
IHRoZSB0eXBlIGlzIG5vdCBlaXRoZXIgb2YgdGhvc2UsIHNvIHdlIGNhbgorICAgICAgICB0cmFj
ayBkb3duIGFuZCBoYW5kbGUgb3RoZXIgY2FzZXMuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMv
UGxhdGZvcm1QYXN0ZWJvYXJkTWFjLm1tOgorICAgICAgICAoV2ViQ29yZTo6UGxhdGZvcm1QYXN0
ZWJvYXJkOjpnZXRQYXRobmFtZXNGb3JUeXBlIGNvbnN0KToKKwogMjAyMC0wOS0wOCAgWmFsYW4g
QnVqdGFzICA8emFsYW5AYXBwbGUuY29tPgogCiAgICAgICAgIFtMRkNdW0lGQ10gUmVtb3ZlIHJl
ZHVuZGFudCBGb3JtYXR0aW5nQ29udGV4dDo6UXVpcmtzOjpsaW5lRGVzY2VudE5lZWRzQ29sbGFw
c2luZwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1BsYXRmb3JtUGFz
dGVib2FyZE1hYy5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9QbGF0Zm9ybVBhc3Rl
Ym9hcmRNYWMubW0KaW5kZXggZmJlYTUzNjFiOWMzZThjMzA3NjhkZTNmYWVlYTM5ZTVhYjljZmQx
ZS4uY2RmZWQ5MGE1NTFkMjA2MzkyOTYzZDlkYWU0NzFkMTEwOTRlMjczNCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1BsYXRmb3JtUGFzdGVib2FyZE1hYy5tbQorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvUGxhdGZvcm1QYXN0ZWJvYXJkTWFjLm1tCkBA
IC05OCw3ICs5OCwyMyBAQCB2b2lkIFBsYXRmb3JtUGFzdGVib2FyZDo6Z2V0UGF0aG5hbWVzRm9y
VHlwZShWZWN0b3I8U3RyaW5nPiYgcGF0aG5hbWVzLCBjb25zdCBTdAogICAgICAgICBwYXRobmFt
ZXMuYXBwZW5kKChOU1N0cmluZyAqKXBhdGhzKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KLSAg
ICBwYXRobmFtZXMgPSBtYWtlVmVjdG9yPFN0cmluZz4ocGF0aHMpOworICAgIGlmIChbcGF0aHMg
aXNLaW5kT2ZDbGFzczpbTlNBcnJheSBjbGFzc11dKSB7CisgICAgICAgIGlmICghW3BhdGhzIGNv
dW50XSkKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgaWYgKFtbcGF0aHMgb2JqZWN0QXRJ
bmRleDowXSBpc0tpbmRPZkNsYXNzOltOU1N0cmluZyBjbGFzc11dKSB7CisgICAgICAgICAgICBw
YXRobmFtZXMgPSBtYWtlVmVjdG9yPFN0cmluZz4ocGF0aHMpOworICAgICAgICAgICAgcmV0dXJu
OworICAgICAgICB9CisgICAgICAgIGlmIChbW3BhdGhzIG9iamVjdEF0SW5kZXg6MF0gaXNLaW5k
T2ZDbGFzczpbTlNBcnJheSBjbGFzc11dKSB7CisgICAgICAgICAgICBbcGF0aHMgZW51bWVyYXRl
T2JqZWN0c1VzaW5nQmxvY2s6XihOU0FycmF5ICpwbGlzdEVudHJ5LCBOU1VJbnRlZ2VyLCBCT09M
ICopIHsKKyAgICAgICAgICAgICAgICBwYXRobmFtZXMuYXBwZW5kVmVjdG9yKG1ha2VWZWN0b3I8
U3RyaW5nPihwbGlzdEVudHJ5KSk7CisgICAgICAgICAgICB9XTsKKyAgICAgICAgICAgIHJldHVy
bjsKKyAgICAgICAgfQorICAgIH0KKworICAgIC8vIFdlIGRvIG5vdCBoYW5kbGUgcHJvcGVydHkg
bGlzdHMgdGhhdCBhcmUgbm90IG9mIHRoZSBmb3JtIFtOU1N0cmluZy4uLl0gb3IgW1tOU1N0cmlu
Z10sIFtOU1N0cmluZ10sIC4uLl0uCisgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CiB9CiAKIHN0
YXRpYyBib29sIHBhc3RlYm9hcmRNYXlDb250YWluRmlsZVBhdGhzKE5TUGFzdGVib2FyZCAqcGFz
dGVib2FyZCkKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwpp
bmRleCA1MzBjZjg0ZGY3MGFlNWM2NDRmM2ZmMjYwN2ZmNjA1NjRmNWJkZDcxLi4xM2U5MTBlNTlj
MDcwM2QzN2ZlNGE4NWIxODdjZmFlMTMxNjZlOGZiIDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VM
b2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIwMjAtMDktMDggIEth
dGUgQ2hlbmV5ICA8a2F0aGVyaW5lX2NoZW5leUBhcHBsZS5jb20+CisKKyAgICAgICAgUGxhdGZv
cm1QYXN0ZWJvYXJkOjpnZXRQYXRobmFtZXNGb3JUeXBlKCkgYXNzdW1lcyB0aGUgcGFzdGVib2Fy
ZCB0eXBlIHByb3BlcnR5IGxpc3QgaXMgYW4gTlNBcnJheSBvZiBOU1N0cmluZ3MKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNTcxOAorICAgICAgICA8
cmRhcjovL3Byb2JsZW0vNjc1MDUzMjc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgQWRkIEFQSSB0ZXN0IGNvdmVyYWdlLiBUaGlzIHVzZXMgdGhlIGNh
c2Ugb2YKKyAgICAgICAgUGxhdGZvcm1QYXN0ZWJvYXJkOjpzZXRVUkwoKSwgd2hpY2ggc2V0cyB0
aGUgcHJvcGVydHlMaXN0Rm9yVHlwZQorICAgICAgICB2YWx1ZSB0byBiZSBhbiBOU0FycmF5IG9m
IE5TQXJyYXlzLiBXZSBjYW4gdGhlbiBjYWxsCisgICAgICAgIFBsYXRmb3JtUGFzdGVib2FyZDo6
Z2V0UGF0aG5hbWVzRm9yVHlwZSgpIGFuZCBtYWtlIHN1cmUgaXQgcmV0dXJucyB0aGUKKyAgICAg
ICAgY29ycmVjdCB2YWx1ZXMuIFRoZSBjYXNlIG9mIGFuIE5TQXJyYXkgb2YgTlNTdHJpbmdzIGlz
IGFscmVhZHkgY292ZXJlZAorICAgICAgICBieSBvdGhlciBEcmFnIGFuZCBEcm9wIHRlc3RzLgor
CisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9EcmFnQW5kRHJvcFRl
c3RzLm1tOgorICAgICAgICAoVEVTVCk6CisKIDIwMjAtMDktMDggIFBoaWxpcHBlIE5vcm1hbmQg
IDxwbm9ybWFuZEBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtGbGF0cGFrIFNES10gRm9sbG93LXVw
IGZpeGVzIGZvciAwLjMgYnJhbmNoCmRpZmYgLS1naXQgYS9Ub29scy9UZXN0V2ViS2l0QVBJL1Rl
c3RzL1dlYktpdENvY29hL0RyYWdBbmREcm9wVGVzdHMubW0gYi9Ub29scy9UZXN0V2ViS2l0QVBJ
L1Rlc3RzL1dlYktpdENvY29hL0RyYWdBbmREcm9wVGVzdHMubW0KaW5kZXggZTc3ZTVhNTM5NjQ3
OTVkZGEzNTY2NzNmOTg4ZGY0YmE0NWY5YzgyNy4uNzVhZGUyYzFiYWQ4OGExOTkzNmJiZDI4ZmM4
MWQ1OTMyMjc4ZjJhOCAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJL
aXRDb2NvYS9EcmFnQW5kRHJvcFRlc3RzLm1tCisrKyBiL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVz
dHMvV2ViS2l0Q29jb2EvRHJhZ0FuZERyb3BUZXN0cy5tbQpAQCAtMzAsOCArMzAsMTEgQEAKIAog
I2ltcG9ydCAiRHJhZ0FuZERyb3BTaW11bGF0b3IuaCIKICNpbXBvcnQgIlBsYXRmb3JtVXRpbGl0
aWVzLmgiCisjaW1wb3J0IDxXZWJDb3JlL1BsYXRmb3JtUGFzdGVib2FyZC5oPgogI2ltcG9ydCA8
V2ViS2l0L1dLUHJlZmVyZW5jZXNQcml2YXRlLmg+CiAjaW1wb3J0IDxXZWJLaXQvV2ViQXJjaGl2
ZS5oPgorI2ltcG9ydCA8d3RmL1ZlY3Rvci5oPgorI2ltcG9ydCA8d3RmL3RleHQvV1RGU3RyaW5n
Lmg+CiAKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQogI2ltcG9ydCA8TW9iaWxlQ29yZVNlcnZp
Y2VzL01vYmlsZUNvcmVTZXJ2aWNlcy5oPgpAQCAtMzgxLDYgKzM4NCwzMiBAQCBURVNUKERyYWdB
bmREcm9wVGVzdHMsIENvbG9ySW5wdXRFdmVudHMpCiAgICAgVGVzdFdlYktpdEFQSTo6VXRpbDo6
cnVuKCZjaGFuZ2VFdmVudEZpcmVkKTsKIH0KIAorI2lmIFBMQVRGT1JNKE1BQykKK1RFU1QoRHJh
Z0FuZERyb3BUZXN0cywgUGFzdGVib2FyZFByb3BlcnR5TGlzdEhhbmRsZXNBcnJheU9mQXJyYXlz
KQoreworICAgIGF1dG8gc2ltdWxhdG9yID0gYWRvcHROUyhbW0RyYWdBbmREcm9wU2ltdWxhdG9y
IGFsbG9jXSBpbml0V2l0aFdlYlZpZXdGcmFtZTpDR1JlY3RNYWtlKDAsIDAsIDMyMCwgNTAwKV0p
OworICAgIGF1dG8gd2ViVmlldyA9IFtzaW11bGF0b3Igd2ViVmlld107CisgICAgV0tQcmVmZXJl
bmNlc1NldEN1c3RvbVBhc3RlYm9hcmREYXRhRW5hYmxlZCgoX19icmlkZ2UgV0tQcmVmZXJlbmNl
c1JlZilbd2ViVmlldyBjb25maWd1cmF0aW9uXS5wcmVmZXJlbmNlcywgdHJ1ZSk7CisKKyAgICAv
LyBMb2FkIGEgZmlsZSB3aGljaCBzZXRzIGEgcGFzdGVib2FyZCBVUkwgdmlhIFBsYXRmb3JtUGFz
dGVib2FyZDo6c2V0VVJMKCksIHdoaWNoCisgICAgLy8gdXNlcyB0aGUgZm9ybWF0IFsgW05TU3Ry
aW5nXSwgW05TU3RyaW5nXSBdLiBJbiB0aGlzIGNhc2UgdGhlIGVudHJ5IHdpbGwgYmUKKyAgICAv
LyBbIFsiYXBwbGUuY29tIl0sIFsiSGVsbG8gV29ybGQiXSBdLgorICAgIFt3ZWJWaWV3IHN5bmNo
cm9ub3VzbHlMb2FkVGVzdFBhZ2VOYW1lZDpAImxpbmstYW5kLXRhcmdldC1kaXYiXTsKKyAgICBb
c2ltdWxhdG9yIHJ1bkZyb206Q0dQb2ludE1ha2UoMTYwLCAxMDApIHRvOkNHUG9pbnRNYWtlKDE2
MCwgMzAwKV07CisKKyAgICBWZWN0b3I8U3RyaW5nPiBwYXRobmFtZXM7CisgICAgTlNTdHJpbmcg
KnBhc3RlYm9hcmRUeXBlID0gW05TU3RyaW5nIHN0cmluZ1dpdGhVVEY4U3RyaW5nOiJXZWJVUkxz
V2l0aFRpdGxlc1Bib2FyZFR5cGUiXTsKKyAgICBTdHJpbmcgcGFzdGVib2FyZE5hbWUgPSAiQXBw
bGUgQ0ZQYXN0ZWJvYXJkIGRyYWciOworICAgIE5TUGFzdGVib2FyZCAqcGFzdGVib2FyZCA9IFtO
U1Bhc3RlYm9hcmQgcGFzdGVib2FyZFdpdGhOYW1lOnBhc3RlYm9hcmROYW1lXTsKKyAgICBXZWJD
b3JlOjpQbGF0Zm9ybVBhc3RlYm9hcmQocGFzdGVib2FyZE5hbWUpLmdldFBhdGhuYW1lc0ZvclR5
cGUocGF0aG5hbWVzLCBwYXN0ZWJvYXJkVHlwZSk7CisKKyAgICBFWFBFQ1RfRVEoc3RhdGljX2Nh
c3Q8aW50PihwYXRobmFtZXMuc2l6ZSgpKSwgMik7CisgICAgRVhQRUNUX1dLX1NUUkVRKHBhdGhu
YW1lcy5hdCgwKSwgImh0dHBzOi8vd3d3LmFwcGxlLmNvbS8iKTsKKyAgICBFWFBFQ1RfV0tfU1RS
RVEocGF0aG5hbWVzLmF0KDEpLCAiSGVsbG8gd29ybGQiKTsKKyAgICBbcGFzdGVib2FyZCBjbGVh
ckNvbnRlbnRzXTsKK30KKyNlbmRpZgorCiAjZW5kaWYgLy8gRU5BQkxFKElOUFVUX1RZUEVfQ09M
T1IpCiAKICNlbmRpZiAvLyBFTkFCTEUoRFJBR19TVVBQT1JUKSAmJiAhUExBVEZPUk0oTUFDQ0FU
QUxZU1QpCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>