<?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>151840</bug_id>
          
          <creation_ts>2015-12-03 17:40:42 -0800</creation_ts>
          <short_desc>[iOS] Suspend and resume device motion and device orientation updates when page is hidden and visible, respectively</short_desc>
          <delta_ts>2016-06-01 15:59:26 -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 Local Build</version>
          <rep_platform>iPhone / iPad</rep_platform>
          <op_sys>iOS 9.0</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar, PlatformOnly</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Daniel Bates">dbates</reporter>
          <assigned_to name="Daniel Bates">dbates</assigned_to>
          <cc>aestes</cc>
    
    <cc>bfulgham</cc>
    
    <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>ddkilzer</cc>
    
    <cc>dino</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>kangil.han</cc>
    
    <cc>sam</cc>
    
    <cc>simon.fraser</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1146151</commentid>
    <comment_count>0</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2015-12-03 17:40:42 -0800</bug_when>
    <thetext>As we do in Legacy WebKit, in WebKit2 we should suspend active DOM objects when the a page is in the background or the app leaves the foreground.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1146153</commentid>
    <comment_count>1</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2015-12-03 17:46:23 -0800</bug_when>
    <thetext>&lt;rdar://problem/23753931&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1147039</commentid>
    <comment_count>2</comment_count>
      <attachid>266817</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2015-12-07 15:19:31 -0800</bug_when>
    <thetext>Created attachment 266817
Patch and manual test

This patch teach WebKit2 to call to the iOS-specific Frame::setTimersPaused() machinery. Ideally we should unify the iOS-specific Frame::setTimersPaused() machinery with the platform-independent Frame::{suspend, resume}ActiveDOMObjectsAndAnimations()-logic and then make use of the latter logic in WebKit2.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1148019</commentid>
    <comment_count>3</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2015-12-09 18:34:14 -0800</bug_when>
    <thetext>After talking with Brent Fulgham and Sam Weinig today (12/09) it seems sufficient to suspend device motion and device orientation updates for now. In the future we may want to consider being more aggressive and suspending and resuming DOM timers when a page is hidden and made visible, respectively.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1148020</commentid>
    <comment_count>4</comment_count>
      <attachid>267060</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2015-12-09 18:37:27 -0800</bug_when>
    <thetext>Created attachment 267060
Patch and manual test</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1148024</commentid>
    <comment_count>5</comment_count>
      <attachid>267060</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2015-12-09 18:43:19 -0800</bug_when>
    <thetext>Comment on attachment 267060
Patch and manual test

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

