<?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>171408</bug_id>
          
          <creation_ts>2017-04-27 17:22:29 -0700</creation_ts>
          <short_desc>Teach WebProcessPool to track a map of SessionIDs to WebPageProxys to manage their lifetime</short_desc>
          <delta_ts>2017-05-25 15:28:38 -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>WebKit2</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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>172615</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Brady Eidson">beidson</reporter>
          <assigned_to name="Brady Eidson">beidson</assigned_to>
          <cc>achristensen</cc>
    
    <cc>commit-queue</cc>
    
    <cc>ggaren</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1302416</commentid>
    <comment_count>0</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2017-04-27 17:22:29 -0700</bug_when>
    <thetext>Teach WebProcessPool to track a map of SessionIDs to WebPageProxys to manage their lifetime</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1302486</commentid>
    <comment_count>1</comment_count>
      <attachid>308503</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2017-04-27 21:53:39 -0700</bug_when>
    <thetext>Created attachment 308503
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1302497</commentid>
    <comment_count>2</comment_count>
      <attachid>308503</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2017-04-27 22:26:40 -0700</bug_when>
    <thetext>Comment on attachment 308503
Patch

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

&gt; Source/WebKit2/UIProcess/WebProcessPool.cpp:954
&gt; +        // FIXME: Remove this ASSERT and change these messages once multiple persistent sessions exist.
&gt; +        ASSERT(sessionID.isEphemeral());
&gt; +        networkProcess()-&gt;send(Messages::NetworkProcess::DestroyPrivateBrowsingSession(sessionID), 0);
&gt; +        page.process().send(Messages::WebProcess::DestroyPrivateBrowsingSession(sessionID), 0);

I guess we&apos;ll also rename DestroyPrivateBrowsingSession to DestroySession, right?

&gt; Source/WebKit2/UIProcess/WebProcessProxy.cpp:293
&gt; +    auto removedPage = m_pageMap.take(pageID);

