<?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>167126</bug_id>
          
          <creation_ts>2017-01-17 11:05:00 -0800</creation_ts>
          <short_desc>Page should be able to request pointer lock without user gesture if it relinquished it without a user gesture</short_desc>
          <delta_ts>2017-01-26 18:18:48 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>UI Events</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jeremy Jones">jeremyj-wk</reporter>
          <assigned_to name="Jeremy Jones">jeremyj-wk</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>jonlee</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1267418</commentid>
    <comment_count>0</comment_count>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2017-01-17 11:05:00 -0800</bug_when>
    <thetext>Page should be able to request pointer lock without user gesture if it relinquished it without a user gesture</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1267420</commentid>
    <comment_count>1</comment_count>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2017-01-17 11:06:55 -0800</bug_when>
    <thetext>rdar://problem/29539389</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1267422</commentid>
    <comment_count>2</comment_count>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2017-01-17 11:07:16 -0800</bug_when>
    <thetext>*** Bug 167013 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1267426</commentid>
    <comment_count>3</comment_count>
      <attachid>299046</attachid>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2017-01-17 11:22:20 -0800</bug_when>
    <thetext>Created attachment 299046
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1270073</commentid>
    <comment_count>4</comment_count>
      <attachid>299046</attachid>
    <who name="Jon Lee">jonlee</who>
    <bug_when>2017-01-25 17:51:30 -0800</bug_when>
    <thetext>Comment on attachment 299046
Patch

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

&gt; Source/WebCore/ChangeLog:11
&gt; +        This change allows a page to lock the pointer pointer again without a user gesture if it was unlocked by

&quot;pointer pointer&quot;

&gt; Source/WebCore/ChangeLog:14
&gt; +        * page/PointerLockController.cpp:

Please provide some more detail here.

&gt; Source/WebCore/page/PointerLockController.cpp:116
&gt; +        m_lockPending = false;

Replacing clearElement() with two variable assignments seems fragile. Can we factor this out to a separate version of clearElement that indicates leaving m_unlockPending alone?

&gt; Source/WebCore/page/PointerLockController.h:69
&gt; +    RefPtr&lt;Document&gt; m_documentCanSkipUserGesture;

