<?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>141469</bug_id>
          
          <creation_ts>2015-02-11 03:34:28 -0800</creation_ts>
          <short_desc>[GTK] Layout Test http/tests/media/hls/hls-progress.html is failing</short_desc>
          <delta_ts>2017-08-21 01:56:18 -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>Tools / Tests</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Marcos Chavarría Teijeiro (irc: chavaone)">chavarria1991</reporter>
          <assigned_to name="Charlie Turner">cturner</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>bugs-noreply</cc>
    
    <cc>buildbot</cc>
    
    <cc>calvaris</cc>
    
    <cc>chavarria1991</cc>
    
    <cc>clopez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>cturner</cc>
    
    <cc>eocanha</cc>
    
    <cc>jer.noble</cc>
    
    <cc>mcatanzaro</cc>
    
    <cc>yoon</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1068316</commentid>
    <comment_count>0</comment_count>
    <who name="Marcos Chavarría Teijeiro (irc: chavaone)">chavarria1991</who>
    <bug_when>2015-02-11 03:34:28 -0800</bug_when>
    <thetext>The http/tests/media/hls/hls-progress.html layout test is failing since it was added in r179699 (http://trac.webkit.org/changeset/r179699).

The diff is the following:

--- /home/ch01/wk-tools/layout-test-results/http/tests/media/hls/hls-progress-expected.txt
+++ /home/ch01/wk-tools/layout-test-results/http/tests/media/hls/hls-progress-actual.txt
@@ -1,4 +1,4 @@

-EVENT(progress)
+EVENT(stalled) TEST(false) FAIL
 END OF TEST</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1325564</commentid>
    <comment_count>1</comment_count>
    <who name="Charlie Turner">cturner</who>
    <bug_when>2017-07-05 07:36:42 -0700</bug_when>
    <thetext>Drive by commenting while investigating something else. The issue is in the fillTImerFired function where it queries the pipeline for its buffering status. This always fails on HLS streams AFAICT. I haven&apos;t dug into why no element in the pipeline bin gives an acceptable response, but somewhere there lies the issue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1328919</commentid>
    <comment_count>2</comment_count>
    <who name="Charlie Turner">cturner</who>
    <bug_when>2017-07-14 11:53:55 -0700</bug_when>
    <thetext>At the moment, GStreamer can&apos;t support the use case required by WebKit. HTMLMediaElement expects a progress event within three seconds. The only way we have of getting progress information is from buffering events at the moment.

Unfortunately, for many real-world HLS streams, it takes longer than 3 seconds before those events even get sent. Our current strategy for progress information is to poll the pipeline with buffering queries. We can&apos;t poll the HLS pipeline for buffering information, because the hlsdemux element doesn&apos;t support buffer queries, and the GStreamer people don&apos;t think it should.

Will have to investigate other ways of reporting progress here. Perhaps just using the manifest download result as a sign of progress will be a decent approach.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1330411</commentid>
    <comment_count>3</comment_count>
      <attachid>315936</attachid>
    <who name="Charlie Turner">cturner</who>
    <bug_when>2017-07-19 10:58:54 -0700</bug_when>
    <thetext>Created attachment 315936
Patch

Definitely a hack, but I don&apos;t believe there is any other approach. Modifying the demuxer to handle this case isn&apos;t something upstream think is a good idea, in fact they don&apos;t think buffering queries should ever work on HLS pipelines. Also note that the percentage value is quite meaningless from the queue&apos;s buffer. It&apos;s simply used to recognize a difference has been observed and progress of some form is being made.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1330576</commentid>
    <comment_count>4</comment_count>
      <attachid>315936</attachid>
    <who name="Xabier Rodríguez Calvar">calvaris</who>
    <bug_when>2017-07-20 01:46:53 -0700</bug_when>
    <thetext>Comment on attachment 315936
Patch

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

&gt; Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:1198
&gt; +    char* name = gst_element_get_name(element);

Please use GST_ELEMENT_NAME instead and you won&apos;t have to free the name later. Make it const.

&gt; Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:1202
&gt; +        GstElement* parent = GST_ELEMENT(gst_element_get_parent(element));

gst_element_get_parent is transfer full, you&apos;re leaking an element here. Please use GST_ELEMENT_PARENT instead.

&gt; Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:1207
&gt; +        char* grandpaName = gst_element_get_name(grandparent);

When using GST_ELEMENT_NAME, probably you won&apos;t need to use this variable, but if you decided to keep it, use complete words.

&gt; Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:1220
&gt; +static bool hlsIsProgressing(GstElement* playbin, GstQuery** query)

If we are not freeing the query, it can be GstQuery* query.

&gt; Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:1223
&gt; +    GstIterator* it = gst_bin_iterate_recurse(GST_BIN(playbin));

Please use iterator (complete words).

&gt; Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:1224
&gt; +    bool foundHLSElement = gst_iterator_find_custom(it, reinterpret_cast&lt;GCompareFunc&gt;(findHLSElement), &amp;item, NULL);

NULL -&gt; nullptr

&gt; Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:1230
&gt; +    GstElement* result = static_cast&lt;GstElement*&gt;(g_value_get_object(&amp;item));

Use the GNOME style cast there.

&gt; Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:1246
&gt; +        if (!hlsIsProgressing(m_pipeline.get(), &amp;query))

Please, add a comment here explaining why we are doing this hack.

Please, free the query out of the hlsIsProgressing function, which should be renamed to isHLSProgressing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1330585</commentid>
    <comment_count>5</comment_count>
      <attachid>315978</attachid>
    <who name="Charlie Turner">cturner</who>
    <bug_when>2017-07-20 04:07:32 -0700</bug_when>
    <thetext>Created attachment 315978
Patch

Thank you for the detailed review calvaris.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1330586</commentid>
    <comment_count>6</comment_count>
    <who name="Build Bot">buildbot</who>
    <bug_when>2017-07-20 04:08:45 -0700</bug_when>
    <thetext>Attachment 315978 did not pass style-queue:


ERROR: /Volumes/Data/StyleQueue/WebKit/LayoutTests/platform/gtk/TestExpectations:806:  Duplicate or ambiguous entry lines LayoutTests/platform/gtk/TestExpectations:787 and LayoutTests/platform/gtk/TestExpectations:806.  [test/expectations] [5]
ERROR: /Volumes/Data/StyleQueue/WebKit/LayoutTests/platform/gtk/TestExpectations:807:  Duplicate or ambiguous entry lines LayoutTests/platform/gtk/TestExpectations:788 and LayoutTests/platform/gtk/TestExpectations:807.  [test/expectations] [5]
ERROR: /Volumes/Data/StyleQueue/WebKit/LayoutTests/platform/gtk/TestExpectations:3370:  Duplicate or ambiguous entry lines LayoutTests/platform/gtk/TestExpectations:2234 and LayoutTests/platform/gtk/TestExpectations:3370.  [test/expectations] [5]
ERROR: /Volumes/Data/StyleQueue/WebKit/LayoutTests/platform/gtk/TestExpectations:3371:  Duplicate or ambiguous entry lines LayoutTests/platform/gtk/TestExpectations:2238 and LayoutTests/platform/gtk/TestExpectations:3371.  [test/expectations] [5]
Total errors found: 4 in 3 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1330591</commentid>
    <comment_count>7</comment_count>
      <attachid>315978</attachid>
    <who name="Xabier Rodríguez Calvar">calvaris</who>
    <bug_when>2017-07-20 04:45:52 -0700</bug_when>
    <thetext>Comment on attachment 315978
Patch

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

&gt; Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:1223
&gt; +    GstElement* result = GST_ELEMENT(g_value_get_object(&amp;item));
&gt; +    g_value_unset(&amp;item);
&gt; +
&gt; +    return gst_element_query(result, query);

You&apos;re getting the result, then unset the item and perform the query. When you unset the item, we lose the reference that we own because the unset is going to unref the object. It will be alive after that unset because it is alive inside the pipeline but it will be cleaner if we just do something like:

GstElement* resultElement = GST_ELEMENT(g_value_get_object(&amp;item));
bool queryResult = gst_element_query(resultElement, query);
g_value_unset(&amp;item);
return queryResult;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1330600</commentid>
    <comment_count>8</comment_count>
      <attachid>315984</attachid>
    <who name="Charlie Turner">cturner</who>
    <bug_when>2017-07-20 05:27:12 -0700</bug_when>
    <thetext>Created attachment 315984
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1330601</commentid>
    <comment_count>9</comment_count>
      <attachid>315985</attachid>
    <who name="Charlie Turner">cturner</who>
    <bug_when>2017-07-20 05:27:49 -0700</bug_when>
    <thetext>Created attachment 315985
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1330602</commentid>
    <comment_count>10</comment_count>
    <who name="Build Bot">buildbot</who>
    <bug_when>2017-07-20 05:29:22 -0700</bug_when>
    <thetext>Attachment 315985 did not pass style-queue:


ERROR: /Volumes/Data/StyleQueue/WebKit/LayoutTests/platform/gtk/TestExpectations:806:  Duplicate or ambiguous entry lines LayoutTests/platform/gtk/TestExpectations:787 and LayoutTests/platform/gtk/TestExpectations:806.  [test/expectations] [5]
ERROR: /Volumes/Data/StyleQueue/WebKit/LayoutTests/platform/gtk/TestExpectations:807:  Duplicate or ambiguous entry lines LayoutTests/platform/gtk/TestExpectations:788 and LayoutTests/platform/gtk/TestExpectations:807.  [test/expectations] [5]
ERROR: /Volumes/Data/StyleQueue/WebKit/LayoutTests/platform/gtk/TestExpectations:3370:  Duplicate or ambiguous entry lines LayoutTests/platform/gtk/TestExpectations:2234 and LayoutTests/platform/gtk/TestExpectations:3370.  [test/expectations] [5]
ERROR: /Volumes/Data/StyleQueue/WebKit/LayoutTests/platform/gtk/TestExpectations:3371:  Duplicate or ambiguous entry lines LayoutTests/platform/gtk/TestExpectations:2238 and LayoutTests/platform/gtk/TestExpectations:3371.  [test/expectations] [5]
Total errors found: 4 in 3 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1330609</commentid>
    <comment_count>11</comment_count>
      <attachid>315985</attachid>
    <who name="Xabier Rodríguez Calvar">calvaris</who>
    <bug_when>2017-07-20 06:22:05 -0700</bug_when>
    <thetext>Comment on attachment 315985
Patch

Ping me or any other committer for the cq+</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1330610</commentid>
    <comment_count>12</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2017-07-20 06:28:57 -0700</bug_when>
    <thetext>(In reply to Build Bot from comment #10)
&gt; Attachment 315985 [details] did not pass style-queue:
&gt; 
&gt; 
&gt; ERROR:
&gt; /Volumes/Data/StyleQueue/WebKit/LayoutTests/platform/gtk/TestExpectations:
&gt; 806:  Duplicate or ambiguous entry lines
&gt; LayoutTests/platform/gtk/TestExpectations:787 and
&gt; LayoutTests/platform/gtk/TestExpectations:806.  [test/expectations] [5]
&gt; ERROR:
&gt; /Volumes/Data/StyleQueue/WebKit/LayoutTests/platform/gtk/TestExpectations:
&gt; 807:  Duplicate or ambiguous entry lines
&gt; LayoutTests/platform/gtk/TestExpectations:788 and
&gt; LayoutTests/platform/gtk/TestExpectations:807.  [test/expectations] [5]
&gt; ERROR:
&gt; /Volumes/Data/StyleQueue/WebKit/LayoutTests/platform/gtk/TestExpectations:
&gt; 3370:  Duplicate or ambiguous entry lines
&gt; LayoutTests/platform/gtk/TestExpectations:2234 and
&gt; LayoutTests/platform/gtk/TestExpectations:3370.  [test/expectations] [5]
&gt; ERROR:
&gt; /Volumes/Data/StyleQueue/WebKit/LayoutTests/platform/gtk/TestExpectations:
&gt; 3371:  Duplicate or ambiguous entry lines
&gt; LayoutTests/platform/gtk/TestExpectations:2238 and
&gt; LayoutTests/platform/gtk/TestExpectations:3371.  [test/expectations] [5]
&gt; Total errors found: 4 in 3 files
&gt; 
&gt; 
&gt; If any of these errors are false positives, please file a bug against
&gt; check-webkit-style.

Looks like the expectations issues need fixed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1330611</commentid>
    <comment_count>13</comment_count>
    <who name="Charlie Turner">cturner</who>
    <bug_when>2017-07-20 06:48:49 -0700</bug_when>
    <thetext>Agreed, but I don&apos;t understand why my bug report is getting spammed with them, I don&apos;t believe I caused it?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1330625</commentid>
    <comment_count>14</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2017-07-20 07:54:31 -0700</bug_when>
    <thetext>Hm, I guess it&apos;s just because you modified the file. We should fix it separately then.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1330627</commentid>
    <comment_count>15</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2017-07-20 08:31:18 -0700</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #14)
&gt; We should fix it separately then.

I&apos;ll handle this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1330629</commentid>
    <comment_count>16</comment_count>
    <who name="Charlie Turner">cturner</who>
    <bug_when>2017-07-20 08:36:32 -0700</bug_when>
    <thetext>&gt; I&apos;ll handle this.

Sorry, I didn&apos;t mean to come across as dismissive of the the issue, I have no problem fixing the linter errors now that I&apos;m aware of them, I was just questioning whether it should block cq+ on this bug. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1330636</commentid>
    <comment_count>17</comment_count>
      <attachid>315985</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-07-20 08:59:42 -0700</bug_when>
    <thetext>Comment on attachment 315985
Patch

Clearing flags on attachment: 315985

Committed r219688: &lt;http://trac.webkit.org/changeset/219688&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1330637</commentid>
    <comment_count>18</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-07-20 08:59:44 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1340549</commentid>
    <comment_count>19</comment_count>
    <who name="Ms2ger (he/him; ⌚ UTC+1/+2)">Ms2ger</who>
    <bug_when>2017-08-21 01:56:18 -0700</bug_when>
    <thetext>*** Bug 138073 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>315936</attachid>
            <date>2017-07-19 10:58:54 -0700</date>
            <delta_ts>2017-07-20 04:07:28 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-141469-20170719195852.patch</filename>
            <type>text/plain</type>
            <size>3382</size>
            <attacher name="Charlie Turner">cturner</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjE5NTU2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzkyMzg5NTdiMmI3NzM0
ODUyZmFkZTAyY2ExNWY0YjEwMjlmZmNiZS4uMGVhYTQxMTcxNmQ2ZTNiMTY5ZTA2ZjVlOGJlNGNi
YmNmODBmZjA4NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDE3LTA3LTE5ICBDaGFy
bGllIFR1cm5lciAgPGN0dXJuZXJAaWdhbGlhLmNvbT4KKworICAgICAgICBbR1RLXSBMYXlvdXQg
VGVzdCBodHRwL3Rlc3RzL21lZGlhL2hscy9obHMtcHJvZ3Jlc3MuaHRtbCBpcyBmYWlsaW5nCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDE0NjkKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBNYWtlcyB0aGUg
Zm9sbG93aW5nIHBhc3MgcmVsaWFibHkKKyAgICAgICAgIGh0dHAvdGVzdHMvbWVkaWEvaGxzL2hs
cy1hdWRpby10cmFja3MtaGFzLWF1ZGlvLmh0bWwgcGFzc2VkIHVuZXhwZWN0ZWRseQorICAgICAg
ICAgaHR0cC90ZXN0cy9tZWRpYS9obHMvaGxzLWF1ZGlvLXRyYWNrcy5odG1sIHBhc3NlZCB1bmV4
cGVjdGVkbHkKKyAgICAgICAgIGh0dHAvdGVzdHMvbWVkaWEvaGxzL2hscy1wcm9ncmVzcy5odG1s
IHBhc3NlZCB1bmV4cGVjdGVkbHkKKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2dzdHJl
YW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
ZmluZEhMU0VsZW1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6aGxzUXVldWVIYXNQcm9ncmVzcyk6
CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXI6OmZpbGxUaW1l
ckZpcmVkKToKKwogMjAxNy0wNy0xNyAgWmFuIERvYmVyc2VrICA8emRvYmVyc2VrQGlnYWxpYS5j
b20+CiAKICAgICAgICAgW0NNYWtlXSBDbGVhbiB1cCBXZWIgQ3J5cHRvIGJ1aWxkIHRhcmdldHMK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9N
ZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5jcHAKaW5kZXgg
N2MzZmRkMzQ4MzYxZTRjNTYxYjc4Njg4OWVmYjQxYzFmNzg3ODQzNy4uZGQzNGQ3YjY1ZTNkNTFl
ZDg0MDlhMGM2MzZjODhjYWJiYjJkY2Y1ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxh
eWVyUHJpdmF0ZUdTdHJlYW1lci5jcHAKQEAgLTExOTIsMTMgKzExOTIsNTkgQEAgdm9pZCBNZWRp
YVBsYXllclByaXZhdGVHU3RyZWFtZXI6OnByb2Nlc3NUYWJsZU9mQ29udGVudHNFbnRyeShHc3RU
b2NFbnRyeSogZW50cnkKIH0KICNlbmRpZgogCitzdGF0aWMgaW50IGZpbmRITFNFbGVtZW50KGNv
bnN0IEdWYWx1ZSogaXRlbSkKK3sKKyAgICBHc3RFbGVtZW50KiBlbGVtZW50ID0gR1NUX0VMRU1F
TlQoZ192YWx1ZV9nZXRfb2JqZWN0KGl0ZW0pKTsKKyAgICBjaGFyKiBuYW1lID0gZ3N0X2VsZW1l
bnRfZ2V0X25hbWUoZWxlbWVudCk7CisKKyAgICBpZiAoZ19zdHJfaGFzX3ByZWZpeChuYW1lLCAi
cXVldWUiKSkgeworICAgICAgICBnX2ZyZWUobmFtZSk7CisgICAgICAgIEdzdEVsZW1lbnQqIHBh
cmVudCA9IEdTVF9FTEVNRU5UKGdzdF9lbGVtZW50X2dldF9wYXJlbnQoZWxlbWVudCkpOworICAg
ICAgICBpZiAoIUdTVF9JU19PQkpFQ1QocGFyZW50KSkKKyAgICAgICAgICAgIHJldHVybiAxOwor
CisgICAgICAgIEdzdEVsZW1lbnQqIGdyYW5kcGFyZW50ID0gR1NUX0VMRU1FTlQoZ3N0X2VsZW1l
bnRfZ2V0X3BhcmVudChwYXJlbnQpKTsKKyAgICAgICAgY2hhciogZ3JhbmRwYU5hbWUgPSBnc3Rf
ZWxlbWVudF9nZXRfbmFtZShncmFuZHBhcmVudCk7CisgICAgICAgIGlmIChnX3N0cl9oYXNfcHJl
Zml4KGdyYW5kcGFOYW1lLCAiaGxzZGVtdXgiKSkgeworICAgICAgICAgICAgZ19mcmVlKGdyYW5k
cGFOYW1lKTsKKyAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICB9CisgICAgICAgIGdfZnJl
ZShncmFuZHBhTmFtZSk7CisgICAgICAgIHJldHVybiAxOworICAgIH0KKworICAgIGdfZnJlZShu
YW1lKTsKKyAgICByZXR1cm4gMTsKK30KKworc3RhdGljIGJvb2wgaGxzSXNQcm9ncmVzc2luZyhH
c3RFbGVtZW50KiBwbGF5YmluLCBHc3RRdWVyeSoqIHF1ZXJ5KQoreworICAgIEdWYWx1ZSBpdGVt
ID0geyB9OworICAgIEdzdEl0ZXJhdG9yKiBpdCA9IGdzdF9iaW5faXRlcmF0ZV9yZWN1cnNlKEdT
VF9CSU4ocGxheWJpbikpOworICAgIGJvb2wgZm91bmRITFNFbGVtZW50ID0gZ3N0X2l0ZXJhdG9y
X2ZpbmRfY3VzdG9tKGl0LCByZWludGVycHJldF9jYXN0PEdDb21wYXJlRnVuYz4oZmluZEhMU0Vs
ZW1lbnQpLCAmaXRlbSwgTlVMTCk7CisgICAgZ3N0X2l0ZXJhdG9yX2ZyZWUoaXQpOworCisgICAg
aWYgKCFmb3VuZEhMU0VsZW1lbnQpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIEdzdEVs
ZW1lbnQqIHJlc3VsdCA9IHN0YXRpY19jYXN0PEdzdEVsZW1lbnQqPihnX3ZhbHVlX2dldF9vYmpl
Y3QoJml0ZW0pKTsKKyAgICBnX3ZhbHVlX3Vuc2V0KCZpdGVtKTsKKworICAgIGlmICghZ3N0X2Vs
ZW1lbnRfcXVlcnkocmVzdWx0LCAqcXVlcnkpKSB7CisgICAgICAgIGdzdF9xdWVyeV91bnJlZigq
cXVlcnkpOworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorCisgICAgcmV0dXJuIHRydWU7
Cit9CisKIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyOjpmaWxsVGltZXJGaXJlZCgp
CiB7CiAgICAgR3N0UXVlcnkqIHF1ZXJ5ID0gZ3N0X3F1ZXJ5X25ld19idWZmZXJpbmcoR1NUX0ZP
Uk1BVF9QRVJDRU5UKTsKIAotICAgIGlmICghZ3N0X2VsZW1lbnRfcXVlcnkobV9waXBlbGluZS5n
ZXQoKSwgcXVlcnkpKSB7Ci0gICAgICAgIGdzdF9xdWVyeV91bnJlZihxdWVyeSk7Ci0gICAgICAg
IHJldHVybjsKKyAgICBpZiAoR19VTkxJS0VMWSghZ3N0X2VsZW1lbnRfcXVlcnkobV9waXBlbGlu
ZS5nZXQoKSwgcXVlcnkpKSkgeworICAgICAgICBpZiAoIWhsc0lzUHJvZ3Jlc3NpbmcobV9waXBl
bGluZS5nZXQoKSwgJnF1ZXJ5KSkKKyAgICAgICAgICAgIHJldHVybjsKICAgICB9CiAKICAgICBn
aW50NjQgc3RhcnQsIHN0b3A7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>315978</attachid>
            <date>2017-07-20 04:07:32 -0700</date>
            <delta_ts>2017-07-20 05:27:08 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-141469-20170720130731.patch</filename>
            <type>text/plain</type>
            <size>5964</size>
            <attacher name="Charlie Turner">cturner</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjE5NTU2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzkyMzg5NTdiMmI3NzM0
ODUyZmFkZTAyY2ExNWY0YjEwMjlmZmNiZS4uZTMyZmZhZTYzMjY5Y2ZlZmUxZjM2MTIyMWY1YTZl
ZGI3NmM0OTY5ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDE3LTA3LTIwICBDaGFy
bGllIFR1cm5lciAgPGN0dXJuZXJAaWdhbGlhLmNvbT4KKworICAgICAgICBbR1RLXSBMYXlvdXQg
VGVzdCBodHRwL3Rlc3RzL21lZGlhL2hscy9obHMtcHJvZ3Jlc3MuaHRtbCBpcyBmYWlsaW5nCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDE0NjkKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBIHdvcmstYXJv
dW5kIGZvciBnZXR0aW5nIHByb2dyZXNzIGluZm9ybWF0aW9uIGluIGEgdGltZWx5IG1hbm5lciBm
cm9tCisgICAgICAgIGxpdmUgcGlwZWxpbmVzLiBXZSBjYW5ub3QgcmVseSBvbiBnZXR0aW5nIEJV
RkZFUklORyBtZXNzYWdlcyB3aXRoaW4KKyAgICAgICAgdGhlIHN0YWxsZWQgdGltZSB3aW5kb3cg
KDNzKSwgc28gd2UgaGF2ZSB0byBwb2xsIGZvciBwcm9ncmVzcworICAgICAgICBpbmZvcm1hdGlv
biBzb21laG93LgorCisgICAgICAgIE1ha2VzIHRoZSBmb2xsb3dpbmcgcGFzcyByZWxpYWJseQor
ICAgICAgICAgaHR0cC90ZXN0cy9tZWRpYS9obHMvaGxzLWF1ZGlvLXRyYWNrcy1oYXMtYXVkaW8u
aHRtbCBwYXNzZWQgdW5leHBlY3RlZGx5CisgICAgICAgICBodHRwL3Rlc3RzL21lZGlhL2hscy9o
bHMtYXVkaW8tdHJhY2tzLmh0bWwgcGFzc2VkIHVuZXhwZWN0ZWRseQorICAgICAgICAgaHR0cC90
ZXN0cy9tZWRpYS9obHMvaGxzLXByb2dyZXNzLmh0bWwgcGFzc2VkIHVuZXhwZWN0ZWRseQorCisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdT
dHJlYW1lci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpmaW5kSExTUXVldWUpOgorICAgICAgICAo
V2ViQ29yZTo6aXNITFNQcm9ncmVzc2luZyk6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXll
clByaXZhdGVHU3RyZWFtZXI6OmZpbGxUaW1lckZpcmVkKToKKwogMjAxNy0wNy0xNyAgWmFuIERv
YmVyc2VrICA8emRvYmVyc2VrQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0NNYWtlXSBDbGVhbiB1
cCBXZWIgQ3J5cHRvIGJ1aWxkIHRhcmdldHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuY3Bw
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVy
UHJpdmF0ZUdTdHJlYW1lci5jcHAKaW5kZXggN2MzZmRkMzQ4MzYxZTRjNTYxYjc4Njg4OWVmYjQx
YzFmNzg3ODQzNy4uMmU3YWEyMjRiMzU3YmM5ZWYxMzJkNDBhNGMwYzQ5NTMwMDA0OWY2ZSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlh
UGxheWVyUHJpdmF0ZUdTdHJlYW1lci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5jcHAKQEAgLTEx
OTIsMTMgKzExOTIsNTAgQEAgdm9pZCBNZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXI6OnByb2Nl
c3NUYWJsZU9mQ29udGVudHNFbnRyeShHc3RUb2NFbnRyeSogZW50cnkKIH0KICNlbmRpZgogCitz
dGF0aWMgaW50IGZpbmRITFNRdWV1ZShjb25zdCBHVmFsdWUqIGl0ZW0pCit7CisgICAgR3N0RWxl
bWVudCogZWxlbWVudCA9IEdTVF9FTEVNRU5UKGdfdmFsdWVfZ2V0X29iamVjdChpdGVtKSk7Cisg
ICAgaWYgKGdfc3RyX2hhc19wcmVmaXgoR1NUX0VMRU1FTlRfTkFNRShlbGVtZW50KSwgInF1ZXVl
IikpIHsKKyAgICAgICAgR3N0RWxlbWVudCogcGFyZW50ID0gR1NUX0VMRU1FTlQoR1NUX0VMRU1F
TlRfUEFSRU5UKGVsZW1lbnQpKTsKKyAgICAgICAgaWYgKCFHU1RfSVNfT0JKRUNUKHBhcmVudCkp
CisgICAgICAgICAgICByZXR1cm4gMTsKKworICAgICAgICBpZiAoZ19zdHJfaGFzX3ByZWZpeChH
U1RfRUxFTUVOVF9OQU1FKEdTVF9FTEVNRU5UX1BBUkVOVChwYXJlbnQpKSwgImhsc2RlbXV4Iikp
CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICByZXR1cm4gMTsKK30KKworc3Rh
dGljIGJvb2wgaXNITFNQcm9ncmVzc2luZyhHc3RFbGVtZW50KiBwbGF5YmluLCBHc3RRdWVyeSog
cXVlcnkpCit7CisgICAgR1ZhbHVlIGl0ZW0gPSB7IH07CisgICAgR3N0SXRlcmF0b3IqIGJpbkl0
ZXJhdG9yID0gZ3N0X2Jpbl9pdGVyYXRlX3JlY3Vyc2UoR1NUX0JJTihwbGF5YmluKSk7CisgICAg
Ym9vbCBmb3VuZEhMU1F1ZXVlID0gZ3N0X2l0ZXJhdG9yX2ZpbmRfY3VzdG9tKGJpbkl0ZXJhdG9y
LCByZWludGVycHJldF9jYXN0PEdDb21wYXJlRnVuYz4oZmluZEhMU1F1ZXVlKSwgJml0ZW0sIG51
bGxwdHIpOworICAgIGdzdF9pdGVyYXRvcl9mcmVlKGJpbkl0ZXJhdG9yKTsKKworICAgIGlmICgh
Zm91bmRITFNRdWV1ZSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgR3N0RWxlbWVudCog
cmVzdWx0ID0gR1NUX0VMRU1FTlQoZ192YWx1ZV9nZXRfb2JqZWN0KCZpdGVtKSk7CisgICAgZ192
YWx1ZV91bnNldCgmaXRlbSk7CisKKyAgICByZXR1cm4gZ3N0X2VsZW1lbnRfcXVlcnkocmVzdWx0
LCBxdWVyeSk7Cit9CisKIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyOjpmaWxsVGlt
ZXJGaXJlZCgpCiB7CiAgICAgR3N0UXVlcnkqIHF1ZXJ5ID0gZ3N0X3F1ZXJ5X25ld19idWZmZXJp
bmcoR1NUX0ZPUk1BVF9QRVJDRU5UKTsKIAotICAgIGlmICghZ3N0X2VsZW1lbnRfcXVlcnkobV9w
aXBlbGluZS5nZXQoKSwgcXVlcnkpKSB7Ci0gICAgICAgIGdzdF9xdWVyeV91bnJlZihxdWVyeSk7
Ci0gICAgICAgIHJldHVybjsKKyAgICBpZiAoR19VTkxJS0VMWSghZ3N0X2VsZW1lbnRfcXVlcnko
bV9waXBlbGluZS5nZXQoKSwgcXVlcnkpKSkgeworICAgICAgICAvLyBUaGlzIHF1ZXJ5IGFsd2F5
cyBmYWlscyBmb3IgbGl2ZSBwaXBlbGluZXMuIEluIHRoZSBjYXNlIG9mIEhMUywgdHJ5IGFuZCBm
aW5kCisgICAgICAgIC8vIHRoZSBxdWV1ZSBpbnNpZGUgdGhlIEhMUyBlbGVtZW50IHRvIGdldCBh
IHByb3h5IG1lYXN1cmUgb2YgcHJvZ3Jlc3MuIE5vdGUKKyAgICAgICAgLy8gdGhhdCB0aGUgcGVy
Y2VudGFnZSB2YWx1ZSBpcyByYXRoZXIgbWVhbmluZ2xlc3MgYXMgdXNlZCBiZWxvdy4KKyAgICAg
ICAgLy8gVGhpcyBpcyBhIGhhY2ssIHNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTQxNDY5LgorICAgICAgICBpZiAoIWlzSExTUHJvZ3Jlc3NpbmcobV9waXBlbGlu
ZS5nZXQoKSwgcXVlcnkpKSB7CisgICAgICAgICAgICBnc3RfcXVlcnlfdW5yZWYocXVlcnkpOwor
ICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9CiAgICAgfQogCiAgICAgZ2ludDY0IHN0YXJ0
LCBzdG9wOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCmluZGV4IGRkNTI0YWRlOGQwN2Q4YzU5Zjc2ZjA5NDQzYWRmMWMyMmUwNDQ0MTcu
LmZhMzM5OWFlYTc2ZTVmZWI4YmY1ZDM3MGExNzE0ZWQ3MmUzMzJhMzIgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwxNCBAQAorMjAxNy0wNy0yMCAgQ2hhcmxpZSBUdXJuZXIgIDxjdHVybmVyQGlnYWxpYS5jb20+
CisKKyAgICAgICAgW0dUS10gTGF5b3V0IFRlc3QgaHR0cC90ZXN0cy9tZWRpYS9obHMvaGxzLXBy
b2dyZXNzLmh0bWwgaXMgZmFpbGluZworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9MTQxNDY5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgRml4ZXMgdGhlIHJlbW92ZWQgdGVzdHMuCisKKyAgICAgICAgKiBwbGF0
Zm9ybS9ndGsvVGVzdEV4cGVjdGF0aW9uczoKKwogMjAxNy0wNy0xNiAgQW50b2luZSBRdWludCAg
PGdyYW91dHNAYXBwbGUuY29tPgogCiAgICAgICAgIERpc21pc3NpbmcgdGhlIGNhcHRpb25zIHBh
bmVsIHVzaW5nIHRoZSBtb3VzZSBpcyB0b28gZWFnZXIgdG8gcmVtb3ZlIHRoZSBjYXB0aW9ucyBw
YW5lbCBhbmQgbWVkaWEgY29udHJvbHMKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3Jt
L2d0ay9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1Rlc3RFeHBl
Y3RhdGlvbnMKaW5kZXggYjhmOGZlY2JlMjBjMTY3NzYwYmVmOWNlZWI2ZWNkM2EyNjFjMzcyMS4u
OTk2MTZjOWZkZTA0MmRlOTk5ZGM4ZTk4YTBlZGY5NzNiNTM5MzlhMCAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vZ3RrL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTk0NSw3ICs5NDUsNiBAQCB3ZWJraXQu
b3JnL2IvMTQxNDY2IGZhc3QvbWVkaWEvbXEtcG9pbnRlci1zdHlsaW5nLmh0bWwgWyBGYWlsdXJl
IF0KIHdlYmtpdC5vcmcvYi8xNDE0NjYgZmFzdC9tZWRpYS9tcS1wb2ludGVyLmh0bWwgWyBGYWls
dXJlIF0KIAogd2Via2l0Lm9yZy9iLzExNjI1OSBodHRwL3Rlc3RzL2NhY2hlL3dpbGxzZW5kcmVx
dWVzdC1yZXR1cm5zLW51bGwtZm9yLW1lbW9yeS1jYWNoZS1sb2FkLmh0bWwgWyBGYWlsdXJlIF0K
LXdlYmtpdC5vcmcvYi8xNDE0NjkgWyBSZWxlYXNlIF0gaHR0cC90ZXN0cy9tZWRpYS9obHMvaGxz
LXByb2dyZXNzLmh0bWwgWyBGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi8xNDE0MjMgc3ZnL2Nzcy9n
ZXRDb21wdXRlZFN0eWxlLWJhc2ljLnhodG1sIFsgRmFpbHVyZSBdCiAKIHdlYmtpdC5vcmcvYi8x
NDE0NjcgZmFzdC9tdWx0aWNvbC9wYWdpbmF0aW9uL0xlZnRUb1JpZ2h0LXRiLWhpdHRlc3QuaHRt
bCBbIEZhaWx1cmUgXQpAQCAtMTEwNyw4ICsxMTA2LDYgQEAgd2Via2l0Lm9yZy9iLzE1NDM5MCBo
dHRwL3Rlc3RzL21lZGlhL3ZpZGVvLXJlZGlyZWN0Lmh0bWwgWyBUaW1lb3V0IFBhc3MgXQogd2Vi
a2l0Lm9yZy9iLzE1NDM5MCBbIFJlbGVhc2UgXSBodHRwL3Rlc3RzL21lZGlhL2hscy92aWRlby1j
b250cm9sbGVyLWdldFN0YXJ0RGF0ZS5odG1sIFsgVGltZW91dCBGYWlsdXJlIF0KIHdlYmtpdC5v
cmcvYi8xNTQzOTAgWyBSZWxlYXNlIF0gaHR0cC90ZXN0cy9tZWRpYS9obHMvaGxzLWF1ZGlvLXRy
YWNrcy1sb2NhbGUtc2VsZWN0aW9uLmh0bWwgWyBUaW1lb3V0IEZhaWx1cmUgXQogd2Via2l0Lm9y
Zy9iLzE1NDM5MCBbIFJlbGVhc2UgXSBodHRwL3Rlc3RzL21lZGlhL2hscy9obHMtdmlkZW8tcmVz
aXplLmh0bWwgWyBUaW1lb3V0IEZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzE1NDM5MCBbIFJlbGVh
c2UgXSBodHRwL3Rlc3RzL21lZGlhL2hscy9obHMtYXVkaW8tdHJhY2tzLmh0bWwgWyBUaW1lb3V0
IEZhaWx1cmUgXQotd2Via2l0Lm9yZy9iLzE1NDM5MCBbIFJlbGVhc2UgXSBodHRwL3Rlc3RzL21l
ZGlhL2hscy9obHMtYXVkaW8tdHJhY2tzLWhhcy1hdWRpby5odG1sIFsgVGltZW91dCBGYWlsdXJl
IF0KIHdlYmtpdC5vcmcvYi8xNTQzOTAgaHR0cC90ZXN0cy9zZWN1cml0eS9sb2NhbC12aWRlby1z
b3VyY2UtZnJvbS1yZW1vdGUuaHRtbCBbIFRpbWVvdXQgUGFzcyBdCiAKIHdlYmtpdC5vcmcvYi8x
NTU1MDUgaHR0cC90ZXN0cy9zZWN1cml0eS9jb250ZW50U2VjdXJpdHlQb2xpY3kvdXNlckFnZW50
U2hhZG93RE9NL2FsbG93LWF1ZGlvLmh0bWwgWyBTa2lwIF0K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>315984</attachid>
            <date>2017-07-20 05:27:12 -0700</date>
            <delta_ts>2017-07-20 05:27:46 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-141469-20170720142711.patch</filename>
            <type>text/plain</type>
            <size>6013</size>
            <attacher name="Charlie Turner">cturner</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjE5NTU2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzkyMzg5NTdiMmI3NzM0
ODUyZmFkZTAyY2ExNWY0YjEwMjlmZmNiZS4uZTMyZmZhZTYzMjY5Y2ZlZmUxZjM2MTIyMWY1YTZl
ZGI3NmM0OTY5ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDE3LTA3LTIwICBDaGFy
bGllIFR1cm5lciAgPGN0dXJuZXJAaWdhbGlhLmNvbT4KKworICAgICAgICBbR1RLXSBMYXlvdXQg
VGVzdCBodHRwL3Rlc3RzL21lZGlhL2hscy9obHMtcHJvZ3Jlc3MuaHRtbCBpcyBmYWlsaW5nCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDE0NjkKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBIHdvcmstYXJv
dW5kIGZvciBnZXR0aW5nIHByb2dyZXNzIGluZm9ybWF0aW9uIGluIGEgdGltZWx5IG1hbm5lciBm
cm9tCisgICAgICAgIGxpdmUgcGlwZWxpbmVzLiBXZSBjYW5ub3QgcmVseSBvbiBnZXR0aW5nIEJV
RkZFUklORyBtZXNzYWdlcyB3aXRoaW4KKyAgICAgICAgdGhlIHN0YWxsZWQgdGltZSB3aW5kb3cg
KDNzKSwgc28gd2UgaGF2ZSB0byBwb2xsIGZvciBwcm9ncmVzcworICAgICAgICBpbmZvcm1hdGlv
biBzb21laG93LgorCisgICAgICAgIE1ha2VzIHRoZSBmb2xsb3dpbmcgcGFzcyByZWxpYWJseQor
ICAgICAgICAgaHR0cC90ZXN0cy9tZWRpYS9obHMvaGxzLWF1ZGlvLXRyYWNrcy1oYXMtYXVkaW8u
aHRtbCBwYXNzZWQgdW5leHBlY3RlZGx5CisgICAgICAgICBodHRwL3Rlc3RzL21lZGlhL2hscy9o
bHMtYXVkaW8tdHJhY2tzLmh0bWwgcGFzc2VkIHVuZXhwZWN0ZWRseQorICAgICAgICAgaHR0cC90
ZXN0cy9tZWRpYS9obHMvaGxzLXByb2dyZXNzLmh0bWwgcGFzc2VkIHVuZXhwZWN0ZWRseQorCisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdT
dHJlYW1lci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpmaW5kSExTUXVldWUpOgorICAgICAgICAo
V2ViQ29yZTo6aXNITFNQcm9ncmVzc2luZyk6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXll
clByaXZhdGVHU3RyZWFtZXI6OmZpbGxUaW1lckZpcmVkKToKKwogMjAxNy0wNy0xNyAgWmFuIERv
YmVyc2VrICA8emRvYmVyc2VrQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0NNYWtlXSBDbGVhbiB1
cCBXZWIgQ3J5cHRvIGJ1aWxkIHRhcmdldHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuY3Bw
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVy
UHJpdmF0ZUdTdHJlYW1lci5jcHAKaW5kZXggN2MzZmRkMzQ4MzYxZTRjNTYxYjc4Njg4OWVmYjQx
YzFmNzg3ODQzNy4uMWIxNWU4MjVjNmM2ZmZjNTEwNjFkNTExZGMxNjhlZTAyZWY5ODZlYSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlh
UGxheWVyUHJpdmF0ZUdTdHJlYW1lci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5jcHAKQEAgLTEx
OTIsMTMgKzExOTIsNTEgQEAgdm9pZCBNZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXI6OnByb2Nl
c3NUYWJsZU9mQ29udGVudHNFbnRyeShHc3RUb2NFbnRyeSogZW50cnkKIH0KICNlbmRpZgogCitz
dGF0aWMgaW50IGZpbmRITFNRdWV1ZShjb25zdCBHVmFsdWUqIGl0ZW0pCit7CisgICAgR3N0RWxl
bWVudCogZWxlbWVudCA9IEdTVF9FTEVNRU5UKGdfdmFsdWVfZ2V0X29iamVjdChpdGVtKSk7Cisg
ICAgaWYgKGdfc3RyX2hhc19wcmVmaXgoR1NUX0VMRU1FTlRfTkFNRShlbGVtZW50KSwgInF1ZXVl
IikpIHsKKyAgICAgICAgR3N0RWxlbWVudCogcGFyZW50ID0gR1NUX0VMRU1FTlQoR1NUX0VMRU1F
TlRfUEFSRU5UKGVsZW1lbnQpKTsKKyAgICAgICAgaWYgKCFHU1RfSVNfT0JKRUNUKHBhcmVudCkp
CisgICAgICAgICAgICByZXR1cm4gMTsKKworICAgICAgICBpZiAoZ19zdHJfaGFzX3ByZWZpeChH
U1RfRUxFTUVOVF9OQU1FKEdTVF9FTEVNRU5UX1BBUkVOVChwYXJlbnQpKSwgImhsc2RlbXV4Iikp
CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICByZXR1cm4gMTsKK30KKworc3Rh
dGljIGJvb2wgaXNITFNQcm9ncmVzc2luZyhHc3RFbGVtZW50KiBwbGF5YmluLCBHc3RRdWVyeSog
cXVlcnkpCit7CisgICAgR1ZhbHVlIGl0ZW0gPSB7IH07CisgICAgR3N0SXRlcmF0b3IqIGJpbkl0
ZXJhdG9yID0gZ3N0X2Jpbl9pdGVyYXRlX3JlY3Vyc2UoR1NUX0JJTihwbGF5YmluKSk7CisgICAg
Ym9vbCBmb3VuZEhMU1F1ZXVlID0gZ3N0X2l0ZXJhdG9yX2ZpbmRfY3VzdG9tKGJpbkl0ZXJhdG9y
LCByZWludGVycHJldF9jYXN0PEdDb21wYXJlRnVuYz4oZmluZEhMU1F1ZXVlKSwgJml0ZW0sIG51
bGxwdHIpOworICAgIGdzdF9pdGVyYXRvcl9mcmVlKGJpbkl0ZXJhdG9yKTsKKworICAgIGlmICgh
Zm91bmRITFNRdWV1ZSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgR3N0RWxlbWVudCog
cXVldWVFbGVtZW50ID0gR1NUX0VMRU1FTlQoZ192YWx1ZV9nZXRfb2JqZWN0KCZpdGVtKSk7Cisg
ICAgYm9vbCBxdWVyeVJlc3VsdCA9IGdzdF9lbGVtZW50X3F1ZXJ5KHF1ZXVlRWxlbWVudCwgcXVl
cnkpOworICAgIGdfdmFsdWVfdW5zZXQoJml0ZW0pOworCisgICAgcmV0dXJuIHF1ZXJ5UmVzdWx0
OworfQorCiB2b2lkIE1lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lcjo6ZmlsbFRpbWVyRmlyZWQo
KQogewogICAgIEdzdFF1ZXJ5KiBxdWVyeSA9IGdzdF9xdWVyeV9uZXdfYnVmZmVyaW5nKEdTVF9G
T1JNQVRfUEVSQ0VOVCk7CiAKLSAgICBpZiAoIWdzdF9lbGVtZW50X3F1ZXJ5KG1fcGlwZWxpbmUu
Z2V0KCksIHF1ZXJ5KSkgewotICAgICAgICBnc3RfcXVlcnlfdW5yZWYocXVlcnkpOwotICAgICAg
ICByZXR1cm47CisgICAgaWYgKEdfVU5MSUtFTFkoIWdzdF9lbGVtZW50X3F1ZXJ5KG1fcGlwZWxp
bmUuZ2V0KCksIHF1ZXJ5KSkpIHsKKyAgICAgICAgLy8gVGhpcyBxdWVyeSBhbHdheXMgZmFpbHMg
Zm9yIGxpdmUgcGlwZWxpbmVzLiBJbiB0aGUgY2FzZSBvZiBITFMsIHRyeSBhbmQgZmluZAorICAg
ICAgICAvLyB0aGUgcXVldWUgaW5zaWRlIHRoZSBITFMgZWxlbWVudCB0byBnZXQgYSBwcm94eSBt
ZWFzdXJlIG9mIHByb2dyZXNzLiBOb3RlCisgICAgICAgIC8vIHRoYXQgdGhlIHBlcmNlbnRhZ2Ug
dmFsdWUgaXMgcmF0aGVyIG1lYW5pbmdsZXNzIGFzIHVzZWQgYmVsb3cuCisgICAgICAgIC8vIFRo
aXMgaXMgYSBoYWNrLCBzZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTE0MTQ2OS4KKyAgICAgICAgaWYgKCFpc0hMU1Byb2dyZXNzaW5nKG1fcGlwZWxpbmUuZ2V0KCks
IHF1ZXJ5KSkgeworICAgICAgICAgICAgZ3N0X3F1ZXJ5X3VucmVmKHF1ZXJ5KTsKKyAgICAgICAg
ICAgIHJldHVybjsKKyAgICAgICAgfQogICAgIH0KIAogICAgIGdpbnQ2NCBzdGFydCwgc3RvcDsK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBkZDUyNGFkZThkMDdkOGM1OWY3NmYwOTQ0M2FkZjFjMjJlMDQ0NDE3Li5mYTMzOTlh
ZWE3NmU1ZmViOGJmNWQzNzBhMTcxNGVkNzJlMzMyYTMyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAK
KzIwMTctMDctMjAgIENoYXJsaWUgVHVybmVyICA8Y3R1cm5lckBpZ2FsaWEuY29tPgorCisgICAg
ICAgIFtHVEtdIExheW91dCBUZXN0IGh0dHAvdGVzdHMvbWVkaWEvaGxzL2hscy1wcm9ncmVzcy5o
dG1sIGlzIGZhaWxpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTE0MTQ2OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIEZpeGVzIHRoZSByZW1vdmVkIHRlc3RzLgorCisgICAgICAgICogcGxhdGZvcm0vZ3Rr
L1Rlc3RFeHBlY3RhdGlvbnM6CisKIDIwMTctMDctMTYgIEFudG9pbmUgUXVpbnQgIDxncmFvdXRz
QGFwcGxlLmNvbT4KIAogICAgICAgICBEaXNtaXNzaW5nIHRoZSBjYXB0aW9ucyBwYW5lbCB1c2lu
ZyB0aGUgbW91c2UgaXMgdG9vIGVhZ2VyIHRvIHJlbW92ZSB0aGUgY2FwdGlvbnMgcGFuZWwgYW5k
IG1lZGlhIGNvbnRyb2xzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvVGVz
dEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9UZXN0RXhwZWN0YXRpb25z
CmluZGV4IGI4ZjhmZWNiZTIwYzE2Nzc2MGJlZjljZWViNmVjZDNhMjYxYzM3MjEuLjk5NjE2Yzlm
ZGUwNDJkZTk5OWRjOGU5OGEwZWRmOTczYjUzOTM5YTAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L3BsYXRmb3JtL2d0ay9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3Jt
L2d0ay9UZXN0RXhwZWN0YXRpb25zCkBAIC05NDUsNyArOTQ1LDYgQEAgd2Via2l0Lm9yZy9iLzE0
MTQ2NiBmYXN0L21lZGlhL21xLXBvaW50ZXItc3R5bGluZy5odG1sIFsgRmFpbHVyZSBdCiB3ZWJr
aXQub3JnL2IvMTQxNDY2IGZhc3QvbWVkaWEvbXEtcG9pbnRlci5odG1sIFsgRmFpbHVyZSBdCiAK
IHdlYmtpdC5vcmcvYi8xMTYyNTkgaHR0cC90ZXN0cy9jYWNoZS93aWxsc2VuZHJlcXVlc3QtcmV0
dXJucy1udWxsLWZvci1tZW1vcnktY2FjaGUtbG9hZC5odG1sIFsgRmFpbHVyZSBdCi13ZWJraXQu
b3JnL2IvMTQxNDY5IFsgUmVsZWFzZSBdIGh0dHAvdGVzdHMvbWVkaWEvaGxzL2hscy1wcm9ncmVz
cy5odG1sIFsgRmFpbHVyZSBdCiB3ZWJraXQub3JnL2IvMTQxNDIzIHN2Zy9jc3MvZ2V0Q29tcHV0
ZWRTdHlsZS1iYXNpYy54aHRtbCBbIEZhaWx1cmUgXQogCiB3ZWJraXQub3JnL2IvMTQxNDY3IGZh
c3QvbXVsdGljb2wvcGFnaW5hdGlvbi9MZWZ0VG9SaWdodC10Yi1oaXR0ZXN0Lmh0bWwgWyBGYWls
dXJlIF0KQEAgLTExMDcsOCArMTEwNiw2IEBAIHdlYmtpdC5vcmcvYi8xNTQzOTAgaHR0cC90ZXN0
cy9tZWRpYS92aWRlby1yZWRpcmVjdC5odG1sIFsgVGltZW91dCBQYXNzIF0KIHdlYmtpdC5vcmcv
Yi8xNTQzOTAgWyBSZWxlYXNlIF0gaHR0cC90ZXN0cy9tZWRpYS9obHMvdmlkZW8tY29udHJvbGxl
ci1nZXRTdGFydERhdGUuaHRtbCBbIFRpbWVvdXQgRmFpbHVyZSBdCiB3ZWJraXQub3JnL2IvMTU0
MzkwIFsgUmVsZWFzZSBdIGh0dHAvdGVzdHMvbWVkaWEvaGxzL2hscy1hdWRpby10cmFja3MtbG9j
YWxlLXNlbGVjdGlvbi5odG1sIFsgVGltZW91dCBGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi8xNTQz
OTAgWyBSZWxlYXNlIF0gaHR0cC90ZXN0cy9tZWRpYS9obHMvaGxzLXZpZGVvLXJlc2l6ZS5odG1s
IFsgVGltZW91dCBGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8xNTQzOTAgWyBSZWxlYXNlIF0gaHR0
cC90ZXN0cy9tZWRpYS9obHMvaGxzLWF1ZGlvLXRyYWNrcy5odG1sIFsgVGltZW91dCBGYWlsdXJl
IF0KLXdlYmtpdC5vcmcvYi8xNTQzOTAgWyBSZWxlYXNlIF0gaHR0cC90ZXN0cy9tZWRpYS9obHMv
aGxzLWF1ZGlvLXRyYWNrcy1oYXMtYXVkaW8uaHRtbCBbIFRpbWVvdXQgRmFpbHVyZSBdCiB3ZWJr
aXQub3JnL2IvMTU0MzkwIGh0dHAvdGVzdHMvc2VjdXJpdHkvbG9jYWwtdmlkZW8tc291cmNlLWZy
b20tcmVtb3RlLmh0bWwgWyBUaW1lb3V0IFBhc3MgXQogCiB3ZWJraXQub3JnL2IvMTU1NTA1IGh0
dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3VzZXJBZ2VudFNoYWRvd0RP
TS9hbGxvdy1hdWRpby5odG1sIFsgU2tpcCBdCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>315985</attachid>
            <date>2017-07-20 05:27:49 -0700</date>
            <delta_ts>2017-07-20 08:59:42 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-141469-20170720142748.patch</filename>
            <type>text/plain</type>
            <size>6013</size>
            <attacher name="Charlie Turner">cturner</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjE5NTU2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzkyMzg5NTdiMmI3NzM0
ODUyZmFkZTAyY2ExNWY0YjEwMjlmZmNiZS4uZTMyZmZhZTYzMjY5Y2ZlZmUxZjM2MTIyMWY1YTZl
ZGI3NmM0OTY5ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDE3LTA3LTIwICBDaGFy
bGllIFR1cm5lciAgPGN0dXJuZXJAaWdhbGlhLmNvbT4KKworICAgICAgICBbR1RLXSBMYXlvdXQg
VGVzdCBodHRwL3Rlc3RzL21lZGlhL2hscy9obHMtcHJvZ3Jlc3MuaHRtbCBpcyBmYWlsaW5nCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDE0NjkKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBIHdvcmstYXJv
dW5kIGZvciBnZXR0aW5nIHByb2dyZXNzIGluZm9ybWF0aW9uIGluIGEgdGltZWx5IG1hbm5lciBm
cm9tCisgICAgICAgIGxpdmUgcGlwZWxpbmVzLiBXZSBjYW5ub3QgcmVseSBvbiBnZXR0aW5nIEJV
RkZFUklORyBtZXNzYWdlcyB3aXRoaW4KKyAgICAgICAgdGhlIHN0YWxsZWQgdGltZSB3aW5kb3cg
KDNzKSwgc28gd2UgaGF2ZSB0byBwb2xsIGZvciBwcm9ncmVzcworICAgICAgICBpbmZvcm1hdGlv
biBzb21laG93LgorCisgICAgICAgIE1ha2VzIHRoZSBmb2xsb3dpbmcgcGFzcyByZWxpYWJseQor
ICAgICAgICAgaHR0cC90ZXN0cy9tZWRpYS9obHMvaGxzLWF1ZGlvLXRyYWNrcy1oYXMtYXVkaW8u
aHRtbCBwYXNzZWQgdW5leHBlY3RlZGx5CisgICAgICAgICBodHRwL3Rlc3RzL21lZGlhL2hscy9o
bHMtYXVkaW8tdHJhY2tzLmh0bWwgcGFzc2VkIHVuZXhwZWN0ZWRseQorICAgICAgICAgaHR0cC90
ZXN0cy9tZWRpYS9obHMvaGxzLXByb2dyZXNzLmh0bWwgcGFzc2VkIHVuZXhwZWN0ZWRseQorCisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdT
dHJlYW1lci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpmaW5kSExTUXVldWUpOgorICAgICAgICAo
V2ViQ29yZTo6aXNITFNQcm9ncmVzc2luZyk6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXll
clByaXZhdGVHU3RyZWFtZXI6OmZpbGxUaW1lckZpcmVkKToKKwogMjAxNy0wNy0xNyAgWmFuIERv
YmVyc2VrICA8emRvYmVyc2VrQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0NNYWtlXSBDbGVhbiB1
cCBXZWIgQ3J5cHRvIGJ1aWxkIHRhcmdldHMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuY3Bw
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVy
UHJpdmF0ZUdTdHJlYW1lci5jcHAKaW5kZXggN2MzZmRkMzQ4MzYxZTRjNTYxYjc4Njg4OWVmYjQx
YzFmNzg3ODQzNy4uMWIxNWU4MjVjNmM2ZmZjNTEwNjFkNTExZGMxNjhlZTAyZWY5ODZlYSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlh
UGxheWVyUHJpdmF0ZUdTdHJlYW1lci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5jcHAKQEAgLTEx
OTIsMTMgKzExOTIsNTEgQEAgdm9pZCBNZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXI6OnByb2Nl
c3NUYWJsZU9mQ29udGVudHNFbnRyeShHc3RUb2NFbnRyeSogZW50cnkKIH0KICNlbmRpZgogCitz
dGF0aWMgaW50IGZpbmRITFNRdWV1ZShjb25zdCBHVmFsdWUqIGl0ZW0pCit7CisgICAgR3N0RWxl
bWVudCogZWxlbWVudCA9IEdTVF9FTEVNRU5UKGdfdmFsdWVfZ2V0X29iamVjdChpdGVtKSk7Cisg
ICAgaWYgKGdfc3RyX2hhc19wcmVmaXgoR1NUX0VMRU1FTlRfTkFNRShlbGVtZW50KSwgInF1ZXVl
IikpIHsKKyAgICAgICAgR3N0RWxlbWVudCogcGFyZW50ID0gR1NUX0VMRU1FTlQoR1NUX0VMRU1F
TlRfUEFSRU5UKGVsZW1lbnQpKTsKKyAgICAgICAgaWYgKCFHU1RfSVNfT0JKRUNUKHBhcmVudCkp
CisgICAgICAgICAgICByZXR1cm4gMTsKKworICAgICAgICBpZiAoZ19zdHJfaGFzX3ByZWZpeChH
U1RfRUxFTUVOVF9OQU1FKEdTVF9FTEVNRU5UX1BBUkVOVChwYXJlbnQpKSwgImhsc2RlbXV4Iikp
CisgICAgICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKKyAgICByZXR1cm4gMTsKK30KKworc3Rh
dGljIGJvb2wgaXNITFNQcm9ncmVzc2luZyhHc3RFbGVtZW50KiBwbGF5YmluLCBHc3RRdWVyeSog
cXVlcnkpCit7CisgICAgR1ZhbHVlIGl0ZW0gPSB7IH07CisgICAgR3N0SXRlcmF0b3IqIGJpbkl0
ZXJhdG9yID0gZ3N0X2Jpbl9pdGVyYXRlX3JlY3Vyc2UoR1NUX0JJTihwbGF5YmluKSk7CisgICAg
Ym9vbCBmb3VuZEhMU1F1ZXVlID0gZ3N0X2l0ZXJhdG9yX2ZpbmRfY3VzdG9tKGJpbkl0ZXJhdG9y
LCByZWludGVycHJldF9jYXN0PEdDb21wYXJlRnVuYz4oZmluZEhMU1F1ZXVlKSwgJml0ZW0sIG51
bGxwdHIpOworICAgIGdzdF9pdGVyYXRvcl9mcmVlKGJpbkl0ZXJhdG9yKTsKKworICAgIGlmICgh
Zm91bmRITFNRdWV1ZSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgR3N0RWxlbWVudCog
cXVldWVFbGVtZW50ID0gR1NUX0VMRU1FTlQoZ192YWx1ZV9nZXRfb2JqZWN0KCZpdGVtKSk7Cisg
ICAgYm9vbCBxdWVyeVJlc3VsdCA9IGdzdF9lbGVtZW50X3F1ZXJ5KHF1ZXVlRWxlbWVudCwgcXVl
cnkpOworICAgIGdfdmFsdWVfdW5zZXQoJml0ZW0pOworCisgICAgcmV0dXJuIHF1ZXJ5UmVzdWx0
OworfQorCiB2b2lkIE1lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lcjo6ZmlsbFRpbWVyRmlyZWQo
KQogewogICAgIEdzdFF1ZXJ5KiBxdWVyeSA9IGdzdF9xdWVyeV9uZXdfYnVmZmVyaW5nKEdTVF9G
T1JNQVRfUEVSQ0VOVCk7CiAKLSAgICBpZiAoIWdzdF9lbGVtZW50X3F1ZXJ5KG1fcGlwZWxpbmUu
Z2V0KCksIHF1ZXJ5KSkgewotICAgICAgICBnc3RfcXVlcnlfdW5yZWYocXVlcnkpOwotICAgICAg
ICByZXR1cm47CisgICAgaWYgKEdfVU5MSUtFTFkoIWdzdF9lbGVtZW50X3F1ZXJ5KG1fcGlwZWxp
bmUuZ2V0KCksIHF1ZXJ5KSkpIHsKKyAgICAgICAgLy8gVGhpcyBxdWVyeSBhbHdheXMgZmFpbHMg
Zm9yIGxpdmUgcGlwZWxpbmVzLiBJbiB0aGUgY2FzZSBvZiBITFMsIHRyeSBhbmQgZmluZAorICAg
ICAgICAvLyB0aGUgcXVldWUgaW5zaWRlIHRoZSBITFMgZWxlbWVudCB0byBnZXQgYSBwcm94eSBt
ZWFzdXJlIG9mIHByb2dyZXNzLiBOb3RlCisgICAgICAgIC8vIHRoYXQgdGhlIHBlcmNlbnRhZ2Ug
dmFsdWUgaXMgcmF0aGVyIG1lYW5pbmdsZXNzIGFzIHVzZWQgYmVsb3cuCisgICAgICAgIC8vIFRo
aXMgaXMgYSBoYWNrLCBzZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTE0MTQ2OS4KKyAgICAgICAgaWYgKCFpc0hMU1Byb2dyZXNzaW5nKG1fcGlwZWxpbmUuZ2V0KCks
IHF1ZXJ5KSkgeworICAgICAgICAgICAgZ3N0X3F1ZXJ5X3VucmVmKHF1ZXJ5KTsKKyAgICAgICAg
ICAgIHJldHVybjsKKyAgICAgICAgfQogICAgIH0KIAogICAgIGdpbnQ2NCBzdGFydCwgc3RvcDsK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBkZDUyNGFkZThkMDdkOGM1OWY3NmYwOTQ0M2FkZjFjMjJlMDQ0NDE3Li5mYTMzOTlh
ZWE3NmU1ZmViOGJmNWQzNzBhMTcxNGVkNzJlMzMyYTMyIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAK
KzIwMTctMDctMjAgIENoYXJsaWUgVHVybmVyICA8Y3R1cm5lckBpZ2FsaWEuY29tPgorCisgICAg
ICAgIFtHVEtdIExheW91dCBUZXN0IGh0dHAvdGVzdHMvbWVkaWEvaGxzL2hscy1wcm9ncmVzcy5o
dG1sIGlzIGZhaWxpbmcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTE0MTQ2OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIEZpeGVzIHRoZSByZW1vdmVkIHRlc3RzLgorCisgICAgICAgICogcGxhdGZvcm0vZ3Rr
L1Rlc3RFeHBlY3RhdGlvbnM6CisKIDIwMTctMDctMTYgIEFudG9pbmUgUXVpbnQgIDxncmFvdXRz
QGFwcGxlLmNvbT4KIAogICAgICAgICBEaXNtaXNzaW5nIHRoZSBjYXB0aW9ucyBwYW5lbCB1c2lu
ZyB0aGUgbW91c2UgaXMgdG9vIGVhZ2VyIHRvIHJlbW92ZSB0aGUgY2FwdGlvbnMgcGFuZWwgYW5k
IG1lZGlhIGNvbnRyb2xzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvVGVz
dEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9UZXN0RXhwZWN0YXRpb25z
CmluZGV4IGI4ZjhmZWNiZTIwYzE2Nzc2MGJlZjljZWViNmVjZDNhMjYxYzM3MjEuLjk5NjE2Yzlm
ZGUwNDJkZTk5OWRjOGU5OGEwZWRmOTczYjUzOTM5YTAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L3BsYXRmb3JtL2d0ay9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3Jt
L2d0ay9UZXN0RXhwZWN0YXRpb25zCkBAIC05NDUsNyArOTQ1LDYgQEAgd2Via2l0Lm9yZy9iLzE0
MTQ2NiBmYXN0L21lZGlhL21xLXBvaW50ZXItc3R5bGluZy5odG1sIFsgRmFpbHVyZSBdCiB3ZWJr
aXQub3JnL2IvMTQxNDY2IGZhc3QvbWVkaWEvbXEtcG9pbnRlci5odG1sIFsgRmFpbHVyZSBdCiAK
IHdlYmtpdC5vcmcvYi8xMTYyNTkgaHR0cC90ZXN0cy9jYWNoZS93aWxsc2VuZHJlcXVlc3QtcmV0
dXJucy1udWxsLWZvci1tZW1vcnktY2FjaGUtbG9hZC5odG1sIFsgRmFpbHVyZSBdCi13ZWJraXQu
b3JnL2IvMTQxNDY5IFsgUmVsZWFzZSBdIGh0dHAvdGVzdHMvbWVkaWEvaGxzL2hscy1wcm9ncmVz
cy5odG1sIFsgRmFpbHVyZSBdCiB3ZWJraXQub3JnL2IvMTQxNDIzIHN2Zy9jc3MvZ2V0Q29tcHV0
ZWRTdHlsZS1iYXNpYy54aHRtbCBbIEZhaWx1cmUgXQogCiB3ZWJraXQub3JnL2IvMTQxNDY3IGZh
c3QvbXVsdGljb2wvcGFnaW5hdGlvbi9MZWZ0VG9SaWdodC10Yi1oaXR0ZXN0Lmh0bWwgWyBGYWls
dXJlIF0KQEAgLTExMDcsOCArMTEwNiw2IEBAIHdlYmtpdC5vcmcvYi8xNTQzOTAgaHR0cC90ZXN0
cy9tZWRpYS92aWRlby1yZWRpcmVjdC5odG1sIFsgVGltZW91dCBQYXNzIF0KIHdlYmtpdC5vcmcv
Yi8xNTQzOTAgWyBSZWxlYXNlIF0gaHR0cC90ZXN0cy9tZWRpYS9obHMvdmlkZW8tY29udHJvbGxl
ci1nZXRTdGFydERhdGUuaHRtbCBbIFRpbWVvdXQgRmFpbHVyZSBdCiB3ZWJraXQub3JnL2IvMTU0
MzkwIFsgUmVsZWFzZSBdIGh0dHAvdGVzdHMvbWVkaWEvaGxzL2hscy1hdWRpby10cmFja3MtbG9j
YWxlLXNlbGVjdGlvbi5odG1sIFsgVGltZW91dCBGYWlsdXJlIF0KIHdlYmtpdC5vcmcvYi8xNTQz
OTAgWyBSZWxlYXNlIF0gaHR0cC90ZXN0cy9tZWRpYS9obHMvaGxzLXZpZGVvLXJlc2l6ZS5odG1s
IFsgVGltZW91dCBGYWlsdXJlIF0KLXdlYmtpdC5vcmcvYi8xNTQzOTAgWyBSZWxlYXNlIF0gaHR0
cC90ZXN0cy9tZWRpYS9obHMvaGxzLWF1ZGlvLXRyYWNrcy5odG1sIFsgVGltZW91dCBGYWlsdXJl
IF0KLXdlYmtpdC5vcmcvYi8xNTQzOTAgWyBSZWxlYXNlIF0gaHR0cC90ZXN0cy9tZWRpYS9obHMv
aGxzLWF1ZGlvLXRyYWNrcy1oYXMtYXVkaW8uaHRtbCBbIFRpbWVvdXQgRmFpbHVyZSBdCiB3ZWJr
aXQub3JnL2IvMTU0MzkwIGh0dHAvdGVzdHMvc2VjdXJpdHkvbG9jYWwtdmlkZW8tc291cmNlLWZy
b20tcmVtb3RlLmh0bWwgWyBUaW1lb3V0IFBhc3MgXQogCiB3ZWJraXQub3JnL2IvMTU1NTA1IGh0
dHAvdGVzdHMvc2VjdXJpdHkvY29udGVudFNlY3VyaXR5UG9saWN5L3VzZXJBZ2VudFNoYWRvd0RP
TS9hbGxvdy1hdWRpby5odG1sIFsgU2tpcCBdCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>