auto*</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1302498</commentid>
    <comment_count>3</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2017-04-27 22:27:40 -0700</bug_when>
    <thetext>(In reply to Alex Christensen from comment #2)
&gt; Comment on attachment 308503 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=308503&amp;action=review
&gt; 
&gt; &gt; Source/WebKit2/UIProcess/WebProcessPool.cpp:954
&gt; &gt; +        // FIXME: Remove this ASSERT and change these messages once multiple persistent sessions exist.
&gt; &gt; +        ASSERT(sessionID.isEphemeral());
&gt; &gt; +        networkProcess()-&gt;send(Messages::NetworkProcess::DestroyPrivateBrowsingSession(sessionID), 0);
&gt; &gt; +        page.process().send(Messages::WebProcess::DestroyPrivateBrowsingSession(sessionID), 0);
&gt; 
&gt; I guess we&apos;ll also rename DestroyPrivateBrowsingSession to DestroySession,
&gt; right?

Yup.

&gt; 
&gt; &gt; Source/WebKit2/UIProcess/WebProcessProxy.cpp:293
&gt; &gt; +    auto removedPage = m_pageMap.take(pageID);
&gt; 
&gt; auto*

Sure.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1302499</commentid>
    <comment_count>4</comment_count>
      <attachid>308505</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2017-04-27 22:28:53 -0700</bug_when>
    <thetext>Created attachment 308505
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1302500</commentid>
    <comment_count>5</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2017-04-27 22:29:25 -0700</bug_when>
    <thetext>Will cq+ after EWS starts to look green</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1302507</commentid>
    <comment_count>6</comment_count>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2017-04-27 23:35:32 -0700</bug_when>
    <thetext>EWS is unhappy with 215916 I think</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1302509</commentid>
    <comment_count>7</comment_count>
      <attachid>308505</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-04-28 00:04:19 -0700</bug_when>
    <thetext>Comment on attachment 308505
Patch

Clearing flags on attachment: 308505

Committed r215923: &lt;http://trac.webkit.org/changeset/215923&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1302510</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-04-28 00:04:21 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1302570</commentid>
    <comment_count>9</comment_count>
      <attachid>308505</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2017-04-28 08:00:10 -0700</bug_when>
    <thetext>Comment on attachment 308505
Patch

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

&gt; Source/WebKit2/UIProcess/API/APIPageConfiguration.cpp:160
&gt; +#if !ASSERT_DISABLED
&gt; +    if (m_websiteDataStore)
&gt; +        ASSERT(m_websiteDataStore-&gt;websiteDataStore().sessionID() == m_sessionID);
&gt; +#endif

You can ASSERT(!m_websiteDataStore || ...) to avoid the #ifdef.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>308503</attachid>
            <date>2017-04-27 21:53:39 -0700</date>
            <delta_ts>2017-04-27 22:28:52 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-171408-20170427215338.patch</filename>
            <type>text/plain</type>
            <size>9925</size>
            <attacher name="Brady Eidson">beidson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjE1OTA4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggMmJjNjEyMTY4YmQxMjEx
YzE1YzZmZDIyNmFhYmQ0ZjllYTg2YzU5Ni4uMzQwY2RhZjcwMmUxMmU4MTQ5OTkzYmU4M2I3MDM5
ZmQzY2FkMDYzNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDI4IEBACiAyMDE3LTA0LTI3ICBCcmFk
eSBFaWRzb24gIDxiZWlkc29uQGFwcGxlLmNvbT4KIAorICAgICAgICBUZWFjaCBXZWJQcm9jZXNz
UG9vbCB0byB0cmFjayBhIG1hcCBvZiBTZXNzaW9uSURzIHRvIFdlYlBhZ2VQcm94eXMgdG8gbWFu
YWdlIHRoZWlyIGxpZmV0aW1lCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xNzE0MDgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQVBJUGFnZUNvbmZpZ3VyYXRpb24uY3BwOgorICAg
ICAgICAoQVBJOjpQYWdlQ29uZmlndXJhdGlvbjo6c2Vzc2lvbklEKToKKyAgICAgICAgKiBVSVBy
b2Nlc3MvQVBJL0FQSVBhZ2VDb25maWd1cmF0aW9uLmg6CisgICAgICAgICogVUlQcm9jZXNzL1dl
YlBhZ2VQcm94eS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6cmVhdHRhY2hU
b1dlYlByb2Nlc3MpOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OmNsb3NlKToKKyAg
ICAgICAgKiBVSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwOgorICAgICAgICAoV2ViS2l0OjpX
ZWJQcm9jZXNzUG9vbDo6cGFnZUFkZGVkVG9Qcm9jZXNzKToKKyAgICAgICAgKFdlYktpdDo6V2Vi
UHJvY2Vzc1Bvb2w6OnBhZ2VSZW1vdmVkRnJvbVByb2Nlc3MpOgorICAgICAgICAqIFVJUHJvY2Vz
cy9XZWJQcm9jZXNzUG9vbC5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQcm9jZXNzUHJveHku
Y3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzUHJveHk6OmNyZWF0ZVdlYlBhZ2UpOgor
ICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzUHJveHk6OmFkZEV4aXN0aW5nV2ViUGFnZSk6Cisg
ICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3NQcm94eTo6cmVtb3ZlV2ViUGFnZSk6CisgICAgICAg
ICogVUlQcm9jZXNzL1dlYlByb2Nlc3NQcm94eS5oOgorCisyMDE3LTA0LTI3ICBCcmFkeSBFaWRz
b24gIDxiZWlkc29uQGFwcGxlLmNvbT4KKwogICAgICAgICBSZWZhY3RvciBTZXNzaW9uSUQgdG8g
c3VwcG9ydCBtdWx0aXBsZSBub24tZXBoZW1lcmFsIChwZXJzaXN0ZW50KSBzZXNzaW9ucy4KICAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3MTM2NwogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0FQSVBhZ2VDb25maWd1cmF0
aW9uLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQVBJUGFnZUNvbmZpZ3VyYXRp
b24uY3BwCmluZGV4IDg4Mzc1MTA1NDI5NGMyN2U5OTYwMjA2NWMwYmJlOWRjYzI1NzgxYWQuLjA5
YTc0M2YyMDEzZDZmZjJjMDM4ODhiMmRlZmE5OTY2MWEyMTI2MjQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQVBJUGFnZUNvbmZpZ3VyYXRpb24uY3BwCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQVBJUGFnZUNvbmZpZ3VyYXRpb24uY3BwCkBAIC0x
NTQsNiArMTU0LDExIEBAIHZvaWQgUGFnZUNvbmZpZ3VyYXRpb246OnNldFdlYnNpdGVEYXRhU3Rv
cmUoQVBJOjpXZWJzaXRlRGF0YVN0b3JlKiB3ZWJzaXRlRGF0YVN0CiAKIFdlYkNvcmU6OlNlc3Np
b25JRCBQYWdlQ29uZmlndXJhdGlvbjo6c2Vzc2lvbklEKCkKIHsKKyNpZiAhQVNTRVJUX0RJU0FC
TEVECisgICAgaWYgKG1fd2Vic2l0ZURhdGFTdG9yZSkKKyAgICAgICAgQVNTRVJUKG1fd2Vic2l0
ZURhdGFTdG9yZS0+d2Vic2l0ZURhdGFTdG9yZSgpLnNlc3Npb25JRCgpID09IG1fc2Vzc2lvbklE
KTsKKyNlbmRpZgorCiAgICAgcmV0dXJuIG1fc2Vzc2lvbklEOwogfQogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0FQSVBhZ2VDb25maWd1cmF0aW9uLmggYi9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0FQSVBhZ2VDb25maWd1cmF0aW9uLmgKaW5kZXggM2Zm
NGVmZGJhNDM0NGViZjBmNDExMThlNGY2Y2FiZmIyMGIyYjU3Zi4uNWQ0NjczN2VhMzE1NjYzNTMw
MWY4ZTIwMzEwMjc2ZTIxMDZkNzIyNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL0FQSS9BUElQYWdlQ29uZmlndXJhdGlvbi5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9BUEkvQVBJUGFnZUNvbmZpZ3VyYXRpb24uaApAQCAtODAsNiArODAsNyBAQCBwdWJsaWM6
CiAgICAgV2Vic2l0ZURhdGFTdG9yZSogd2Vic2l0ZURhdGFTdG9yZSgpOwogICAgIHZvaWQgc2V0
V2Vic2l0ZURhdGFTdG9yZShXZWJzaXRlRGF0YVN0b3JlKik7CiAKKyAgICAvLyBGSVhNRTogT25j
ZSBQYWdlQ29uZmlndXJhdGlvbnMgKmFsd2F5cyogaGF2ZSBhIGRhdGEgc3RvcmUsIGdldCByaWQg
b2YgdGhlIHNlcGFyYXRlIHNlc3Npb25JRC4KICAgICBXZWJDb3JlOjpTZXNzaW9uSUQgc2Vzc2lv
bklEKCk7CiAgICAgdm9pZCBzZXRTZXNzaW9uSUQoV2ViQ29yZTo6U2Vzc2lvbklEKTsKIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAppbmRleCAxOThhZDYwMzRkYTkx
ZjA0ZDFiMTAzM2Q1NDZhMDRmNTQ2YmU0NTEzLi5iZDAyOWJhNGE0NmFjOTFiZDU2ZGRiYTVjYzFk
MmU5OWM2N2VmYzE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFn
ZVByb3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNw
cApAQCAtNzEyLDcgKzcxMiw3IEBAIHZvaWQgV2ViUGFnZVByb3h5OjpyZWF0dGFjaFRvV2ViUHJv
Y2VzcygpCiAgICAgQVNTRVJUKG1fcHJvY2Vzcy0+c3RhdGUoKSA9PSBXZWJQcm9jZXNzUHJveHk6
OlN0YXRlOjpUZXJtaW5hdGVkKTsKIAogICAgIG1faXNWYWxpZCA9IHRydWU7Ci0gICAgbV9wcm9j
ZXNzLT5yZW1vdmVXZWJQYWdlKG1fcGFnZUlEKTsKKyAgICBtX3Byb2Nlc3MtPnJlbW92ZVdlYlBh
Z2UoKnRoaXMsIG1fcGFnZUlEKTsKICAgICBtX3Byb2Nlc3MtPnJlbW92ZU1lc3NhZ2VSZWNlaXZl
cihNZXNzYWdlczo6V2ViUGFnZVByb3h5OjptZXNzYWdlUmVjZWl2ZXJOYW1lKCksIG1fcGFnZUlE
KTsKIAogICAgIG1fcHJvY2VzcyA9IG1fcHJvY2Vzcy0+cHJvY2Vzc1Bvb2woKS5jcmVhdGVOZXdX
ZWJQcm9jZXNzUmVzcGVjdGluZ1Byb2Nlc3NDb3VudExpbWl0KG1fd2Vic2l0ZURhdGFTdG9yZS5n
ZXQoKSk7CkBAIC03MjAsNyArNzIwLDcgQEAgdm9pZCBXZWJQYWdlUHJveHk6OnJlYXR0YWNoVG9X
ZWJQcm9jZXNzKCkKICAgICBBU1NFUlQobV9wcm9jZXNzLT5zdGF0ZSgpICE9IENoaWxkUHJvY2Vz
c1Byb3h5OjpTdGF0ZTo6VGVybWluYXRlZCk7CiAgICAgaWYgKG1fcHJvY2Vzcy0+c3RhdGUoKSA9
PSBDaGlsZFByb2Nlc3NQcm94eTo6U3RhdGU6OlJ1bm5pbmcpCiAgICAgICAgIHByb2Nlc3NEaWRG
aW5pc2hMYXVuY2hpbmcoKTsKLSAgICBtX3Byb2Nlc3MtPmFkZEV4aXN0aW5nV2ViUGFnZSh0aGlz
LCBtX3BhZ2VJRCk7CisgICAgbV9wcm9jZXNzLT5hZGRFeGlzdGluZ1dlYlBhZ2UoKnRoaXMsIG1f
cGFnZUlEKTsKICAgICBtX3Byb2Nlc3MtPmFkZE1lc3NhZ2VSZWNlaXZlcihNZXNzYWdlczo6V2Vi
UGFnZVByb3h5OjptZXNzYWdlUmVjZWl2ZXJOYW1lKCksIG1fcGFnZUlELCAqdGhpcyk7CiAKICAg
ICB1cGRhdGVBY3Rpdml0eVN0YXRlKCk7CkBAIC04NjYsNyArODY2LDcgQEAgdm9pZCBXZWJQYWdl
UHJveHk6OmNsb3NlKCkKICAgICBtX3dlYlByb2Nlc3NMaWZldGltZVRyYWNrZXIucGFnZVdhc0lu
dmFsaWRhdGVkKCk7CiAKICAgICBtX3Byb2Nlc3MtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OkNs
b3NlKCksIG1fcGFnZUlEKTsKLSAgICBtX3Byb2Nlc3MtPnJlbW92ZVdlYlBhZ2UobV9wYWdlSUQp
OworICAgIG1fcHJvY2Vzcy0+cmVtb3ZlV2ViUGFnZSgqdGhpcywgbV9wYWdlSUQpOwogICAgIG1f
cHJvY2Vzcy0+cmVtb3ZlTWVzc2FnZVJlY2VpdmVyKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6Om1l
c3NhZ2VSZWNlaXZlck5hbWUoKSwgbV9wYWdlSUQpOwogICAgIG1fcHJvY2Vzcy0+cHJvY2Vzc1Bv
b2woKS5zdXBwbGVtZW50PFdlYk5vdGlmaWNhdGlvbk1hbmFnZXJQcm94eT4oKS0+Y2xlYXJOb3Rp
ZmljYXRpb25zKHRoaXMpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
V2ViUHJvY2Vzc1Bvb2wuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlByb2Nlc3NQ
b29sLmNwcAppbmRleCA0MGRlM2QxZGEyZTY0ODIxMGJhZWM4MDZkZmM2MzJkNjM1YTk4NjhmLi5l
ZTQ4NDdjOTFmODI4ZDM1ZDAwMDViNDBiMjQ0OWJiNzNjYzA3YjkwIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Bvb2wuY3BwCisrKyBiL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5jcHAKQEAgLTkyNSw2ICs5MjUsMzYgQEAgUmVm
PFdlYlBhZ2VQcm94eT4gV2ViUHJvY2Vzc1Bvb2w6OmNyZWF0ZVdlYlBhZ2UoUGFnZUNsaWVudCYg
cGFnZUNsaWVudCwgUmVmPEFQSToKICAgICByZXR1cm4gcHJvY2Vzcy0+Y3JlYXRlV2ViUGFnZShw
YWdlQ2xpZW50LCBXVEZNb3ZlKHBhZ2VDb25maWd1cmF0aW9uKSk7CiB9CiAKK3ZvaWQgV2ViUHJv
Y2Vzc1Bvb2w6OnBhZ2VBZGRlZFRvUHJvY2VzcyhXZWJQYWdlUHJveHkmIHBhZ2UpCit7CisgICAg
YXV0byByZXN1bHQgPSBtX3Nlc3Npb25Ub1BhZ2VzTWFwLmFkZChwYWdlLnNlc3Npb25JRCgpLCBI
YXNoU2V0PFdlYlBhZ2VQcm94eSo+KCkpLml0ZXJhdG9yLT52YWx1ZS5hZGQoJnBhZ2UpOworICAg
IEFTU0VSVF9VTlVTRUQocmVzdWx0LCByZXN1bHQuaXNOZXdFbnRyeSk7Cit9CisKK3ZvaWQgV2Vi
UHJvY2Vzc1Bvb2w6OnBhZ2VSZW1vdmVkRnJvbVByb2Nlc3MoV2ViUGFnZVByb3h5JiBwYWdlKQor
eworICAgIGF1dG8gc2Vzc2lvbklEID0gcGFnZS5zZXNzaW9uSUQoKTsKKyAgICBhdXRvIGl0ZXJh
dG9yID0gbV9zZXNzaW9uVG9QYWdlc01hcC5maW5kKHNlc3Npb25JRCk7CisgICAgQVNTRVJUKGl0
ZXJhdG9yICE9IG1fc2Vzc2lvblRvUGFnZXNNYXAuZW5kKCkpOworCisgICAgYXV0byB0YWtlblBh
Z2UgPSBpdGVyYXRvci0+dmFsdWUudGFrZSgmcGFnZSk7CisgICAgQVNTRVJUX1VOVVNFRCh0YWtl
blBhZ2UsIHRha2VuUGFnZSA9PSAmcGFnZSk7CisKKyAgICBpZiAoaXRlcmF0b3ItPnZhbHVlLmlz
RW1wdHkoKSkgeworICAgICAgICBtX3Nlc3Npb25Ub1BhZ2VzTWFwLnJlbW92ZShpdGVyYXRvcik7
CisKKyAgICAgICAgaWYgKHNlc3Npb25JRCA9PSBTZXNzaW9uSUQ6OmRlZmF1bHRTZXNzaW9uSUQo
KSkKKyAgICAgICAgICAgIHJldHVybjsKKworICAgICAgICAvLyBUaGUgbGFzdCB1c2VyIG9mIHRo
aXMgbm9uLWRlZmF1bHQgU2Vzc2lvbklEIGlzIGdvbmUsIHNvIGNsZWFuIGl0IHVwIGluIHRoZSBj
aGlsZCBwcm9jZXNzZXMuCisKKyAgICAgICAgLy8gRklYTUU6IFJlbW92ZSB0aGlzIEFTU0VSVCBh
bmQgY2hhbmdlIHRoZXNlIG1lc3NhZ2VzIG9uY2UgbXVsdGlwbGUgcGVyc2lzdGVudCBzZXNzaW9u
cyBleGlzdC4KKyAgICAgICAgQVNTRVJUKHNlc3Npb25JRC5pc0VwaGVtZXJhbCgpKTsKKyAgICAg
ICAgbmV0d29ya1Byb2Nlc3MoKS0+c2VuZChNZXNzYWdlczo6TmV0d29ya1Byb2Nlc3M6OkRlc3Ry
b3lQcml2YXRlQnJvd3NpbmdTZXNzaW9uKHNlc3Npb25JRCksIDApOworICAgICAgICBwYWdlLnBy
b2Nlc3MoKS5zZW5kKE1lc3NhZ2VzOjpXZWJQcm9jZXNzOjpEZXN0cm95UHJpdmF0ZUJyb3dzaW5n
U2Vzc2lvbihzZXNzaW9uSUQpLCAwKTsKKyAgICB9Cit9CisKIERvd25sb2FkUHJveHkqIFdlYlBy
b2Nlc3NQb29sOjpkb3dubG9hZChXZWJQYWdlUHJveHkqIGluaXRpYXRpbmdQYWdlLCBjb25zdCBS
ZXNvdXJjZVJlcXVlc3QmIHJlcXVlc3QsIGNvbnN0IFN0cmluZyYgc3VnZ2VzdGVkRmlsZW5hbWUp
CiB7CiAgICAgRG93bmxvYWRQcm94eSogZG93bmxvYWRQcm94eSA9IGNyZWF0ZURvd25sb2FkUHJv
eHkocmVxdWVzdCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUHJv
Y2Vzc1Bvb2wuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5oCmlu
ZGV4IGJmNzY1MDlmNGZjOWI0ODE2YWM0NzdjMzU3YjRiYTI0ZDJmOTE4ODguLjQ1NjI2MDAyNzdj
Y2U4YzZjZDliNmI3ODFjNTIyN2M0ZDBkNDU4M2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9XZWJQcm9jZXNzUG9vbC5oCkBAIC0xNzYsNiArMTc2LDkgQEAgcHVibGljOgogCiAgICAgUmVm
PFdlYlBhZ2VQcm94eT4gY3JlYXRlV2ViUGFnZShQYWdlQ2xpZW50JiwgUmVmPEFQSTo6UGFnZUNv
bmZpZ3VyYXRpb24+JiYpOwogCisgICAgdm9pZCBwYWdlQWRkZWRUb1Byb2Nlc3MoV2ViUGFnZVBy
b3h5Jik7CisgICAgdm9pZCBwYWdlUmVtb3ZlZEZyb21Qcm9jZXNzKFdlYlBhZ2VQcm94eSYpOwor
CiAgICAgY29uc3QgU3RyaW5nJiBpbmplY3RlZEJ1bmRsZVBhdGgoKSBjb25zdCB7IHJldHVybiBt
X2NvbmZpZ3VyYXRpb24tPmluamVjdGVkQnVuZGxlUGF0aCgpOyB9CiAKICAgICBEb3dubG9hZFBy
b3h5KiBkb3dubG9hZChXZWJQYWdlUHJveHkqIGluaXRpYXRpbmdQYWdlLCBjb25zdCBXZWJDb3Jl
OjpSZXNvdXJjZVJlcXVlc3QmLCBjb25zdCBTdHJpbmcmIHN1Z2dlc3RlZEZpbGVuYW1lID0geyB9
KTsKQEAgLTYxNSw2ICs2MTgsOCBAQCBwcml2YXRlOgogICAgICAgICBWZWN0b3I8U3RyaW5nPiBh
ZGRpdGlvbmFsV2ViUHJvY2Vzc1NhbmRib3hFeHRlbnNpb25QYXRoczsKICAgICB9OwogICAgIFBh
dGhzIG1fcmVzb2x2ZWRQYXRoczsKKworICAgIEhhc2hNYXA8V2ViQ29yZTo6U2Vzc2lvbklELCBI
YXNoU2V0PFdlYlBhZ2VQcm94eSo+PiBtX3Nlc3Npb25Ub1BhZ2VzTWFwOwogfTsKIAogdGVtcGxh
dGU8dHlwZW5hbWUgVD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQ
cm9jZXNzUHJveHkuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlByb2Nlc3NQcm94
eS5jcHAKaW5kZXggMTU4OTdmMjA2ZWYzZDM5NDJmZmZhMWU5MTg0OWY1Y2NkNGI2Y2FkMS4uZWQ5
NzNhNzU4N2FiOWY4M2ExNGE2ZjkzNmI3ZGU1MWJjY2ExYTA0MSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL1dlYlByb2Nlc3NQcm94eS5jcHAKKysrIGIvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL1dlYlByb2Nlc3NQcm94eS5jcHAKQEAgLTI3MCwyOSArMjcwLDMyIEBAIFJl
ZjxXZWJQYWdlUHJveHk+IFdlYlByb2Nlc3NQcm94eTo6Y3JlYXRlV2ViUGFnZShQYWdlQ2xpZW50
JiBwYWdlQ2xpZW50LCBSZWY8QVBJCiAgICAgdWludDY0X3QgcGFnZUlEID0gZ2VuZXJhdGVQYWdl
SUQoKTsKICAgICBSZWY8V2ViUGFnZVByb3h5PiB3ZWJQYWdlID0gV2ViUGFnZVByb3h5OjpjcmVh
dGUocGFnZUNsaWVudCwgKnRoaXMsIHBhZ2VJRCwgV1RGTW92ZShwYWdlQ29uZmlndXJhdGlvbikp
OwogCi0gICAgbV9wYWdlTWFwLnNldChwYWdlSUQsIHdlYlBhZ2UucHRyKCkpOwotICAgIGdsb2Jh
bFBhZ2VNYXAoKS5zZXQocGFnZUlELCB3ZWJQYWdlLnB0cigpKTsKLQotICAgIHVwZGF0ZUJhY2tn
cm91bmRSZXNwb25zaXZlbmVzc1RpbWVyKCk7CisgICAgYWRkRXhpc3RpbmdXZWJQYWdlKHdlYlBh
Z2UuZ2V0KCksIHBhZ2VJRCk7CiAKICAgICByZXR1cm4gd2ViUGFnZTsKIH0KIAotdm9pZCBXZWJQ
cm9jZXNzUHJveHk6OmFkZEV4aXN0aW5nV2ViUGFnZShXZWJQYWdlUHJveHkqIHdlYlBhZ2UsIHVp
bnQ2NF90IHBhZ2VJRCkKK3ZvaWQgV2ViUHJvY2Vzc1Byb3h5OjphZGRFeGlzdGluZ1dlYlBhZ2Uo
V2ViUGFnZVByb3h5JiB3ZWJQYWdlLCB1aW50NjRfdCBwYWdlSUQpCiB7CiAgICAgQVNTRVJUKCFt
X3BhZ2VNYXAuY29udGFpbnMocGFnZUlEKSk7CiAgICAgQVNTRVJUKCFnbG9iYWxQYWdlTWFwKCku
Y29udGFpbnMocGFnZUlEKSk7CiAKLSAgICBtX3BhZ2VNYXAuc2V0KHBhZ2VJRCwgd2ViUGFnZSk7
Ci0gICAgZ2xvYmFsUGFnZU1hcCgpLnNldChwYWdlSUQsIHdlYlBhZ2UpOworICAgIG1fcHJvY2Vz
c1Bvb2wtPnBhZ2VBZGRlZFRvUHJvY2Vzcyh3ZWJQYWdlKTsKKworICAgIG1fcGFnZU1hcC5zZXQo
cGFnZUlELCAmd2ViUGFnZSk7CisgICAgZ2xvYmFsUGFnZU1hcCgpLnNldChwYWdlSUQsICZ3ZWJQ
YWdlKTsKIAogICAgIHVwZGF0ZUJhY2tncm91bmRSZXNwb25zaXZlbmVzc1RpbWVyKCk7CiB9CiAK
LXZvaWQgV2ViUHJvY2Vzc1Byb3h5OjpyZW1vdmVXZWJQYWdlKHVpbnQ2NF90IHBhZ2VJRCkKK3Zv
aWQgV2ViUHJvY2Vzc1Byb3h5OjpyZW1vdmVXZWJQYWdlKFdlYlBhZ2VQcm94eSYgd2ViUGFnZSwg
dWludDY0X3QgcGFnZUlEKQogewotICAgIG1fcGFnZU1hcC5yZW1vdmUocGFnZUlEKTsKLSAgICBn
bG9iYWxQYWdlTWFwKCkucmVtb3ZlKHBhZ2VJRCk7CisgICAgYXV0byByZW1vdmVkUGFnZSA9IG1f
cGFnZU1hcC50YWtlKHBhZ2VJRCk7CisgICAgQVNTRVJUX1VOVVNFRChyZW1vdmVkUGFnZSwgcmVt
b3ZlZFBhZ2UgPT0gJndlYlBhZ2UpOworICAgIHJlbW92ZWRQYWdlID0gZ2xvYmFsUGFnZU1hcCgp
LnRha2UocGFnZUlEKTsKKyAgICBBU1NFUlRfVU5VU0VEKHJlbW92ZWRQYWdlLCByZW1vdmVkUGFn
ZSA9PSAmd2ViUGFnZSk7CisKKyAgICBtX3Byb2Nlc3NQb29sLT5wYWdlUmVtb3ZlZEZyb21Qcm9j
ZXNzKHdlYlBhZ2UpOwogCiAgICAgdXBkYXRlQmFja2dyb3VuZFJlc3BvbnNpdmVuZXNzVGltZXIo
KTsKICAgICAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQcm9jZXNz
UHJveHkuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQcm9jZXNzUHJveHkuaAppbmRl
eCA3NjE2YWRiNmQ5YzJiNzUyODIyNmIwNTA1MDJlZGM3MDU2NTBiZmU0Li45NjMxNmNkNDA0MWM1
ZGQ1YWUzYTBmNzQzYWU1MjgyNzI1OTNlY2Q5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L1dlYlByb2Nlc3NQcm94eS5oCkBAIC05MCw4ICs5MCw4IEBAIHB1YmxpYzoKIAogICAgIHN0YXRp
YyBXZWJQYWdlUHJveHkqIHdlYlBhZ2UodWludDY0X3QgcGFnZUlEKTsKICAgICBSZWY8V2ViUGFn
ZVByb3h5PiBjcmVhdGVXZWJQYWdlKFBhZ2VDbGllbnQmLCBSZWY8QVBJOjpQYWdlQ29uZmlndXJh
dGlvbj4mJik7Ci0gICAgdm9pZCBhZGRFeGlzdGluZ1dlYlBhZ2UoV2ViUGFnZVByb3h5KiwgdWlu
dDY0X3QgcGFnZUlEKTsKLSAgICB2b2lkIHJlbW92ZVdlYlBhZ2UodWludDY0X3QgcGFnZUlEKTsK
KyAgICB2b2lkIGFkZEV4aXN0aW5nV2ViUGFnZShXZWJQYWdlUHJveHkmLCB1aW50NjRfdCBwYWdl
SUQpOworICAgIHZvaWQgcmVtb3ZlV2ViUGFnZShXZWJQYWdlUHJveHkmLCB1aW50NjRfdCBwYWdl
SUQpOwogCiAgICAgV1RGOjpJdGVyYXRvclJhbmdlPFdlYlBhZ2VQcm94eU1hcDo6Y29uc3RfaXRl
cmF0b3I6OlZhbHVlcz4gcGFnZXMoKSBjb25zdCB7IHJldHVybiBtX3BhZ2VNYXAudmFsdWVzKCk7
IH0KICAgICB1bnNpZ25lZCBwYWdlQ291bnQoKSBjb25zdCB7IHJldHVybiBtX3BhZ2VNYXAuc2l6
ZSgpOyB9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>308505</attachid>
            <date>2017-04-27 22:28:53 -0700</date>
            <delta_ts>2017-04-28 00:04:19 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-171408-20170427222853.patch</filename>
            <type>text/plain</type>
            <size>9928</size>
            <attacher name="Brady Eidson">beidson</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjE1OTA4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggMmJjNjEyMTY4YmQxMjEx
YzE1YzZmZDIyNmFhYmQ0ZjllYTg2YzU5Ni4uOGM0NzlkNWMzZjBhZTZiNTFkZWQ1NGY3MTZmNzFk
MzNiNzFmZTNjOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDI4IEBACiAyMDE3LTA0LTI3ICBCcmFk
eSBFaWRzb24gIDxiZWlkc29uQGFwcGxlLmNvbT4KIAorICAgICAgICBUZWFjaCBXZWJQcm9jZXNz
UG9vbCB0byB0cmFjayBhIG1hcCBvZiBTZXNzaW9uSURzIHRvIFdlYlBhZ2VQcm94eXMgdG8gbWFu
YWdlIHRoZWlyIGxpZmV0aW1lCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xNzE0MDgKKworICAgICAgICBSZXZpZXdlZCBieSBBbGV4IENocmlzdGVuc2Vu
LgorCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9BUElQYWdlQ29uZmlndXJhdGlvbi5jcHA6Cisg
ICAgICAgIChBUEk6OlBhZ2VDb25maWd1cmF0aW9uOjpzZXNzaW9uSUQpOgorICAgICAgICAqIFVJ
UHJvY2Vzcy9BUEkvQVBJUGFnZUNvbmZpZ3VyYXRpb24uaDoKKyAgICAgICAgKiBVSVByb2Nlc3Mv
V2ViUGFnZVByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5OjpyZWF0dGFj
aFRvV2ViUHJvY2Vzcyk6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2VQcm94eTo6Y2xvc2UpOgor
ICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5jcHA6CisgICAgICAgIChXZWJLaXQ6
OldlYlByb2Nlc3NQb29sOjpwYWdlQWRkZWRUb1Byb2Nlc3MpOgorICAgICAgICAoV2ViS2l0OjpX
ZWJQcm9jZXNzUG9vbDo6cGFnZVJlbW92ZWRGcm9tUHJvY2Vzcyk6CisgICAgICAgICogVUlQcm9j
ZXNzL1dlYlByb2Nlc3NQb29sLmg6CisgICAgICAgICogVUlQcm9jZXNzL1dlYlByb2Nlc3NQcm94
eS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3NQcm94eTo6Y3JlYXRlV2ViUGFnZSk6
CisgICAgICAgIChXZWJLaXQ6OldlYlByb2Nlc3NQcm94eTo6YWRkRXhpc3RpbmdXZWJQYWdlKToK
KyAgICAgICAgKFdlYktpdDo6V2ViUHJvY2Vzc1Byb3h5OjpyZW1vdmVXZWJQYWdlKToKKyAgICAg
ICAgKiBVSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5Lmg6CisKKzIwMTctMDQtMjcgIEJyYWR5IEVp
ZHNvbiAgPGJlaWRzb25AYXBwbGUuY29tPgorCiAgICAgICAgIFJlZmFjdG9yIFNlc3Npb25JRCB0
byBzdXBwb3J0IG11bHRpcGxlIG5vbi1lcGhlbWVyYWwgKHBlcnNpc3RlbnQpIHNlc3Npb25zLgog
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTcxMzY3CiAK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQVBJUGFnZUNvbmZpZ3Vy
YXRpb24uY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9BUElQYWdlQ29uZmlndXJh
dGlvbi5jcHAKaW5kZXggODgzNzUxMDU0Mjk0YzI3ZTk5NjAyMDY1YzBiYmU5ZGNjMjU3ODFhZC4u
MDlhNzQzZjIwMTNkNmZmMmMwMzg4OGIyZGVmYTk5NjYxYTIxMjYyNCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9BUElQYWdlQ29uZmlndXJhdGlvbi5jcHAKKysrIGIv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9BUElQYWdlQ29uZmlndXJhdGlvbi5jcHAKQEAg
LTE1NCw2ICsxNTQsMTEgQEAgdm9pZCBQYWdlQ29uZmlndXJhdGlvbjo6c2V0V2Vic2l0ZURhdGFT
dG9yZShBUEk6OldlYnNpdGVEYXRhU3RvcmUqIHdlYnNpdGVEYXRhU3QKIAogV2ViQ29yZTo6U2Vz
c2lvbklEIFBhZ2VDb25maWd1cmF0aW9uOjpzZXNzaW9uSUQoKQogeworI2lmICFBU1NFUlRfRElT
QUJMRUQKKyAgICBpZiAobV93ZWJzaXRlRGF0YVN0b3JlKQorICAgICAgICBBU1NFUlQobV93ZWJz
aXRlRGF0YVN0b3JlLT53ZWJzaXRlRGF0YVN0b3JlKCkuc2Vzc2lvbklEKCkgPT0gbV9zZXNzaW9u
SUQpOworI2VuZGlmCisKICAgICByZXR1cm4gbV9zZXNzaW9uSUQ7CiB9CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQVBJUGFnZUNvbmZpZ3VyYXRpb24uaCBiL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQVBJUGFnZUNvbmZpZ3VyYXRpb24uaAppbmRleCAz
ZmY0ZWZkYmE0MzQ0ZWJmMGY0MTExOGU0ZjZjYWJmYjIwYjJiNTdmLi41ZDQ2NzM3ZWEzMTU2NjM1
MzAxZjhlMjAzMTAyNzZlMjEwNmQ3MjI3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvQVBJL0FQSVBhZ2VDb25maWd1cmF0aW9uLmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0FQSS9BUElQYWdlQ29uZmlndXJhdGlvbi5oCkBAIC04MCw2ICs4MCw3IEBAIHB1Ymxp
YzoKICAgICBXZWJzaXRlRGF0YVN0b3JlKiB3ZWJzaXRlRGF0YVN0b3JlKCk7CiAgICAgdm9pZCBz
ZXRXZWJzaXRlRGF0YVN0b3JlKFdlYnNpdGVEYXRhU3RvcmUqKTsKIAorICAgIC8vIEZJWE1FOiBP
bmNlIFBhZ2VDb25maWd1cmF0aW9ucyAqYWx3YXlzKiBoYXZlIGEgZGF0YSBzdG9yZSwgZ2V0IHJp
ZCBvZiB0aGUgc2VwYXJhdGUgc2Vzc2lvbklELgogICAgIFdlYkNvcmU6OlNlc3Npb25JRCBzZXNz
aW9uSUQoKTsKICAgICB2b2lkIHNldFNlc3Npb25JRChXZWJDb3JlOjpTZXNzaW9uSUQpOwogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcCBiL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCmluZGV4IDE5OGFkNjAzNGRh
OTFmMDRkMWIxMDMzZDU0NmEwNGY1NDZiZTQ1MTMuLmJkMDI5YmE0YTQ2YWM5MWJkNTZkZGJhNWNj
MWQyZTk5YzY3ZWZjMTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQ
YWdlUHJveHkuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHku
Y3BwCkBAIC03MTIsNyArNzEyLDcgQEAgdm9pZCBXZWJQYWdlUHJveHk6OnJlYXR0YWNoVG9XZWJQ
cm9jZXNzKCkKICAgICBBU1NFUlQobV9wcm9jZXNzLT5zdGF0ZSgpID09IFdlYlByb2Nlc3NQcm94
eTo6U3RhdGU6OlRlcm1pbmF0ZWQpOwogCiAgICAgbV9pc1ZhbGlkID0gdHJ1ZTsKLSAgICBtX3By
b2Nlc3MtPnJlbW92ZVdlYlBhZ2UobV9wYWdlSUQpOworICAgIG1fcHJvY2Vzcy0+cmVtb3ZlV2Vi
UGFnZSgqdGhpcywgbV9wYWdlSUQpOwogICAgIG1fcHJvY2Vzcy0+cmVtb3ZlTWVzc2FnZVJlY2Vp
dmVyKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSwgbV9wYWdl
SUQpOwogCiAgICAgbV9wcm9jZXNzID0gbV9wcm9jZXNzLT5wcm9jZXNzUG9vbCgpLmNyZWF0ZU5l
d1dlYlByb2Nlc3NSZXNwZWN0aW5nUHJvY2Vzc0NvdW50TGltaXQobV93ZWJzaXRlRGF0YVN0b3Jl
LmdldCgpKTsKQEAgLTcyMCw3ICs3MjAsNyBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6cmVhdHRhY2hU
b1dlYlByb2Nlc3MoKQogICAgIEFTU0VSVChtX3Byb2Nlc3MtPnN0YXRlKCkgIT0gQ2hpbGRQcm9j
ZXNzUHJveHk6OlN0YXRlOjpUZXJtaW5hdGVkKTsKICAgICBpZiAobV9wcm9jZXNzLT5zdGF0ZSgp
ID09IENoaWxkUHJvY2Vzc1Byb3h5OjpTdGF0ZTo6UnVubmluZykKICAgICAgICAgcHJvY2Vzc0Rp
ZEZpbmlzaExhdW5jaGluZygpOwotICAgIG1fcHJvY2Vzcy0+YWRkRXhpc3RpbmdXZWJQYWdlKHRo
aXMsIG1fcGFnZUlEKTsKKyAgICBtX3Byb2Nlc3MtPmFkZEV4aXN0aW5nV2ViUGFnZSgqdGhpcywg
bV9wYWdlSUQpOwogICAgIG1fcHJvY2Vzcy0+YWRkTWVzc2FnZVJlY2VpdmVyKE1lc3NhZ2VzOjpX
ZWJQYWdlUHJveHk6Om1lc3NhZ2VSZWNlaXZlck5hbWUoKSwgbV9wYWdlSUQsICp0aGlzKTsKIAog
ICAgIHVwZGF0ZUFjdGl2aXR5U3RhdGUoKTsKQEAgLTg2Niw3ICs4NjYsNyBAQCB2b2lkIFdlYlBh
Z2VQcm94eTo6Y2xvc2UoKQogICAgIG1fd2ViUHJvY2Vzc0xpZmV0aW1lVHJhY2tlci5wYWdlV2Fz
SW52YWxpZGF0ZWQoKTsKIAogICAgIG1fcHJvY2Vzcy0+c2VuZChNZXNzYWdlczo6V2ViUGFnZTo6
Q2xvc2UoKSwgbV9wYWdlSUQpOwotICAgIG1fcHJvY2Vzcy0+cmVtb3ZlV2ViUGFnZShtX3BhZ2VJ
RCk7CisgICAgbV9wcm9jZXNzLT5yZW1vdmVXZWJQYWdlKCp0aGlzLCBtX3BhZ2VJRCk7CiAgICAg
bV9wcm9jZXNzLT5yZW1vdmVNZXNzYWdlUmVjZWl2ZXIoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6
bWVzc2FnZVJlY2VpdmVyTmFtZSgpLCBtX3BhZ2VJRCk7CiAgICAgbV9wcm9jZXNzLT5wcm9jZXNz
UG9vbCgpLnN1cHBsZW1lbnQ8V2ViTm90aWZpY2F0aW9uTWFuYWdlclByb3h5PigpLT5jbGVhck5v
dGlmaWNhdGlvbnModGhpcyk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9XZWJQcm9jZXNzUG9vbC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUHJvY2Vz
c1Bvb2wuY3BwCmluZGV4IDQwZGUzZDFkYTJlNjQ4MjEwYmFlYzgwNmRmYzYzMmQ2MzVhOTg2OGYu
LmVlNDg0N2M5MWY4MjhkMzVkMDAwNWI0MGIyNDQ5YmI3M2NjMDdiOTAgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5jcHAKKysrIGIvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmNwcApAQCAtOTI1LDYgKzkyNSwzNiBAQCBS
ZWY8V2ViUGFnZVByb3h5PiBXZWJQcm9jZXNzUG9vbDo6Y3JlYXRlV2ViUGFnZShQYWdlQ2xpZW50
JiBwYWdlQ2xpZW50LCBSZWY8QVBJOgogICAgIHJldHVybiBwcm9jZXNzLT5jcmVhdGVXZWJQYWdl
KHBhZ2VDbGllbnQsIFdURk1vdmUocGFnZUNvbmZpZ3VyYXRpb24pKTsKIH0KIAordm9pZCBXZWJQ
cm9jZXNzUG9vbDo6cGFnZUFkZGVkVG9Qcm9jZXNzKFdlYlBhZ2VQcm94eSYgcGFnZSkKK3sKKyAg
ICBhdXRvIHJlc3VsdCA9IG1fc2Vzc2lvblRvUGFnZXNNYXAuYWRkKHBhZ2Uuc2Vzc2lvbklEKCks
IEhhc2hTZXQ8V2ViUGFnZVByb3h5Kj4oKSkuaXRlcmF0b3ItPnZhbHVlLmFkZCgmcGFnZSk7Cisg
ICAgQVNTRVJUX1VOVVNFRChyZXN1bHQsIHJlc3VsdC5pc05ld0VudHJ5KTsKK30KKwordm9pZCBX
ZWJQcm9jZXNzUG9vbDo6cGFnZVJlbW92ZWRGcm9tUHJvY2VzcyhXZWJQYWdlUHJveHkmIHBhZ2Up
Cit7CisgICAgYXV0byBzZXNzaW9uSUQgPSBwYWdlLnNlc3Npb25JRCgpOworICAgIGF1dG8gaXRl
cmF0b3IgPSBtX3Nlc3Npb25Ub1BhZ2VzTWFwLmZpbmQoc2Vzc2lvbklEKTsKKyAgICBBU1NFUlQo
aXRlcmF0b3IgIT0gbV9zZXNzaW9uVG9QYWdlc01hcC5lbmQoKSk7CisKKyAgICBhdXRvIHRha2Vu
UGFnZSA9IGl0ZXJhdG9yLT52YWx1ZS50YWtlKCZwYWdlKTsKKyAgICBBU1NFUlRfVU5VU0VEKHRh
a2VuUGFnZSwgdGFrZW5QYWdlID09ICZwYWdlKTsKKworICAgIGlmIChpdGVyYXRvci0+dmFsdWUu
aXNFbXB0eSgpKSB7CisgICAgICAgIG1fc2Vzc2lvblRvUGFnZXNNYXAucmVtb3ZlKGl0ZXJhdG9y
KTsKKworICAgICAgICBpZiAoc2Vzc2lvbklEID09IFNlc3Npb25JRDo6ZGVmYXVsdFNlc3Npb25J
RCgpKQorICAgICAgICAgICAgcmV0dXJuOworCisgICAgICAgIC8vIFRoZSBsYXN0IHVzZXIgb2Yg
dGhpcyBub24tZGVmYXVsdCBTZXNzaW9uSUQgaXMgZ29uZSwgc28gY2xlYW4gaXQgdXAgaW4gdGhl
IGNoaWxkIHByb2Nlc3Nlcy4KKworICAgICAgICAvLyBGSVhNRTogUmVtb3ZlIHRoaXMgQVNTRVJU
IGFuZCBjaGFuZ2UgdGhlc2UgbWVzc2FnZXMgb25jZSBtdWx0aXBsZSBwZXJzaXN0ZW50IHNlc3Np
b25zIGV4aXN0LgorICAgICAgICBBU1NFUlQoc2Vzc2lvbklELmlzRXBoZW1lcmFsKCkpOworICAg
ICAgICBuZXR3b3JrUHJvY2VzcygpLT5zZW5kKE1lc3NhZ2VzOjpOZXR3b3JrUHJvY2Vzczo6RGVz
dHJveVByaXZhdGVCcm93c2luZ1Nlc3Npb24oc2Vzc2lvbklEKSwgMCk7CisgICAgICAgIHBhZ2Uu
cHJvY2VzcygpLnNlbmQoTWVzc2FnZXM6OldlYlByb2Nlc3M6OkRlc3Ryb3lQcml2YXRlQnJvd3Np
bmdTZXNzaW9uKHNlc3Npb25JRCksIDApOworICAgIH0KK30KKwogRG93bmxvYWRQcm94eSogV2Vi
UHJvY2Vzc1Bvb2w6OmRvd25sb2FkKFdlYlBhZ2VQcm94eSogaW5pdGlhdGluZ1BhZ2UsIGNvbnN0
IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgY29uc3QgU3RyaW5nJiBzdWdnZXN0ZWRGaWxlbmFt
ZSkKIHsKICAgICBEb3dubG9hZFByb3h5KiBkb3dubG9hZFByb3h5ID0gY3JlYXRlRG93bmxvYWRQ
cm94eShyZXF1ZXN0KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQ
cm9jZXNzUG9vbC5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmgK
aW5kZXggYmY3NjUwOWY0ZmM5YjQ4MTZhYzQ3N2MzNTdiNGJhMjRkMmY5MTg4OC4uNDU2MjYwMDI3
N2NjZThjNmNkOWI2Yjc4MWM1MjI3YzRkMGQ0NTgzYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL1dlYlByb2Nlc3NQb29sLmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL1dlYlByb2Nlc3NQb29sLmgKQEAgLTE3Niw2ICsxNzYsOSBAQCBwdWJsaWM6CiAKICAgICBS
ZWY8V2ViUGFnZVByb3h5PiBjcmVhdGVXZWJQYWdlKFBhZ2VDbGllbnQmLCBSZWY8QVBJOjpQYWdl
Q29uZmlndXJhdGlvbj4mJik7CiAKKyAgICB2b2lkIHBhZ2VBZGRlZFRvUHJvY2VzcyhXZWJQYWdl
UHJveHkmKTsKKyAgICB2b2lkIHBhZ2VSZW1vdmVkRnJvbVByb2Nlc3MoV2ViUGFnZVByb3h5Jik7
CisKICAgICBjb25zdCBTdHJpbmcmIGluamVjdGVkQnVuZGxlUGF0aCgpIGNvbnN0IHsgcmV0dXJu
IG1fY29uZmlndXJhdGlvbi0+aW5qZWN0ZWRCdW5kbGVQYXRoKCk7IH0KIAogICAgIERvd25sb2Fk
UHJveHkqIGRvd25sb2FkKFdlYlBhZ2VQcm94eSogaW5pdGlhdGluZ1BhZ2UsIGNvbnN0IFdlYkNv
cmU6OlJlc291cmNlUmVxdWVzdCYsIGNvbnN0IFN0cmluZyYgc3VnZ2VzdGVkRmlsZW5hbWUgPSB7
IH0pOwpAQCAtNjE1LDYgKzYxOCw4IEBAIHByaXZhdGU6CiAgICAgICAgIFZlY3RvcjxTdHJpbmc+
IGFkZGl0aW9uYWxXZWJQcm9jZXNzU2FuZGJveEV4dGVuc2lvblBhdGhzOwogICAgIH07CiAgICAg
UGF0aHMgbV9yZXNvbHZlZFBhdGhzOworCisgICAgSGFzaE1hcDxXZWJDb3JlOjpTZXNzaW9uSUQs
IEhhc2hTZXQ8V2ViUGFnZVByb3h5Kj4+IG1fc2Vzc2lvblRvUGFnZXNNYXA7CiB9OwogCiB0ZW1w
bGF0ZTx0eXBlbmFtZSBUPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dl
YlByb2Nlc3NQcm94eS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUHJvY2Vzc1By
b3h5LmNwcAppbmRleCAxNTg5N2YyMDZlZjNkMzk0MmZmZmExZTkxODQ5ZjVjY2Q0YjZjYWQxLi5k
MTUxMTRkMjllMTg0NzYyOGEzN2MzODY5ODEwYjFkMTBjOWUzYjFkIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmNwcAorKysgYi9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmNwcApAQCAtMjcwLDI5ICsyNzAsMzIgQEAg
UmVmPFdlYlBhZ2VQcm94eT4gV2ViUHJvY2Vzc1Byb3h5OjpjcmVhdGVXZWJQYWdlKFBhZ2VDbGll
bnQmIHBhZ2VDbGllbnQsIFJlZjxBUEkKICAgICB1aW50NjRfdCBwYWdlSUQgPSBnZW5lcmF0ZVBh
Z2VJRCgpOwogICAgIFJlZjxXZWJQYWdlUHJveHk+IHdlYlBhZ2UgPSBXZWJQYWdlUHJveHk6OmNy
ZWF0ZShwYWdlQ2xpZW50LCAqdGhpcywgcGFnZUlELCBXVEZNb3ZlKHBhZ2VDb25maWd1cmF0aW9u
KSk7CiAKLSAgICBtX3BhZ2VNYXAuc2V0KHBhZ2VJRCwgd2ViUGFnZS5wdHIoKSk7Ci0gICAgZ2xv
YmFsUGFnZU1hcCgpLnNldChwYWdlSUQsIHdlYlBhZ2UucHRyKCkpOwotCi0gICAgdXBkYXRlQmFj
a2dyb3VuZFJlc3BvbnNpdmVuZXNzVGltZXIoKTsKKyAgICBhZGRFeGlzdGluZ1dlYlBhZ2Uod2Vi
UGFnZS5nZXQoKSwgcGFnZUlEKTsKIAogICAgIHJldHVybiB3ZWJQYWdlOwogfQogCi12b2lkIFdl
YlByb2Nlc3NQcm94eTo6YWRkRXhpc3RpbmdXZWJQYWdlKFdlYlBhZ2VQcm94eSogd2ViUGFnZSwg
dWludDY0X3QgcGFnZUlEKQordm9pZCBXZWJQcm9jZXNzUHJveHk6OmFkZEV4aXN0aW5nV2ViUGFn
ZShXZWJQYWdlUHJveHkmIHdlYlBhZ2UsIHVpbnQ2NF90IHBhZ2VJRCkKIHsKICAgICBBU1NFUlQo
IW1fcGFnZU1hcC5jb250YWlucyhwYWdlSUQpKTsKICAgICBBU1NFUlQoIWdsb2JhbFBhZ2VNYXAo
KS5jb250YWlucyhwYWdlSUQpKTsKIAotICAgIG1fcGFnZU1hcC5zZXQocGFnZUlELCB3ZWJQYWdl
KTsKLSAgICBnbG9iYWxQYWdlTWFwKCkuc2V0KHBhZ2VJRCwgd2ViUGFnZSk7CisgICAgbV9wcm9j
ZXNzUG9vbC0+cGFnZUFkZGVkVG9Qcm9jZXNzKHdlYlBhZ2UpOworCisgICAgbV9wYWdlTWFwLnNl
dChwYWdlSUQsICZ3ZWJQYWdlKTsKKyAgICBnbG9iYWxQYWdlTWFwKCkuc2V0KHBhZ2VJRCwgJndl
YlBhZ2UpOwogCiAgICAgdXBkYXRlQmFja2dyb3VuZFJlc3BvbnNpdmVuZXNzVGltZXIoKTsKIH0K
IAotdm9pZCBXZWJQcm9jZXNzUHJveHk6OnJlbW92ZVdlYlBhZ2UodWludDY0X3QgcGFnZUlEKQor
dm9pZCBXZWJQcm9jZXNzUHJveHk6OnJlbW92ZVdlYlBhZ2UoV2ViUGFnZVByb3h5JiB3ZWJQYWdl
LCB1aW50NjRfdCBwYWdlSUQpCiB7Ci0gICAgbV9wYWdlTWFwLnJlbW92ZShwYWdlSUQpOwotICAg
IGdsb2JhbFBhZ2VNYXAoKS5yZW1vdmUocGFnZUlEKTsKKyAgICBhdXRvKiByZW1vdmVkUGFnZSA9
IG1fcGFnZU1hcC50YWtlKHBhZ2VJRCk7CisgICAgQVNTRVJUX1VOVVNFRChyZW1vdmVkUGFnZSwg
cmVtb3ZlZFBhZ2UgPT0gJndlYlBhZ2UpOworICAgIHJlbW92ZWRQYWdlID0gZ2xvYmFsUGFnZU1h
cCgpLnRha2UocGFnZUlEKTsKKyAgICBBU1NFUlRfVU5VU0VEKHJlbW92ZWRQYWdlLCByZW1vdmVk
UGFnZSA9PSAmd2ViUGFnZSk7CisKKyAgICBtX3Byb2Nlc3NQb29sLT5wYWdlUmVtb3ZlZEZyb21Q
cm9jZXNzKHdlYlBhZ2UpOwogCiAgICAgdXBkYXRlQmFja2dyb3VuZFJlc3BvbnNpdmVuZXNzVGlt
ZXIoKTsKICAgICAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQcm9j
ZXNzUHJveHkuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQcm9jZXNzUHJveHkuaApp
bmRleCA3NjE2YWRiNmQ5YzJiNzUyODIyNmIwNTA1MDJlZGM3MDU2NTBiZmU0Li45NjMxNmNkNDA0
MWM1ZGQ1YWUzYTBmNzQzYWU1MjgyNzI1OTNlY2Q5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvV2ViUHJvY2Vzc1Byb3h5LmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL1dlYlByb2Nlc3NQcm94eS5oCkBAIC05MCw4ICs5MCw4IEBAIHB1YmxpYzoKIAogICAgIHN0
YXRpYyBXZWJQYWdlUHJveHkqIHdlYlBhZ2UodWludDY0X3QgcGFnZUlEKTsKICAgICBSZWY8V2Vi
UGFnZVByb3h5PiBjcmVhdGVXZWJQYWdlKFBhZ2VDbGllbnQmLCBSZWY8QVBJOjpQYWdlQ29uZmln
dXJhdGlvbj4mJik7Ci0gICAgdm9pZCBhZGRFeGlzdGluZ1dlYlBhZ2UoV2ViUGFnZVByb3h5Kiwg
dWludDY0X3QgcGFnZUlEKTsKLSAgICB2b2lkIHJlbW92ZVdlYlBhZ2UodWludDY0X3QgcGFnZUlE
KTsKKyAgICB2b2lkIGFkZEV4aXN0aW5nV2ViUGFnZShXZWJQYWdlUHJveHkmLCB1aW50NjRfdCBw
YWdlSUQpOworICAgIHZvaWQgcmVtb3ZlV2ViUGFnZShXZWJQYWdlUHJveHkmLCB1aW50NjRfdCBw
YWdlSUQpOwogCiAgICAgV1RGOjpJdGVyYXRvclJhbmdlPFdlYlBhZ2VQcm94eU1hcDo6Y29uc3Rf
aXRlcmF0b3I6OlZhbHVlcz4gcGFnZXMoKSBjb25zdCB7IHJldHVybiBtX3BhZ2VNYXAudmFsdWVz
KCk7IH0KICAgICB1bnNpZ25lZCBwYWdlQ291bnQoKSBjb25zdCB7IHJldHVybiBtX3BhZ2VNYXAu
c2l6ZSgpOyB9Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>