<?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>217183</bug_id>
          
          <creation_ts>2020-10-01 10:59:00 -0700</creation_ts>
          <short_desc>[iOS 14] Hang in -[WKUserDefaults _notifyObserversOfChangeFromValuesForKeys:toValuesForKeys:]</short_desc>
          <delta_ts>2020-10-14 06:54:01 -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 API</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=203420</see_also>
          <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="Ali Juma">ajuma</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>darin</cc>
    
    <cc>ggaren</cc>
    
    <cc>pvollan</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1693794</commentid>
    <comment_count>0</comment_count>
    <who name="Ali Juma">ajuma</who>
    <bug_when>2020-10-01 10:59:00 -0700</bug_when>
    <thetext>Chrome for iOS is getting a significant number of hang reports in -[WKUserDefaults _notifyObserversOfChangeFromValuesForKeys:toValuesForKeys:] on iOS 14.

This code was added in bug 203420.

We don&apos;t have steps to reproduce, but the reports suggest that this happens after the app is backgrounded.

Here&apos;s the stack:
(libobjc.A.dylib)       class_conformsToProtocol
(libobjc.A.dylib)       +[NSObject conformsToProtocol:]
(Foundation)            -[NSCoder validateClassSupportsSecureCoding:]
(Foundation)            _encodeObject
(Foundation)            +[NSKeyedArchiver archivedDataWithRootObject:requiringSecureCoding:error:]
(WebKit)                -[WKUserDefaults _notifyObserversOfChangeFromValuesForKeys:toValuesForKeys:]
(CoreFoundation)        -[CFPrefsSource forEachObserver:]
(CoreFoundation)        -[CFPrefsSource _notifyObserversOfChangeFromValuesForKeys:toValuesForKeys:]
(CoreFoundation)        ___CFPrefsDeliverPendingKVONotificationsGuts_block_invoke
(CoreFoundation)        __CFDictionaryApplyFunction_block_invoke
(CoreFoundation)        CFBasicHashApply
(CoreFoundation)        CFDictionaryApplyFunction
(CoreFoundation)        _CFPrefsDeliverPendingKVONotificationsGuts
(CoreFoundation)        __CFRUNLOOP_IS_CALLING_OUT_TO_A_BLOCK__
(CoreFoundation)        __CFRunLoopDoBlocks
(CoreFoundation)        __CFRunLoopRun
(CoreFoundation)        CFRunLoopRunSpecific
(GraphicsServices)      GSEventRunModal
(UIKitCore)             -[UIApplication _run]
(UIKitCore)             UIApplicationMain</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1694412</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-10-03 09:46:23 -0700</bug_when>
    <thetext>&lt;rdar://problem/69916673&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1695306</commentid>
    <comment_count>2</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2020-10-06 14:04:51 -0700</bug_when>
    <thetext>(In reply to Ali Juma from comment #0)
&gt; Chrome for iOS is getting a significant number of hang reports in
&gt; -[WKUserDefaults _notifyObserversOfChangeFromValuesForKeys:toValuesForKeys:]
&gt; on iOS 14.

Do you have any visibility into what preference is being accessed?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1695517</commentid>
    <comment_count>3</comment_count>
    <who name="Ali Juma">ajuma</who>
    <bug_when>2020-10-07 06:37:12 -0700</bug_when>
    <thetext>(In reply to Brent Fulgham from comment #2)
&gt; (In reply to Ali Juma from comment #0)
&gt; &gt; Chrome for iOS is getting a significant number of hang reports in
&gt; &gt; -[WKUserDefaults _notifyObserversOfChangeFromValuesForKeys:toValuesForKeys:]
&gt; &gt; on iOS 14.
&gt; 
&gt; Do you have any visibility into what preference is being accessed?

No, the crash reports we have don&apos;t contain that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1695615</commentid>
    <comment_count>4</comment_count>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2020-10-07 12:27:28 -0700</bug_when>
    <thetext>(In reply to Ali Juma from comment #3)
&gt; (In reply to Brent Fulgham from comment #2)
&gt; &gt; (In reply to Ali Juma from comment #0)
&gt; &gt; &gt; Chrome for iOS is getting a significant number of hang reports in
&gt; &gt; &gt; -[WKUserDefaults _notifyObserversOfChangeFromValuesForKeys:toValuesForKeys:]
&gt; &gt; &gt; on iOS 14.
&gt; &gt; 
&gt; &gt; Do you have any visibility into what preference is being accessed?
&gt; 
&gt; No, the crash reports we have don&apos;t contain that.

Is this a hang or a crash? (In reply to Ali Juma from comment #3)
&gt; (In reply to Brent Fulgham from comment #2)
&gt; &gt; (In reply to Ali Juma from comment #0)
&gt; &gt; &gt; Chrome for iOS is getting a significant number of hang reports in
&gt; &gt; &gt; -[WKUserDefaults _notifyObserversOfChangeFromValuesForKeys:toValuesForKeys:]
&gt; &gt; &gt; on iOS 14.
&gt; &gt; 
&gt; &gt; Do you have any visibility into what preference is being accessed?
&gt; 
&gt; No, the crash reports we have don&apos;t contain that.

Ali, is this a crash or a hang?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1695652</commentid>
    <comment_count>5</comment_count>
    <who name="Ali Juma">ajuma</who>
    <bug_when>2020-10-07 13:28:53 -0700</bug_when>
    <thetext>(In reply to Per Arne Vollan from comment #4)
&gt; &gt; (In reply to Brent Fulgham from comment #2)
&gt; &gt; &gt; (In reply to Ali Juma from comment #0)
&gt; &gt; &gt; &gt; Chrome for iOS is getting a significant number of hang reports in
&gt; &gt; &gt; &gt; -[WKUserDefaults _notifyObserversOfChangeFromValuesForKeys:toValuesForKeys:]
&gt; &gt; &gt; &gt; on iOS 14.
&gt; &gt; &gt; 
&gt; &gt; &gt; Do you have any visibility into what preference is being accessed?
&gt; &gt; 
&gt; &gt; No, the crash reports we have don&apos;t contain that.
&gt; 
&gt; Ali, is this a crash or a hang?

It&apos;s a hang (meant to say &quot;hang reports&quot; rather than &quot;crash reports&quot;).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1695911</commentid>
    <comment_count>6</comment_count>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2020-10-08 08:50:01 -0700</bug_when>
    <thetext>(In reply to Ali Juma from comment #5)
&gt; (In reply to Per Arne Vollan from comment #4)
&gt; &gt; &gt; (In reply to Brent Fulgham from comment #2)
&gt; &gt; &gt; &gt; (In reply to Ali Juma from comment #0)
&gt; &gt; &gt; &gt; &gt; Chrome for iOS is getting a significant number of hang reports in
&gt; &gt; &gt; &gt; &gt; -[WKUserDefaults _notifyObserversOfChangeFromValuesForKeys:toValuesForKeys:]
&gt; &gt; &gt; &gt; &gt; on iOS 14.
&gt; &gt; &gt; &gt; 
&gt; &gt; &gt; &gt; Do you have any visibility into what preference is being accessed?
&gt; &gt; &gt; 
&gt; &gt; &gt; No, the crash reports we have don&apos;t contain that.
&gt; &gt; 
&gt; &gt; Ali, is this a crash or a hang?
&gt; 
&gt; It&apos;s a hang (meant to say &quot;hang reports&quot; rather than &quot;crash reports&quot;).

Thanks! Do you have information about the hang time, for example average, max, and min?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1695957</commentid>
    <comment_count>7</comment_count>
    <who name="Ali Juma">ajuma</who>
    <bug_when>2020-10-08 10:46:01 -0700</bug_when>
    <thetext>(In reply to Per Arne Vollan from comment #6)
&gt; (In reply to Ali Juma from comment #5)
&gt; &gt; (In reply to Per Arne Vollan from comment #4)
&gt; &gt; &gt; &gt; (In reply to Brent Fulgham from comment #2)
&gt; &gt; &gt; &gt; &gt; (In reply to Ali Juma from comment #0)
&gt; &gt; &gt; &gt; &gt; &gt; Chrome for iOS is getting a significant number of hang reports in
&gt; &gt; &gt; &gt; &gt; &gt; -[WKUserDefaults _notifyObserversOfChangeFromValuesForKeys:toValuesForKeys:]
&gt; &gt; &gt; &gt; &gt; &gt; on iOS 14.
&gt; &gt; &gt; &gt; &gt; 
&gt; &gt; &gt; &gt; &gt; Do you have any visibility into what preference is being accessed?
&gt; &gt; &gt; &gt; 
&gt; &gt; &gt; &gt; No, the crash reports we have don&apos;t contain that.
&gt; &gt; &gt; 
&gt; &gt; &gt; Ali, is this a crash or a hang?
&gt; &gt; 
&gt; &gt; It&apos;s a hang (meant to say &quot;hang reports&quot; rather than &quot;crash reports&quot;).
&gt; 
&gt; Thanks! Do you have information about the hang time, for example average,
&gt; max, and min?

It&apos;s at least 9 seconds (that&apos;s the minimum before we get a report), but we don&apos;t have the average or the max.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1696999</commentid>
    <comment_count>8</comment_count>
      <attachid>411151</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2020-10-12 13:42:56 -0700</bug_when>
    <thetext>Created attachment 411151
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1697060</commentid>
    <comment_count>9</comment_count>
      <attachid>411165</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2020-10-12 15:00:23 -0700</bug_when>
    <thetext>Created attachment 411165
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1697062</commentid>
    <comment_count>10</comment_count>
      <attachid>411167</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2020-10-12 15:01:40 -0700</bug_when>
    <thetext>Created attachment 411167
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1697286</commentid>
    <comment_count>11</comment_count>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2020-10-13 09:40:35 -0700</bug_when>
    <thetext>Given that the we don&apos;t know the upper limit of the hang, how do we know that dispatching to a secondary thread will resolve it?

Especially strange to hang in class_conformsToProtocol. That implies some kind of memory corruption in an Obj-C object or in the Obj-C runtime.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1697359</commentid>
    <comment_count>12</comment_count>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2020-10-13 13:12:50 -0700</bug_when>
    <thetext>(In reply to Geoffrey Garen from comment #11)
&gt; Given that the we don&apos;t know the upper limit of the hang, how do we know
&gt; that dispatching to a secondary thread will resolve it?
&gt; 
&gt; Especially strange to hang in class_conformsToProtocol. That implies some
&gt; kind of memory corruption in an Obj-C object or in the Obj-C runtime.

Yes, you are right. This patch only makes sure that we do not block Chrome’s main thread, making it unresponsive. The patch does not address why we seem to be stuck in conformsToProtocol for a substantial amount of time. At this point, the reason for this is unknown, and I have not been able to reproduce so far.

Thanks for reviewing!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1697404</commentid>
    <comment_count>13</comment_count>
      <attachid>411167</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2020-10-13 14:23:26 -0700</bug_when>
    <thetext>Comment on attachment 411167
Patch

I guess there&apos;s no harm in doing this on a secondary thread 🤷🏻‍♂️</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1697412</commentid>
    <comment_count>14</comment_count>
      <attachid>411167</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2020-10-13 14:31:47 -0700</bug_when>
    <thetext>Comment on attachment 411167
Patch

Thanks for reviewing!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1697414</commentid>
    <comment_count>15</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-10-13 14:38:26 -0700</bug_when>
    <thetext>Committed r268421: &lt;https://trac.webkit.org/changeset/268421&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 411167.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1697422</commentid>
    <comment_count>16</comment_count>
      <attachid>411167</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-10-13 14:53:26 -0700</bug_when>
    <thetext>Comment on attachment 411167
Patch

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

&gt; Source/WebKit/UIProcess/Cocoa/PreferenceObserver.mm:95
&gt; +    if (!isMainThread()) {
&gt; +        [self findPreferenceChangesAndNotifyForKeys:oldValues toValuesForKeys:newValues];
&gt; +        return;
&gt; +    }

Why do we need this?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1697462</commentid>
    <comment_count>17</comment_count>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2020-10-13 15:37:06 -0700</bug_when>
    <thetext>(In reply to Darin Adler from comment #16)
&gt; Comment on attachment 411167 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=411167&amp;action=review
&gt; 
&gt; &gt; Source/WebKit/UIProcess/Cocoa/PreferenceObserver.mm:95
&gt; &gt; +    if (!isMainThread()) {
&gt; &gt; +        [self findPreferenceChangesAndNotifyForKeys:oldValues toValuesForKeys:newValues];
&gt; &gt; +        return;
&gt; &gt; +    }
&gt; 
&gt; Why do we need this?

This is to avoid extra thread hopping if the method is already being called on a non-main thread.

Thanks for reviewing!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1697513</commentid>
    <comment_count>18</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-10-13 17:09:03 -0700</bug_when>
    <thetext>(In reply to Per Arne Vollan from comment #17)
&gt; This is to avoid extra thread hopping if the method is already being called
&gt; on a non-main thread.

But *why* is avoiding extra thread hopping a good thing? Is there some reason that non-main threads are always OK to block?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1697695</commentid>
    <comment_count>19</comment_count>
      <attachid>411318</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2020-10-14 06:48:57 -0700</bug_when>
    <thetext>Created attachment 411318
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1697696</commentid>
    <comment_count>20</comment_count>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2020-10-14 06:53:17 -0700</bug_when>
    <thetext>(In reply to Darin Adler from comment #18)
&gt; (In reply to Per Arne Vollan from comment #17)
&gt; &gt; This is to avoid extra thread hopping if the method is already being called
&gt; &gt; on a non-main thread.
&gt; 
&gt; But *why* is avoiding extra thread hopping a good thing? Is there some
&gt; reason that non-main threads are always OK to block?

Ah, I see now, that&apos;s a good point. For local preference changes, this method will be called on the thread which made the change, and it would be good to avoid blocking that thread as well. I have uploaded a new patch which removes this piece of code.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>411151</attachid>
            <date>2020-10-12 13:42:56 -0700</date>
            <delta_ts>2020-10-12 14:59:59 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>217183.patch</filename>
            <type>text/plain</type>
            <size>4657</size>
            <attacher name="Per Arne Vollan">pvollan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNjgzNjUpCisrKyBTb3VyY2UvV2ViS2l0L0NoYW5nZUxv
Zwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE2IEBACisyMDIwLTEwLTEyICBQZXIgQXJuZSBW
b2xsYW4gIDxwdm9sbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TIDE0XSBIYW5nIGluIC1b
V0tVc2VyRGVmYXVsdHMgX25vdGlmeU9ic2VydmVyc09mQ2hhbmdlRnJvbVZhbHVlc0ZvcktleXM6
dG9WYWx1ZXNGb3JLZXlzOl0KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIxNzE4MworICAgICAgICA8cmRhcjovL3Byb2JsZW0vNjk5MTY2NzM+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRGlzcGF0Y2ggdGhp
cyB3b3JrIG9uIGEgbm9uLW1haW4gdGhyZWFkLCBpbiBvcmRlciB0byBhdm9pZCBibG9ja2luZyB0
aGUgbWFpbiB0aHJlYWQuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvQ29jb2EvUHJlZmVyZW5jZU9i
c2VydmVyLm1tOgorICAgICAgICAoLVtXS1VzZXJEZWZhdWx0cyBfbm90aWZ5T2JzZXJ2ZXJzT2ZD
aGFuZ2VGcm9tVmFsdWVzRm9yS2V5czp0b1ZhbHVlc0ZvcktleXM6XSk6CisKIDIwMjAtMTAtMTIg
IFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIEFkZCBzdXBwb3J0
IGZvciBNZWRpYVJlY29yZGVyIGJpdHJhdGUgZ2V0dGVycwpJbmRleDogU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvQ29jb2EvUHJlZmVyZW5jZU9ic2VydmVyLm1tCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1ByZWZlcmVuY2VPYnNlcnZlci5tbQkocmV2aXNpb24g
MjY4Mjg1KQorKysgU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvUHJlZmVyZW5jZU9ic2Vy
dmVyLm1tCSh3b3JraW5nIGNvcHkpCkBAIC00OSw0MSArNDksNDMgQEAKIHsKICAgICBbc3VwZXIg
X25vdGlmeU9ic2VydmVyc09mQ2hhbmdlRnJvbVZhbHVlc0ZvcktleXM6b2xkVmFsdWVzIHRvVmFs
dWVzRm9yS2V5czpuZXdWYWx1ZXNdOwogCi0gICAgaWYgKCFtX29ic2VydmVyKQotICAgICAgICBy
ZXR1cm47CisgICAgZGlzcGF0Y2hfYXN5bmMoZGlzcGF0Y2hfZ2V0X2dsb2JhbF9xdWV1ZShESVNQ
QVRDSF9RVUVVRV9QUklPUklUWV9ERUZBVUxULCAwKSwgW3NlbGYsIHByb3RlY3RlZFNlbGYgPSBy
ZXRhaW5QdHIoc2VsZiksIG9sZFZhbHVlcyA9IHJldGFpblB0cihvbGRWYWx1ZXMpLCBuZXdWYWx1
ZXMgPSByZXRhaW5QdHIobmV3VmFsdWVzKV0geworICAgICAgICBpZiAoIXByb3RlY3RlZFNlbGYt
Pm1fb2JzZXJ2ZXIpCisgICAgICAgICAgICByZXR1cm47CiAKLSAgICBmb3IgKE5TU3RyaW5nICpr
ZXkgaW4gb2xkVmFsdWVzKSB7Ci0gICAgICAgIGlkIG9sZFZhbHVlID0gb2xkVmFsdWVzW2tleV07
Ci0gICAgICAgIGlkIG5ld1ZhbHVlID0gbmV3VmFsdWVzW2tleV07CisgICAgICAgIGZvciAoTlNT
dHJpbmcgKmtleSBpbiBvbGRWYWx1ZXMuZ2V0KCkpIHsKKyAgICAgICAgICAgIGlkIG9sZFZhbHVl
ID0gb2xkVmFsdWVzLmdldCgpW2tleV07CisgICAgICAgICAgICBpZCBuZXdWYWx1ZSA9IG5ld1Zh
bHVlcy5nZXQoKVtrZXldOwogCi0gICAgICAgIGlmIChbb2xkVmFsdWUgaXNFcXVhbDpuZXdWYWx1
ZV0pCi0gICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgICAgIGlmIChbb2xkVmFsdWUgaXNF
cXVhbDpuZXdWYWx1ZV0pCisgICAgICAgICAgICAgICAgY29udGludWU7CiAKLSAgICAgICAgaWYg
KG5ld1ZhbHVlICYmICFbW25ld1ZhbHVlIGNsYXNzXSBzdXBwb3J0c1NlY3VyZUNvZGluZ10pCi0g
ICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgICAgIGlmIChuZXdWYWx1ZSAmJiAhW1tuZXdW
YWx1ZSBjbGFzc10gc3VwcG9ydHNTZWN1cmVDb2RpbmddKQorICAgICAgICAgICAgICAgIGNvbnRp
bnVlOwogCi0gICAgICAgIE5TU3RyaW5nICplbmNvZGVkU3RyaW5nID0gbmlsOworICAgICAgICAg
ICAgTlNTdHJpbmcgKmVuY29kZWRTdHJpbmcgPSBuaWw7CiAKLSAgICAgICAgaWYgKG5ld1ZhbHVl
KSB7Ci0gICAgICAgICAgICBOU0Vycm9yICplID0gbmlsOwotICAgICAgICAgICAgYXV0byBkYXRh
ID0gcmV0YWluUHRyKFtOU0tleWVkQXJjaGl2ZXIgYXJjaGl2ZWREYXRhV2l0aFJvb3RPYmplY3Q6
bmV3VmFsdWUgcmVxdWlyaW5nU2VjdXJlQ29kaW5nOllFUyBlcnJvcjomZV0pOwotICAgICAgICAg
ICAgQVNTRVJUKCFlKTsKLSAgICAgICAgICAgIGVuY29kZWRTdHJpbmcgPSBbZGF0YSBiYXNlNjRF
bmNvZGVkU3RyaW5nV2l0aE9wdGlvbnM6MF07Ci0gICAgICAgIH0KKyAgICAgICAgICAgIGlmIChu
ZXdWYWx1ZSkgeworICAgICAgICAgICAgICAgIE5TRXJyb3IgKmUgPSBuaWw7CisgICAgICAgICAg
ICAgICAgYXV0byBkYXRhID0gcmV0YWluUHRyKFtOU0tleWVkQXJjaGl2ZXIgYXJjaGl2ZWREYXRh
V2l0aFJvb3RPYmplY3Q6bmV3VmFsdWUgcmVxdWlyaW5nU2VjdXJlQ29kaW5nOllFUyBlcnJvcjom
ZV0pOworICAgICAgICAgICAgICAgIEFTU0VSVCghZSk7CisgICAgICAgICAgICAgICAgZW5jb2Rl
ZFN0cmluZyA9IFtkYXRhIGJhc2U2NEVuY29kZWRTdHJpbmdXaXRoT3B0aW9uczowXTsKKyAgICAg
ICAgICAgIH0KIAotICAgICAgICBhdXRvIGdsb2JhbFZhbHVlID0gYWRvcHRDRihDRlByZWZlcmVu
Y2VzQ29weVZhbHVlKChfX2JyaWRnZSBDRlN0cmluZ1JlZilrZXksIGtDRlByZWZlcmVuY2VzQW55
QXBwbGljYXRpb24sIGtDRlByZWZlcmVuY2VzQ3VycmVudFVzZXIsIGtDRlByZWZlcmVuY2VzQW55
SG9zdCkpOwotICAgICAgICBhdXRvIGRvbWFpblZhbHVlID0gYWRvcHRDRihDRlByZWZlcmVuY2Vz
Q29weVZhbHVlKChfX2JyaWRnZSBDRlN0cmluZ1JlZilrZXksIChfX2JyaWRnZSBDRlN0cmluZ1Jl
ZiltX3N1aXRlTmFtZSwga0NGUHJlZmVyZW5jZXNDdXJyZW50VXNlciwga0NGUHJlZmVyZW5jZXNB
bnlIb3N0KSk7CisgICAgICAgICAgICBhdXRvIGdsb2JhbFZhbHVlID0gYWRvcHRDRihDRlByZWZl
cmVuY2VzQ29weVZhbHVlKChfX2JyaWRnZSBDRlN0cmluZ1JlZilrZXksIGtDRlByZWZlcmVuY2Vz
QW55QXBwbGljYXRpb24sIGtDRlByZWZlcmVuY2VzQ3VycmVudFVzZXIsIGtDRlByZWZlcmVuY2Vz
QW55SG9zdCkpOworICAgICAgICAgICAgYXV0byBkb21haW5WYWx1ZSA9IGFkb3B0Q0YoQ0ZQcmVm
ZXJlbmNlc0NvcHlWYWx1ZSgoX19icmlkZ2UgQ0ZTdHJpbmdSZWYpa2V5LCAoX19icmlkZ2UgQ0ZT
dHJpbmdSZWYpbV9zdWl0ZU5hbWUsIGtDRlByZWZlcmVuY2VzQ3VycmVudFVzZXIsIGtDRlByZWZl
cmVuY2VzQW55SG9zdCkpOwogCi0gICAgICAgIGF1dG8gcHJlZmVyZW5jZVZhbHVlc0FyZUVxdWFs
ID0gW10gKGlkIGEsIGlkIGIpIHsKLSAgICAgICAgICAgIHJldHVybiBhID09IGIgfHwgW2EgaXNF
cXVhbDpiXTsKLSAgICAgICAgfTsKKyAgICAgICAgICAgIGF1dG8gcHJlZmVyZW5jZVZhbHVlc0Fy
ZUVxdWFsID0gW10gKGlkIGEsIGlkIGIpIHsKKyAgICAgICAgICAgICAgICByZXR1cm4gYSA9PSBi
IHx8IFthIGlzRXF1YWw6Yl07CisgICAgICAgICAgICB9OwogCi0gICAgICAgIGlmIChwcmVmZXJl
bmNlVmFsdWVzQXJlRXF1YWwoKF9fYnJpZGdlIGlkKWdsb2JhbFZhbHVlLmdldCgpLCBuZXdWYWx1
ZSkpCi0gICAgICAgICAgICBbbV9vYnNlcnZlciBwcmVmZXJlbmNlRGlkQ2hhbmdlOm5pbCBrZXk6
a2V5IGVuY29kZWRWYWx1ZTplbmNvZGVkU3RyaW5nXTsKKyAgICAgICAgICAgIGlmIChwcmVmZXJl
bmNlVmFsdWVzQXJlRXF1YWwoKF9fYnJpZGdlIGlkKWdsb2JhbFZhbHVlLmdldCgpLCBuZXdWYWx1
ZSkpCisgICAgICAgICAgICAgICAgW3Byb3RlY3RlZFNlbGYtPm1fb2JzZXJ2ZXIgcHJlZmVyZW5j
ZURpZENoYW5nZTpuaWwga2V5OmtleSBlbmNvZGVkVmFsdWU6ZW5jb2RlZFN0cmluZ107CiAKLSAg
ICAgICAgaWYgKHByZWZlcmVuY2VWYWx1ZXNBcmVFcXVhbCgoX19icmlkZ2UgaWQpZG9tYWluVmFs
dWUuZ2V0KCksIG5ld1ZhbHVlKSkKLSAgICAgICAgICAgIFttX29ic2VydmVyIHByZWZlcmVuY2VE
aWRDaGFuZ2U6bV9zdWl0ZU5hbWUga2V5OmtleSBlbmNvZGVkVmFsdWU6ZW5jb2RlZFN0cmluZ107
Ci0gICAgfQorICAgICAgICAgICAgaWYgKHByZWZlcmVuY2VWYWx1ZXNBcmVFcXVhbCgoX19icmlk
Z2UgaWQpZG9tYWluVmFsdWUuZ2V0KCksIG5ld1ZhbHVlKSkKKyAgICAgICAgICAgICAgICBbcHJv
dGVjdGVkU2VsZi0+bV9vYnNlcnZlciBwcmVmZXJlbmNlRGlkQ2hhbmdlOm1fc3VpdGVOYW1lIGtl
eTprZXkgZW5jb2RlZFZhbHVlOmVuY29kZWRTdHJpbmddOworICAgICAgICB9CisgICAgfSk7CiB9
CiAKIC0gKHZvaWQpb2JzZXJ2ZVZhbHVlRm9yS2V5UGF0aDooTlNTdHJpbmcgKilrZXlQYXRoIG9m
T2JqZWN0OihpZClvYmplY3QgY2hhbmdlOihOU0RpY3Rpb25hcnk8TlNLZXlWYWx1ZUNoYW5nZUtl
eSwgaWQ+ICopY2hhbmdlIGNvbnRleHQ6KHZvaWQgKiljb250ZXh0Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>411165</attachid>
            <date>2020-10-12 15:00:23 -0700</date>
            <delta_ts>2020-10-12 15:01:24 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>217183.patch</filename>
            <type>text/plain</type>
            <size>2927</size>
            <attacher name="Per Arne Vollan">pvollan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNjgzNjUpCisrKyBTb3VyY2UvV2ViS2l0L0NoYW5nZUxv
Zwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE2IEBACisyMDIwLTEwLTEyICBQZXIgQXJuZSBW
b2xsYW4gIDxwdm9sbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TIDE0XSBIYW5nIGluIC1b
V0tVc2VyRGVmYXVsdHMgX25vdGlmeU9ic2VydmVyc09mQ2hhbmdlRnJvbVZhbHVlc0ZvcktleXM6
dG9WYWx1ZXNGb3JLZXlzOl0KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIxNzE4MworICAgICAgICA8cmRhcjovL3Byb2JsZW0vNjk5MTY2NzM+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRGlzcGF0Y2ggdGhp
cyB3b3JrIG9uIGEgbm9uLW1haW4gdGhyZWFkLCBpbiBvcmRlciB0byBhdm9pZCBibG9ja2luZyB0
aGUgbWFpbiB0aHJlYWQuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvQ29jb2EvUHJlZmVyZW5jZU9i
c2VydmVyLm1tOgorICAgICAgICAoLVtXS1VzZXJEZWZhdWx0cyBfbm90aWZ5T2JzZXJ2ZXJzT2ZD
aGFuZ2VGcm9tVmFsdWVzRm9yS2V5czp0b1ZhbHVlc0ZvcktleXM6XSk6CisKIDIwMjAtMTAtMTIg
IFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIEFkZCBzdXBwb3J0
IGZvciBNZWRpYVJlY29yZGVyIGJpdHJhdGUgZ2V0dGVycwpJbmRleDogU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvQ29jb2EvUHJlZmVyZW5jZU9ic2VydmVyLm1tCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1ByZWZlcmVuY2VPYnNlcnZlci5tbQkocmV2aXNpb24g
MjY4Mjg1KQorKysgU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvUHJlZmVyZW5jZU9ic2Vy
dmVyLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0zNSw2ICszNSw3IEBACiBAcHVibGljCiAgICAgV0tQ
cmVmZXJlbmNlT2JzZXJ2ZXIgKm1fb2JzZXJ2ZXI7CiB9CistICh2b2lkKWZpbmRQcmVmZXJlbmNl
Q2hhbmdlc0FuZE5vdGlmeUZvcktleXM6KE5TRGljdGlvbmFyeTxOU1N0cmluZyAqLCBpZD4gKilv
bGRWYWx1ZXMgdG9WYWx1ZXNGb3JLZXlzOihOU0RpY3Rpb25hcnk8TlNTdHJpbmcgKiwgaWQ+ICop
bmV3VmFsdWVzOwogQGVuZAogCiBAaW50ZXJmYWNlIFdLUHJlZmVyZW5jZU9ic2VydmVyICgpIHsK
QEAgLTQ1LDEwICs0Niw4IEBACiAKIEBpbXBsZW1lbnRhdGlvbiBXS1VzZXJEZWZhdWx0cwogCi0t
ICh2b2lkKV9ub3RpZnlPYnNlcnZlcnNPZkNoYW5nZUZyb21WYWx1ZXNGb3JLZXlzOihOU0RpY3Rp
b25hcnk8TlNTdHJpbmcgKiwgaWQ+ICopb2xkVmFsdWVzIHRvVmFsdWVzRm9yS2V5czooTlNEaWN0
aW9uYXJ5PE5TU3RyaW5nICosIGlkPiAqKW5ld1ZhbHVlcworLSAodm9pZClmaW5kUHJlZmVyZW5j
ZUNoYW5nZXNBbmROb3RpZnlGb3JLZXlzOihOU0RpY3Rpb25hcnk8TlNTdHJpbmcgKiwgaWQ+ICop
b2xkVmFsdWVzIHRvVmFsdWVzRm9yS2V5czooTlNEaWN0aW9uYXJ5PE5TU3RyaW5nICosIGlkPiAq
KW5ld1ZhbHVlcwogewotICAgIFtzdXBlciBfbm90aWZ5T2JzZXJ2ZXJzT2ZDaGFuZ2VGcm9tVmFs
dWVzRm9yS2V5czpvbGRWYWx1ZXMgdG9WYWx1ZXNGb3JLZXlzOm5ld1ZhbHVlc107Ci0KICAgICBp
ZiAoIW1fb2JzZXJ2ZXIpCiAgICAgICAgIHJldHVybjsKIApAQCAtODQsOCArODMsMjMgQEAKICAg
ICAgICAgaWYgKHByZWZlcmVuY2VWYWx1ZXNBcmVFcXVhbCgoX19icmlkZ2UgaWQpZG9tYWluVmFs
dWUuZ2V0KCksIG5ld1ZhbHVlKSkKICAgICAgICAgICAgIFttX29ic2VydmVyIHByZWZlcmVuY2VE
aWRDaGFuZ2U6bV9zdWl0ZU5hbWUga2V5OmtleSBlbmNvZGVkVmFsdWU6ZW5jb2RlZFN0cmluZ107
CiAgICAgfQorCiB9CiAKKy0gKHZvaWQpX25vdGlmeU9ic2VydmVyc09mQ2hhbmdlRnJvbVZhbHVl
c0ZvcktleXM6KE5TRGljdGlvbmFyeTxOU1N0cmluZyAqLCBpZD4gKilvbGRWYWx1ZXMgdG9WYWx1
ZXNGb3JLZXlzOihOU0RpY3Rpb25hcnk8TlNTdHJpbmcgKiwgaWQ+ICopbmV3VmFsdWVzCit7Cisg
ICAgW3N1cGVyIF9ub3RpZnlPYnNlcnZlcnNPZkNoYW5nZUZyb21WYWx1ZXNGb3JLZXlzOm9sZFZh
bHVlcyB0b1ZhbHVlc0ZvcktleXM6bmV3VmFsdWVzXTsKKworICAgIGlmICghaXNNYWluVGhyZWFk
KCkpIHsKKyAgICAgICAgW3NlbGYgZmluZFByZWZlcmVuY2VDaGFuZ2VzQW5kTm90aWZ5Rm9yS2V5
czpvbGRWYWx1ZXMgdG9WYWx1ZXNGb3JLZXlzOm5ld1ZhbHVlc107CisgICAgICAgIHJldHVybjsK
KyAgICB9CisKKyAgICBkaXNwYXRjaF9hc3luYyhkaXNwYXRjaF9nZXRfZ2xvYmFsX3F1ZXVlKERJ
U1BBVENIX1FVRVVFX1BSSU9SSVRZX0RFRkFVTFQsIDApLCBbc2VsZiwgcHJvdGVjdGVkU2VsZiA9
IHJldGFpblB0cihzZWxmKSwgb2xkVmFsdWVzID0gcmV0YWluUHRyKG9sZFZhbHVlcyksIG5ld1Zh
bHVlcyA9IHJldGFpblB0cihuZXdWYWx1ZXMpXSB7CisgICAgICAgIFtzZWxmIGZpbmRQcmVmZXJl
bmNlQ2hhbmdlc0FuZE5vdGlmeUZvcktleXM6b2xkVmFsdWVzLmdldCgpIHRvVmFsdWVzRm9yS2V5
czpuZXdWYWx1ZXMuZ2V0KCldOworICAgIH0pOworfQorCiAtICh2b2lkKW9ic2VydmVWYWx1ZUZv
cktleVBhdGg6KE5TU3RyaW5nICopa2V5UGF0aCBvZk9iamVjdDooaWQpb2JqZWN0IGNoYW5nZToo
TlNEaWN0aW9uYXJ5PE5TS2V5VmFsdWVDaGFuZ2VLZXksIGlkPiAqKWNoYW5nZSBjb250ZXh0Oih2
b2lkICopY29udGV4dAogewogfQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>411167</attachid>
            <date>2020-10-12 15:01:40 -0700</date>
            <delta_ts>2020-10-13 14:38:27 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>217183.patch</filename>
            <type>text/plain</type>
            <size>2750</size>
            <attacher name="Per Arne Vollan">pvollan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNjgzNjUpCisrKyBTb3VyY2UvV2ViS2l0L0NoYW5nZUxv
Zwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE2IEBACisyMDIwLTEwLTEyICBQZXIgQXJuZSBW
b2xsYW4gIDxwdm9sbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TIDE0XSBIYW5nIGluIC1b
V0tVc2VyRGVmYXVsdHMgX25vdGlmeU9ic2VydmVyc09mQ2hhbmdlRnJvbVZhbHVlc0ZvcktleXM6
dG9WYWx1ZXNGb3JLZXlzOl0KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIxNzE4MworICAgICAgICA8cmRhcjovL3Byb2JsZW0vNjk5MTY2NzM+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRGlzcGF0Y2ggdGhp
cyB3b3JrIG9uIGEgbm9uLW1haW4gdGhyZWFkLCBpbiBvcmRlciB0byBhdm9pZCBibG9ja2luZyB0
aGUgbWFpbiB0aHJlYWQuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvQ29jb2EvUHJlZmVyZW5jZU9i
c2VydmVyLm1tOgorICAgICAgICAoLVtXS1VzZXJEZWZhdWx0cyBfbm90aWZ5T2JzZXJ2ZXJzT2ZD
aGFuZ2VGcm9tVmFsdWVzRm9yS2V5czp0b1ZhbHVlc0ZvcktleXM6XSk6CisKIDIwMjAtMTAtMTIg
IFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIEFkZCBzdXBwb3J0
IGZvciBNZWRpYVJlY29yZGVyIGJpdHJhdGUgZ2V0dGVycwpJbmRleDogU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvQ29jb2EvUHJlZmVyZW5jZU9ic2VydmVyLm1tCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1ByZWZlcmVuY2VPYnNlcnZlci5tbQkocmV2aXNpb24g
MjY4Mjg1KQorKysgU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvUHJlZmVyZW5jZU9ic2Vy
dmVyLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0zNSw2ICszNSw3IEBACiBAcHVibGljCiAgICAgV0tQ
cmVmZXJlbmNlT2JzZXJ2ZXIgKm1fb2JzZXJ2ZXI7CiB9CistICh2b2lkKWZpbmRQcmVmZXJlbmNl
Q2hhbmdlc0FuZE5vdGlmeUZvcktleXM6KE5TRGljdGlvbmFyeTxOU1N0cmluZyAqLCBpZD4gKilv
bGRWYWx1ZXMgdG9WYWx1ZXNGb3JLZXlzOihOU0RpY3Rpb25hcnk8TlNTdHJpbmcgKiwgaWQ+ICop
bmV3VmFsdWVzOwogQGVuZAogCiBAaW50ZXJmYWNlIFdLUHJlZmVyZW5jZU9ic2VydmVyICgpIHsK
QEAgLTQ1LDEwICs0Niw4IEBACiAKIEBpbXBsZW1lbnRhdGlvbiBXS1VzZXJEZWZhdWx0cwogCi0t
ICh2b2lkKV9ub3RpZnlPYnNlcnZlcnNPZkNoYW5nZUZyb21WYWx1ZXNGb3JLZXlzOihOU0RpY3Rp
b25hcnk8TlNTdHJpbmcgKiwgaWQ+ICopb2xkVmFsdWVzIHRvVmFsdWVzRm9yS2V5czooTlNEaWN0
aW9uYXJ5PE5TU3RyaW5nICosIGlkPiAqKW5ld1ZhbHVlcworLSAodm9pZClmaW5kUHJlZmVyZW5j
ZUNoYW5nZXNBbmROb3RpZnlGb3JLZXlzOihOU0RpY3Rpb25hcnk8TlNTdHJpbmcgKiwgaWQ+ICop
b2xkVmFsdWVzIHRvVmFsdWVzRm9yS2V5czooTlNEaWN0aW9uYXJ5PE5TU3RyaW5nICosIGlkPiAq
KW5ld1ZhbHVlcwogewotICAgIFtzdXBlciBfbm90aWZ5T2JzZXJ2ZXJzT2ZDaGFuZ2VGcm9tVmFs
dWVzRm9yS2V5czpvbGRWYWx1ZXMgdG9WYWx1ZXNGb3JLZXlzOm5ld1ZhbHVlc107Ci0KICAgICBp
ZiAoIW1fb2JzZXJ2ZXIpCiAgICAgICAgIHJldHVybjsKIApAQCAtODYsNiArODUsMjAgQEAKICAg
ICB9CiB9CiAKKy0gKHZvaWQpX25vdGlmeU9ic2VydmVyc09mQ2hhbmdlRnJvbVZhbHVlc0Zvcktl
eXM6KE5TRGljdGlvbmFyeTxOU1N0cmluZyAqLCBpZD4gKilvbGRWYWx1ZXMgdG9WYWx1ZXNGb3JL
ZXlzOihOU0RpY3Rpb25hcnk8TlNTdHJpbmcgKiwgaWQ+ICopbmV3VmFsdWVzCit7CisgICAgW3N1
cGVyIF9ub3RpZnlPYnNlcnZlcnNPZkNoYW5nZUZyb21WYWx1ZXNGb3JLZXlzOm9sZFZhbHVlcyB0
b1ZhbHVlc0ZvcktleXM6bmV3VmFsdWVzXTsKKworICAgIGlmICghaXNNYWluVGhyZWFkKCkpIHsK
KyAgICAgICAgW3NlbGYgZmluZFByZWZlcmVuY2VDaGFuZ2VzQW5kTm90aWZ5Rm9yS2V5czpvbGRW
YWx1ZXMgdG9WYWx1ZXNGb3JLZXlzOm5ld1ZhbHVlc107CisgICAgICAgIHJldHVybjsKKyAgICB9
CisKKyAgICBkaXNwYXRjaF9hc3luYyhkaXNwYXRjaF9nZXRfZ2xvYmFsX3F1ZXVlKERJU1BBVENI
X1FVRVVFX1BSSU9SSVRZX0RFRkFVTFQsIDApLCBbc2VsZiwgcHJvdGVjdGVkU2VsZiA9IHJldGFp
blB0cihzZWxmKSwgb2xkVmFsdWVzID0gcmV0YWluUHRyKG9sZFZhbHVlcyksIG5ld1ZhbHVlcyA9
IHJldGFpblB0cihuZXdWYWx1ZXMpXSB7CisgICAgICAgIFtzZWxmIGZpbmRQcmVmZXJlbmNlQ2hh
bmdlc0FuZE5vdGlmeUZvcktleXM6b2xkVmFsdWVzLmdldCgpIHRvVmFsdWVzRm9yS2V5czpuZXdW
YWx1ZXMuZ2V0KCldOworICAgIH0pOworfQorCiAtICh2b2lkKW9ic2VydmVWYWx1ZUZvcktleVBh
dGg6KE5TU3RyaW5nICopa2V5UGF0aCBvZk9iamVjdDooaWQpb2JqZWN0IGNoYW5nZTooTlNEaWN0
aW9uYXJ5PE5TS2V5VmFsdWVDaGFuZ2VLZXksIGlkPiAqKWNoYW5nZSBjb250ZXh0Oih2b2lkICop
Y29udGV4dAogewogfQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>411318</attachid>
            <date>2020-10-14 06:48:57 -0700</date>
            <delta_ts>2020-10-14 06:54:01 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>217183.patch</filename>
            <type>text/plain</type>
            <size>1708</size>
            <attacher name="Per Arne Vollan">pvollan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNjg0NTQpCisrKyBTb3VyY2UvV2ViS2l0L0NoYW5nZUxv
Zwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE2IEBACisyMDIwLTEwLTEyICBQZXIgQXJuZSBW
b2xsYW4gIDxwdm9sbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TIDE0XSBIYW5nIGluIC1b
V0tVc2VyRGVmYXVsdHMgX25vdGlmeU9ic2VydmVyc09mQ2hhbmdlRnJvbVZhbHVlc0ZvcktleXM6
dG9WYWx1ZXNGb3JLZXlzOl0KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIxNzE4MworICAgICAgICA8cmRhcjovL3Byb2JsZW0vNjk5MTY2NzM+CisKKyAg
ICAgICAgVW5yZXZpZXdlZCwgYWRkcmVzcyBwb3N0LWNvbW1pdCByZXZpZXcgY29tbWVudHMuCisK
KyAgICAgICAgRGlzcGF0Y2ggdGhpcyB3b3JrIG9uIGEgc3RhbmRhcmQgZGlzcGF0Y2ggcXVldWUs
IGV2ZW4gaWYgY2FsbGVkIG9uIGEgbm9uLW1haW4gdGhyZWFkLgorCisgICAgICAgICogVUlQcm9j
ZXNzL0NvY29hL1ByZWZlcmVuY2VPYnNlcnZlci5tbToKKyAgICAgICAgKC1bV0tVc2VyRGVmYXVs
dHMgX25vdGlmeU9ic2VydmVyc09mQ2hhbmdlRnJvbVZhbHVlc0ZvcktleXM6dG9WYWx1ZXNGb3JL
ZXlzOl0pOgorCiAyMDIwLTEwLTE0ICBKb29uZ2h1biBQYXJrICA8amg3MTgucGFya0BzYW1zdW5n
LmNvbT4KIAogICAgICAgICBVbnJldmlld2VkLiBGaXggdGhlIGJ1aWxkIHdhcm5pbmcgYmVsb3cg
c2luY2UgcjI2ODMxMi4KSW5kZXg6IFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1ByZWZl
cmVuY2VPYnNlcnZlci5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9D
b2NvYS9QcmVmZXJlbmNlT2JzZXJ2ZXIubW0JKHJldmlzaW9uIDI2ODQ1NCkKKysrIFNvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL0NvY29hL1ByZWZlcmVuY2VPYnNlcnZlci5tbQkod29ya2luZyBjb3B5
KQpAQCAtODksMTEgKzg5LDYgQEAKIHsKICAgICBbc3VwZXIgX25vdGlmeU9ic2VydmVyc09mQ2hh
bmdlRnJvbVZhbHVlc0ZvcktleXM6b2xkVmFsdWVzIHRvVmFsdWVzRm9yS2V5czpuZXdWYWx1ZXNd
OwogCi0gICAgaWYgKCFpc01haW5UaHJlYWQoKSkgewotICAgICAgICBbc2VsZiBmaW5kUHJlZmVy
ZW5jZUNoYW5nZXNBbmROb3RpZnlGb3JLZXlzOm9sZFZhbHVlcyB0b1ZhbHVlc0ZvcktleXM6bmV3
VmFsdWVzXTsKLSAgICAgICAgcmV0dXJuOwotICAgIH0KLQogICAgIGRpc3BhdGNoX2FzeW5jKGRp
c3BhdGNoX2dldF9nbG9iYWxfcXVldWUoRElTUEFUQ0hfUVVFVUVfUFJJT1JJVFlfREVGQVVMVCwg
MCksIFtzZWxmLCBwcm90ZWN0ZWRTZWxmID0gcmV0YWluUHRyKHNlbGYpLCBvbGRWYWx1ZXMgPSBy
ZXRhaW5QdHIob2xkVmFsdWVzKSwgbmV3VmFsdWVzID0gcmV0YWluUHRyKG5ld1ZhbHVlcyldIHsK
ICAgICAgICAgW3NlbGYgZmluZFByZWZlcmVuY2VDaGFuZ2VzQW5kTm90aWZ5Rm9yS2V5czpvbGRW
YWx1ZXMuZ2V0KCkgdG9WYWx1ZXNGb3JLZXlzOm5ld1ZhbHVlcy5nZXQoKV07CiAgICAgfSk7Cg==
</data>
<flag name="commit-queue"
          id="427489"
          type_id="3"
          status="+"
          setter="pvollan"
    />
          </attachment>
      

    </bug>

</bugzilla>