&gt; Source/WebCore/page/Page.cpp:1311
&gt; +    syslog(LOG_WARNING, &quot;## Page::setIsVisibleInternal; isVisible: %d&quot;, isVisible);

I don&apos;t think you want to commit that.

&gt; Source/WebCore/page/Page.h:398
&gt; +    void suspendDeviceMotionAndOrientationUpdates();
&gt; +    void resumeDeviceMotionAndOrientationUpdates();

I don&apos;t see anyone calling these.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1148025</commentid>
    <comment_count>6</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2015-12-09 18:47:36 -0800</bug_when>
    <thetext>(In reply to comment #5)
&gt; Comment on attachment 267060 [details]
&gt; Patch and manual test
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=267060&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/page/Page.cpp:1311
&gt; &gt; +    syslog(LOG_WARNING, &quot;## Page::setIsVisibleInternal; isVisible: %d&quot;, isVisible);
&gt; 
&gt; I don&apos;t think you want to commit that.
&gt; 

Will remove before landing.

&gt; &gt; Source/WebCore/page/Page.h:398
&gt; &gt; +    void suspendDeviceMotionAndOrientationUpdates();
&gt; &gt; +    void resumeDeviceMotionAndOrientationUpdates();
&gt; 
&gt; I don&apos;t see anyone calling these.

These are called by Page::setIsVisibleInternal().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1148030</commentid>
    <comment_count>7</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2015-12-09 18:53:34 -0800</bug_when>
    <thetext>Committed r193885: &lt;http://trac.webkit.org/changeset/193885&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>266817</attachid>
            <date>2015-12-07 15:19:31 -0800</date>
            <delta_ts>2015-12-09 18:37:24 -0800</delta_ts>
            <desc>Patch and manual test</desc>
            <filename>UseTimersPaused_120715.patch</filename>
            <type>text/plain</type>
            <size>10893</size>
            <attacher name="Daniel Bates">dbates</attacher>
            
              <data encoding="base64">RnJvbSBkZWU3ZDE3N2JmNGI1MTFjNjkzZmNkNDFlMTcwOWIyN2I4NDY2YWIxIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBEYW5pZWwgQmF0ZXMgPGRhYmF0ZXNAYXBwbGUuY29tPgpEYXRl
OiBNb24sIDcgRGVjIDIwMTUgMDk6Mzg6NDQgLTA4MDAKU3ViamVjdDogW1BBVENIXSBbaU9TXVtX
SzJdIFN1c3BlbmQvcmVzdW1lIGFjdGl2ZSBET00gb2JqZWN0cyB3aGVuIHByb2Nlc3MgaXMKIHRo
cm90dGxlZCBvciB3aGVuIGFwcCBsZWF2ZXMgdGhlIGZvcmVncm91bmQKIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTE4NDAgPHJkYXI6Ly9wcm9ibGVtLzIyNDA0Mjc2
PgoKUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCgouOgoKQWRkZWQgYSBtYW51YWwgdGVzdCB0
aGF0IGNhbiBiZSB1c2VkIHRvIHZlcmlmeSB0aGF0IHdlIHN1c3BlbmQgZGlzcGF0Y2hpbmcgZGV2
aWNlIG9yaWVudGF0aW9uIGFuZApkZXZpY2UgbW90aW9uIGV2ZW50cyB3aGVuIHRoZSBwYWdlIGlz
IGhpZGRlbi4KCiogTWFudWFsVGVzdHMvaW9zL3N1c3BlbmQtb3JpZW50YXRpb24tYW5kLW1vdGlv
bi1ldmVudHMtd2hlbi1wYWdlLWJlY29tZXMtaGlkZGVuLmh0bWw6IEFkZGVkLgoKU291cmNlL1dl
YktpdDI6CgpVbmxpa2UgaW4gTGVnYWN5IFdlYktpdCBmb3IgaU9TLCBpbiBXZWJLaXQgd2UgZG8g
bm90IHN1c3BlbmQgYWN0aXZlIERPTSBvYmplY3RzIHdoZW4Kc3dpdGNoaW5nIHRhYnMgb3IgdGhl
IGFwcCBsZWF2ZXMgdGhlIGZvcmVncm91bmQuIFdlIHNob3VsZCBzdXNwZW5kIHN1Y2ggb2JqZWN0
cyB3aGVuCnRoZSBwYWdlIGlzIG5vdCB2aXNpYmxlLCBpbmNsdWRpbmcgd2hlbiB0aGUgYXBwIGxl
YXZlcyB0aGUgZm9yZWdyb3VuZC4KCiogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaDoKKiBX
ZWJQcm9jZXNzL1dlYlBhZ2UvaW9zL1dlYlBhZ2VJT1MubW06CihXZWJLaXQ6OldlYlBhZ2U6OnNl
dFRpbWVyc1BhdXNlZCk6IEFkZGVkOyB0dXJucyBhcm91bmQgYW5kIGNhbGxzIEZyYW1lOjpzZXRU
aW1lcnNQYXVzZWQoKQpvbiB0aGUgbWFpbiBmcmFtZS4gTm90ZSB0aGF0IEZyYW1lOjpzZXRUaW1l
cnNQYXVzZWQoKSB3aWxsIGJlIHJlY3Vyc2l2ZWx5IGNhbGxlZCBvbiBlYWNoCmRlc2NlbmRlbnQg
ZnJhbWUgb2YgdGhlIG1haW4gZnJhbWUuCihXZWJLaXQ6OldlYlBhZ2U6OmFwcGxpY2F0aW9uV2ls
bFJlc2lnbkFjdGl2ZSk6IENhbGwgV2ViUGFnZTo6c2V0VGltZXJzUGF1c2VkKHRydWUpIHRvIHN1
c3BlbmQKYWxsIGFuaW1hdGlvbnMsIGxheW91dCwgcXVldWVkIEphdmFTY3JpcHQgc2NyaXB0cywg
YWN0aXZlIERPTSBvYmplY3RzIGFuZCBvdGhlciBwZW5kaW5nIHRhc2tzLgooV2ViS2l0OjpXZWJQ
YWdlOjphcHBsaWNhdGlvbkRpZEJlY29tZUFjdGl2ZSk6IENhbGwgV2ViUGFnZTo6c2V0VGltZXJz
UGF1c2VkKGZhbHNlKSB0byByZXN1bWUKZnJvbSBzdXNwZW5zaW9uLgoqIFdlYlByb2Nlc3MvV2Vi
UHJvY2Vzcy5jcHA6CihXZWJLaXQ6OldlYlByb2Nlc3M6OmFjdHVhbFByZXBhcmVUb1N1c3BlbmQp
OiBDYWxsIFdlYlByb2Nlc3M6OnNldEFsbFBhZ2VzUGF1c2VkKHRydWUpLgooV2ViS2l0OjpXZWJQ
cm9jZXNzOjpjYW5jZWxQcmVwYXJlVG9TdXNwZW5kKTogQ2FsbCBXZWJQcm9jZXNzOjpzZXRBbGxQ
YWdlc1BhdXNlZChmYWxzZSkuCihXZWJLaXQ6OldlYlByb2Nlc3M6OnNldEFsbFBhZ2VzUGF1c2Vk
KTogQWRkZWQ7IGNhbGxzIFdlYlBhZ2U6OnNldFRpbWVyc1BhdXNlZCh0cnVlKSBvbiBlYWNoIFdl
YlBhZ2Ugb2JqZWN0LgooV2ViS2l0OjpXZWJQcm9jZXNzOjpwcm9jZXNzRGlkUmVzdW1lKTogQ2Fs
bCBXZWJQcm9jZXNzOjpzZXRBbGxQYWdlc1BhdXNlZChmYWxzZSkuCiogV2ViUHJvY2Vzcy9XZWJQ
cm9jZXNzLmg6Ci0tLQogQ2hhbmdlTG9nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgfCAxMyArKysrKysKIC4uLmFuZC1tb3Rpb24tZXZlbnRzLXdoZW4tcGFnZS1iZWNv
bWVzLWhpZGRlbi5odG1sIHwgNTIgKysrKysrKysrKysrKysrKysrKysrKwogU291cmNlL1dlYktp
dDIvQ2hhbmdlTG9nICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAyOCArKysrKysrKysrKysK
IFNvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmggICAgICAgIHwgIDQg
KysKIC4uLi9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9pb3MvV2ViUGFnZUlPUy5tbSAgIHwg
IDcgKysrCiBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwICAgICAgICAg
ICB8IDExICsrKysrCiBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuaCAgICAg
ICAgICAgICB8ICAxICsKIDcgZmlsZXMgY2hhbmdlZCwgMTE2IGluc2VydGlvbnMoKykKIGNyZWF0
ZSBtb2RlIDEwMDY0NCBNYW51YWxUZXN0cy9pb3Mvc3VzcGVuZC1vcmllbnRhdGlvbi1hbmQtbW90
aW9uLWV2ZW50cy13aGVuLXBhZ2UtYmVjb21lcy1oaWRkZW4uaHRtbAoKZGlmZiAtLWdpdCBhL0No
YW5nZUxvZyBiL0NoYW5nZUxvZwppbmRleCA0OWVkMzVhLi4yYmUyOGE2IDEwMDY0NAotLS0gYS9D
aGFuZ2VMb2cKKysrIGIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTUtMTItMDcgIERh
bmllbCBCYXRlcyAgPGRhYmF0ZXNAYXBwbGUuY29tPgorCisgICAgICAgIFtpT1NdW1dLMl0gU3Vz
cGVuZC9yZXN1bWUgYWN0aXZlIERPTSBvYmplY3RzIHdoZW4gcHJvY2VzcyBpcyB0aHJvdHRsZWQg
b3Igd2hlbiBhcHAgbGVhdmVzIHRoZSBmb3JlZ3JvdW5kCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTE4NDAKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVt
LzIyNDA0Mjc2PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIEFkZGVkIGEgbWFudWFsIHRlc3QgdGhhdCBjYW4gYmUgdXNlZCB0byB2ZXJpZnkgdGhhdCB3
ZSBzdXNwZW5kIGRpc3BhdGNoaW5nIGRldmljZSBvcmllbnRhdGlvbiBhbmQKKyAgICAgICAgZGV2
aWNlIG1vdGlvbiBldmVudHMgd2hlbiB0aGUgcGFnZSBpcyBoaWRkZW4uCisKKyAgICAgICAgKiBN
YW51YWxUZXN0cy9pb3Mvc3VzcGVuZC1vcmllbnRhdGlvbi1hbmQtbW90aW9uLWV2ZW50cy13aGVu
LXBhZ2UtYmVjb21lcy1oaWRkZW4uaHRtbDogQWRkZWQuCisKIDIwMTUtMTItMDEgIFl1c3VrZSBT
dXp1a2kgIDx1dGF0YW5lLnRlYUBnbWFpbC5jb20+CiAKICAgICAgICAgW0VTNl0gSW1wbGVtZW50
IExMSW50L0Jhc2VsaW5lIFN1cHBvcnQgZm9yIEVTNiBHZW5lcmF0b3JzIGFuZCBlbmFibGUgdGhp
cyBmZWF0dXJlCmRpZmYgLS1naXQgYS9NYW51YWxUZXN0cy9pb3Mvc3VzcGVuZC1vcmllbnRhdGlv
bi1hbmQtbW90aW9uLWV2ZW50cy13aGVuLXBhZ2UtYmVjb21lcy1oaWRkZW4uaHRtbCBiL01hbnVh
bFRlc3RzL2lvcy9zdXNwZW5kLW9yaWVudGF0aW9uLWFuZC1tb3Rpb24tZXZlbnRzLXdoZW4tcGFn
ZS1iZWNvbWVzLWhpZGRlbi5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAu
Ljg3ZDk5YTYKLS0tIC9kZXYvbnVsbAorKysgYi9NYW51YWxUZXN0cy9pb3Mvc3VzcGVuZC1vcmll
bnRhdGlvbi1hbmQtbW90aW9uLWV2ZW50cy13aGVuLXBhZ2UtYmVjb21lcy1oaWRkZW4uaHRtbApA
QCAtMCwwICsxLDUyIEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorPGhlYWQ+Cis8c2NyaXB0
PgordmFyIGV2ZW50RnJlcXVlbmN5VGFibGU7CisKK2Z1bmN0aW9uIHJlc2V0VGVzdCgpCit7Cisg
ICAgZXZlbnRGcmVxdWVuY3lUYWJsZSA9IHt9OworfQorCitmdW5jdGlvbiBsb2cobWVzc2FnZSkK
K3sKKyAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgiY29uc29sZSIpLmFwcGVuZENoaWxkKGRv
Y3VtZW50LmNyZWF0ZVRleHROb2RlKG1lc3NhZ2UgKyAiXG4iKSk7Cit9CisKK2Z1bmN0aW9uIGNo
ZWNrRXZlbnQoZXZlbnQpCit7CisgICAgaWYgKGRvY3VtZW50LnZpc2liaWxpdHlTdGF0ZSA9PT0g
InZpc2libGUiKQorICAgICAgICByZXR1cm47CisgICAgdmFyIHR5cGUgPSBldmVudC50eXBlOwor
ICAgIGlmICghZXZlbnRGcmVxdWVuY3lUYWJsZVt0eXBlXSkKKyAgICAgICAgZXZlbnRGcmVxdWVu
Y3lUYWJsZVt0eXBlXSA9IDA7CisgICAgKytldmVudEZyZXF1ZW5jeVRhYmxlW3R5cGVdOworfQor
CitmdW5jdGlvbiBoYW5kbGVWaXNpYmlsaXR5Q2hhbmdlKCkKK3sKKyAgICBpZiAoZG9jdW1lbnQu
dmlzaWJpbGl0eVN0YXRlID09PSAiaGlkZGVuIikKKyAgICAgICAgcmV0dXJuOworICAgIHZhciBy
ZWNlaXZlZEV2ZW50c01lc3NhZ2VQYXJ0cyA9IFtdOworICAgIGZvciAodmFyIHR5cGUgaW4gZXZl
bnRGcmVxdWVuY3lUYWJsZSkKKyAgICAgICAgcmVjZWl2ZWRFdmVudHNNZXNzYWdlUGFydHMucHVz
aCh0eXBlICsgIiAoXHUwMEQ3ICIgKyBldmVudEZyZXF1ZW5jeVRhYmxlW3R5cGVdICsgIikiKTsK
KyAgICBpZiAocmVjZWl2ZWRFdmVudHNNZXNzYWdlUGFydHMubGVuZ3RoKQorICAgICAgICBsb2co
IkV4cGVjdGVkIHRvIHJlY2VpdmUgbm8gZXZlbnRzIHdoZW4gdGhlIHBhZ2Ugd2FzIGhpZGRlbiwg
YnV0IHJlY2VpdmVkOiAiICsgcmVjZWl2ZWRFdmVudHNNZXNzYWdlUGFydHMuam9pbigiLCAiKSAr
ICIuIik7CisgICAgZWxzZQorICAgICAgICBsb2coIlJlY2VpdmVkIG5vIGV2ZW50cyB3aGVuIHRo
ZSBwYWdlIHdhcyBoaWRkZW4uIik7CisgICAgcmVzZXRUZXN0KCk7Cit9CisKK3Jlc2V0VGVzdCgp
OworCit3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigiZGV2aWNlbW90aW9uIiwgY2hlY2tFdmVudCwg
ZmFsc2UpOword2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImRldmljZW9yaWVudGF0aW9uIiwgY2hl
Y2tFdmVudCwgZmFsc2UpOworZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigidmlzaWJpbGl0eWNo
YW5nZSIsIGhhbmRsZVZpc2liaWxpdHlDaGFuZ2UsIGZhbHNlKTsKKzwvc2NyaXB0PgorPC9oZWFk
PgorPGJvZHk+Cis8cD5UaGlzIHRlc3QgY2FuIGJlIHVzZWQgdG8gdmVyaWZ5IHRoYXQgPGNvZGU+
ZGV2aWNlbW90aW9uPC9jb2RlPiBhbmQgPGNvZGU+ZGV2aWNlb3JpZW50YXRpb248L2NvZGU+IGV2
ZW50cyBhcmUgbm90IGRpc3BhdGNoZWQgd2hlbiB0aGUgcGFnZSBpcyBoaWRkZW4uPC9wPgorPHBy
ZSBpZD0iY29uc29sZSI+PC9wcmU+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0Mi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggZTc4
MmJmOC4uZTMyNTUxOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBi
L1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMxIEBACisyMDE1LTEyLTA3ICBE
YW5pZWwgQmF0ZXMgIDxkYWJhdGVzQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXVtXSzJdIFN1
c3BlbmQvcmVzdW1lIGFjdGl2ZSBET00gb2JqZWN0cyB3aGVuIHByb2Nlc3MgaXMgdGhyb3R0bGVk
IG9yIHdoZW4gYXBwIGxlYXZlcyB0aGUgZm9yZWdyb3VuZAorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTUxODQwCisgICAgICAgIDxyZGFyOi8vcHJvYmxl
bS8yMjQwNDI3Nj4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBVbmxpa2UgaW4gTGVnYWN5IFdlYktpdCBmb3IgaU9TLCBpbiBXZWJLaXQgd2UgZG8gbm90
IHN1c3BlbmQgYWN0aXZlIERPTSBvYmplY3RzIHdoZW4KKyAgICAgICAgc3dpdGNoaW5nIHRhYnMg
b3IgdGhlIGFwcCBsZWF2ZXMgdGhlIGZvcmVncm91bmQuIFdlIHNob3VsZCBzdXNwZW5kIHN1Y2gg
b2JqZWN0cyB3aGVuCisgICAgICAgIHRoZSBwYWdlIGlzIG5vdCB2aXNpYmxlLCBpbmNsdWRpbmcg
d2hlbiB0aGUgYXBwIGxlYXZlcyB0aGUgZm9yZWdyb3VuZC4KKworICAgICAgICAqIFdlYlByb2Nl
c3MvV2ViUGFnZS9XZWJQYWdlLmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL2lvcy9X
ZWJQYWdlSU9TLm1tOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpzZXRUaW1lcnNQYXVzZWQp
OiBBZGRlZDsgdHVybnMgYXJvdW5kIGFuZCBjYWxscyBGcmFtZTo6c2V0VGltZXJzUGF1c2VkKCkK
KyAgICAgICAgb24gdGhlIG1haW4gZnJhbWUuIE5vdGUgdGhhdCBGcmFtZTo6c2V0VGltZXJzUGF1
c2VkKCkgd2lsbCBiZSByZWN1cnNpdmVseSBjYWxsZWQgb24gZWFjaAorICAgICAgICBkZXNjZW5k
ZW50IGZyYW1lIG9mIHRoZSBtYWluIGZyYW1lLgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjph
cHBsaWNhdGlvbldpbGxSZXNpZ25BY3RpdmUpOiBDYWxsIFdlYlBhZ2U6OnNldFRpbWVyc1BhdXNl
ZCh0cnVlKSB0byBzdXNwZW5kCisgICAgICAgIGFsbCBhbmltYXRpb25zLCBsYXlvdXQsIHF1ZXVl
ZCBKYXZhU2NyaXB0IHNjcmlwdHMsIGFjdGl2ZSBET00gb2JqZWN0cyBhbmQgb3RoZXIgcGVuZGlu
ZyB0YXNrcy4KKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6YXBwbGljYXRpb25EaWRCZWNvbWVB
Y3RpdmUpOiBDYWxsIFdlYlBhZ2U6OnNldFRpbWVyc1BhdXNlZChmYWxzZSkgdG8gcmVzdW1lCisg
ICAgICAgIGZyb20gc3VzcGVuc2lvbi4KKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlByb2Nlc3Mu
Y3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNzOjphY3R1YWxQcmVwYXJlVG9TdXNwZW5k
KTogQ2FsbCBXZWJQcm9jZXNzOjpzZXRBbGxQYWdlc1BhdXNlZCh0cnVlKS4KKyAgICAgICAgKFdl
YktpdDo6V2ViUHJvY2Vzczo6Y2FuY2VsUHJlcGFyZVRvU3VzcGVuZCk6IENhbGwgV2ViUHJvY2Vz
czo6c2V0QWxsUGFnZXNQYXVzZWQoZmFsc2UpLgorICAgICAgICAoV2ViS2l0OjpXZWJQcm9jZXNz
OjpzZXRBbGxQYWdlc1BhdXNlZCk6IEFkZGVkOyBjYWxscyBXZWJQYWdlOjpzZXRUaW1lcnNQYXVz
ZWQodHJ1ZSkgb24gZWFjaCBXZWJQYWdlIG9iamVjdC4KKyAgICAgICAgKFdlYktpdDo6V2ViUHJv
Y2Vzczo6cHJvY2Vzc0RpZFJlc3VtZSk6IENhbGwgV2ViUHJvY2Vzczo6c2V0QWxsUGFnZXNQYXVz
ZWQoZmFsc2UpLgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUHJvY2Vzcy5oOgorCiAyMDE1LTEy
LTA0ICBEYW5pZWwgQmF0ZXMgIDxkYWJhdGVzQGFwcGxlLmNvbT4KIAogICAgICAgICBbaU9TXSBC
YWlsIG91dCBpZiB0aGUgcGFnZSBwcm94eSBpcyBpbnZhbGlkIHdoZW4gV2ViUGFnZVByb3h5Ojpw
cm9jZXNzV2lsbEJlY29tZXtGb3JlZ3JvdW5kLCBTdXNwZW5kZWR9KCkgYXJlIGNhbGxlZApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaCBiL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmgKaW5kZXggNjY2NTEzMS4u
NzAwMTg3NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dl
YlBhZ2UuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5o
CkBAIC05MTgsNiArOTE4LDEwIEBAIHB1YmxpYzoKIAogICAgIHZvaWQgZGlkUmVzdG9yZVNjcm9s
bFBvc2l0aW9uKCk7CiAKKyNpZiBQTEFURk9STShJT1MpCisgICAgdm9pZCBzZXRUaW1lcnNQYXVz
ZWQoYm9vbCk7CisjZW5kaWYKKwogcHJpdmF0ZToKICAgICBXZWJQYWdlKHVpbnQ2NF90IHBhZ2VJ
RCwgY29uc3QgV2ViUGFnZUNyZWF0aW9uUGFyYW1ldGVycyYpOwogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvaW9zL1dlYlBhZ2VJT1MubW0gYi9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvaW9zL1dlYlBhZ2VJT1MubW0KaW5kZXggNjdkNjI0
NS4uZTYxMzc4OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdl
L2lvcy9XZWJQYWdlSU9TLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFn
ZS9pb3MvV2ViUGFnZUlPUy5tbQpAQCAtMjgyMSw4ICsyODIxLDE0IEBAIHZvaWQgV2ViUGFnZTo6
dXBkYXRlVmlld3BvcnRTaXplRm9yQ1NTVmlld3BvcnRVbml0cygpCiAgICAgZnJhbWVWaWV3LnNl
dFZpZXdwb3J0U2l6ZUZvckNTU1ZpZXdwb3J0VW5pdHMocm91bmRlZEludFNpemUobGFyZ2VzdFVu
b2JzY3VyZWRSZWN0KSk7CiB9CiAKK3ZvaWQgV2ViUGFnZTo6c2V0VGltZXJzUGF1c2VkKGJvb2wg
cGF1c2VkKQoreworICAgIG1fcGFnZS0+bWFpbkZyYW1lKCkuc2V0VGltZXJzUGF1c2VkKHBhdXNl
ZCk7Cit9CisKIHZvaWQgV2ViUGFnZTo6YXBwbGljYXRpb25XaWxsUmVzaWduQWN0aXZlKCkKIHsK
KyAgICBzZXRUaW1lcnNQYXVzZWQodHJ1ZSk7CiAgICAgW1tOU05vdGlmaWNhdGlvbkNlbnRlciBk
ZWZhdWx0Q2VudGVyXSBwb3N0Tm90aWZpY2F0aW9uTmFtZTpXZWJVSUFwcGxpY2F0aW9uV2lsbFJl
c2lnbkFjdGl2ZU5vdGlmaWNhdGlvbiBvYmplY3Q6bmlsXTsKIH0KIApAQCAtMjg1NSw2ICsyODYx
LDcgQEAgdm9pZCBXZWJQYWdlOjphcHBsaWNhdGlvbldpbGxFbnRlckZvcmVncm91bmQoYm9vbCBp
c1N1c3BlbmRlZFVuZGVyTG9jaykKIAogdm9pZCBXZWJQYWdlOjphcHBsaWNhdGlvbkRpZEJlY29t
ZUFjdGl2ZSgpCiB7CisgICAgc2V0VGltZXJzUGF1c2VkKGZhbHNlKTsKICAgICBbW05TTm90aWZp
Y2F0aW9uQ2VudGVyIGRlZmF1bHRDZW50ZXJdIHBvc3ROb3RpZmljYXRpb25OYW1lOldlYlVJQXBw
bGljYXRpb25EaWRCZWNvbWVBY3RpdmVOb3RpZmljYXRpb24gb2JqZWN0Om5pbF07CiB9CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuY3BwCmluZGV4IDFiZGNmOGQuLmEyZDM3
NmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUHJvY2Vzcy5jcHAK
KysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQcm9jZXNzLmNwcApAQCAtMTE2Nyw2
ICsxMTY3LDcgQEAgdm9pZCBXZWJQcm9jZXNzOjphY3R1YWxQcmVwYXJlVG9TdXNwZW5kKFNob3Vs
ZEFja25vd2xlZGdlV2hlblJlYWR5VG9TdXNwZW5kIHNob3UKIHsKICAgICBNZW1vcnlQcmVzc3Vy
ZUhhbmRsZXI6OnNpbmdsZXRvbigpLnJlbGVhc2VNZW1vcnkoQ3JpdGljYWw6OlllcywgU3luY2hy
b25vdXM6Olllcyk7CiAgICAgc2V0QWxsTGF5ZXJUcmVlU3RhdGVzRnJvemVuKHRydWUpOworICAg
IHNldEFsbFBhZ2VzUGF1c2VkKHRydWUpOwogCiAgICAgaWYgKG1hcmtBbGxMYXllcnNWb2xhdGls
ZUlmUG9zc2libGUoKSkgewogICAgICAgICBpZiAoc2hvdWxkQWNrbm93bGVkZ2VXaGVuUmVhZHlU
b1N1c3BlbmQgPT0gU2hvdWxkQWNrbm93bGVkZ2VXaGVuUmVhZHlUb1N1c3BlbmQ6OlllcykKQEAg
LTEyMDAsNiArMTIwMSw3IEBAIHZvaWQgV2ViUHJvY2Vzczo6cHJlcGFyZVRvU3VzcGVuZCgpCiB2
b2lkIFdlYlByb2Nlc3M6OmNhbmNlbFByZXBhcmVUb1N1c3BlbmQoKQogewogICAgIHNldEFsbExh
eWVyVHJlZVN0YXRlc0Zyb3plbihmYWxzZSk7CisgICAgc2V0QWxsUGFnZXNQYXVzZWQoZmFsc2Up
OwogCiAgICAgLy8gSWYgd2UndmUgYWxyZWFkeSBmaW5pc2hlZCBjbGVhbmluZyB1cCBhbmQgc2Vu
dCBQcm9jZXNzUmVhZHlUb1N1c3BlbmQsIHdlCiAgICAgLy8gc2hvdWxkbid0IHNlbmQgRGlkQ2Fu
Y2VsUHJvY2Vzc1N1c3BlbnNpb247IHRoZSBVSSBwcm9jZXNzIHN0cmljdGx5IGV4cGVjdHMgb25l
IG9yIHRoZSBvdGhlci4KQEAgLTEyMTAsNiArMTIxMiwxNCBAQCB2b2lkIFdlYlByb2Nlc3M6OmNh
bmNlbFByZXBhcmVUb1N1c3BlbmQoKQogICAgIHBhcmVudFByb2Nlc3NDb25uZWN0aW9uKCktPnNl
bmQoTWVzc2FnZXM6OldlYlByb2Nlc3NQcm94eTo6RGlkQ2FuY2VsUHJvY2Vzc1N1c3BlbnNpb24o
KSwgMCk7CiB9CiAKK3ZvaWQgV2ViUHJvY2Vzczo6c2V0QWxsUGFnZXNQYXVzZWQoYm9vbCBwYXVz
ZWQpCit7CisjaWYgUExBVEZPUk0oSU9TKQorICAgIGZvciAoYXV0byYgcGFnZSA6IG1fcGFnZU1h
cC52YWx1ZXMoKSkKKyAgICAgICAgcGFnZS0+c2V0VGltZXJQYXVzZWQocGF1c2VkKTsKKyNlbmRp
ZgorfQorCiBib29sIFdlYlByb2Nlc3M6Om1hcmtBbGxMYXllcnNWb2xhdGlsZUlmUG9zc2libGUo
KQogewogICAgIGJvb2wgc3VjY2Vzc2Z1bGx5TWFya2VkQWxsTGF5ZXJzVm9sYXRpbGUgPSB0cnVl
OwpAQCAtMTIzOCw2ICsxMjQ4LDcgQEAgdm9pZCBXZWJQcm9jZXNzOjpwcm9jZXNzRGlkUmVzdW1l
KCkKIHsKICAgICBtX3Byb2Nlc3NTdXNwZW5zaW9uQ2xlYW51cFRpbWVyLnN0b3AoKTsKICAgICBz
ZXRBbGxMYXllclRyZWVTdGF0ZXNGcm96ZW4oZmFsc2UpOworICAgIHNldEFsbFBhZ2VzUGF1c2Vk
KGZhbHNlKTsKIH0KIAogdm9pZCBXZWJQcm9jZXNzOjpwYWdlRGlkRW50ZXJXaW5kb3codWludDY0
X3QgcGFnZUlEKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQcm9j
ZXNzLmggYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuaAppbmRleCA3N2Ji
MzBlLi42ZjRhOGM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBy
b2Nlc3MuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlByb2Nlc3MuaApAQCAt
MTgwLDYgKzE4MCw3IEBAIHB1YmxpYzoKICAgICB2b2lkIGNhbmNlbFByZXBhcmVUb1N1c3BlbmQo
KTsKICAgICBib29sIG1hcmtBbGxMYXllcnNWb2xhdGlsZUlmUG9zc2libGUoKTsKICAgICB2b2lk
IHNldEFsbExheWVyVHJlZVN0YXRlc0Zyb3plbihib29sKTsKKyAgICB2b2lkIHNldEFsbFBhZ2Vz
UGF1c2VkKGJvb2wpOwogICAgIHZvaWQgcHJvY2Vzc1N1c3BlbnNpb25DbGVhbnVwVGltZXJGaXJl
ZCgpOwogICAgIHZvaWQgcHJvY2Vzc0RpZFJlc3VtZSgpOwogCi0tIAoyLjUuNCAoQXBwbGUgR2l0
LTYxKQoK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>267060</attachid>
            <date>2015-12-09 18:37:27 -0800</date>
            <delta_ts>2015-12-09 18:44:45 -0800</delta_ts>
            <desc>Patch and manual test</desc>
            <filename>bug-151840-20151209183656.patch</filename>
            <type>text/plain</type>
            <size>11616</size>
            <attacher name="Daniel Bates">dbates</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTkzNjM0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2Y2NmE4YjAzNzQ1OGQx
ZDQ2N2MxOTJiMjgyMWIwNmY3YTMwZDIzMS4uYzRkZmZhNGNkODc0NTY0MjhkMGRmZmJlNGY4Y2E3
Yzc2N2RiZWZjYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDE1LTEyLTA5ICBEYW5p
ZWwgQmF0ZXMgIDxkYWJhdGVzQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBTdXNwZW5kIGFu
ZCByZXN1bWUgZGV2aWNlIG1vdGlvbiBhbmQgZGV2aWNlIG9yaWVudGF0aW9uIHVwZGF0ZXMgd2hl
biBwYWdlIGlzIGhpZGRlbiBhbmQgdmlzaWJsZSwgcmVzcGVjdGl2ZWx5CisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTE4NDAKKyAgICAgICAgPHJkYXI6
Ly9wcm9ibGVtLzIzNzUzOTMxPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgICogZG9tL0RvY3VtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRvY3Vt
ZW50OjpzdXNwZW5kRGV2aWNlTW90aW9uQW5kT3JpZW50YXRpb25VcGRhdGVzKTogQWRkZWQuCisg
ICAgICAgIChXZWJDb3JlOjpEb2N1bWVudDo6cmVzdW1lRGV2aWNlTW90aW9uQW5kT3JpZW50YXRp
b25VcGRhdGVzKTogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudDo6cGxhdGZvcm1T
dXNwZW5kT3JTdG9wQWN0aXZlRE9NT2JqZWN0cyk6IE1vdmVkIGxvZ2ljIHRvIHN1c3BlbmQgZGV2
aWNlIG1vdGlvbiBhbmQKKyAgICAgICAgb3JpZW50YXRpb24gdXBkYXRlcyBmcm9tIGhlcmUgdG8g
RG9jdW1lbnQ6OnN1c3BlbmREZXZpY2VNb3Rpb25BbmRPcmllbnRhdGlvblVwZGF0ZXMoKS4KKyAg
ICAgICAgKFdlYkNvcmU6OkRvY3VtZW50OjpzdXNwZW5kQWN0aXZlRE9NT2JqZWN0cyk6IE1vZGlm
aWVkIHRvIGNhbGwgRG9jdW1lbnQ6OnN1c3BlbmREZXZpY2VNb3Rpb25BbmRPcmllbnRhdGlvblVw
ZGF0ZXMoKS4KKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50OjpyZXN1bWVBY3RpdmVET01PYmpl
Y3RzKTogTW9kaWZpZWQgdG8gY2FsbCBEb2N1bWVudDo6cmVzdW1lRGV2aWNlTW90aW9uQW5kT3Jp
ZW50YXRpb25VcGRhdGVzKCkuCisgICAgICAgICogZG9tL0RvY3VtZW50Lmg6CisgICAgICAgICog
cGFnZS9QYWdlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBhZ2U6OnNldElzVmlzaWJsZUludGVy
bmFsKTogU3VzcGVuZCBkZXZpY2UgbW90aW9uIGFuZCBvcmllbnRhdGlvbiB1cGRhdGVzIHdoZW4g
dGhlIHBhZ2UgaXMgaGlkZGVuIGFuZAorICAgICAgICByZXN1bWUgdXBkYXRlcyB3aGVuIHRoZSBw
YWdlIGlzIHZpc2libGUuCisgICAgICAgIChXZWJDb3JlOjpQYWdlOjpzdXNwZW5kRGV2aWNlTW90
aW9uQW5kT3JpZW50YXRpb25VcGRhdGVzKTogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpQYWdl
OjpyZXN1bWVEZXZpY2VNb3Rpb25BbmRPcmllbnRhdGlvblVwZGF0ZXMpOiBBZGRlZC4KKyAgICAg
ICAgKiBwYWdlL1BhZ2UuaDoKKwogMjAxNS0xMi0wOCAgRGFuaWVsIEJhdGVzICA8ZGFiYXRlc0Bh
cHBsZS5jb20+CiAKICAgICAgICAgVW5pZnkgaU9TIEZyYW1lOjpzZXRUaW1lcnNQYXVzZWQoKSBs
b2dpYyBhbmQgRnJhbWU6OntzdXNwZW5kLCByZXN1bWV9QWN0aXZlRE9NT2JqZWN0c0FuZEFuaW1h
dGlvbnMoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKaW5kZXggNDI4YWQxMWRmZTg5N2UyZTIwNGZl
MWJmMTg0ZDQ2NDhiYjdkYjEwMS4uMWRlNGZmM2I5ZDlkN2ExODBjMDk0NmNlNzQzZDVmMjQxZTU5
ZDhmNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnQuY3BwCkBAIC0yMzQ0LDE2ICsyMzQ0LDM1IEBAIHZv
aWQgRG9jdW1lbnQ6OnJlbW92ZUFsbEV2ZW50TGlzdGVuZXJzKCkKICAgICAgICAgbm9kZS0+cmVt
b3ZlQWxsRXZlbnRMaXN0ZW5lcnMoKTsKIH0KIAotdm9pZCBEb2N1bWVudDo6cGxhdGZvcm1TdXNw
ZW5kT3JTdG9wQWN0aXZlRE9NT2JqZWN0cygpCit2b2lkIERvY3VtZW50OjpzdXNwZW5kRGV2aWNl
TW90aW9uQW5kT3JpZW50YXRpb25VcGRhdGVzKCkKIHsKLSNpZiBQTEFURk9STShJT1MpCi0jaWYg
RU5BQkxFKERFVklDRV9PUklFTlRBVElPTikKKyAgICBpZiAobV9hcmVEZXZpY2VNb3Rpb25BbmRP
cmllbnRhdGlvblVwZGF0ZXNTdXNwZW5kZWQpCisgICAgICAgIHJldHVybjsKKyAgICBtX2FyZURl
dmljZU1vdGlvbkFuZE9yaWVudGF0aW9uVXBkYXRlc1N1c3BlbmRlZCA9IHRydWU7CisjaWYgRU5B
QkxFKERFVklDRV9PUklFTlRBVElPTikgJiYgUExBVEZPUk0oSU9TKQogICAgIGlmIChtX2Rldmlj
ZU1vdGlvbkNvbnRyb2xsZXIpCiAgICAgICAgIG1fZGV2aWNlTW90aW9uQ29udHJvbGxlci0+c3Vz
cGVuZFVwZGF0ZXMoKTsKICAgICBpZiAobV9kZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXIpCiAg
ICAgICAgIG1fZGV2aWNlT3JpZW50YXRpb25Db250cm9sbGVyLT5zdXNwZW5kVXBkYXRlcygpOwog
I2VuZGlmCit9CisKK3ZvaWQgRG9jdW1lbnQ6OnJlc3VtZURldmljZU1vdGlvbkFuZE9yaWVudGF0
aW9uVXBkYXRlcygpCit7CisgICAgaWYgKCFtX2FyZURldmljZU1vdGlvbkFuZE9yaWVudGF0aW9u
VXBkYXRlc1N1c3BlbmRlZCkKKyAgICAgICAgcmV0dXJuOworICAgIG1fYXJlRGV2aWNlTW90aW9u
QW5kT3JpZW50YXRpb25VcGRhdGVzU3VzcGVuZGVkID0gZmFsc2U7CisjaWYgRU5BQkxFKERFVklD
RV9PUklFTlRBVElPTikgJiYgUExBVEZPUk0oSU9TKQorICAgIGlmIChtX2RldmljZU1vdGlvbkNv
bnRyb2xsZXIpCisgICAgICAgIG1fZGV2aWNlTW90aW9uQ29udHJvbGxlci0+cmVzdW1lVXBkYXRl
cygpOworICAgIGlmIChtX2RldmljZU9yaWVudGF0aW9uQ29udHJvbGxlcikKKyAgICAgICAgbV9k
ZXZpY2VPcmllbnRhdGlvbkNvbnRyb2xsZXItPnJlc3VtZVVwZGF0ZXMoKTsKKyNlbmRpZgorfQog
Cit2b2lkIERvY3VtZW50OjpwbGF0Zm9ybVN1c3BlbmRPclN0b3BBY3RpdmVET01PYmplY3RzKCkK
K3sKKyNpZiBQTEFURk9STShJT1MpCiAgICAgaWYgKFdlYlRocmVhZENvdW50T2ZPYnNlcnZlZENv
bnRlbnRNb2RpZmllcnMoKSA+IDApIHsKICAgICAgICAgRnJhbWUqIGZyYW1lID0gdGhpcy0+ZnJh
bWUoKTsKICAgICAgICAgaWYgKFBhZ2UqIHBhZ2UgPSBmcmFtZSA/IGZyYW1lLT5wYWdlKCkgOiBu
dWxscHRyKQpAQCAtMjM2NSwxOSArMjM4NCwxNCBAQCB2b2lkIERvY3VtZW50OjpwbGF0Zm9ybVN1
c3BlbmRPclN0b3BBY3RpdmVET01PYmplY3RzKCkKIHZvaWQgRG9jdW1lbnQ6OnN1c3BlbmRBY3Rp
dmVET01PYmplY3RzKEFjdGl2ZURPTU9iamVjdDo6UmVhc29uRm9yU3VzcGVuc2lvbiB3aHkpCiB7
CiAgICAgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDo6c3VzcGVuZEFjdGl2ZURPTU9iamVjdHMod2h5
KTsKKyAgICBzdXNwZW5kRGV2aWNlTW90aW9uQW5kT3JpZW50YXRpb25VcGRhdGVzKCk7CiAgICAg
cGxhdGZvcm1TdXNwZW5kT3JTdG9wQWN0aXZlRE9NT2JqZWN0cygpOwogfQogCiB2b2lkIERvY3Vt
ZW50OjpyZXN1bWVBY3RpdmVET01PYmplY3RzKEFjdGl2ZURPTU9iamVjdDo6UmVhc29uRm9yU3Vz
cGVuc2lvbiB3aHkpCiB7CiAgICAgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDo6cmVzdW1lQWN0aXZl
RE9NT2JqZWN0cyh3aHkpOwotCi0jaWYgRU5BQkxFKERFVklDRV9PUklFTlRBVElPTikgJiYgUExB
VEZPUk0oSU9TKQotICAgIGlmIChtX2RldmljZU1vdGlvbkNvbnRyb2xsZXIpCi0gICAgICAgIG1f
ZGV2aWNlTW90aW9uQ29udHJvbGxlci0+cmVzdW1lVXBkYXRlcygpOwotICAgIGlmIChtX2Rldmlj
ZU9yaWVudGF0aW9uQ29udHJvbGxlcikKLSAgICAgICAgbV9kZXZpY2VPcmllbnRhdGlvbkNvbnRy
b2xsZXItPnJlc3VtZVVwZGF0ZXMoKTsKLSNlbmRpZgorICAgIHJlc3VtZURldmljZU1vdGlvbkFu
ZE9yaWVudGF0aW9uVXBkYXRlcygpOwogICAgIC8vIEZJWE1FOiBGb3IgaU9TLCBkbyB3ZSBuZWVk
IHRvIGFkZCBjb250ZW50IGNoYW5nZSBvYnNlcnZlcnMgdGhhdCB3ZXJlIHJlbW92ZWQgaW4gRG9j
dW1lbnQ6OnN1c3BlbmRBY3RpdmVET01PYmplY3RzKCk/CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5oIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmgK
aW5kZXggZDI4NjUwZDU5NDhmNDU2NGJlNDc5NTgwYTliZmIzNjAyNjNiMzg0NS4uOTVlYTFjNzIw
ZGNkZTdkNThmYTg3NTI1NzA3NmNlMDJmYWMxOWEzZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvZG9tL0RvY3VtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50LmgKQEAg
LTYwMyw2ICs2MDMsOSBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHJlc3VtZUFjdGl2ZURP
TU9iamVjdHMoQWN0aXZlRE9NT2JqZWN0OjpSZWFzb25Gb3JTdXNwZW5zaW9uKSBvdmVycmlkZSBm
aW5hbDsKICAgICB2aXJ0dWFsIHZvaWQgc3RvcEFjdGl2ZURPTU9iamVjdHMoKSBvdmVycmlkZSBm
aW5hbDsKIAorICAgIHZvaWQgc3VzcGVuZERldmljZU1vdGlvbkFuZE9yaWVudGF0aW9uVXBkYXRl
cygpOworICAgIHZvaWQgcmVzdW1lRGV2aWNlTW90aW9uQW5kT3JpZW50YXRpb25VcGRhdGVzKCk7
CisKICAgICBSZW5kZXJWaWV3KiByZW5kZXJWaWV3KCkgY29uc3QgeyByZXR1cm4gbV9yZW5kZXJW
aWV3LmdldCgpOyB9CiAKICAgICBib29sIHJlbmRlclRyZWVCZWluZ0Rlc3Ryb3llZCgpIGNvbnN0
IHsgcmV0dXJuIG1fcmVuZGVyVHJlZUJlaW5nRGVzdHJveWVkOyB9CkBAIC0xNzY3LDYgKzE3NzAs
NyBAQCBwcml2YXRlOgogI2lmIEVOQUJMRShNRURJQV9TRVNTSU9OKQogICAgIFJlZlB0cjxNZWRp
YVNlc3Npb24+IG1fZGVmYXVsdE1lZGlhU2Vzc2lvbjsKICNlbmRpZgorICAgIGJvb2wgbV9hcmVE
ZXZpY2VNb3Rpb25BbmRPcmllbnRhdGlvblVwZGF0ZXNTdXNwZW5kZWQgeyBmYWxzZSB9OwogfTsK
IAogaW5saW5lIHZvaWQgRG9jdW1lbnQ6Om5vdGlmeVJlbW92ZVBlbmRpbmdTaGVldElmTmVlZGVk
KCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGFnZS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9wYWdlL1BhZ2UuY3BwCmluZGV4IDMwZTU4NWQ0MzA3NWJiMDYwZTZiNDBhZjQ4Yzk0OWEw
NTY4NzIxZjkuLmFmZTczYjk3NmJiNDhkOTFkNWUwNzEzNTJkOTRjYTY2YmE3ZWIyMDkgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGFnZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
cGFnZS9QYWdlLmNwcApAQCAtMTMwOCwxMCArMTMwOCwxNCBAQCB2b2lkIFBhZ2U6OnNldElzVmlz
aWJsZUludGVybmFsKGJvb2wgaXNWaXNpYmxlKQogICAgIC8vIEZJWE1FOiBUaGUgdmlzaWJpbGl0
eSBzdGF0ZSBzaG91bGQgYmUgc3RvcmVkIG9uIHRoZSB0b3AtbGV2ZWwgZG9jdW1lbnQuCiAgICAg
Ly8gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTExNjc2OQogCisgICAg
c3lzbG9nKExPR19XQVJOSU5HLCAiIyMgUGFnZTo6c2V0SXNWaXNpYmxlSW50ZXJuYWw7IGlzVmlz
aWJsZTogJWQiLCBpc1Zpc2libGUpOwogICAgIGlmIChpc1Zpc2libGUpIHsKICAgICAgICAgbV9p
c1ByZXJlbmRlciA9IGZhbHNlOwogCiAgICAgICAgIHJlc3VtZVNjcmlwdGVkQW5pbWF0aW9ucygp
OworI2lmIFBMQVRGT1JNKElPUykKKyAgICAgICAgcmVzdW1lRGV2aWNlTW90aW9uQW5kT3JpZW50
YXRpb25VcGRhdGVzKCk7CisjZW5kaWYKIAogICAgICAgICBpZiAoRnJhbWVWaWV3KiB2aWV3ID0g
bWFpbkZyYW1lKCkudmlldygpKQogICAgICAgICAgICAgdmlldy0+c2hvdygpOwpAQCAtMTMzMyw2
ICsxMzM3LDkgQEAgdm9pZCBQYWdlOjpzZXRJc1Zpc2libGVJbnRlcm5hbChib29sIGlzVmlzaWJs
ZSkKICAgICAgICAgaWYgKG1fc2V0dGluZ3MtPmhpZGRlblBhZ2VDU1NBbmltYXRpb25TdXNwZW5z
aW9uRW5hYmxlZCgpKQogICAgICAgICAgICAgbWFpbkZyYW1lKCkuYW5pbWF0aW9uKCkuc3VzcGVu
ZEFuaW1hdGlvbnMoKTsKIAorI2lmIFBMQVRGT1JNKElPUykKKyAgICAgICAgc3VzcGVuZERldmlj
ZU1vdGlvbkFuZE9yaWVudGF0aW9uVXBkYXRlcygpOworI2VuZGlmCiAgICAgICAgIHN1c3BlbmRT
Y3JpcHRlZEFuaW1hdGlvbnMoKTsKIAogICAgICAgICBpZiAoRnJhbWVWaWV3KiB2aWV3ID0gbWFp
bkZyYW1lKCkudmlldygpKQpAQCAtMTU1Niw2ICsxNTYzLDIyIEBAIHZvaWQgUGFnZTo6YWRkUmVs
ZXZhbnRVbnBhaW50ZWRPYmplY3QoUmVuZGVyT2JqZWN0KiBvYmplY3QsIGNvbnN0IExheW91dFJl
Y3QmIG9iCiAgICAgbV9yZWxldmFudFVucGFpbnRlZFJlZ2lvbi51bml0ZShzbmFwcGVkSW50UmVj
dChvYmplY3RQYWludFJlY3QpKTsKIH0KIAordm9pZCBQYWdlOjpzdXNwZW5kRGV2aWNlTW90aW9u
QW5kT3JpZW50YXRpb25VcGRhdGVzKCkKK3sKKyAgICBmb3IgKEZyYW1lKiBmcmFtZSA9ICZtYWlu
RnJhbWUoKTsgZnJhbWU7IGZyYW1lID0gZnJhbWUtPnRyZWUoKS50cmF2ZXJzZU5leHQoKSkgewor
ICAgICAgICBpZiAoRG9jdW1lbnQqIGRvY3VtZW50ID0gZnJhbWUtPmRvY3VtZW50KCkpCisgICAg
ICAgICAgICBkb2N1bWVudC0+c3VzcGVuZERldmljZU1vdGlvbkFuZE9yaWVudGF0aW9uVXBkYXRl
cygpOworICAgIH0KK30KKwordm9pZCBQYWdlOjpyZXN1bWVEZXZpY2VNb3Rpb25BbmRPcmllbnRh
dGlvblVwZGF0ZXMoKQoreworICAgIGZvciAoRnJhbWUqIGZyYW1lID0gJm1haW5GcmFtZSgpOyBm
cmFtZTsgZnJhbWUgPSBmcmFtZS0+dHJlZSgpLnRyYXZlcnNlTmV4dCgpKSB7CisgICAgICAgIGlm
IChEb2N1bWVudCogZG9jdW1lbnQgPSBmcmFtZS0+ZG9jdW1lbnQoKSkKKyAgICAgICAgICAgIGRv
Y3VtZW50LT5yZXN1bWVEZXZpY2VNb3Rpb25BbmRPcmllbnRhdGlvblVwZGF0ZXMoKTsKKyAgICB9
Cit9CisKIHZvaWQgUGFnZTo6c3VzcGVuZEFjdGl2ZURPTU9iamVjdHNBbmRBbmltYXRpb25zKCkK
IHsKICAgICBmb3IgKEZyYW1lKiBmcmFtZSA9ICZtYWluRnJhbWUoKTsgZnJhbWU7IGZyYW1lID0g
ZnJhbWUtPnRyZWUoKS50cmF2ZXJzZU5leHQoKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvUGFnZS5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QYWdlLmgKaW5kZXggOWVlNTBjN2Yz
MTZmM2Q0ZWYwY2UwMTIzNGVjMWNiZDI2YmQyODMwMy4uY2IyNDlmOTBjYWIxYjk5ZjE4NmJjZTA5
YTQyOWI4MTVlY2FlNjdkZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QYWdlLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QYWdlLmgKQEAgLTM5NCw2ICszOTQsOSBAQCBwdWJs
aWM6CiAKICAgICBXRUJDT1JFX0VYUE9SVCB2b2lkIHN1c3BlbmRBY3RpdmVET01PYmplY3RzQW5k
QW5pbWF0aW9ucygpOwogICAgIFdFQkNPUkVfRVhQT1JUIHZvaWQgcmVzdW1lQWN0aXZlRE9NT2Jq
ZWN0c0FuZEFuaW1hdGlvbnMoKTsKKyAgICB2b2lkIHN1c3BlbmREZXZpY2VNb3Rpb25BbmRPcmll
bnRhdGlvblVwZGF0ZXMoKTsKKyAgICB2b2lkIHJlc3VtZURldmljZU1vdGlvbkFuZE9yaWVudGF0
aW9uVXBkYXRlcygpOworCiAjaWZuZGVmIE5ERUJVRwogICAgIHZvaWQgc2V0SXNQYWludGluZyhi
b29sIHBhaW50aW5nKSB7IG1faXNQYWludGluZyA9IHBhaW50aW5nOyB9CiAgICAgYm9vbCBpc1Bh
aW50aW5nKCkgY29uc3QgeyByZXR1cm4gbV9pc1BhaW50aW5nOyB9CmRpZmYgLS1naXQgYS9DaGFu
Z2VMb2cgYi9DaGFuZ2VMb2cKaW5kZXggNDllZDM1YWViMmI5ZWJjNjhlMzY0OWQyYTc2ZjcyNzEx
MWJiZjA0Yi4uNTk3ZTNmNzhhM2Q1N2FmZTU0Zjk4NzMwNDBkNmUyYzkyOWIwYmI3ZSAxMDA2NDQK
LS0tIGEvQ2hhbmdlTG9nCisrKyBiL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDE1LTEy
LTA5ICBEYW5pZWwgQmF0ZXMgIDxkYWJhdGVzQGFwcGxlLmNvbT4KKworICAgICAgICBbaU9TXSBT
dXNwZW5kIGFuZCByZXN1bWUgZGV2aWNlIG1vdGlvbiBhbmQgZGV2aWNlIG9yaWVudGF0aW9uIHVw
ZGF0ZXMgd2hlbiBwYWdlIGlzIGhpZGRlbiBhbmQgdmlzaWJsZSwgcmVzcGVjdGl2ZWx5CisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTE4NDAKKyAgICAg
ICAgPHJkYXI6Ly9wcm9ibGVtLzIzNzUzOTMxPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIEFkZCBhIG1hbnVhbCB0ZXN0IHRoYXQgY2FuIGJlIHVzZWQg
dG8gdmVyaWZ5IHRoYXQgd2Ugc3VzcGVuZCBkaXNwYXRjaGluZyBkZXZpY2UgbW90aW9uIGFuZAor
ICAgICAgICBkZXZpY2Ugb3JpZW50YXRpb24gZXZlbnRzIHdoZW4gdGhlIHBhZ2UgaXMgaGlkZGVu
LgorCisgICAgICAgICogTWFudWFsVGVzdHMvaW9zL3Jlc291cmNlcy9zdXNwZW5kLW9yaWVudGF0
aW9uLWFuZC1tb3Rpb24tZXZlbnRzLXdoZW4tcGFnZS1iZWNvbWVzLWhpZGRlbi5qczogQWRkZWQu
CisgICAgICAgIChyZXNldFRlc3QpOgorICAgICAgICAoY2hlY2tFdmVudCk6CisgICAgICAgICho
YW5kbGVWaXNpYmlsaXR5Q2hhbmdlKToKKyAgICAgICAgKiBNYW51YWxUZXN0cy9pb3Mvc3VzcGVu
ZC1vcmllbnRhdGlvbi1hbmQtbW90aW9uLWV2ZW50cy13aGVuLXBhZ2UtYmVjb21lcy1oaWRkZW4u
aHRtbDogQWRkZWQuCisKIDIwMTUtMTItMDEgIFl1c3VrZSBTdXp1a2kgIDx1dGF0YW5lLnRlYUBn
bWFpbC5jb20+CiAKICAgICAgICAgW0VTNl0gSW1wbGVtZW50IExMSW50L0Jhc2VsaW5lIFN1cHBv
cnQgZm9yIEVTNiBHZW5lcmF0b3JzIGFuZCBlbmFibGUgdGhpcyBmZWF0dXJlCmRpZmYgLS1naXQg
YS9NYW51YWxUZXN0cy9pb3MvcmVzb3VyY2VzL3N1c3BlbmQtb3JpZW50YXRpb24tYW5kLW1vdGlv
bi1ldmVudHMtd2hlbi1wYWdlLWJlY29tZXMtaGlkZGVuLmpzIGIvTWFudWFsVGVzdHMvaW9zL3Jl
c291cmNlcy9zdXNwZW5kLW9yaWVudGF0aW9uLWFuZC1tb3Rpb24tZXZlbnRzLXdoZW4tcGFnZS1i
ZWNvbWVzLWhpZGRlbi5qcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4xMDZlOWNlOGZlOWZhYjU1YzU3OGE1N2MyZmNh
N2E2NTExYjA3MjFlCi0tLSAvZGV2L251bGwKKysrIGIvTWFudWFsVGVzdHMvaW9zL3Jlc291cmNl
cy9zdXNwZW5kLW9yaWVudGF0aW9uLWFuZC1tb3Rpb24tZXZlbnRzLXdoZW4tcGFnZS1iZWNvbWVz
LWhpZGRlbi5qcwpAQCAtMCwwICsxLDQxIEBACit2YXIgZXZlbnRGcmVxdWVuY3lUYWJsZTsKKwor
ZnVuY3Rpb24gcmVzZXRUZXN0KCkKK3sKKyAgICBldmVudEZyZXF1ZW5jeVRhYmxlID0ge307Cit9
CisKK2Z1bmN0aW9uIGxvZyhtZXNzYWdlKQoreworICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlk
KCJjb25zb2xlIikuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUobWVzc2FnZSAr
ICJcbiIpKTsKK30KKworZnVuY3Rpb24gY2hlY2tFdmVudChldmVudCkKK3sKKyAgICBpZiAoZG9j
dW1lbnQudmlzaWJpbGl0eVN0YXRlID09PSAidmlzaWJsZSIpCisgICAgICAgIHJldHVybjsKKyAg
ICB2YXIgdHlwZSA9IGV2ZW50LnR5cGU7CisgICAgaWYgKCFldmVudEZyZXF1ZW5jeVRhYmxlW3R5
cGVdKQorICAgICAgICBldmVudEZyZXF1ZW5jeVRhYmxlW3R5cGVdID0gMDsKKyAgICArK2V2ZW50
RnJlcXVlbmN5VGFibGVbdHlwZV07Cit9CisKK2Z1bmN0aW9uIGhhbmRsZVZpc2liaWxpdHlDaGFu
Z2UoKQoreworICAgIGlmIChkb2N1bWVudC52aXNpYmlsaXR5U3RhdGUgPT09ICJoaWRkZW4iKQor
ICAgICAgICByZXR1cm47CisgICAgdmFyIHJlY2VpdmVkRXZlbnRzTWVzc2FnZVBhcnRzID0gW107
CisgICAgZm9yICh2YXIgdHlwZSBpbiBldmVudEZyZXF1ZW5jeVRhYmxlKQorICAgICAgICByZWNl
aXZlZEV2ZW50c01lc3NhZ2VQYXJ0cy5wdXNoKHR5cGUgKyAiIChcdTAwRDcgIiArIGV2ZW50RnJl
cXVlbmN5VGFibGVbdHlwZV0gKyAiKSIpOworICAgIGlmIChyZWNlaXZlZEV2ZW50c01lc3NhZ2VQ
YXJ0cy5sZW5ndGgpCisgICAgICAgIGxvZygiRXhwZWN0ZWQgdG8gcmVjZWl2ZSBubyBldmVudHMg
d2hlbiB0aGUgcGFnZSB3YXMgaGlkZGVuLCBidXQgcmVjZWl2ZWQ6ICIgKyByZWNlaXZlZEV2ZW50
c01lc3NhZ2VQYXJ0cy5qb2luKCIsICIpICsgIi4iKTsKKyAgICBlbHNlCisgICAgICAgIGxvZygi
UmVjZWl2ZWQgbm8gZXZlbnRzIHdoZW4gdGhlIHBhZ2Ugd2FzIGhpZGRlbi4iKTsKKyAgICByZXNl
dFRlc3QoKTsKK30KKworcmVzZXRUZXN0KCk7CisKK3dpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJk
ZXZpY2Vtb3Rpb24iLCBjaGVja0V2ZW50LCBmYWxzZSk7Cit3aW5kb3cuYWRkRXZlbnRMaXN0ZW5l
cigiZGV2aWNlb3JpZW50YXRpb24iLCBjaGVja0V2ZW50LCBmYWxzZSk7Citkb2N1bWVudC5hZGRF
dmVudExpc3RlbmVyKCJ2aXNpYmlsaXR5Y2hhbmdlIiwgaGFuZGxlVmlzaWJpbGl0eUNoYW5nZSwg
ZmFsc2UpOwpkaWZmIC0tZ2l0IGEvTWFudWFsVGVzdHMvaW9zL3N1c3BlbmQtb3JpZW50YXRpb24t
YW5kLW1vdGlvbi1ldmVudHMtd2hlbi1wYWdlLWJlY29tZXMtaGlkZGVuLmh0bWwgYi9NYW51YWxU
ZXN0cy9pb3Mvc3VzcGVuZC1vcmllbnRhdGlvbi1hbmQtbW90aW9uLWV2ZW50cy13aGVuLXBhZ2Ut
YmVjb21lcy1oaWRkZW4uaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5mOTlhYTE2OWQ4ZTQ2ZDJlOTNiZDc2ZmNm
NzI3MTI5ZmE2YmVmMTc0Ci0tLSAvZGV2L251bGwKKysrIGIvTWFudWFsVGVzdHMvaW9zL3N1c3Bl
bmQtb3JpZW50YXRpb24tYW5kLW1vdGlvbi1ldmVudHMtd2hlbi1wYWdlLWJlY29tZXMtaGlkZGVu
Lmh0bWwKQEAgLTAsMCArMSwxMSBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKzxoZWFkPgor
PHNjcmlwdCBzcmM9InJlc291cmNlcy9zdXNwZW5kLW9yaWVudGF0aW9uLWFuZC1tb3Rpb24tZXZl
bnRzLXdoZW4tcGFnZS1iZWNvbWVzLWhpZGRlbi5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9k
eT4KKzxwPlRoaXMgdGVzdCBjYW4gYmUgdXNlZCB0byB2ZXJpZnkgdGhhdCA8Y29kZT5kZXZpY2Vt
b3Rpb248L2NvZGU+IGFuZCA8Y29kZT5kZXZpY2VvcmllbnRhdGlvbjwvY29kZT4gZXZlbnRzIGFy
ZSBub3QgZGlzcGF0Y2hlZCB3aGVuIHRoZSBwYWdlIGlzIGhpZGRlbi48L3A+Cis8YnV0dG9uIG9u
Y2xpY2s9IndpbmRvdy5vcGVuKCdzdXNwZW5kLW9yaWVudGF0aW9uLWFuZC1tb3Rpb24tZXZlbnRz
LXdoZW4tcGFnZS1iZWNvbWVzLWhpZGRlbi5odG1sJykiPk9wZW4gdGhpcyBwYWdlIGluIGEgY2hp
bGQgd2luZG93IHRvIHZlcmlmeSB0aGF0IHRoaXMgcGFnZSBkb2VzIG5vdCByZWNlaXZlIGV2ZW50
cyB3aGVuIHRoZSBjaGlsZCB3aW5kb3cgaXMgdGhlIGZyb250LW1vc3Qgd2luZG93PC9idXR0b24+
Cis8cHJlIGlkPSJjb25zb2xlIj48L3ByZT4KKzwvYm9keT4KKzwvaHRtbD4K
</data>
<flag name="review"
          id="292108"
          type_id="1"
          status="+"
          setter="simon.fraser"
    />
          </attachment>
      

    </bug>

</bugzilla>