The variable name took a little time for me to understand its purpose since it sounded like a bool type rather than a RefPtr. Maybe m_documentAllowedToRelockWithoutUserGesture?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1270270</commentid>
    <comment_count>5</comment_count>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2017-01-26 11:49:48 -0800</bug_when>
    <thetext>(In reply to comment #4)
&gt; Comment on attachment 299046 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=299046&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/ChangeLog:11
&gt; &gt; +        This change allows a page to lock the pointer pointer again without a user gesture if it was unlocked by
&gt; 
&gt; &quot;pointer pointer&quot;

Done.

&gt; 
&gt; &gt; Source/WebCore/ChangeLog:14
&gt; &gt; +        * page/PointerLockController.cpp:
&gt; 
&gt; Please provide some more detail here.

Added detail.

&gt; 
&gt; &gt; Source/WebCore/page/PointerLockController.cpp:116
&gt; &gt; +        m_lockPending = false;
&gt; 
&gt; Replacing clearElement() with two variable assignments seems fragile. Can we
&gt; factor this out to a separate version of clearElement that indicates leaving
&gt; m_unlockPending alone?

Actually, the default should be to leave m_unlockPending alone. So, I&apos;ve changed clearElement to do that. The two places that need to modify m_unlockPending, should directly modify that flag since it is explicitly part of their function. didNotAcquirePointerLock means we are no longer waiting on unlockPending, it should set the flag explicitly. This also means that more locations can use clearElement.

&gt; 
&gt; &gt; Source/WebCore/page/PointerLockController.h:69
&gt; &gt; +    RefPtr&lt;Document&gt; m_documentCanSkipUserGesture;
&gt; 
&gt; The variable name took a little time for me to understand its purpose since
&gt; it sounded like a bool type rather than a RefPtr. Maybe
&gt; m_documentAllowedToRelockWithoutUserGesture?

Done.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1270272</commentid>
    <comment_count>6</comment_count>
      <attachid>299830</attachid>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2017-01-26 11:51:40 -0800</bug_when>
    <thetext>Created attachment 299830
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1270329</commentid>
    <comment_count>7</comment_count>
    <who name="Jon Lee">jonlee</who>
    <bug_when>2017-01-26 13:54:34 -0800</bug_when>
    <thetext>Rebase, please</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1270332</commentid>
    <comment_count>8</comment_count>
      <attachid>299830</attachid>
    <who name="Jon Lee">jonlee</who>
    <bug_when>2017-01-26 13:57:25 -0800</bug_when>
    <thetext>Comment on attachment 299830
Patch

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

&gt; Source/WebCore/page/PointerLockController.cpp:114
&gt; +        clearElement();

Is this expectation that m_unlockPending is always false in clearElement()? I&apos;d suggest adding an ASSERT there, then. On untrained eyes, one might expect that m_unlockPending should also be set to false in that function.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1270428</commentid>
    <comment_count>9</comment_count>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2017-01-26 16:37:10 -0800</bug_when>
    <thetext>(In reply to comment #8)
&gt; Comment on attachment 299830 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=299830&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/page/PointerLockController.cpp:114
&gt; &gt; +        clearElement();
&gt; 
&gt; Is this expectation that m_unlockPending is always false in clearElement()?
&gt; I&apos;d suggest adding an ASSERT there, then. On untrained eyes, one might
&gt; expect that m_unlockPending should also be set to false in that function.

That is not the expected case. clearElement() is used when document or element are removed, so the element is cleared, but the unlock is still pending. The unlock must be round tripped to the chrome client after the element is cleared. This feature requires knowing that there was a pending request when the unlock completes, so it can&apos;t be cleared by clearElement.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1270431</commentid>
    <comment_count>10</comment_count>
      <attachid>299878</attachid>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2017-01-26 16:39:04 -0800</bug_when>
    <thetext>Created attachment 299878
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1270450</commentid>
    <comment_count>11</comment_count>
      <attachid>299883</attachid>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2017-01-26 17:02:31 -0800</bug_when>
    <thetext>Created attachment 299883
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1270479</commentid>
    <comment_count>12</comment_count>
      <attachid>299883</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-01-26 18:18:45 -0800</bug_when>
    <thetext>Comment on attachment 299883
Patch

Clearing flags on attachment: 299883

Committed r211249: &lt;http://trac.webkit.org/changeset/211249&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1270480</commentid>
    <comment_count>13</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-01-26 18:18:48 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>299046</attachid>
            <date>2017-01-17 11:22:20 -0800</date>
            <delta_ts>2017-01-26 11:51:37 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-167126-20170117112033.patch</filename>
            <type>text/plain</type>
            <size>8019</size>
            <attacher name="Jeremy Jones">jeremyj-wk</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjEwODAwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTNjYzkxYTY1NGM2NWIw
MzA0NTNkNGFhNzgxYjI0Nzk2ZjQwOWY4ZC4uNTdhNjQ1ZjA5YmM3YzVlN2RkMjU5OGYxNmZjOTdj
N2NkZDdlYjFjZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDE3LTAxLTE3ICBKZXJl
bXkgSm9uZXMgIDxqZXJlbXlqQGFwcGxlLmNvbT4KKworICAgICAgICBQYWdlIHNob3VsZCBiZSBh
YmxlIHRvIHJlcXVlc3QgcG9pbnRlciBsb2NrIHdpdGhvdXQgdXNlciBnZXN0dXJlIGlmIGl0IHJl
bGlucXVpc2hlZCBpdCB3aXRob3V0IGEgdXNlciBnZXN0dXJlCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjcxMjYKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBFbmFibGVkIHBvaW50ZXItbG9jay9sb2NrZWQt
ZWxlbWVudC1yZW1vdmVkLWZyb20tZG9tLmh0bWwgZm9yIFdLMi4KKyAgICAgICAgTm90IGVuYWJs
ZSBpbiBXSzEgYmVjYXVzZSBvZiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTY3MTI3CisKKyAgICAgICAgVGhpcyBjaGFuZ2UgYWxsb3dzIGEgcGFnZSB0byBsb2NrIHRo
ZSBwb2ludGVyIHBvaW50ZXIgYWdhaW4gd2l0aG91dCBhIHVzZXIgZ2VzdHVyZSBpZiBpdCB3YXMg
dW5sb2NrZWQgYnkKKyAgICAgICAgdGhlIHBhZ2UgYW5kIG5vdCBieSB0aGUgdXNlci4gU2VlIGh0
dHBzOi8vd3d3LnczLm9yZy9UUi8yMDE2L1JFQy1wb2ludGVybG9jay0yMDE2MTAyNy8gNS4xIE1l
dGhvZHMKKworICAgICAgICAqIHBhZ2UvUG9pbnRlckxvY2tDb250cm9sbGVyLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OlBvaW50ZXJMb2NrQ29udHJvbGxlcjo6UG9pbnRlckxvY2tDb250cm9sbGVy
KToKKyAgICAgICAgKFdlYkNvcmU6OlBvaW50ZXJMb2NrQ29udHJvbGxlcjo6cmVxdWVzdFBvaW50
ZXJMb2NrKToKKyAgICAgICAgKFdlYkNvcmU6OlBvaW50ZXJMb2NrQ29udHJvbGxlcjo6cmVxdWVz
dFBvaW50ZXJVbmxvY2spOgorICAgICAgICAoV2ViQ29yZTo6UG9pbnRlckxvY2tDb250cm9sbGVy
OjpyZXF1ZXN0UG9pbnRlclVubG9ja0FuZEZvcmNlQ3Vyc29yVmlzaWJsZSk6CisgICAgICAgIChX
ZWJDb3JlOjpQb2ludGVyTG9ja0NvbnRyb2xsZXI6OmVsZW1lbnRSZW1vdmVkKToKKyAgICAgICAg
KFdlYkNvcmU6OlBvaW50ZXJMb2NrQ29udHJvbGxlcjo6ZG9jdW1lbnREZXRhY2hlZCk6CisgICAg
ICAgIChXZWJDb3JlOjpQb2ludGVyTG9ja0NvbnRyb2xsZXI6OmRpZEFjcXVpcmVQb2ludGVyTG9j
ayk6CisgICAgICAgIChXZWJDb3JlOjpQb2ludGVyTG9ja0NvbnRyb2xsZXI6OmRpZExvc2VQb2lu
dGVyTG9jayk6CisgICAgICAgIChXZWJDb3JlOjpQb2ludGVyTG9ja0NvbnRyb2xsZXI6OmNsZWFy
RWxlbWVudCk6CisgICAgICAgICogcGFnZS9Qb2ludGVyTG9ja0NvbnRyb2xsZXIuaDoKKwogMjAx
Ny0wMS0xNyAgTWlndWVsIEdvbWV6ICA8bWFnb21lekBpZ2FsaWEuY29tPgogCiAgICAgICAgIFJF
R1JFU1NJT04ocjIwODk5Nyk6IFtHTFhdIEdvb2dsZSBtYXBzIGxhYmVscyBicm9rZW4gd2hlbiB1
c2luZyBnbFhDcmVhdGVDb250ZXh0QXR0cmlic0FSQgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGFnZS9Qb2ludGVyTG9ja0NvbnRyb2xsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Q
b2ludGVyTG9ja0NvbnRyb2xsZXIuY3BwCmluZGV4IDU3MDAxYzVjMGFhMzI5ZGUwNjM3MGJkOGI1
NzRmODUyMzI4NzgyN2YuLmY5ZjJkNzk4ZWFkMGUxMzIzMDBlNzJjZTVjYjQ1NjgyNjdkMzY3MjEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUG9pbnRlckxvY2tDb250cm9sbGVyLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BvaW50ZXJMb2NrQ29udHJvbGxlci5jcHAKQEAg
LTQ0LDcgKzQ0LDYgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiBQb2ludGVyTG9ja0NvbnRyb2xs
ZXI6OlBvaW50ZXJMb2NrQ29udHJvbGxlcihQYWdlJiBwYWdlKQogICAgIDogbV9wYWdlKHBhZ2Up
Ci0gICAgLCBtX2xvY2tQZW5kaW5nKGZhbHNlKQogewogfQogCkBAIC01NSw3ICs1NCw3IEBAIHZv
aWQgUG9pbnRlckxvY2tDb250cm9sbGVyOjpyZXF1ZXN0UG9pbnRlckxvY2soRWxlbWVudCogdGFy
Z2V0KQogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgaWYgKCFTY3JpcHRDb250cm9sbGVy
Ojpwcm9jZXNzaW5nVXNlckdlc3R1cmUoKSkgeworICAgIGlmIChtX2RvY3VtZW50Q2FuU2tpcFVz
ZXJHZXN0dXJlICE9ICZ0YXJnZXQtPmRvY3VtZW50KCkgJiYgIVNjcmlwdENvbnRyb2xsZXI6OnBy
b2Nlc3NpbmdVc2VyR2VzdHVyZSgpKSB7CiAgICAgICAgIGVucXVldWVFdmVudChldmVudE5hbWVz
KCkucG9pbnRlcmxvY2tlcnJvckV2ZW50LCB0YXJnZXQpOwogICAgICAgICByZXR1cm47CiAgICAg
fQpAQCAtOTAsMTQgKzg5LDE4IEBAIHZvaWQgUG9pbnRlckxvY2tDb250cm9sbGVyOjpyZXF1ZXN0
UG9pbnRlclVubG9jaygpCiAgICAgaWYgKCFtX2VsZW1lbnQpCiAgICAgICAgIHJldHVybjsKIAor
ICAgIG1fdW5sb2NrUGVuZGluZyA9IHRydWU7CiAgICAgbV9wYWdlLmNocm9tZSgpLmNsaWVudCgp
LnJlcXVlc3RQb2ludGVyVW5sb2NrKCk7CiB9CiAKIHZvaWQgUG9pbnRlckxvY2tDb250cm9sbGVy
OjpyZXF1ZXN0UG9pbnRlclVubG9ja0FuZEZvcmNlQ3Vyc29yVmlzaWJsZSgpCiB7CisgICAgbV9k
b2N1bWVudENhblNraXBVc2VyR2VzdHVyZSA9IG51bGxwdHI7CisKICAgICBpZiAoIW1fZWxlbWVu
dCkKICAgICAgICAgcmV0dXJuOwogCisgICAgbV91bmxvY2tQZW5kaW5nID0gdHJ1ZTsKICAgICBt
X3BhZ2UuY2hyb21lKCkuY2xpZW50KCkucmVxdWVzdFBvaW50ZXJVbmxvY2soKTsKICAgICBtX2Zv
cmNlQ3Vyc29yVmlzaWJsZVVwb25VbmxvY2sgPSB0cnVlOwogfQpAQCAtMTA4LDE2ICsxMTEsMTkg
QEAgdm9pZCBQb2ludGVyTG9ja0NvbnRyb2xsZXI6OmVsZW1lbnRSZW1vdmVkKEVsZW1lbnQmIGVs
ZW1lbnQpCiAgICAgICAgIG1fZG9jdW1lbnRPZlJlbW92ZWRFbGVtZW50V2hpbGVXYWl0aW5nRm9y
VW5sb2NrID0gJm1fZWxlbWVudC0+ZG9jdW1lbnQoKTsKICAgICAgICAgLy8gU2V0IGVsZW1lbnQg
bnVsbCBpbW1lZGlhdGVseSB0byBibG9jayBhbnkgZnV0dXJlIGludGVyYWN0aW9uIHdpdGggaXQK
ICAgICAgICAgLy8gaW5jbHVkaW5nIG1vdXNlIGV2ZW50cyByZWNlaXZlZCBiZWZvcmUgdGhlIHVu
bG9jayBjb21wbGV0ZXMuCi0gICAgICAgIGNsZWFyRWxlbWVudCgpOwogICAgICAgICByZXF1ZXN0
UG9pbnRlclVubG9jaygpOworICAgICAgICBtX2VsZW1lbnQgPSBudWxscHRyOworICAgICAgICBt
X2xvY2tQZW5kaW5nID0gZmFsc2U7CiAgICAgfQogfQogCiB2b2lkIFBvaW50ZXJMb2NrQ29udHJv
bGxlcjo6ZG9jdW1lbnREZXRhY2hlZChEb2N1bWVudCYgZG9jdW1lbnQpCiB7CiAgICAgaWYgKG1f
ZWxlbWVudCAmJiAmbV9lbGVtZW50LT5kb2N1bWVudCgpID09ICZkb2N1bWVudCkgewotICAgICAg
ICBjbGVhckVsZW1lbnQoKTsKLSAgICAgICAgcmVxdWVzdFBvaW50ZXJVbmxvY2tBbmRGb3JjZUN1
cnNvclZpc2libGUoKTsKKyAgICAgICAgbV9kb2N1bWVudE9mUmVtb3ZlZEVsZW1lbnRXaGlsZVdh
aXRpbmdGb3JVbmxvY2sgPSAmbV9lbGVtZW50LT5kb2N1bWVudCgpOworICAgICAgICByZXF1ZXN0
UG9pbnRlclVubG9jaygpOworICAgICAgICBtX2VsZW1lbnQgPSBudWxscHRyOworICAgICAgICBt
X2xvY2tQZW5kaW5nID0gZmFsc2U7CiAgICAgfQogfQogCkBAIC0xMzUsNiArMTQxLDggQEAgdm9p
ZCBQb2ludGVyTG9ja0NvbnRyb2xsZXI6OmRpZEFjcXVpcmVQb2ludGVyTG9jaygpCiB7CiAgICAg
ZW5xdWV1ZUV2ZW50KGV2ZW50TmFtZXMoKS5wb2ludGVybG9ja2NoYW5nZUV2ZW50LCBtX2VsZW1l
bnQuZ2V0KCkpOwogICAgIG1fbG9ja1BlbmRpbmcgPSBmYWxzZTsKKyAgICBtX2ZvcmNlQ3Vyc29y
VmlzaWJsZVVwb25VbmxvY2sgPSBmYWxzZTsKKyAgICBtX2RvY3VtZW50Q2FuU2tpcFVzZXJHZXN0
dXJlID0gJm1fZWxlbWVudC0+ZG9jdW1lbnQoKTsKIH0KIAogdm9pZCBQb2ludGVyTG9ja0NvbnRy
b2xsZXI6OmRpZE5vdEFjcXVpcmVQb2ludGVyTG9jaygpCkBAIC0xNDUsNiArMTUzLDkgQEAgdm9p
ZCBQb2ludGVyTG9ja0NvbnRyb2xsZXI6OmRpZE5vdEFjcXVpcmVQb2ludGVyTG9jaygpCiAKIHZv
aWQgUG9pbnRlckxvY2tDb250cm9sbGVyOjpkaWRMb3NlUG9pbnRlckxvY2soKQogeworICAgIGlm
ICghbV91bmxvY2tQZW5kaW5nKQorICAgICAgICBtX2RvY3VtZW50Q2FuU2tpcFVzZXJHZXN0dXJl
ID0gbnVsbHB0cjsKKwogICAgIGVucXVldWVFdmVudChldmVudE5hbWVzKCkucG9pbnRlcmxvY2tj
aGFuZ2VFdmVudCwgbV9lbGVtZW50ID8gJm1fZWxlbWVudC0+ZG9jdW1lbnQoKSA6IG1fZG9jdW1l
bnRPZlJlbW92ZWRFbGVtZW50V2hpbGVXYWl0aW5nRm9yVW5sb2NrLmdldCgpKTsKICAgICBjbGVh
ckVsZW1lbnQoKTsKICAgICBtX2RvY3VtZW50T2ZSZW1vdmVkRWxlbWVudFdoaWxlV2FpdGluZ0Zv
clVubG9jayA9IG51bGxwdHI7CkBAIC0xNjksNiArMTgwLDcgQEAgdm9pZCBQb2ludGVyTG9ja0Nv
bnRyb2xsZXI6OmRpc3BhdGNoTG9ja2VkTW91c2VFdmVudChjb25zdCBQbGF0Zm9ybU1vdXNlRXZl
bnQmIGUKIHZvaWQgUG9pbnRlckxvY2tDb250cm9sbGVyOjpjbGVhckVsZW1lbnQoKQogewogICAg
IG1fbG9ja1BlbmRpbmcgPSBmYWxzZTsKKyAgICBtX3VubG9ja1BlbmRpbmcgPSBmYWxzZTsKICAg
ICBtX2VsZW1lbnQgPSBudWxscHRyOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
YWdlL1BvaW50ZXJMb2NrQ29udHJvbGxlci5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Qb2ludGVy
TG9ja0NvbnRyb2xsZXIuaAppbmRleCBjYjZiMGY5OGY4ZjVhZWFiMDYxZDlhODNhMzY1MmM1MmI3
ZDc3NTI0Li45YjAzYzcyNzk3M2U3MGM0YzBjOTI4YzEyZjZkNzhjYjhjNjlhZmZlIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BvaW50ZXJMb2NrQ29udHJvbGxlci5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvUG9pbnRlckxvY2tDb250cm9sbGVyLmgKQEAgLTYxLDEwICs2MSwx
MiBAQCBwcml2YXRlOgogICAgIHZvaWQgZW5xdWV1ZUV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYg
dHlwZSwgRWxlbWVudCopOwogICAgIHZvaWQgZW5xdWV1ZUV2ZW50KGNvbnN0IEF0b21pY1N0cmlu
ZyYgdHlwZSwgRG9jdW1lbnQqKTsKICAgICBQYWdlJiBtX3BhZ2U7Ci0gICAgYm9vbCBtX2xvY2tQ
ZW5kaW5nOworICAgIGJvb2wgbV9sb2NrUGVuZGluZyB7IGZhbHNlIH07CisgICAgYm9vbCBtX3Vu
bG9ja1BlbmRpbmcgeyBmYWxzZSB9OwogICAgIGJvb2wgbV9mb3JjZUN1cnNvclZpc2libGVVcG9u
VW5sb2NrIHsgZmFsc2UgfTsKICAgICBSZWZQdHI8RWxlbWVudD4gbV9lbGVtZW50OwogICAgIFJl
ZlB0cjxEb2N1bWVudD4gbV9kb2N1bWVudE9mUmVtb3ZlZEVsZW1lbnRXaGlsZVdhaXRpbmdGb3JV
bmxvY2s7CisgICAgUmVmUHRyPERvY3VtZW50PiBtX2RvY3VtZW50Q2FuU2tpcFVzZXJHZXN0dXJl
OwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDU5NTEzMWRlZDRkY2VlZWFi
M2I5ZDM1NDgwMjU4ZTgxYWEyYjI1NWQuLjdlMzIxOTkzOTNhY2U4MGQ2NjFjOTJkZjE2N2RkM2Fi
NTY5MmMyNjYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAxNy0wMS0xNyAgSmVyZW15IEpvbmVz
ICA8amVyZW15akBhcHBsZS5jb20+CisKKyAgICAgICAgUGFnZSBzaG91bGQgYmUgYWJsZSB0byBy
ZXF1ZXN0IHBvaW50ZXIgbG9jayB3aXRob3V0IHVzZXIgZ2VzdHVyZSBpZiBpdCByZWxpbnF1aXNo
ZWQgaXQgd2l0aG91dCBhIHVzZXIgZ2VzdHVyZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY3MTI2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgRW5hYmxlIHBvaW50ZXItbG9jay9sb2NrZWQtZWxlbWVudC1y
ZW1vdmVkLWZyb20tZG9tLmh0bWwgZm9yIFdLMiBieSBlbmFibGluZyBmb3IgTWFjIGFuZCBkaXNh
YmxpbmcgZm9yIFdLMS4KKyAgICAgICAgTm90IGVuYWJsZSBpbiBXSzEgYmVjdWFzZSBvZiBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY3MTI3CisKKyAgICAgICAgKiBw
bGF0Zm9ybS9tYWMtd2sxL1Rlc3RFeHBlY3RhdGlvbnM6CisgICAgICAgICogcGxhdGZvcm0vbWFj
L1Rlc3RFeHBlY3RhdGlvbnM6CisKIDIwMTctMDEtMTYgIENhcmxvcyBBbGJlcnRvIExvcGV6IFBl
cmV6ICA8Y2xvcGV6QGlnYWxpYS5jb20+CiAKICAgICAgICAgW0dUS11bTVNFXSBVcGRhdGUgbGlz
dCBvZiBtZWRpYS1zb3VyY2UgdGVzdHMgdGhhdCBmYWlsLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vbWFjLXdrMS9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZv
cm0vbWFjLXdrMS9UZXN0RXhwZWN0YXRpb25zCmluZGV4IGZlNjQ2NTg2Y2ZjNDJhY2VjMTc2ZGYy
NGY5MWEyY2M0MDkzYmMzZGYuLjIyMGY2NmFkNmE4MzMzZjFiNzY4ZTRmOTY5OTY1ODE1ZjMwMmNm
NzIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azEvVGVzdEV4cGVjdGF0
aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sxL1Rlc3RFeHBlY3RhdGlvbnMK
QEAgLTI5MywzICsyOTMsNCBAQCB3ZWJraXQub3JnL2IvMTY1NTQxIGNvbXBvc2l0aW5nL2xheWVy
LWNyZWF0aW9uL2ZpeGVkLW92ZXJsYXAtZXh0ZW50LXJ0bC5odG1sIFsgRgogd2Via2l0Lm9yZy9i
LzE2NTU0MSBjb21wb3NpdGluZy9ydGwvcnRsLWZpeGVkLW92ZXJmbG93Lmh0bWwgWyBGYWlsdXJl
IF0KIAogd2Via2l0Lm9yZy9iLzE2NTU4OSBwb2ludGVyLWxvY2svbG9jay1sb3N0LW9uLWVzYy1p
bi1mdWxsc2NyZWVuLmh0bWwgWyBTa2lwIF0KK3BvaW50ZXItbG9jay9sb2NrZWQtZWxlbWVudC1y
ZW1vdmVkLWZyb20tZG9tLmh0bWwKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21h
Yy9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1Rlc3RFeHBlY3Rh
dGlvbnMKaW5kZXggMmZjNjQyYmE0NTU0YzU5MDcxYjM1YzYyMDQ1ZThkNzExNjM3OWY0YS4uNWU5
MDRkYmQ4Mjg1ZGMxZGVlYmIwNThhYzViYjU0ZWQzM2VhOTE1NiAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvcGxhdGZvcm0vbWFjL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vbWFjL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTI4MCw3ICsyODAsNiBAQCBmYXN0L2V2ZW50
cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy15LWluLXNjcm9sbGluZy1wYWdlLmh0bWwKICMg
UG9pbnRlciBMb2NrIGNhbiBvbmx5IGNoZWNrIHNvbWUgb2YgdGhlIEFQSSBhdCB0aGUgbW9tZW50
LgogcG9pbnRlci1sb2NrL2J1ZzkwMzkxLW1vdmUtdGhlbi13aW5kb3ctb3Blbi1jcmFzaC5odG1s
CiBwb2ludGVyLWxvY2svbG9ja2VkLWVsZW1lbnQtaWZyYW1lLXJlbW92ZWQtZnJvbS1kb20uaHRt
bAotcG9pbnRlci1sb2NrL2xvY2tlZC1lbGVtZW50LXJlbW92ZWQtZnJvbS1kb20uaHRtbAogcG9p
bnRlci1sb2NrL21vdXNlLWV2ZW50LWRlbGl2ZXJ5Lmh0bWwKIHBvaW50ZXItbG9jay9wb2ludGVy
bG9ja2NoYW5nZS1ldmVudC1vbi1sb2NrLWxvc3QuaHRtbAogcG9pbnRlci1sb2NrL3BvaW50ZXJs
b2NrY2hhbmdlLXBvaW50ZXJsb2NrZXJyb3ItZXZlbnRzLmh0bWwK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>299830</attachid>
            <date>2017-01-26 11:51:40 -0800</date>
            <delta_ts>2017-01-26 16:39:01 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-167126-20170126114937.patch</filename>
            <type>text/plain</type>
            <size>8952</size>
            <attacher name="Jeremy Jones">jeremyj-wk</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjEwODAwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTNjYzkxYTY1NGM2NWIw
MzA0NTNkNGFhNzgxYjI0Nzk2ZjQwOWY4ZC4uYTVjNTBjNTdlMDM0ZTMwMDk0YjBhNjNmYWY3ODlj
OGFmZDM0ZWU5MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM3IEBACisyMDE3LTAxLTE3ICBKZXJl
bXkgSm9uZXMgIDxqZXJlbXlqQGFwcGxlLmNvbT4KKworICAgICAgICBQYWdlIHNob3VsZCBiZSBh
YmxlIHRvIHJlcXVlc3QgcG9pbnRlciBsb2NrIHdpdGhvdXQgdXNlciBnZXN0dXJlIGlmIGl0IHJl
bGlucXVpc2hlZCBpdCB3aXRob3V0IGEgdXNlciBnZXN0dXJlCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjcxMjYKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBFbmFibGVkIHBvaW50ZXItbG9jay9sb2NrZWQt
ZWxlbWVudC1yZW1vdmVkLWZyb20tZG9tLmh0bWwgZm9yIFdLMi4KKyAgICAgICAgTm90IGVuYWJs
ZSBpbiBXSzEgYmVjYXVzZSBvZiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTY3MTI3CisKKyAgICAgICAgVGhpcyBjaGFuZ2UgYWxsb3dzIGEgcGFnZSB0byBsb2NrIHRo
ZSBwb2ludGVyIGFnYWluIHdpdGhvdXQgYSB1c2VyIGdlc3R1cmUgaWYgaXQgd2FzIHVubG9ja2Vk
IGJ5CisgICAgICAgIHRoZSBwYWdlIGFuZCBub3QgYnkgdGhlIHVzZXIuIFNlZSBodHRwczovL3d3
dy53My5vcmcvVFIvMjAxNi9SRUMtcG9pbnRlcmxvY2stMjAxNjEwMjcvIDUuMSBNZXRob2RzCisK
KyAgICAgICAgKiBwYWdlL1BvaW50ZXJMb2NrQ29udHJvbGxlci5jcHA6CisKKyAgICAgICAgV2hl
biBhIGRvY3VtZW50IGFjcXVpcmVzIHBvaW50ZXIgbG9jayB3aXRoIGEgdXNlciBnZXN0dXJlLCB0
aGF0IGRvY3VtZW50IGlzIGFsbG93ZWQgdG8gcmVxdWVzdCBwb2ludGVyIGxvY2sgYWdhaW4KKyAg
ICAgICAgdW50aWwgdGhlIHVzZXIgdGFrZXMgYW4gYWN0aW9uIHRvIGVuZCBwb2ludGVyIGxvY2su
IFdlIGtub3cgaXQgaXMgYSB1c2VyIGFjdGlvbiBiZWNhdXNlIHVzZXIgYWN0aW9ucyBhbHdheXMK
KyAgICAgICAgY2FsbCByZXF1ZXN0UG9pbnRlclVubG9ja0FuZEZvcmNlQ3Vyc29yVmlzaWJsZSgp
LgorCisgICAgICAgIFdoZW4gdGhlIHBhZ2UgcmVxdWVzdHMgYSBwb2ludGVyIHVubG9jayAodmlh
IHJlcXVlc3RQb2ludGVyVW5sb2NrKSwgdGhhdCBkb2N1bWVudCBpcyBhbGxvd2VkIHRvIGNvbnRp
bnVlIHRvIHJlbG9jaworICAgICAgICB0aGUgcGFnZS4gVGhpcyBjb250aW51ZXMgdW50aWwgdGhl
cmUgaXMgZWl0aGVyIGFuIHVubG9jayByZXF1ZXN0IGZvcm0gdGhlIHVzZXIgCisgICAgICAgIHZp
YSByZXF1ZXN0UG9pbnRlclVubG9ja0FuZEZvcmNlQ3Vyc29yVmlzaWJsZSBvciBhIGRpZExvc2VQ
b2ludGVyTG9jayB3aXRob3V0IGEgcG9pbnRlciB1bmxvY2sgcmVxdWVzdC4KKworICAgICAgICAo
V2ViQ29yZTo6UG9pbnRlckxvY2tDb250cm9sbGVyOjpQb2ludGVyTG9ja0NvbnRyb2xsZXIpOgor
ICAgICAgICAoV2ViQ29yZTo6UG9pbnRlckxvY2tDb250cm9sbGVyOjpyZXF1ZXN0UG9pbnRlckxv
Y2spOgorICAgICAgICAoV2ViQ29yZTo6UG9pbnRlckxvY2tDb250cm9sbGVyOjpyZXF1ZXN0UG9p
bnRlclVubG9jayk6CisgICAgICAgIChXZWJDb3JlOjpQb2ludGVyTG9ja0NvbnRyb2xsZXI6OnJl
cXVlc3RQb2ludGVyVW5sb2NrQW5kRm9yY2VDdXJzb3JWaXNpYmxlKToKKyAgICAgICAgKFdlYkNv
cmU6OlBvaW50ZXJMb2NrQ29udHJvbGxlcjo6ZWxlbWVudFJlbW92ZWQpOgorICAgICAgICAoV2Vi
Q29yZTo6UG9pbnRlckxvY2tDb250cm9sbGVyOjpkb2N1bWVudERldGFjaGVkKToKKyAgICAgICAg
KFdlYkNvcmU6OlBvaW50ZXJMb2NrQ29udHJvbGxlcjo6ZGlkQWNxdWlyZVBvaW50ZXJMb2NrKToK
KyAgICAgICAgKFdlYkNvcmU6OlBvaW50ZXJMb2NrQ29udHJvbGxlcjo6ZGlkTG9zZVBvaW50ZXJM
b2NrKToKKyAgICAgICAgKFdlYkNvcmU6OlBvaW50ZXJMb2NrQ29udHJvbGxlcjo6Y2xlYXJFbGVt
ZW50KToKKyAgICAgICAgKiBwYWdlL1BvaW50ZXJMb2NrQ29udHJvbGxlci5oOgorCiAyMDE3LTAx
LTE3ICBNaWd1ZWwgR29tZXogIDxtYWdvbWV6QGlnYWxpYS5jb20+CiAKICAgICAgICAgUkVHUkVT
U0lPTihyMjA4OTk3KTogW0dMWF0gR29vZ2xlIG1hcHMgbGFiZWxzIGJyb2tlbiB3aGVuIHVzaW5n
IGdsWENyZWF0ZUNvbnRleHRBdHRyaWJzQVJCCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
YWdlL1BvaW50ZXJMb2NrQ29udHJvbGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BvaW50
ZXJMb2NrQ29udHJvbGxlci5jcHAKaW5kZXggNTcwMDFjNWMwYWEzMjlkZTA2MzcwYmQ4YjU3NGY4
NTIzMjg3ODI3Zi4uYWExYzIyMzg3ZDNhNjU1YmM1MjczMTQ5MDkzYjBkOGJjNDBjM2IzZSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9Qb2ludGVyTG9ja0NvbnRyb2xsZXIuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUG9pbnRlckxvY2tDb250cm9sbGVyLmNwcApAQCAtNDQs
NyArNDQsNiBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIFBvaW50ZXJMb2NrQ29udHJvbGxlcjo6
UG9pbnRlckxvY2tDb250cm9sbGVyKFBhZ2UmIHBhZ2UpCiAgICAgOiBtX3BhZ2UocGFnZSkKLSAg
ICAsIG1fbG9ja1BlbmRpbmcoZmFsc2UpCiB7CiB9CiAKQEAgLTU1LDcgKzU0LDcgQEAgdm9pZCBQ
b2ludGVyTG9ja0NvbnRyb2xsZXI6OnJlcXVlc3RQb2ludGVyTG9jayhFbGVtZW50KiB0YXJnZXQp
CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBpZiAoIVNjcmlwdENvbnRyb2xsZXI6OnBy
b2Nlc3NpbmdVc2VyR2VzdHVyZSgpKSB7CisgICAgaWYgKG1fZG9jdW1lbnRBbGxvd2VkVG9SZWxv
Y2tXaXRob3V0VXNlckdlc3R1cmUgIT0gJnRhcmdldC0+ZG9jdW1lbnQoKSAmJiAhU2NyaXB0Q29u
dHJvbGxlcjo6cHJvY2Vzc2luZ1VzZXJHZXN0dXJlKCkpIHsKICAgICAgICAgZW5xdWV1ZUV2ZW50
KGV2ZW50TmFtZXMoKS5wb2ludGVybG9ja2Vycm9yRXZlbnQsIHRhcmdldCk7CiAgICAgICAgIHJl
dHVybjsKICAgICB9CkBAIC03OCw4ICs3Nyw3IEBAIHZvaWQgUG9pbnRlckxvY2tDb250cm9sbGVy
OjpyZXF1ZXN0UG9pbnRlckxvY2soRWxlbWVudCogdGFyZ2V0KQogICAgICAgICBtX2xvY2tQZW5k
aW5nID0gdHJ1ZTsKICAgICAgICAgbV9lbGVtZW50ID0gdGFyZ2V0OwogICAgICAgICBpZiAoIW1f
cGFnZS5jaHJvbWUoKS5jbGllbnQoKS5yZXF1ZXN0UG9pbnRlckxvY2soKSkgewotICAgICAgICAg
ICAgbV9lbGVtZW50ID0gbnVsbHB0cjsKLSAgICAgICAgICAgIG1fbG9ja1BlbmRpbmcgPSBmYWxz
ZTsKKyAgICAgICAgICAgIGNsZWFyRWxlbWVudCgpOwogICAgICAgICAgICAgZW5xdWV1ZUV2ZW50
KGV2ZW50TmFtZXMoKS5wb2ludGVybG9ja2Vycm9yRXZlbnQsIHRhcmdldCk7CiAgICAgICAgIH0K
ICAgICB9CkBAIC05MCwxNCArODgsMTggQEAgdm9pZCBQb2ludGVyTG9ja0NvbnRyb2xsZXI6OnJl
cXVlc3RQb2ludGVyVW5sb2NrKCkKICAgICBpZiAoIW1fZWxlbWVudCkKICAgICAgICAgcmV0dXJu
OwogCisgICAgbV91bmxvY2tQZW5kaW5nID0gdHJ1ZTsKICAgICBtX3BhZ2UuY2hyb21lKCkuY2xp
ZW50KCkucmVxdWVzdFBvaW50ZXJVbmxvY2soKTsKIH0KIAogdm9pZCBQb2ludGVyTG9ja0NvbnRy
b2xsZXI6OnJlcXVlc3RQb2ludGVyVW5sb2NrQW5kRm9yY2VDdXJzb3JWaXNpYmxlKCkKIHsKKyAg
ICBtX2RvY3VtZW50QWxsb3dlZFRvUmVsb2NrV2l0aG91dFVzZXJHZXN0dXJlID0gbnVsbHB0cjsK
KwogICAgIGlmICghbV9lbGVtZW50KQogICAgICAgICByZXR1cm47CiAKKyAgICBtX3VubG9ja1Bl
bmRpbmcgPSB0cnVlOwogICAgIG1fcGFnZS5jaHJvbWUoKS5jbGllbnQoKS5yZXF1ZXN0UG9pbnRl
clVubG9jaygpOwogICAgIG1fZm9yY2VDdXJzb3JWaXNpYmxlVXBvblVubG9jayA9IHRydWU7CiB9
CkBAIC0xMDgsMTYgKzExMCwxNyBAQCB2b2lkIFBvaW50ZXJMb2NrQ29udHJvbGxlcjo6ZWxlbWVu
dFJlbW92ZWQoRWxlbWVudCYgZWxlbWVudCkKICAgICAgICAgbV9kb2N1bWVudE9mUmVtb3ZlZEVs
ZW1lbnRXaGlsZVdhaXRpbmdGb3JVbmxvY2sgPSAmbV9lbGVtZW50LT5kb2N1bWVudCgpOwogICAg
ICAgICAvLyBTZXQgZWxlbWVudCBudWxsIGltbWVkaWF0ZWx5IHRvIGJsb2NrIGFueSBmdXR1cmUg
aW50ZXJhY3Rpb24gd2l0aCBpdAogICAgICAgICAvLyBpbmNsdWRpbmcgbW91c2UgZXZlbnRzIHJl
Y2VpdmVkIGJlZm9yZSB0aGUgdW5sb2NrIGNvbXBsZXRlcy4KLSAgICAgICAgY2xlYXJFbGVtZW50
KCk7CiAgICAgICAgIHJlcXVlc3RQb2ludGVyVW5sb2NrKCk7CisgICAgICAgIGNsZWFyRWxlbWVu
dCgpOwogICAgIH0KIH0KIAogdm9pZCBQb2ludGVyTG9ja0NvbnRyb2xsZXI6OmRvY3VtZW50RGV0
YWNoZWQoRG9jdW1lbnQmIGRvY3VtZW50KQogewogICAgIGlmIChtX2VsZW1lbnQgJiYgJm1fZWxl
bWVudC0+ZG9jdW1lbnQoKSA9PSAmZG9jdW1lbnQpIHsKKyAgICAgICAgbV9kb2N1bWVudE9mUmVt
b3ZlZEVsZW1lbnRXaGlsZVdhaXRpbmdGb3JVbmxvY2sgPSAmbV9lbGVtZW50LT5kb2N1bWVudCgp
OworICAgICAgICByZXF1ZXN0UG9pbnRlclVubG9jaygpOwogICAgICAgICBjbGVhckVsZW1lbnQo
KTsKLSAgICAgICAgcmVxdWVzdFBvaW50ZXJVbmxvY2tBbmRGb3JjZUN1cnNvclZpc2libGUoKTsK
ICAgICB9CiB9CiAKQEAgLTEzNSwxOCArMTM4LDI1IEBAIHZvaWQgUG9pbnRlckxvY2tDb250cm9s
bGVyOjpkaWRBY3F1aXJlUG9pbnRlckxvY2soKQogewogICAgIGVucXVldWVFdmVudChldmVudE5h
bWVzKCkucG9pbnRlcmxvY2tjaGFuZ2VFdmVudCwgbV9lbGVtZW50LmdldCgpKTsKICAgICBtX2xv
Y2tQZW5kaW5nID0gZmFsc2U7CisgICAgbV9mb3JjZUN1cnNvclZpc2libGVVcG9uVW5sb2NrID0g
ZmFsc2U7CisgICAgbV9kb2N1bWVudEFsbG93ZWRUb1JlbG9ja1dpdGhvdXRVc2VyR2VzdHVyZSA9
ICZtX2VsZW1lbnQtPmRvY3VtZW50KCk7CiB9CiAKIHZvaWQgUG9pbnRlckxvY2tDb250cm9sbGVy
OjpkaWROb3RBY3F1aXJlUG9pbnRlckxvY2soKQogewogICAgIGVucXVldWVFdmVudChldmVudE5h
bWVzKCkucG9pbnRlcmxvY2tlcnJvckV2ZW50LCBtX2VsZW1lbnQuZ2V0KCkpOwogICAgIGNsZWFy
RWxlbWVudCgpOworICAgIG1fdW5sb2NrUGVuZGluZyA9IGZhbHNlOwogfQogCiB2b2lkIFBvaW50
ZXJMb2NrQ29udHJvbGxlcjo6ZGlkTG9zZVBvaW50ZXJMb2NrKCkKIHsKKyAgICBpZiAoIW1fdW5s
b2NrUGVuZGluZykKKyAgICAgICAgbV9kb2N1bWVudEFsbG93ZWRUb1JlbG9ja1dpdGhvdXRVc2Vy
R2VzdHVyZSA9IG51bGxwdHI7CisKICAgICBlbnF1ZXVlRXZlbnQoZXZlbnROYW1lcygpLnBvaW50
ZXJsb2NrY2hhbmdlRXZlbnQsIG1fZWxlbWVudCA/ICZtX2VsZW1lbnQtPmRvY3VtZW50KCkgOiBt
X2RvY3VtZW50T2ZSZW1vdmVkRWxlbWVudFdoaWxlV2FpdGluZ0ZvclVubG9jay5nZXQoKSk7CiAg
ICAgY2xlYXJFbGVtZW50KCk7CisgICAgbV91bmxvY2tQZW5kaW5nID0gZmFsc2U7CiAgICAgbV9k
b2N1bWVudE9mUmVtb3ZlZEVsZW1lbnRXaGlsZVdhaXRpbmdGb3JVbmxvY2sgPSBudWxscHRyOwog
ICAgIGlmIChtX2ZvcmNlQ3Vyc29yVmlzaWJsZVVwb25VbmxvY2spIHsKICAgICAgICAgbV9mb3Jj
ZUN1cnNvclZpc2libGVVcG9uVW5sb2NrID0gZmFsc2U7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1BvaW50ZXJMb2NrQ29udHJvbGxlci5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Q
b2ludGVyTG9ja0NvbnRyb2xsZXIuaAppbmRleCBjYjZiMGY5OGY4ZjVhZWFiMDYxZDlhODNhMzY1
MmM1MmI3ZDc3NTI0Li4xM2QxNjFmOWNmYjRkYjU2MGJkYjEyYjYyNGM1OGYzNTMwOGEzYWEzIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BvaW50ZXJMb2NrQ29udHJvbGxlci5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUG9pbnRlckxvY2tDb250cm9sbGVyLmgKQEAgLTYxLDEw
ICs2MSwxMiBAQCBwcml2YXRlOgogICAgIHZvaWQgZW5xdWV1ZUV2ZW50KGNvbnN0IEF0b21pY1N0
cmluZyYgdHlwZSwgRWxlbWVudCopOwogICAgIHZvaWQgZW5xdWV1ZUV2ZW50KGNvbnN0IEF0b21p
Y1N0cmluZyYgdHlwZSwgRG9jdW1lbnQqKTsKICAgICBQYWdlJiBtX3BhZ2U7Ci0gICAgYm9vbCBt
X2xvY2tQZW5kaW5nOworICAgIGJvb2wgbV9sb2NrUGVuZGluZyB7IGZhbHNlIH07CisgICAgYm9v
bCBtX3VubG9ja1BlbmRpbmcgeyBmYWxzZSB9OwogICAgIGJvb2wgbV9mb3JjZUN1cnNvclZpc2li
bGVVcG9uVW5sb2NrIHsgZmFsc2UgfTsKICAgICBSZWZQdHI8RWxlbWVudD4gbV9lbGVtZW50Owog
ICAgIFJlZlB0cjxEb2N1bWVudD4gbV9kb2N1bWVudE9mUmVtb3ZlZEVsZW1lbnRXaGlsZVdhaXRp
bmdGb3JVbmxvY2s7CisgICAgUmVmUHRyPERvY3VtZW50PiBtX2RvY3VtZW50QWxsb3dlZFRvUmVs
b2NrV2l0aG91dFVzZXJHZXN0dXJlOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmlu
ZGV4IDU5NTEzMWRlZDRkY2VlZWFiM2I5ZDM1NDgwMjU4ZTgxYWEyYjI1NWQuLjdlMzIxOTkzOTNh
Y2U4MGQ2NjFjOTJkZjE2N2RkM2FiNTY5MmMyNjYgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0No
YW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAx
Ny0wMS0xNyAgSmVyZW15IEpvbmVzICA8amVyZW15akBhcHBsZS5jb20+CisKKyAgICAgICAgUGFn
ZSBzaG91bGQgYmUgYWJsZSB0byByZXF1ZXN0IHBvaW50ZXIgbG9jayB3aXRob3V0IHVzZXIgZ2Vz
dHVyZSBpZiBpdCByZWxpbnF1aXNoZWQgaXQgd2l0aG91dCBhIHVzZXIgZ2VzdHVyZQorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY3MTI2CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRW5hYmxlIHBvaW50ZXIt
bG9jay9sb2NrZWQtZWxlbWVudC1yZW1vdmVkLWZyb20tZG9tLmh0bWwgZm9yIFdLMiBieSBlbmFi
bGluZyBmb3IgTWFjIGFuZCBkaXNhYmxpbmcgZm9yIFdLMS4KKyAgICAgICAgTm90IGVuYWJsZSBp
biBXSzEgYmVjdWFzZSBvZiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTY3MTI3CisKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMtd2sxL1Rlc3RFeHBlY3RhdGlvbnM6Cisg
ICAgICAgICogcGxhdGZvcm0vbWFjL1Rlc3RFeHBlY3RhdGlvbnM6CisKIDIwMTctMDEtMTYgIENh
cmxvcyBBbGJlcnRvIExvcGV6IFBlcmV6ICA8Y2xvcGV6QGlnYWxpYS5jb20+CiAKICAgICAgICAg
W0dUS11bTVNFXSBVcGRhdGUgbGlzdCBvZiBtZWRpYS1zb3VyY2UgdGVzdHMgdGhhdCBmYWlsLgpk
aWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMS9UZXN0RXhwZWN0YXRpb25z
IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMS9UZXN0RXhwZWN0YXRpb25zCmluZGV4IGZl
NjQ2NTg2Y2ZjNDJhY2VjMTc2ZGYyNGY5MWEyY2M0MDkzYmMzZGYuLjIyMGY2NmFkNmE4MzMzZjFi
NzY4ZTRmOTY5OTY1ODE1ZjMwMmNmNzIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3Jt
L21hYy13azEvVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMt
d2sxL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTI5MywzICsyOTMsNCBAQCB3ZWJraXQub3JnL2IvMTY1
NTQxIGNvbXBvc2l0aW5nL2xheWVyLWNyZWF0aW9uL2ZpeGVkLW92ZXJsYXAtZXh0ZW50LXJ0bC5o
dG1sIFsgRgogd2Via2l0Lm9yZy9iLzE2NTU0MSBjb21wb3NpdGluZy9ydGwvcnRsLWZpeGVkLW92
ZXJmbG93Lmh0bWwgWyBGYWlsdXJlIF0KIAogd2Via2l0Lm9yZy9iLzE2NTU4OSBwb2ludGVyLWxv
Y2svbG9jay1sb3N0LW9uLWVzYy1pbi1mdWxsc2NyZWVuLmh0bWwgWyBTa2lwIF0KK3BvaW50ZXIt
bG9jay9sb2NrZWQtZWxlbWVudC1yZW1vdmVkLWZyb20tZG9tLmh0bWwKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL3BsYXRmb3JtL21hYy9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vbWFjL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggMmZjNjQyYmE0NTU0YzU5MDcxYjM1YzYy
MDQ1ZThkNzExNjM3OWY0YS4uNWU5MDRkYmQ4Mjg1ZGMxZGVlYmIwNThhYzViYjU0ZWQzM2VhOTE1
NiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1Rlc3RFeHBlY3RhdGlvbnMK
KysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTI4MCw3
ICsyODAsNiBAQCBmYXN0L2V2ZW50cy9wbGF0Zm9ybS13aGVlbGV2ZW50LXBhZ2luZy15LWluLXNj
cm9sbGluZy1wYWdlLmh0bWwKICMgUG9pbnRlciBMb2NrIGNhbiBvbmx5IGNoZWNrIHNvbWUgb2Yg
dGhlIEFQSSBhdCB0aGUgbW9tZW50LgogcG9pbnRlci1sb2NrL2J1ZzkwMzkxLW1vdmUtdGhlbi13
aW5kb3ctb3Blbi1jcmFzaC5odG1sCiBwb2ludGVyLWxvY2svbG9ja2VkLWVsZW1lbnQtaWZyYW1l
LXJlbW92ZWQtZnJvbS1kb20uaHRtbAotcG9pbnRlci1sb2NrL2xvY2tlZC1lbGVtZW50LXJlbW92
ZWQtZnJvbS1kb20uaHRtbAogcG9pbnRlci1sb2NrL21vdXNlLWV2ZW50LWRlbGl2ZXJ5Lmh0bWwK
IHBvaW50ZXItbG9jay9wb2ludGVybG9ja2NoYW5nZS1ldmVudC1vbi1sb2NrLWxvc3QuaHRtbAog
cG9pbnRlci1sb2NrL3BvaW50ZXJsb2NrY2hhbmdlLXBvaW50ZXJsb2NrZXJyb3ItZXZlbnRzLmh0
bWwK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>299878</attachid>
            <date>2017-01-26 16:39:04 -0800</date>
            <delta_ts>2017-01-26 17:02:28 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-167126-20170126163701.patch</filename>
            <type>text/plain</type>
            <size>9079</size>
            <attacher name="Jeremy Jones">jeremyj-wk</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjExMjMyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNWVkMTc4ZGFhZmRiOTA3
M2JmMDA0NGRkY2VjNmVjMjViYjdhNDlmNi4uZWJhNjQ0NTliNzY4MWZkMzUwYTJiMzMyNDFkN2Q3
N2ZkZjI3NWQ2NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM3IEBACisyMDE3LTAxLTE3ICBKZXJl
bXkgSm9uZXMgIDxqZXJlbXlqQGFwcGxlLmNvbT4KKworICAgICAgICBQYWdlIHNob3VsZCBiZSBh
YmxlIHRvIHJlcXVlc3QgcG9pbnRlciBsb2NrIHdpdGhvdXQgdXNlciBnZXN0dXJlIGlmIGl0IHJl
bGlucXVpc2hlZCBpdCB3aXRob3V0IGEgdXNlciBnZXN0dXJlCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjcxMjYKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBFbmFibGVkIHBvaW50ZXItbG9jay9sb2NrZWQt
ZWxlbWVudC1yZW1vdmVkLWZyb20tZG9tLmh0bWwgZm9yIFdLMi4KKyAgICAgICAgTm90IGVuYWJs
ZSBpbiBXSzEgYmVjYXVzZSBvZiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTY3MTI3CisKKyAgICAgICAgVGhpcyBjaGFuZ2UgYWxsb3dzIGEgcGFnZSB0byBsb2NrIHRo
ZSBwb2ludGVyIGFnYWluIHdpdGhvdXQgYSB1c2VyIGdlc3R1cmUgaWYgaXQgd2FzIHVubG9ja2Vk
IGJ5CisgICAgICAgIHRoZSBwYWdlIGFuZCBub3QgYnkgdGhlIHVzZXIuIFNlZSBodHRwczovL3d3
dy53My5vcmcvVFIvMjAxNi9SRUMtcG9pbnRlcmxvY2stMjAxNjEwMjcvIDUuMSBNZXRob2RzCisK
KyAgICAgICAgKiBwYWdlL1BvaW50ZXJMb2NrQ29udHJvbGxlci5jcHA6CisKKyAgICAgICAgV2hl
biBhIGRvY3VtZW50IGFjcXVpcmVzIHBvaW50ZXIgbG9jayB3aXRoIGEgdXNlciBnZXN0dXJlLCB0
aGF0IGRvY3VtZW50IGlzIGFsbG93ZWQgdG8gcmVxdWVzdCBwb2ludGVyIGxvY2sgYWdhaW4KKyAg
ICAgICAgdW50aWwgdGhlIHVzZXIgdGFrZXMgYW4gYWN0aW9uIHRvIGVuZCBwb2ludGVyIGxvY2su
IFdlIGtub3cgaXQgaXMgYSB1c2VyIGFjdGlvbiBiZWNhdXNlIHVzZXIgYWN0aW9ucyBhbHdheXMK
KyAgICAgICAgY2FsbCByZXF1ZXN0UG9pbnRlclVubG9ja0FuZEZvcmNlQ3Vyc29yVmlzaWJsZSgp
LgorCisgICAgICAgIFdoZW4gdGhlIHBhZ2UgcmVxdWVzdHMgYSBwb2ludGVyIHVubG9jayAodmlh
IHJlcXVlc3RQb2ludGVyVW5sb2NrKSwgdGhhdCBkb2N1bWVudCBpcyBhbGxvd2VkIHRvIGNvbnRp
bnVlIHRvIHJlbG9jaworICAgICAgICB0aGUgcGFnZS4gVGhpcyBjb250aW51ZXMgdW50aWwgdGhl
cmUgaXMgZWl0aGVyIGFuIHVubG9jayByZXF1ZXN0IGZvcm0gdGhlIHVzZXIgCisgICAgICAgIHZp
YSByZXF1ZXN0UG9pbnRlclVubG9ja0FuZEZvcmNlQ3Vyc29yVmlzaWJsZSBvciBhIGRpZExvc2VQ
b2ludGVyTG9jayB3aXRob3V0IGEgcG9pbnRlciB1bmxvY2sgcmVxdWVzdC4KKworICAgICAgICAo
V2ViQ29yZTo6UG9pbnRlckxvY2tDb250cm9sbGVyOjpQb2ludGVyTG9ja0NvbnRyb2xsZXIpOgor
ICAgICAgICAoV2ViQ29yZTo6UG9pbnRlckxvY2tDb250cm9sbGVyOjpyZXF1ZXN0UG9pbnRlckxv
Y2spOgorICAgICAgICAoV2ViQ29yZTo6UG9pbnRlckxvY2tDb250cm9sbGVyOjpyZXF1ZXN0UG9p
bnRlclVubG9jayk6CisgICAgICAgIChXZWJDb3JlOjpQb2ludGVyTG9ja0NvbnRyb2xsZXI6OnJl
cXVlc3RQb2ludGVyVW5sb2NrQW5kRm9yY2VDdXJzb3JWaXNpYmxlKToKKyAgICAgICAgKFdlYkNv
cmU6OlBvaW50ZXJMb2NrQ29udHJvbGxlcjo6ZWxlbWVudFJlbW92ZWQpOgorICAgICAgICAoV2Vi
Q29yZTo6UG9pbnRlckxvY2tDb250cm9sbGVyOjpkb2N1bWVudERldGFjaGVkKToKKyAgICAgICAg
KFdlYkNvcmU6OlBvaW50ZXJMb2NrQ29udHJvbGxlcjo6ZGlkQWNxdWlyZVBvaW50ZXJMb2NrKToK
KyAgICAgICAgKFdlYkNvcmU6OlBvaW50ZXJMb2NrQ29udHJvbGxlcjo6ZGlkTG9zZVBvaW50ZXJM
b2NrKToKKyAgICAgICAgKFdlYkNvcmU6OlBvaW50ZXJMb2NrQ29udHJvbGxlcjo6Y2xlYXJFbGVt
ZW50KToKKyAgICAgICAgKiBwYWdlL1BvaW50ZXJMb2NrQ29udHJvbGxlci5oOgorCiAyMDE3LTAx
LTI2ICBCcmFkeSBFaWRzb24gIDxiZWlkc29uQGFwcGxlLmNvbT4KIAogICAgICAgICBHYW1lcGFk
czogU29tZSBEUGFkcyBhcmUgc3RpbGwgbm90IGV4cG9zZWQgaW4gdGhlIEhJRCBiYWNrZW5kLgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9Qb2ludGVyTG9ja0NvbnRyb2xsZXIuY3Bw
IGIvU291cmNlL1dlYkNvcmUvcGFnZS9Qb2ludGVyTG9ja0NvbnRyb2xsZXIuY3BwCmluZGV4IDg0
M2ZjNmM3ZTJkMjlmMDM1OTg5MDRhNTI2ZTkzMjAxYWJlNDc5YWEuLjMxY2M2NTllNGI5ZTBjYjhl
YjEzM2EzMjE1YzA3N2ViMzZjNjQ2NjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
UG9pbnRlckxvY2tDb250cm9sbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BvaW50
ZXJMb2NrQ29udHJvbGxlci5jcHAKQEAgLTQzLDcgKzQzLDYgQEAgbmFtZXNwYWNlIFdlYkNvcmUg
ewogCiBQb2ludGVyTG9ja0NvbnRyb2xsZXI6OlBvaW50ZXJMb2NrQ29udHJvbGxlcihQYWdlJiBw
YWdlKQogICAgIDogbV9wYWdlKHBhZ2UpCi0gICAgLCBtX2xvY2tQZW5kaW5nKGZhbHNlKQogewog
fQogCkBAIC01NCw3ICs1Myw3IEBAIHZvaWQgUG9pbnRlckxvY2tDb250cm9sbGVyOjpyZXF1ZXN0
UG9pbnRlckxvY2soRWxlbWVudCogdGFyZ2V0KQogICAgICAgICByZXR1cm47CiAgICAgfQogCi0g
ICAgaWYgKCFTY3JpcHRDb250cm9sbGVyOjpwcm9jZXNzaW5nVXNlckdlc3R1cmUoKSkgeworICAg
IGlmIChtX2RvY3VtZW50QWxsb3dlZFRvUmVsb2NrV2l0aG91dFVzZXJHZXN0dXJlICE9ICZ0YXJn
ZXQtPmRvY3VtZW50KCkgJiYgIVNjcmlwdENvbnRyb2xsZXI6OnByb2Nlc3NpbmdVc2VyR2VzdHVy
ZSgpKSB7CiAgICAgICAgIGVucXVldWVFdmVudChldmVudE5hbWVzKCkucG9pbnRlcmxvY2tlcnJv
ckV2ZW50LCB0YXJnZXQpOwogICAgICAgICByZXR1cm47CiAgICAgfQpAQCAtNzcsOCArNzYsNyBA
QCB2b2lkIFBvaW50ZXJMb2NrQ29udHJvbGxlcjo6cmVxdWVzdFBvaW50ZXJMb2NrKEVsZW1lbnQq
IHRhcmdldCkKICAgICAgICAgbV9sb2NrUGVuZGluZyA9IHRydWU7CiAgICAgICAgIG1fZWxlbWVu
dCA9IHRhcmdldDsKICAgICAgICAgaWYgKCFtX3BhZ2UuY2hyb21lKCkuY2xpZW50KCkucmVxdWVz
dFBvaW50ZXJMb2NrKCkpIHsKLSAgICAgICAgICAgIG1fZWxlbWVudCA9IG51bGxwdHI7Ci0gICAg
ICAgICAgICBtX2xvY2tQZW5kaW5nID0gZmFsc2U7CisgICAgICAgICAgICBjbGVhckVsZW1lbnQo
KTsKICAgICAgICAgICAgIGVucXVldWVFdmVudChldmVudE5hbWVzKCkucG9pbnRlcmxvY2tlcnJv
ckV2ZW50LCB0YXJnZXQpOwogICAgICAgICB9CiAgICAgfQpAQCAtODksMTQgKzg3LDE4IEBAIHZv
aWQgUG9pbnRlckxvY2tDb250cm9sbGVyOjpyZXF1ZXN0UG9pbnRlclVubG9jaygpCiAgICAgaWYg
KCFtX2VsZW1lbnQpCiAgICAgICAgIHJldHVybjsKIAorICAgIG1fdW5sb2NrUGVuZGluZyA9IHRy
dWU7CiAgICAgbV9wYWdlLmNocm9tZSgpLmNsaWVudCgpLnJlcXVlc3RQb2ludGVyVW5sb2NrKCk7
CiB9CiAKIHZvaWQgUG9pbnRlckxvY2tDb250cm9sbGVyOjpyZXF1ZXN0UG9pbnRlclVubG9ja0Fu
ZEZvcmNlQ3Vyc29yVmlzaWJsZSgpCiB7CisgICAgbV9kb2N1bWVudEFsbG93ZWRUb1JlbG9ja1dp
dGhvdXRVc2VyR2VzdHVyZSA9IG51bGxwdHI7CisKICAgICBpZiAoIW1fZWxlbWVudCkKICAgICAg
ICAgcmV0dXJuOwogCisgICAgbV91bmxvY2tQZW5kaW5nID0gdHJ1ZTsKICAgICBtX3BhZ2UuY2hy
b21lKCkuY2xpZW50KCkucmVxdWVzdFBvaW50ZXJVbmxvY2soKTsKICAgICBtX2ZvcmNlQ3Vyc29y
VmlzaWJsZVVwb25VbmxvY2sgPSB0cnVlOwogfQpAQCAtMTA3LDE2ICsxMDksMTcgQEAgdm9pZCBQ
b2ludGVyTG9ja0NvbnRyb2xsZXI6OmVsZW1lbnRSZW1vdmVkKEVsZW1lbnQmIGVsZW1lbnQpCiAg
ICAgICAgIG1fZG9jdW1lbnRPZlJlbW92ZWRFbGVtZW50V2hpbGVXYWl0aW5nRm9yVW5sb2NrID0g
Jm1fZWxlbWVudC0+ZG9jdW1lbnQoKTsKICAgICAgICAgLy8gU2V0IGVsZW1lbnQgbnVsbCBpbW1l
ZGlhdGVseSB0byBibG9jayBhbnkgZnV0dXJlIGludGVyYWN0aW9uIHdpdGggaXQKICAgICAgICAg
Ly8gaW5jbHVkaW5nIG1vdXNlIGV2ZW50cyByZWNlaXZlZCBiZWZvcmUgdGhlIHVubG9jayBjb21w
bGV0ZXMuCi0gICAgICAgIGNsZWFyRWxlbWVudCgpOwogICAgICAgICByZXF1ZXN0UG9pbnRlclVu
bG9jaygpOworICAgICAgICBjbGVhckVsZW1lbnQoKTsKICAgICB9CiB9CiAKIHZvaWQgUG9pbnRl
ckxvY2tDb250cm9sbGVyOjpkb2N1bWVudERldGFjaGVkKERvY3VtZW50JiBkb2N1bWVudCkKIHsK
ICAgICBpZiAobV9lbGVtZW50ICYmICZtX2VsZW1lbnQtPmRvY3VtZW50KCkgPT0gJmRvY3VtZW50
KSB7CisgICAgICAgIG1fZG9jdW1lbnRPZlJlbW92ZWRFbGVtZW50V2hpbGVXYWl0aW5nRm9yVW5s
b2NrID0gJm1fZWxlbWVudC0+ZG9jdW1lbnQoKTsKKyAgICAgICAgcmVxdWVzdFBvaW50ZXJVbmxv
Y2soKTsKICAgICAgICAgY2xlYXJFbGVtZW50KCk7Ci0gICAgICAgIHJlcXVlc3RQb2ludGVyVW5s
b2NrQW5kRm9yY2VDdXJzb3JWaXNpYmxlKCk7CiAgICAgfQogfQogCkBAIC0xMzQsMTggKzEzNywy
NSBAQCB2b2lkIFBvaW50ZXJMb2NrQ29udHJvbGxlcjo6ZGlkQWNxdWlyZVBvaW50ZXJMb2NrKCkK
IHsKICAgICBlbnF1ZXVlRXZlbnQoZXZlbnROYW1lcygpLnBvaW50ZXJsb2NrY2hhbmdlRXZlbnQs
IG1fZWxlbWVudC5nZXQoKSk7CiAgICAgbV9sb2NrUGVuZGluZyA9IGZhbHNlOworICAgIG1fZm9y
Y2VDdXJzb3JWaXNpYmxlVXBvblVubG9jayA9IGZhbHNlOworICAgIG1fZG9jdW1lbnRBbGxvd2Vk
VG9SZWxvY2tXaXRob3V0VXNlckdlc3R1cmUgPSAmbV9lbGVtZW50LT5kb2N1bWVudCgpOwogfQog
CiB2b2lkIFBvaW50ZXJMb2NrQ29udHJvbGxlcjo6ZGlkTm90QWNxdWlyZVBvaW50ZXJMb2NrKCkK
IHsKICAgICBlbnF1ZXVlRXZlbnQoZXZlbnROYW1lcygpLnBvaW50ZXJsb2NrZXJyb3JFdmVudCwg
bV9lbGVtZW50LmdldCgpKTsKICAgICBjbGVhckVsZW1lbnQoKTsKKyAgICBtX3VubG9ja1BlbmRp
bmcgPSBmYWxzZTsKIH0KIAogdm9pZCBQb2ludGVyTG9ja0NvbnRyb2xsZXI6OmRpZExvc2VQb2lu
dGVyTG9jaygpCiB7CisgICAgaWYgKCFtX3VubG9ja1BlbmRpbmcpCisgICAgICAgIG1fZG9jdW1l
bnRBbGxvd2VkVG9SZWxvY2tXaXRob3V0VXNlckdlc3R1cmUgPSBudWxscHRyOworCiAgICAgZW5x
dWV1ZUV2ZW50KGV2ZW50TmFtZXMoKS5wb2ludGVybG9ja2NoYW5nZUV2ZW50LCBtX2VsZW1lbnQg
PyAmbV9lbGVtZW50LT5kb2N1bWVudCgpIDogbV9kb2N1bWVudE9mUmVtb3ZlZEVsZW1lbnRXaGls
ZVdhaXRpbmdGb3JVbmxvY2suZ2V0KCkpOwogICAgIGNsZWFyRWxlbWVudCgpOworICAgIG1fdW5s
b2NrUGVuZGluZyA9IGZhbHNlOwogICAgIG1fZG9jdW1lbnRPZlJlbW92ZWRFbGVtZW50V2hpbGVX
YWl0aW5nRm9yVW5sb2NrID0gbnVsbHB0cjsKICAgICBpZiAobV9mb3JjZUN1cnNvclZpc2libGVV
cG9uVW5sb2NrKSB7CiAgICAgICAgIG1fZm9yY2VDdXJzb3JWaXNpYmxlVXBvblVubG9jayA9IGZh
bHNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9Qb2ludGVyTG9ja0NvbnRyb2xs
ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUG9pbnRlckxvY2tDb250cm9sbGVyLmgKaW5kZXgg
Y2I2YjBmOThmOGY1YWVhYjA2MWQ5YTgzYTM2NTJjNTJiN2Q3NzUyNC4uMTNkMTYxZjljZmI0ZGI1
NjBiZGIxMmI2MjRjNThmMzUzMDhhM2FhMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFn
ZS9Qb2ludGVyTG9ja0NvbnRyb2xsZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BvaW50
ZXJMb2NrQ29udHJvbGxlci5oCkBAIC02MSwxMCArNjEsMTIgQEAgcHJpdmF0ZToKICAgICB2b2lk
IGVucXVldWVFdmVudChjb25zdCBBdG9taWNTdHJpbmcmIHR5cGUsIEVsZW1lbnQqKTsKICAgICB2
b2lkIGVucXVldWVFdmVudChjb25zdCBBdG9taWNTdHJpbmcmIHR5cGUsIERvY3VtZW50Kik7CiAg
ICAgUGFnZSYgbV9wYWdlOwotICAgIGJvb2wgbV9sb2NrUGVuZGluZzsKKyAgICBib29sIG1fbG9j
a1BlbmRpbmcgeyBmYWxzZSB9OworICAgIGJvb2wgbV91bmxvY2tQZW5kaW5nIHsgZmFsc2UgfTsK
ICAgICBib29sIG1fZm9yY2VDdXJzb3JWaXNpYmxlVXBvblVubG9jayB7IGZhbHNlIH07CiAgICAg
UmVmUHRyPEVsZW1lbnQ+IG1fZWxlbWVudDsKICAgICBSZWZQdHI8RG9jdW1lbnQ+IG1fZG9jdW1l
bnRPZlJlbW92ZWRFbGVtZW50V2hpbGVXYWl0aW5nRm9yVW5sb2NrOworICAgIFJlZlB0cjxEb2N1
bWVudD4gbV9kb2N1bWVudEFsbG93ZWRUb1JlbG9ja1dpdGhvdXRVc2VyR2VzdHVyZTsKIH07CiAK
IH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxv
ZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBlMDgxZDI2NjFhNmVhOGUxZGY2YTMwZmZj
Yjc4OTNlZDc4N2M0NTZkLi5jM2Q4MGMxNGI2ODIwMzhjYzc0MGVhOWVhNjdmNGZmY2ZmMDEzOWQ5
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTctMDEtMTcgIEplcmVteSBKb25lcyAgPGplcmVt
eWpAYXBwbGUuY29tPgorCisgICAgICAgIFBhZ2Ugc2hvdWxkIGJlIGFibGUgdG8gcmVxdWVzdCBw
b2ludGVyIGxvY2sgd2l0aG91dCB1c2VyIGdlc3R1cmUgaWYgaXQgcmVsaW5xdWlzaGVkIGl0IHdp
dGhvdXQgYSB1c2VyIGdlc3R1cmUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTE2NzEyNgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIEVuYWJsZSBwb2ludGVyLWxvY2svbG9ja2VkLWVsZW1lbnQtcmVtb3ZlZC1m
cm9tLWRvbS5odG1sIGZvciBXSzIgYnkgZW5hYmxpbmcgZm9yIE1hYyBhbmQgZGlzYWJsaW5nIGZv
ciBXSzEuCisgICAgICAgIE5vdCBlbmFibGUgaW4gV0sxIGJlY3Vhc2Ugb2YgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE2NzEyNworCisgICAgICAgICogcGxhdGZvcm0v
bWFjLXdrMS9UZXN0RXhwZWN0YXRpb25zOgorICAgICAgICAqIHBsYXRmb3JtL21hYy9UZXN0RXhw
ZWN0YXRpb25zOgorCiAyMDE3LTAxLTI2ICBaYWxhbiBCdWp0YXMgIDx6YWxhbkBhcHBsZS5jb20+
CiAKICAgICAgICAgU2ltcGxlIGxpbmUgbGF5b3V0OiBBZGQgc3VwcG9ydCBmb3IgLXdlYmtpdC1o
eXBoZW5hdGUtbGltaXQtbGluZXMKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21h
Yy13azEvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azEvVGVz
dEV4cGVjdGF0aW9ucwppbmRleCBjZTE1ZThhM2I5NzI3MDM1ZjYxOWFmMjQxNzc1OTM1NDJjYjEy
YmNhLi43ZWNkYzQ1ZGJmMmFmMDM2OWM5N2Q3YzE1YTY5OWE0NmYzMWU5ZmI5IDEwMDY0NAotLS0g
YS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtd2sxL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vbWFjLXdrMS9UZXN0RXhwZWN0YXRpb25zCkBAIC0zMTMsMyArMzEz
LDUgQEAgd2Via2l0Lm9yZy9iLzE2NDU3MSBtZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJvbHMvbWVk
aWEtY29udHJvbGxlci9tZWRpYS1jb250cm9sbGUKIHdlYmtpdC5vcmcvYi8xNjczNzIgbWVkaWEv
bW9kZXJuLW1lZGlhLWNvbnRyb2xzL21hY29zLWZ1bGxzY3JlZW4tbWVkaWEtY29udHJvbHMvbWFj
b3MtZnVsbHNjcmVlbi1tZWRpYS1jb250cm9scy1idXR0b25zLXN0eWxlcy5odG1sIFsgUGFzcyBG
YWlsdXJlIF0KIAogd2Via2l0Lm9yZy9iLzE2MzU5OCBtZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJv
bHMvbWFjb3MtaW5saW5lLW1lZGlhLWNvbnRyb2xzL21hY29zLWlubGluZS1tZWRpYS1jb250cm9s
cy1idXR0b25zLXN0eWxlcy5odG1sIFsgUGFzcyBUaW1lb3V0IF0KKword2Via2l0Lm9yZy9iLzE2
NzEyNyBwb2ludGVyLWxvY2svbG9ja2VkLWVsZW1lbnQtcmVtb3ZlZC1mcm9tLWRvbS5odG1sCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMvVGVzdEV4cGVjdGF0aW9ucyBiL0xh
eW91dFRlc3RzL3BsYXRmb3JtL21hYy9UZXN0RXhwZWN0YXRpb25zCmluZGV4IGJiMjRkMzFlNWI0
MTBmNzY0NDgxZDRjODEzODkwNDk5NWJlMmZlMTMuLjljNjEyMTA1MTMxZWJkZWY1ODRlN2E0MmJj
YzFmN2RiODM2MzE0NWMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9UZXN0
RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9UZXN0RXhwZWN0YXRp
b25zCkBAIC0yODAsNyArMjgwLDYgQEAgZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1w
YWdpbmcteS1pbi1zY3JvbGxpbmctcGFnZS5odG1sCiAjIFBvaW50ZXIgTG9jayBjYW4gb25seSBj
aGVjayBzb21lIG9mIHRoZSBBUEkgYXQgdGhlIG1vbWVudC4KIHBvaW50ZXItbG9jay9idWc5MDM5
MS1tb3ZlLXRoZW4td2luZG93LW9wZW4tY3Jhc2guaHRtbAogcG9pbnRlci1sb2NrL2xvY2tlZC1l
bGVtZW50LWlmcmFtZS1yZW1vdmVkLWZyb20tZG9tLmh0bWwKLXBvaW50ZXItbG9jay9sb2NrZWQt
ZWxlbWVudC1yZW1vdmVkLWZyb20tZG9tLmh0bWwKIHBvaW50ZXItbG9jay9tb3VzZS1ldmVudC1k
ZWxpdmVyeS5odG1sCiBwb2ludGVyLWxvY2svcG9pbnRlcmxvY2tjaGFuZ2UtZXZlbnQtb24tbG9j
ay1sb3N0Lmh0bWwKIHBvaW50ZXItbG9jay9wb2ludGVybG9ja2NoYW5nZS1wb2ludGVybG9ja2Vy
cm9yLWV2ZW50cy5odG1sCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>299883</attachid>
            <date>2017-01-26 17:02:31 -0800</date>
            <delta_ts>2017-01-26 18:18:45 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-167126-20170126170028.patch</filename>
            <type>text/plain</type>
            <size>9131</size>
            <attacher name="Jeremy Jones">jeremyj-wk</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjExMjQxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZmM4ODVlZDZiMjUxYmUz
Y2VhMWI4OWZiMWIyMDEzYzhmOTJkZDliMS4uODJjYWY1MTY3MGU2NmJlYzkwNzUyMjY4ZTg1NWQ4
N2E2NjMyOTkwNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM3IEBACisyMDE3LTAxLTE3ICBKZXJl
bXkgSm9uZXMgIDxqZXJlbXlqQGFwcGxlLmNvbT4KKworICAgICAgICBQYWdlIHNob3VsZCBiZSBh
YmxlIHRvIHJlcXVlc3QgcG9pbnRlciBsb2NrIHdpdGhvdXQgdXNlciBnZXN0dXJlIGlmIGl0IHJl
bGlucXVpc2hlZCBpdCB3aXRob3V0IGEgdXNlciBnZXN0dXJlCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNjcxMjYKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBFbmFibGVkIHBvaW50ZXItbG9jay9sb2NrZWQt
ZWxlbWVudC1yZW1vdmVkLWZyb20tZG9tLmh0bWwgZm9yIFdLMi4KKyAgICAgICAgTm90IGVuYWJs
ZSBpbiBXSzEgYmVjYXVzZSBvZiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTY3MTI3CisKKyAgICAgICAgVGhpcyBjaGFuZ2UgYWxsb3dzIGEgcGFnZSB0byBsb2NrIHRo
ZSBwb2ludGVyIGFnYWluIHdpdGhvdXQgYSB1c2VyIGdlc3R1cmUgaWYgaXQgd2FzIHVubG9ja2Vk
IGJ5CisgICAgICAgIHRoZSBwYWdlIGFuZCBub3QgYnkgdGhlIHVzZXIuIFNlZSBodHRwczovL3d3
dy53My5vcmcvVFIvMjAxNi9SRUMtcG9pbnRlcmxvY2stMjAxNjEwMjcvIDUuMSBNZXRob2RzCisK
KyAgICAgICAgKiBwYWdlL1BvaW50ZXJMb2NrQ29udHJvbGxlci5jcHA6CisKKyAgICAgICAgV2hl
biBhIGRvY3VtZW50IGFjcXVpcmVzIHBvaW50ZXIgbG9jayB3aXRoIGEgdXNlciBnZXN0dXJlLCB0
aGF0IGRvY3VtZW50IGlzIGFsbG93ZWQgdG8gcmVxdWVzdCBwb2ludGVyIGxvY2sgYWdhaW4KKyAg
ICAgICAgdW50aWwgdGhlIHVzZXIgdGFrZXMgYW4gYWN0aW9uIHRvIGVuZCBwb2ludGVyIGxvY2su
IFdlIGtub3cgaXQgaXMgYSB1c2VyIGFjdGlvbiBiZWNhdXNlIHVzZXIgYWN0aW9ucyBhbHdheXMK
KyAgICAgICAgY2FsbCByZXF1ZXN0UG9pbnRlclVubG9ja0FuZEZvcmNlQ3Vyc29yVmlzaWJsZSgp
LgorCisgICAgICAgIFdoZW4gdGhlIHBhZ2UgcmVxdWVzdHMgYSBwb2ludGVyIHVubG9jayAodmlh
IHJlcXVlc3RQb2ludGVyVW5sb2NrKSwgdGhhdCBkb2N1bWVudCBpcyBhbGxvd2VkIHRvIGNvbnRp
bnVlIHRvIHJlbG9jaworICAgICAgICB0aGUgcGFnZS4gVGhpcyBjb250aW51ZXMgdW50aWwgdGhl
cmUgaXMgZWl0aGVyIGFuIHVubG9jayByZXF1ZXN0IGZvcm0gdGhlIHVzZXIgCisgICAgICAgIHZp
YSByZXF1ZXN0UG9pbnRlclVubG9ja0FuZEZvcmNlQ3Vyc29yVmlzaWJsZSBvciBhIGRpZExvc2VQ
b2ludGVyTG9jayB3aXRob3V0IGEgcG9pbnRlciB1bmxvY2sgcmVxdWVzdC4KKworICAgICAgICAo
V2ViQ29yZTo6UG9pbnRlckxvY2tDb250cm9sbGVyOjpQb2ludGVyTG9ja0NvbnRyb2xsZXIpOgor
ICAgICAgICAoV2ViQ29yZTo6UG9pbnRlckxvY2tDb250cm9sbGVyOjpyZXF1ZXN0UG9pbnRlckxv
Y2spOgorICAgICAgICAoV2ViQ29yZTo6UG9pbnRlckxvY2tDb250cm9sbGVyOjpyZXF1ZXN0UG9p
bnRlclVubG9jayk6CisgICAgICAgIChXZWJDb3JlOjpQb2ludGVyTG9ja0NvbnRyb2xsZXI6OnJl
cXVlc3RQb2ludGVyVW5sb2NrQW5kRm9yY2VDdXJzb3JWaXNpYmxlKToKKyAgICAgICAgKFdlYkNv
cmU6OlBvaW50ZXJMb2NrQ29udHJvbGxlcjo6ZWxlbWVudFJlbW92ZWQpOgorICAgICAgICAoV2Vi
Q29yZTo6UG9pbnRlckxvY2tDb250cm9sbGVyOjpkb2N1bWVudERldGFjaGVkKToKKyAgICAgICAg
KFdlYkNvcmU6OlBvaW50ZXJMb2NrQ29udHJvbGxlcjo6ZGlkQWNxdWlyZVBvaW50ZXJMb2NrKToK
KyAgICAgICAgKFdlYkNvcmU6OlBvaW50ZXJMb2NrQ29udHJvbGxlcjo6ZGlkTG9zZVBvaW50ZXJM
b2NrKToKKyAgICAgICAgKFdlYkNvcmU6OlBvaW50ZXJMb2NrQ29udHJvbGxlcjo6Y2xlYXJFbGVt
ZW50KToKKyAgICAgICAgKiBwYWdlL1BvaW50ZXJMb2NrQ29udHJvbGxlci5oOgorCiAyMDE3LTAx
LTI2ICBKb3NlcGggUGVjb3Jhcm8gIDxwZWNvcmFyb0BhcHBsZS5jb20+CiAKICAgICAgICAgV2Vi
IEluc3BlY3RvcjogaU9TOiBNZW1vcnkgdGltZWxpbmUgc2hvd3MgaW1wb3NzaWJsZSB2YWx1ZXMg
Zm9yIFBhZ2Ugc2l6ZSAodW5kZXJmbG93ZWQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
YWdlL1BvaW50ZXJMb2NrQ29udHJvbGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BvaW50
ZXJMb2NrQ29udHJvbGxlci5jcHAKaW5kZXggMjRiMjNjNzMzNGU3ODlmMzc0YjA2NDI2ZmZhYzk5
NWNhNGM3OWZlNC4uNTM3OTI0NmFjNmFhZThkNTExM2E5MmFmMTgwNmJlYmIyOWEyOGNjYyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9Qb2ludGVyTG9ja0NvbnRyb2xsZXIuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUG9pbnRlckxvY2tDb250cm9sbGVyLmNwcApAQCAtNDMs
NyArNDMsNiBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIFBvaW50ZXJMb2NrQ29udHJvbGxlcjo6
UG9pbnRlckxvY2tDb250cm9sbGVyKFBhZ2UmIHBhZ2UpCiAgICAgOiBtX3BhZ2UocGFnZSkKLSAg
ICAsIG1fbG9ja1BlbmRpbmcoZmFsc2UpCiB7CiB9CiAKQEAgLTU0LDcgKzUzLDcgQEAgdm9pZCBQ
b2ludGVyTG9ja0NvbnRyb2xsZXI6OnJlcXVlc3RQb2ludGVyTG9jayhFbGVtZW50KiB0YXJnZXQp
CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBpZiAoIVNjcmlwdENvbnRyb2xsZXI6OnBy
b2Nlc3NpbmdVc2VyR2VzdHVyZSgpKSB7CisgICAgaWYgKG1fZG9jdW1lbnRBbGxvd2VkVG9SZWxv
Y2tXaXRob3V0VXNlckdlc3R1cmUgIT0gJnRhcmdldC0+ZG9jdW1lbnQoKSAmJiAhU2NyaXB0Q29u
dHJvbGxlcjo6cHJvY2Vzc2luZ1VzZXJHZXN0dXJlKCkpIHsKICAgICAgICAgZW5xdWV1ZUV2ZW50
KGV2ZW50TmFtZXMoKS5wb2ludGVybG9ja2Vycm9yRXZlbnQsIHRhcmdldCk7CiAgICAgICAgIHJl
dHVybjsKICAgICB9CkBAIC03Nyw4ICs3Niw3IEBAIHZvaWQgUG9pbnRlckxvY2tDb250cm9sbGVy
OjpyZXF1ZXN0UG9pbnRlckxvY2soRWxlbWVudCogdGFyZ2V0KQogICAgICAgICBtX2xvY2tQZW5k
aW5nID0gdHJ1ZTsKICAgICAgICAgbV9lbGVtZW50ID0gdGFyZ2V0OwogICAgICAgICBpZiAoIW1f
cGFnZS5jaHJvbWUoKS5jbGllbnQoKS5yZXF1ZXN0UG9pbnRlckxvY2soKSkgewotICAgICAgICAg
ICAgbV9lbGVtZW50ID0gbnVsbHB0cjsKLSAgICAgICAgICAgIG1fbG9ja1BlbmRpbmcgPSBmYWxz
ZTsKKyAgICAgICAgICAgIGNsZWFyRWxlbWVudCgpOwogICAgICAgICAgICAgZW5xdWV1ZUV2ZW50
KGV2ZW50TmFtZXMoKS5wb2ludGVybG9ja2Vycm9yRXZlbnQsIHRhcmdldCk7CiAgICAgICAgIH0K
ICAgICB9CkBAIC04OSwxNCArODcsMTggQEAgdm9pZCBQb2ludGVyTG9ja0NvbnRyb2xsZXI6OnJl
cXVlc3RQb2ludGVyVW5sb2NrKCkKICAgICBpZiAoIW1fZWxlbWVudCkKICAgICAgICAgcmV0dXJu
OwogCisgICAgbV91bmxvY2tQZW5kaW5nID0gdHJ1ZTsKICAgICBtX3BhZ2UuY2hyb21lKCkuY2xp
ZW50KCkucmVxdWVzdFBvaW50ZXJVbmxvY2soKTsKIH0KIAogdm9pZCBQb2ludGVyTG9ja0NvbnRy
b2xsZXI6OnJlcXVlc3RQb2ludGVyVW5sb2NrQW5kRm9yY2VDdXJzb3JWaXNpYmxlKCkKIHsKKyAg
ICBtX2RvY3VtZW50QWxsb3dlZFRvUmVsb2NrV2l0aG91dFVzZXJHZXN0dXJlID0gbnVsbHB0cjsK
KwogICAgIGlmICghbV9lbGVtZW50KQogICAgICAgICByZXR1cm47CiAKKyAgICBtX3VubG9ja1Bl
bmRpbmcgPSB0cnVlOwogICAgIG1fcGFnZS5jaHJvbWUoKS5jbGllbnQoKS5yZXF1ZXN0UG9pbnRl
clVubG9jaygpOwogICAgIG1fZm9yY2VDdXJzb3JWaXNpYmxlVXBvblVubG9jayA9IHRydWU7CiB9
CkBAIC0xMDcsMTYgKzEwOSwxNyBAQCB2b2lkIFBvaW50ZXJMb2NrQ29udHJvbGxlcjo6ZWxlbWVu
dFJlbW92ZWQoRWxlbWVudCYgZWxlbWVudCkKICAgICAgICAgbV9kb2N1bWVudE9mUmVtb3ZlZEVs
ZW1lbnRXaGlsZVdhaXRpbmdGb3JVbmxvY2sgPSAmbV9lbGVtZW50LT5kb2N1bWVudCgpOwogICAg
ICAgICAvLyBTZXQgZWxlbWVudCBudWxsIGltbWVkaWF0ZWx5IHRvIGJsb2NrIGFueSBmdXR1cmUg
aW50ZXJhY3Rpb24gd2l0aCBpdAogICAgICAgICAvLyBpbmNsdWRpbmcgbW91c2UgZXZlbnRzIHJl
Y2VpdmVkIGJlZm9yZSB0aGUgdW5sb2NrIGNvbXBsZXRlcy4KLSAgICAgICAgY2xlYXJFbGVtZW50
KCk7CiAgICAgICAgIHJlcXVlc3RQb2ludGVyVW5sb2NrKCk7CisgICAgICAgIGNsZWFyRWxlbWVu
dCgpOwogICAgIH0KIH0KIAogdm9pZCBQb2ludGVyTG9ja0NvbnRyb2xsZXI6OmRvY3VtZW50RGV0
YWNoZWQoRG9jdW1lbnQmIGRvY3VtZW50KQogewogICAgIGlmIChtX2VsZW1lbnQgJiYgJm1fZWxl
bWVudC0+ZG9jdW1lbnQoKSA9PSAmZG9jdW1lbnQpIHsKKyAgICAgICAgbV9kb2N1bWVudE9mUmVt
b3ZlZEVsZW1lbnRXaGlsZVdhaXRpbmdGb3JVbmxvY2sgPSAmbV9lbGVtZW50LT5kb2N1bWVudCgp
OworICAgICAgICByZXF1ZXN0UG9pbnRlclVubG9jaygpOwogICAgICAgICBjbGVhckVsZW1lbnQo
KTsKLSAgICAgICAgcmVxdWVzdFBvaW50ZXJVbmxvY2tBbmRGb3JjZUN1cnNvclZpc2libGUoKTsK
ICAgICB9CiB9CiAKQEAgLTEzOSwxOCArMTQyLDI1IEBAIHZvaWQgUG9pbnRlckxvY2tDb250cm9s
bGVyOjpkaWRBY3F1aXJlUG9pbnRlckxvY2soKQogewogICAgIGVucXVldWVFdmVudChldmVudE5h
bWVzKCkucG9pbnRlcmxvY2tjaGFuZ2VFdmVudCwgbV9lbGVtZW50LmdldCgpKTsKICAgICBtX2xv
Y2tQZW5kaW5nID0gZmFsc2U7CisgICAgbV9mb3JjZUN1cnNvclZpc2libGVVcG9uVW5sb2NrID0g
ZmFsc2U7CisgICAgbV9kb2N1bWVudEFsbG93ZWRUb1JlbG9ja1dpdGhvdXRVc2VyR2VzdHVyZSA9
ICZtX2VsZW1lbnQtPmRvY3VtZW50KCk7CiB9CiAKIHZvaWQgUG9pbnRlckxvY2tDb250cm9sbGVy
OjpkaWROb3RBY3F1aXJlUG9pbnRlckxvY2soKQogewogICAgIGVucXVldWVFdmVudChldmVudE5h
bWVzKCkucG9pbnRlcmxvY2tlcnJvckV2ZW50LCBtX2VsZW1lbnQuZ2V0KCkpOwogICAgIGNsZWFy
RWxlbWVudCgpOworICAgIG1fdW5sb2NrUGVuZGluZyA9IGZhbHNlOwogfQogCiB2b2lkIFBvaW50
ZXJMb2NrQ29udHJvbGxlcjo6ZGlkTG9zZVBvaW50ZXJMb2NrKCkKIHsKKyAgICBpZiAoIW1fdW5s
b2NrUGVuZGluZykKKyAgICAgICAgbV9kb2N1bWVudEFsbG93ZWRUb1JlbG9ja1dpdGhvdXRVc2Vy
R2VzdHVyZSA9IG51bGxwdHI7CisKICAgICBlbnF1ZXVlRXZlbnQoZXZlbnROYW1lcygpLnBvaW50
ZXJsb2NrY2hhbmdlRXZlbnQsIG1fZWxlbWVudCA/ICZtX2VsZW1lbnQtPmRvY3VtZW50KCkgOiBt
X2RvY3VtZW50T2ZSZW1vdmVkRWxlbWVudFdoaWxlV2FpdGluZ0ZvclVubG9jay5nZXQoKSk7CiAg
ICAgY2xlYXJFbGVtZW50KCk7CisgICAgbV91bmxvY2tQZW5kaW5nID0gZmFsc2U7CiAgICAgbV9k
b2N1bWVudE9mUmVtb3ZlZEVsZW1lbnRXaGlsZVdhaXRpbmdGb3JVbmxvY2sgPSBudWxscHRyOwog
ICAgIGlmIChtX2ZvcmNlQ3Vyc29yVmlzaWJsZVVwb25VbmxvY2spIHsKICAgICAgICAgbV9mb3Jj
ZUN1cnNvclZpc2libGVVcG9uVW5sb2NrID0gZmFsc2U7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1BvaW50ZXJMb2NrQ29udHJvbGxlci5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9Q
b2ludGVyTG9ja0NvbnRyb2xsZXIuaAppbmRleCBkZTcwYjRmMmI0YWE3ZGFhOGExZmJlY2JkNzJi
ZjRiZGE0ZTVjNzNhLi41MDIxYWU5NzQwODA4YTcxZjk4YTA0YmRjYmI0ZTA2ODlmM2E2OTZmIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BvaW50ZXJMb2NrQ29udHJvbGxlci5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUG9pbnRlckxvY2tDb250cm9sbGVyLmgKQEAgLTY0LDEw
ICs2NCwxMiBAQCBwcml2YXRlOgogICAgIHZvaWQgZW5xdWV1ZUV2ZW50KGNvbnN0IEF0b21pY1N0
cmluZyYgdHlwZSwgRWxlbWVudCopOwogICAgIHZvaWQgZW5xdWV1ZUV2ZW50KGNvbnN0IEF0b21p
Y1N0cmluZyYgdHlwZSwgRG9jdW1lbnQqKTsKICAgICBQYWdlJiBtX3BhZ2U7Ci0gICAgYm9vbCBt
X2xvY2tQZW5kaW5nOworICAgIGJvb2wgbV9sb2NrUGVuZGluZyB7IGZhbHNlIH07CisgICAgYm9v
bCBtX3VubG9ja1BlbmRpbmcgeyBmYWxzZSB9OwogICAgIGJvb2wgbV9mb3JjZUN1cnNvclZpc2li
bGVVcG9uVW5sb2NrIHsgZmFsc2UgfTsKICAgICBSZWZQdHI8RWxlbWVudD4gbV9lbGVtZW50Owog
ICAgIFJlZlB0cjxEb2N1bWVudD4gbV9kb2N1bWVudE9mUmVtb3ZlZEVsZW1lbnRXaGlsZVdhaXRp
bmdGb3JVbmxvY2s7CisgICAgUmVmUHRyPERvY3VtZW50PiBtX2RvY3VtZW50QWxsb3dlZFRvUmVs
b2NrV2l0aG91dFVzZXJHZXN0dXJlOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmlu
ZGV4IGE3YzBjODliMGJhODc0NTM0NDdmOWNjYmIzODRmZWFjODg2NDA4YWMuLmI4ODZlZjlmM2Ni
NmRmZTI3OWU0ZjBmMzQxODM4YjJiYTAzMWE1ODAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0No
YW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAx
Ny0wMS0xNyAgSmVyZW15IEpvbmVzICA8amVyZW15akBhcHBsZS5jb20+CisKKyAgICAgICAgUGFn
ZSBzaG91bGQgYmUgYWJsZSB0byByZXF1ZXN0IHBvaW50ZXIgbG9jayB3aXRob3V0IHVzZXIgZ2Vz
dHVyZSBpZiBpdCByZWxpbnF1aXNoZWQgaXQgd2l0aG91dCBhIHVzZXIgZ2VzdHVyZQorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY3MTI2CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRW5hYmxlIHBvaW50ZXIt
bG9jay9sb2NrZWQtZWxlbWVudC1yZW1vdmVkLWZyb20tZG9tLmh0bWwgZm9yIFdLMiBieSBlbmFi
bGluZyBmb3IgTWFjIGFuZCBkaXNhYmxpbmcgZm9yIFdLMS4KKyAgICAgICAgTm90IGVuYWJsZSBp
biBXSzEgYmVjdWFzZSBvZiBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTY3MTI3CisKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMtd2sxL1Rlc3RFeHBlY3RhdGlvbnM6Cisg
ICAgICAgICogcGxhdGZvcm0vbWFjL1Rlc3RFeHBlY3RhdGlvbnM6CisKIDIwMTctMDEtMjYgIEpl
cmVteSBKb25lcyAgPGplcmVteWpAYXBwbGUuY29tPgogCiAgICAgICAgIFBvaW50ZXIgbG9jayBl
dmVudHMgc2hvdWxkIGJlIGRlbGl2ZXJlZCBkaXJlY3RseSB0byB0aGUgdGFyZ2V0IGVsZW1lbnQK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azEvVGVzdEV4cGVjdGF0aW9u
cyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy13azEvVGVzdEV4cGVjdGF0aW9ucwppbmRleCBj
ZTE1ZThhM2I5NzI3MDM1ZjYxOWFmMjQxNzc1OTM1NDJjYjEyYmNhLi43ZWNkYzQ1ZGJmMmFmMDM2
OWM5N2Q3YzE1YTY5OWE0NmYzMWU5ZmI5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9tYWMtd2sxL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFj
LXdrMS9UZXN0RXhwZWN0YXRpb25zCkBAIC0zMTMsMyArMzEzLDUgQEAgd2Via2l0Lm9yZy9iLzE2
NDU3MSBtZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJvbHMvbWVkaWEtY29udHJvbGxlci9tZWRpYS1j
b250cm9sbGUKIHdlYmtpdC5vcmcvYi8xNjczNzIgbWVkaWEvbW9kZXJuLW1lZGlhLWNvbnRyb2xz
L21hY29zLWZ1bGxzY3JlZW4tbWVkaWEtY29udHJvbHMvbWFjb3MtZnVsbHNjcmVlbi1tZWRpYS1j
b250cm9scy1idXR0b25zLXN0eWxlcy5odG1sIFsgUGFzcyBGYWlsdXJlIF0KIAogd2Via2l0Lm9y
Zy9iLzE2MzU5OCBtZWRpYS9tb2Rlcm4tbWVkaWEtY29udHJvbHMvbWFjb3MtaW5saW5lLW1lZGlh
LWNvbnRyb2xzL21hY29zLWlubGluZS1tZWRpYS1jb250cm9scy1idXR0b25zLXN0eWxlcy5odG1s
IFsgUGFzcyBUaW1lb3V0IF0KKword2Via2l0Lm9yZy9iLzE2NzEyNyBwb2ludGVyLWxvY2svbG9j
a2VkLWVsZW1lbnQtcmVtb3ZlZC1mcm9tLWRvbS5odG1sCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9tYWMvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL21h
Yy9UZXN0RXhwZWN0YXRpb25zCmluZGV4IGE3MDUzZDBhYmI2NmFhNjIzMmM2YzI0MjZiYTk2NzMz
NTA2N2QwNjYuLmYxN2VkMTdlNDA1OTViMGNmOGY1NTZjYTRlYjM3MDVjYjM5YTQ0NjcgMTAwNjQ0
Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xh
eW91dFRlc3RzL3BsYXRmb3JtL21hYy9UZXN0RXhwZWN0YXRpb25zCkBAIC0yODAsNyArMjgwLDYg
QEAgZmFzdC9ldmVudHMvcGxhdGZvcm0td2hlZWxldmVudC1wYWdpbmcteS1pbi1zY3JvbGxpbmct
cGFnZS5odG1sCiAjIFBvaW50ZXIgTG9jayBjYW4gb25seSBjaGVjayBzb21lIG9mIHRoZSBBUEkg
YXQgdGhlIG1vbWVudC4KIHBvaW50ZXItbG9jay9idWc5MDM5MS1tb3ZlLXRoZW4td2luZG93LW9w
ZW4tY3Jhc2guaHRtbAogcG9pbnRlci1sb2NrL2xvY2tlZC1lbGVtZW50LWlmcmFtZS1yZW1vdmVk
LWZyb20tZG9tLmh0bWwKLXBvaW50ZXItbG9jay9sb2NrZWQtZWxlbWVudC1yZW1vdmVkLWZyb20t
ZG9tLmh0bWwKIHBvaW50ZXItbG9jay9wb2ludGVybG9ja2NoYW5nZS1ldmVudC1vbi1sb2NrLWxv
c3QuaHRtbAogcG9pbnRlci1sb2NrL3BvaW50ZXJsb2NrY2hhbmdlLXBvaW50ZXJsb2NrZXJyb3It
ZXZlbnRzLmh0bWwKIHBvaW50ZXItbG9jay9wb2ludGVybG9ja2VsZW1lbnQtbnVsbC13aGVuLXBl
bmRpbmcuaHRtbAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>