<?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>46241</bug_id>
          
          <creation_ts>2010-09-21 20:11:27 -0700</creation_ts>
          <short_desc>HTML5 video element Useragent string is QuickTime</short_desc>
          <delta_ts>2012-03-07 13:28:06 -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>Media</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Windows 7</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc>http://exposureroom.com</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Critical</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Shiv Kumar">shivk</reporter>
          <assigned_to name="Eric Carlson">eric.carlson</assigned_to>
          <cc>dbates</cc>
    
    <cc>eric.carlson</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>282748</commentid>
    <comment_count>0</comment_count>
    <who name="Shiv Kumar">shivk</who>
    <bug_when>2010-09-21 20:11:27 -0700</bug_when>
    <thetext>When Safari makes a request for a video stream, the useragent string the server side receives is Quicktime. This causes problems because we don&apos;t typically allow Quicktime direct access to videos.

The useragent string should be the same as the Safari useragent string.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>282919</commentid>
    <comment_count>1</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2010-09-22 07:24:13 -0700</bug_when>
    <thetext>&lt;rdar://problem/8463568&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>572050</commentid>
    <comment_count>2</comment_count>
      <attachid>130426</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2012-03-06 12:13:11 -0800</bug_when>
    <thetext>Created attachment 130426
Proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>573078</commentid>
    <comment_count>3</comment_count>
      <attachid>130426</attachid>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2012-03-07 11:50:40 -0800</bug_when>
    <thetext>Comment on attachment 130426
Proposed patch

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

This patch looks straightforward to me.

Notice that the code in LayoutTests/http/tests/media/resources/serve-video.php doesn&apos;t adhere to the WebKit style guide. Although we don&apos;t seem to strictly enforce these rules for test files and test support files, you may want to consider fixing the style so as to be consistent with the style guide either in this patch or in a follow up patch.

&gt; Source/WebCore/ChangeLog:3
&gt; +        Html 5 video element Useragent string is Quicktime

Nit: &quot;Html 5&quot; =&gt; &quot;HTML5&quot;

&gt; LayoutTests/http/tests/media/resources/serve-video.php:12
&gt; +        $range = explode(&quot;-&quot;, substr($contentRange, 6)); 

I know that you extracted this code from file LayoutTests/http/tests/media/resources/video-referer-check-referer.php.

The number 6 for the length parameter of substr() seems mysterious, especially for people who may not be familiar with the syntax for Byte Ranges (maybe we don&apos;t have to worry about this audience?) . For your consideration, I suggest either substituting the expression strlen(&quot;bytes=&quot;) or adding an inline comment that explains that 6 is the length of the bytes-unit string &quot;bytes=&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>573083</commentid>
    <comment_count>4</comment_count>
    <who name="Daniel Bates">dbates</who>
    <bug_when>2012-03-07 11:53:05 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt;
&gt;[...] length of the bytes-unit string &quot;bytes=&quot;.

This should read:

[...] length of the bytes-unit string plus &quot;=&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>573173</commentid>
    <comment_count>5</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2012-03-07 13:27:47 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; (From update of attachment 130426 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=130426&amp;action=review
&gt; 
&gt; Notice that the code in LayoutTests/http/tests/media/resources/serve-video.php doesn&apos;t adhere to the WebKit style guide. Although we don&apos;t seem to strictly enforce these rules for test files and test support files, you may want to consider fixing the style so as to be consistent with the style guide either in this patch or in a follow up patch.
&gt; 
Done.

&gt; &gt; Source/WebCore/ChangeLog:3
&gt; &gt; +        Html 5 video element Useragent string is Quicktime
&gt; 
&gt; Nit: &quot;Html 5&quot; =&gt; &quot;HTML5&quot;
&gt; 
&gt; &gt; LayoutTests/http/tests/media/resources/serve-video.php:12
&gt; &gt; +        $range = explode(&quot;-&quot;, substr($contentRange, 6)); 
&gt; 
&gt; I know that you extracted this code from file LayoutTests/http/tests/media/resources/video-referer-check-referer.php.
&gt; 
Well, I &quot;extracted&quot; code that I wrote in the first place so the fault is mine ;-)

&gt; The number 6 for the length parameter of substr() seems mysterious, especially for people who may not be familiar with the syntax for Byte Ranges (maybe we don&apos;t have to worry about this audience?) . For your consideration, I suggest either substituting the expression strlen(&quot;bytes=&quot;) or adding an inline comment that explains that 6 is the length of the bytes-unit string &quot;bytes=&quot;.

Done.

Thanks for the review!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>573175</commentid>
    <comment_count>6</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2012-03-07 13:28:06 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/110095</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>130426</attachid>
            <date>2012-03-06 12:13:11 -0800</date>
            <delta_ts>2012-03-07 11:50:40 -0800</delta_ts>
            <desc>Proposed patch</desc>
            <filename>user_agent_2.txt</filename>
            <type>text/plain</type>
            <size>12476</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEwOTkzOSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI1IEBACisyMDEyLTAzLTA2ICBFcmljIENh
cmxzb24gIDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIEh0bWwgNSB2aWRlbyBl
bGVtZW50IFVzZXJhZ2VudCBzdHJpbmcgaXMgUXVpY2t0aW1lCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00NjI0MQorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRlc3Q6IGh0dHAvdGVzdHMvbWVkaWEvdmlkZW8t
dXNlcmFnZW50Lmh0bWwKKworICAgICAgICAqIGh0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50OjptZWRpYVBsYXllclVzZXJBZ2VudCk6
IFJldHVybiB0aGUgVUEgc3RyaW5nIGZvciB0aGUgY3VycmVudCBzb3VyY2UuCisgICAgICAgICog
aHRtbC9IVE1MTWVkaWFFbGVtZW50Lmg6CisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9N
ZWRpYVBsYXllci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXllcjo6dXNlckFnZW50
KTogIE5ldywgcmV0dXJuIHRoZSBjbGllbnQncyBtZWRpYVBsYXllclVzZXJBZ2VudC4KKyAgICAg
ICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5oOgorICAgICAgICAoV2ViQ29yZTo6
TWVkaWFQbGF5ZXJDbGllbnQ6Om1lZGlhUGxheWVyVXNlckFnZW50KToKKworICAgICAgICAqIHBs
YXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZUFWRm91
bmRhdGlvbk9iakMubW06CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXllclByaXZhdGVBVkZv
dW5kYXRpb25PYmpDOjpjcmVhdGVBVkFzc2V0Rm9yVVJMKTogVGVsbCBBVkZvdW5kYXRpb24gdG8g
c2V0CisgICAgICAgICAgICB0aGUgVUEgaGVhZGVyLgorCiAyMDEyLTAzLTA1ICBKb3NlcGggUGVj
b3Jhcm8gIDxwZWNvcmFyb0BhcHBsZS5jb20+CiAKICAgICAgICAgPGh0dHA6Ly93ZWJraXQub3Jn
L2IvNzg1NzU+IFdlYiBJbnNwZWN0b3I6IERpc2FibGUgZG9jayBidXR0b24gd2hlbiBub3QgYWxs
b3dlZCB0byBkb2NrCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5j
cHAJKHJldmlzaW9uIDEwOTk0MSkKKysrIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxl
bWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQwNjIsNiArNDA2MiwxNiBAQCBTdHJpbmcgSFRN
TE1lZGlhRWxlbWVudDo6bWVkaWFQbGF5ZXJSZWZlCiAgICAgcmV0dXJuIFNlY3VyaXR5UG9saWN5
OjpnZW5lcmF0ZVJlZmVycmVySGVhZGVyKGRvY3VtZW50KCktPnJlZmVycmVyUG9saWN5KCksIG1f
Y3VycmVudFNyYywgZnJhbWUtPmxvYWRlcigpLT5vdXRnb2luZ1JlZmVycmVyKCkpOwogfQogCitT
dHJpbmcgSFRNTE1lZGlhRWxlbWVudDo6bWVkaWFQbGF5ZXJVc2VyQWdlbnQoKSBjb25zdAorewor
ICAgIEZyYW1lKiBmcmFtZSA9IGRvY3VtZW50KCktPmZyYW1lKCk7CisgICAgaWYgKCFmcmFtZSkK
KyAgICAgICAgcmV0dXJuIFN0cmluZygpOworCisgICAgcmV0dXJuIGZyYW1lLT5sb2FkZXIoKS0+
dXNlckFnZW50KG1fY3VycmVudFNyYyk7CisKK30KKwogdm9pZCBIVE1MTWVkaWFFbGVtZW50Ojpy
ZW1vdmVCZWhhdmlvcnNSZXN0cmljdGlvbnNBZnRlckZpcnN0VXNlckdlc3R1cmUoKQogewogICAg
IG1fcmVzdHJpY3Rpb25zID0gTm9SZXN0cmljdGlvbnM7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxNZWRpYUVsZW1lbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxNZWRpYUVsZW1lbnQuaAkocmV2aXNpb24gMTA5OTQxKQorKysgU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MTWVkaWFFbGVtZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTM5MCw2ICszOTAsNyBA
QCBwcml2YXRlOgogI2VuZGlmCiAKICAgICB2aXJ0dWFsIFN0cmluZyBtZWRpYVBsYXllclJlZmVy
cmVyKCkgY29uc3QgT1ZFUlJJREU7CisgICAgdmlydHVhbCBTdHJpbmcgbWVkaWFQbGF5ZXJVc2Vy
QWdlbnQoKSBjb25zdCBPVkVSUklERTsKIAogICAgIHZvaWQgbG9hZFRpbWVyRmlyZWQoVGltZXI8
SFRNTE1lZGlhRWxlbWVudD4qKTsKICAgICB2b2lkIHByb2dyZXNzRXZlbnRUaW1lckZpcmVkKFRp
bWVyPEhUTUxNZWRpYUVsZW1lbnQ+Kik7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9NZWRpYVBsYXllci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuY3BwCShyZXZpc2lvbiAxMDk5NDEpCisrKyBTb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTkzNyw2ICs5MzcsMTQgQEAgU3RyaW5nIE1lZGlhUGxheWVyOjpyZWZlcnJlcigpIGNv
bnN0CiAgICAgcmV0dXJuIG1fbWVkaWFQbGF5ZXJDbGllbnQtPm1lZGlhUGxheWVyUmVmZXJyZXIo
KTsKIH0KIAorU3RyaW5nIE1lZGlhUGxheWVyOjp1c2VyQWdlbnQoKSBjb25zdAoreworICAgIGlm
ICghbV9tZWRpYVBsYXllckNsaWVudCkKKyAgICAgICAgcmV0dXJuIFN0cmluZygpOworICAgIAor
ICAgIHJldHVybiBtX21lZGlhUGxheWVyQ2xpZW50LT5tZWRpYVBsYXllclVzZXJBZ2VudCgpOwor
fQorCiB9CiAKICNlbmRpZgpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
TWVkaWFQbGF5ZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9NZWRpYVBsYXllci5oCShyZXZpc2lvbiAxMDk5NDEpCisrKyBTb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5oCSh3b3JraW5nIGNvcHkpCkBAIC0xNjksNiAr
MTY5LDcgQEAgcHVibGljOgogI2VuZGlmCiAKICAgICB2aXJ0dWFsIFN0cmluZyBtZWRpYVBsYXll
clJlZmVycmVyKCkgY29uc3QgeyByZXR1cm4gU3RyaW5nKCk7IH0KKyAgICB2aXJ0dWFsIFN0cmlu
ZyBtZWRpYVBsYXllclVzZXJBZ2VudCgpIGNvbnN0IHsgcmV0dXJuIFN0cmluZygpOyB9CiB9Owog
CiBjbGFzcyBNZWRpYVBsYXllciB7CkBAIC0zMzYsNiArMzM3LDcgQEAgcHVibGljOgogI2VuZGlm
CiAKICAgICBTdHJpbmcgcmVmZXJyZXIoKSBjb25zdDsKKyAgICBTdHJpbmcgdXNlckFnZW50KCkg
Y29uc3Q7CiAKIHByaXZhdGU6CiAgICAgTWVkaWFQbGF5ZXIoTWVkaWFQbGF5ZXJDbGllbnQqKTsK
SW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpj
L01lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9iakMubW0KPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5
ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQy5tbQkocmV2aXNpb24gMTA5OTQxKQorKysgU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQ
cml2YXRlQVZGb3VuZGF0aW9uT2JqQy5tbQkod29ya2luZyBjb3B5KQpAQCAtMjYxLDEyICsyNjEs
MTggQEAgdm9pZCBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDOgogICAgIFtvcHRp
b25zLmdldCgpIHNldE9iamVjdDpbTlNOdW1iZXIgbnVtYmVyV2l0aEludDpBVkFzc2V0UmVmZXJl
bmNlUmVzdHJpY3Rpb25Gb3JiaWRSZW1vdGVSZWZlcmVuY2VUb0xvY2FsIHwgQVZBc3NldFJlZmVy
ZW5jZVJlc3RyaWN0aW9uRm9yYmlkTG9jYWxSZWZlcmVuY2VUb1JlbW90ZV0gZm9yS2V5OkFWVVJM
QXNzZXRSZWZlcmVuY2VSZXN0cmljdGlvbnNLZXldOwogCiAjaWYgIWRlZmluZWQoQlVJTERJTkdf
T05fU05PV19MRU9QQVJEKSAmJiAhZGVmaW5lZChCVUlMRElOR19PTl9MSU9OKQorICAgIFJldGFp
blB0cjxOU011dGFibGVEaWN0aW9uYXJ5PiBoZWFkZXJGaWVsZHMoQWRvcHROUywgW1tOU011dGFi
bGVEaWN0aW9uYXJ5IGFsbG9jXSBpbml0XSk7CisKICAgICBTdHJpbmcgcmVmZXJyZXIgPSBwbGF5
ZXIoKS0+cmVmZXJyZXIoKTsKLSAgICBpZiAoIXJlZmVycmVyLmlzRW1wdHkoKSkgewotICAgICAg
ICBSZXRhaW5QdHI8TlNNdXRhYmxlRGljdGlvbmFyeT4gaGVhZGVyRmllbGRzKEFkb3B0TlMsIFtb
TlNNdXRhYmxlRGljdGlvbmFyeSBhbGxvY10gaW5pdF0pOworICAgIGlmICghcmVmZXJyZXIuaXNF
bXB0eSgpKQogICAgICAgICBbaGVhZGVyRmllbGRzLmdldCgpIHNldE9iamVjdDpyZWZlcnJlciBm
b3JLZXk6QCJSZWZlcmVyIl07CisKKyAgICBTdHJpbmcgdXNlckFnZW50ID0gcGxheWVyKCktPnVz
ZXJBZ2VudCgpOworICAgIGlmICghdXNlckFnZW50LmlzRW1wdHkoKSkKKyAgICAgICAgW2hlYWRl
ckZpZWxkcy5nZXQoKSBzZXRPYmplY3Q6dXNlckFnZW50IGZvcktleTpAIlVzZXItQWdlbnQiXTsK
KworICAgIGlmIChbaGVhZGVyRmllbGRzLmdldCgpIGNvdW50XSkKICAgICAgICAgW29wdGlvbnMu
Z2V0KCkgc2V0T2JqZWN0OmhlYWRlckZpZWxkcy5nZXQoKSBmb3JLZXk6QCJBVlVSTEFzc2V0SFRU
UEhlYWRlckZpZWxkc0tleSJdOwotICAgIH0KICNlbmRpZgogCiAgICAgTlNVUkwgKmNvY29hVVJM
ID0gS1VSTChQYXJzZWRVUkxTdHJpbmcsIHVybCk7CkluZGV4OiBMYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAxMDk5Mzkp
CisrKyBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNyBA
QAorMjAxMi0wMy0wNiAgRXJpYyBDYXJsc29uICA8ZXJpYy5jYXJsc29uQGFwcGxlLmNvbT4KKwor
ICAgICAgICBIdG1sIDUgdmlkZW8gZWxlbWVudCBVc2VyYWdlbnQgc3RyaW5nIGlzIFF1aWNrdGlt
ZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDYyNDEK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGh0dHAv
dGVzdHMvbWVkaWEvcmVzb3VyY2VzL3NlcnZlLXZpZGVvLnBocDogQWRkZWQuCisgICAgICAgICog
aHR0cC90ZXN0cy9tZWRpYS9yZXNvdXJjZXMvdmlkZW8tY2hlY2stdXNlcmFnZW50LnBocDogQWRk
ZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9tZWRpYS9yZXNvdXJjZXMvdmlkZW8tcmVmZXJlci1j
aGVjay1yZWZlcmVyLnBocDogU3BsaXQgbWVkaWEgbG9hZGluZyBsb2dpYworICAgICAgICAgICAg
b3V0IGludG8gc2VydmUtdmlkZW8ucGhwLgorICAgICAgICAqIGh0dHAvdGVzdHMvbWVkaWEvdmlk
ZW8tdXNlcmFnZW50LWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogaHR0cC90ZXN0cy9t
ZWRpYS92aWRlby11c2VyYWdlbnQuaHRtbDogQWRkZWQuCisKIDIwMTItMDMtMDYgIEhhbnMgV2Vu
bmJvcmcgIDxoYW5zQGNocm9taXVtLm9yZz4KIAogICAgICAgICBTcGVlY2ggSmF2YVNjcmlwdCBB
UEk6IGFkZCBTcGVlY2hSZWNvZ25pdGlvbkVycm9yCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rl
c3RzL21lZGlhL3ZpZGVvLXVzZXJhZ2VudC1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5
b3V0VGVzdHMvaHR0cC90ZXN0cy9tZWRpYS92aWRlby11c2VyYWdlbnQtZXhwZWN0ZWQudHh0CShy
ZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9tZWRpYS92aWRlby11c2VyYWdl
bnQtZXhwZWN0ZWQudHh0CShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDUgQEAKKyAKK1Rlc3RzIHRo
YXQgdGhlIG1lZGlhIHBsYXllciBzZW5kcyB0aGUgV2ViS2l0IFVzZXIgQWdlbnQgc3RyaW5nIHdo
ZW4gcmVxdWVzdGluZyBhIG1lZGlhIGZpbGUuICAKK0VWRU5UKGNhbnBsYXkpCitFTkQgT0YgVEVT
VAorCkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21lZGlhL3ZpZGVvLXVzZXJhZ2VudC5o
dG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbWVkaWEvdmlkZW8tdXNl
cmFnZW50Lmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21lZGlh
L3ZpZGVvLXVzZXJhZ2VudC5odG1sCShyZXZpc2lvbiAwKQpAQCAtMCwwICsxLDM4IEBACis8aHRt
bD4KKyAgICA8aGVhZD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Li4vLi4vbWVkaWEtcmVzb3VyY2Vz
L3ZpZGVvLXRlc3QuanM+PC9zY3JpcHQ+CisgICAgICAgIDxzY3JpcHQgc3JjPS4uLy4uL21lZGlh
LXJlc291cmNlcy9tZWRpYS1maWxlLmpzPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0PgorICAg
ICAgICAgICAgZnVuY3Rpb24gbG9hZE1lZGlhRnJhbWUoKSAKKyAgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgICBmaW5kTWVkaWFFbGVtZW50KCk7CisKKyAgICAgICAgICAgICAgICB2YXIgbW92
aWUgPSBmaW5kTWVkaWFGaWxlKCd2aWRlbycsICd0ZXN0Jyk7CisgICAgICAgICAgICAgICAgdmFy
IHR5cGUgPSBtaW1lVHlwZUZvckV4dGVuc2lvbihtb3ZpZS5zcGxpdCgnLicpLnBvcCgpKTsKKyAg
ICAgICAgICAgICAgICB2YXIgZnJhbWUgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdpZnJhbWUn
KTsKKyAgICAgICAgICAgICAgICBmcmFtZS53aWR0aCA9IDA7CisgICAgICAgICAgICAgICAgZnJh
bWUuaGVpZ2h0ID0gMDsKKyAgICAgICAgICAgICAgICBmcmFtZS5hZGRFdmVudExpc3RlbmVyKCds
b2FkJywgZnVuY3Rpb24gKCkgeworICAgICAgICAgICAgICAgICAgICAgICAgc291cmNlID0gZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3NvdXJjZScpOworICAgICAgICAgICAgICAgICAgICAgICAg
c291cmNlLnNyYyA9ICdodHRwOi8vMTI3LjAuMC4xOjgwMDAvbWVkaWEvcmVzb3VyY2VzL3ZpZGVv
LWNoZWNrLXVzZXJhZ2VudC5waHA/bmFtZT0nICsgbW92aWUgKyAnJnR5cGU9JyArIHR5cGU7Cisg
ICAgICAgICAgICAgICAgICAgICAgICBzb3VyY2UudHlwZSA9IHR5cGU7CisgICAgICAgIAorICAg
ICAgICAgICAgICAgICAgICAgICAgd2FpdEZvckV2ZW50QW5kRmFpbCgnZXJyb3InKTsKKyAgICAg
ICAgICAgICAgICAgICAgICAgIHdhaXRGb3JFdmVudEFuZEVuZCgnY2FucGxheScpOworICAgICAg
ICAgICAgICAgICAgICAgICAgdmlkZW8ubG9hZCgpOworICAgICAgICAgICAgICAgIH0pOworICAg
ICAgICAKKyAgICAgICAgICAgICAgICBmcmFtZS5zcmMgPSAiZGF0YTp0ZXh0L2h0bWwsPGI+dGVz
dDwvYj4iOworICAgICAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZnJhbWUp
OworICAgICAgICAgICAgfQorICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisKKyAgICA8
Ym9keSBvbmxvYWQ9ImxvYWRNZWRpYUZyYW1lKCkiPgorICAgICAgICA8dmlkZW8gaWQ9InZpZGVv
Ij4KKyAgICAgICAgICAgIDxzb3VyY2UgaWQ9InNvdXJjZSI+CisgICAgICAgIDwvdmlkZW8+Cisg
ICAgICAgIDxicj4KKyAgICAgICAgVGVzdHMgdGhhdCB0aGUgbWVkaWEgcGxheWVyIHNlbmRzIHRo
ZSBXZWJLaXQgVXNlciBBZ2VudCBzdHJpbmcgd2hlbiByZXF1ZXN0aW5nIGEgbWVkaWEgZmlsZS4K
KyAgICA8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21lZGlh
L3Jlc291cmNlcy9zZXJ2ZS12aWRlby5waHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvaHR0
cC90ZXN0cy9tZWRpYS9yZXNvdXJjZXMvc2VydmUtdmlkZW8ucGhwCShyZXZpc2lvbiAwKQorKysg
TGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9tZWRpYS9yZXNvdXJjZXMvc2VydmUtdmlkZW8ucGhwCShy
ZXZpc2lvbiAwKQpAQCAtMCwwICsxLDQ4IEBACis8P3BocAorCisgICAgJGZpbGVOYW1lID0gJF9H
RVRbIm5hbWUiXTsKKyAgICAkdHlwZSA9ICRfR0VUWyJ0eXBlIl07CisKKyAgICAkZmlsZVNpemUg
PSBmaWxlc2l6ZSgkZmlsZU5hbWUpOworICAgICRzdGFydCA9IDA7CisgICAgJGVuZCA9ICRmaWxl
U2l6ZSAtIDE7CisgICAgJGNvbnRlbnRSYW5nZSA9ICRfU0VSVkVSWyJIVFRQX1JBTkdFIl07Cisg
ICAgaWYgKGlzc2V0KCRjb250ZW50UmFuZ2UpKQorICAgIHsKKyAgICAgICAgJHJhbmdlID0gZXhw
bG9kZSgiLSIsIHN1YnN0cigkY29udGVudFJhbmdlLCA2KSk7IAorICAgICAgICAkc3RhcnQgPSBp
bnR2YWwoJHJhbmdlWzBdKTsgCisgICAgICAgIGlmICghZW1wdHkoJHJhbmdlWzFdKSkKKyAgICAg
ICAgICAgICRlbmQgPSBpbnR2YWwoJHJhbmdlWzFdKTsKKyAgICAgICAgJGh0dHBTdGF0dXMgPSAi
SFRUUC8xLjEgMjA2IFBhcnRpYWwgQ29udGVudCI7CisgICAgfSBlbHNlCisgICAgICAgICRodHRw
U3RhdHVzID0gIjIwMCBPSyI7CisKKyAgICBoZWFkZXIoIlN0YXR1czogIiAuICRodHRwU3RhdHVz
KTsKKyAgICBoZWFkZXIoIkxhc3QtTW9kaWZpZWQ6ICIgLiBnbWRhdGUoIkQsIGQgTSBZIEg6aTpz
IikgLiAiIEdNVCIpOworICAgIGhlYWRlcigiUHJhZ21hOiBuby1jYWNoZSIpOworICAgIGhlYWRl
cigiRXRhZzogIiAuICciJyAuICRmaWxlU2l6ZSAuICItIiAuIGZpbGVtdGltZSgkZmlsZU5hbWUp
IC4gJyInKTsKKyAgICBoZWFkZXIoIkNvbnRlbnQtVHlwZTogIiAuICR0eXBlKTsKKyAgICBoZWFk
ZXIoIkFjY2VwdC1SYW5nZXM6IGJ5dGVzIik7CisgICAgaGVhZGVyKCJDb250ZW50LUxlbmd0aDog
IiAuICgkZW5kIC0gJHN0YXJ0KSArIDEpOworICAgIGlmICgkY29udGVudFJhbmdlKQorCQloZWFk
ZXIoIkNvbnRlbnQtUmFuZ2U6IGJ5dGVzICIgLiAkc3RhcnQgLiAiLSIgLiAkZW5kIC4gIi8iIC4g
JGZpbGVTaXplKTsgCisgICAgaGVhZGVyKCJDb25uZWN0aW9uOiBjbG9zZSIpOworCisgICAgJGNo
dW5rU2l6ZSA9IDEwMjQgKiAyNTY7CisgICAgJG9mZnNldCA9ICRzdGFydDsKKworICAgICRmbiA9
IGZvcGVuKCRmaWxlTmFtZSwgInJiIik7CisgICAgZnNlZWsoJGZuLCAkb2Zmc2V0LCAwKTsKKwor
ICAgIHdoaWxlICghZmVvZigkZm4pICYmICRvZmZzZXQgPD0gJGVuZCAmJiBjb25uZWN0aW9uX3N0
YXR1cygpID09IDApCisgICAgeworICAgICAgICAkcmVhZFNpemUgPSBtaW4oJGNodW5rU2l6ZSwg
KCRlbmQgLSAkb2Zmc2V0KSArIDEpOworICAgICAgICAkYnVmZmVyID0gZnJlYWQoJGZuLCAkcmVh
ZFNpemUpOworICAgICAgICBwcmludCgkYnVmZmVyKTsKKyAgICAgICAgZmx1c2goKTsKKyAgICAg
ICAgJG9mZnNldCArPSAkY2h1bmtTaXplOworICAgIH0KKyAgICBmY2xvc2UoJGZuKTsKKworICAg
IGV4aXQ7Cis/PgpJbmRleDogTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9tZWRpYS9yZXNvdXJjZXMv
dmlkZW8tY2hlY2stdXNlcmFnZW50LnBocAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9odHRw
L3Rlc3RzL21lZGlhL3Jlc291cmNlcy92aWRlby1jaGVjay11c2VyYWdlbnQucGhwCShyZXZpc2lv
biAwKQorKysgTGF5b3V0VGVzdHMvaHR0cC90ZXN0cy9tZWRpYS9yZXNvdXJjZXMvdmlkZW8tY2hl
Y2stdXNlcmFnZW50LnBocAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwxNiBAQAorPD9waHAKKwor
ICAgICR1YSA9ICRfU0VSVkVSWyJIVFRQX1VTRVJfQUdFTlQiXTsKKworICAgIGlmICghaXNzZXQo
JHVhKSB8fCBzdHJpcG9zKCR1YSwgIldlYktpdC8iKSA9PT0gZmFsc2UgfHwgc3RyaXBvcygkdWEs
ICIoS0hUTUwsIGxpa2UgR2Vja28pIikgPT09IGZhbHNlKQorICAgICAgICBkaWU7CisKKyAgICAk
ZmlsZU5hbWUgPSAkX0dFVFsibmFtZSJdOworICAgICR0eXBlID0gJF9HRVRbInR5cGUiXTsKKwor
ICAgICRfR0VUID0gYXJyYXkoKTsKKyAgICAkX0dFVFsnbmFtZSddID0gJGZpbGVOYW1lOworICAg
ICRfR0VUWyd0eXBlJ10gPSAkdHlwZTsKKyAgICBAaW5jbHVkZSgiLi9zZXJ2ZS12aWRlby5waHAi
KTsgCisKKz8+CkluZGV4OiBMYXlvdXRUZXN0cy9odHRwL3Rlc3RzL21lZGlhL3Jlc291cmNlcy92
aWRlby1yZWZlcmVyLWNoZWNrLXJlZmVyZXIucGhwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L2h0dHAvdGVzdHMvbWVkaWEvcmVzb3VyY2VzL3ZpZGVvLXJlZmVyZXItY2hlY2stcmVmZXJlci5w
aHAJKHJldmlzaW9uIDEwOTQxMikKKysrIExheW91dFRlc3RzL2h0dHAvdGVzdHMvbWVkaWEvcmVz
b3VyY2VzL3ZpZGVvLXJlZmVyZXItY2hlY2stcmVmZXJlci5waHAJKHdvcmtpbmcgY29weSkKQEAg
LTcsNDYgKzcsOSBAQAogICAgICRmaWxlTmFtZSA9ICRfR0VUWyJuYW1lIl07CiAgICAgJHR5cGUg
PSAkX0dFVFsidHlwZSJdOwogCi0gICAgJGZpbGVTaXplID0gZmlsZXNpemUoJGZpbGVOYW1lKTsK
LSAgICAkc3RhcnQgPSAwOwotICAgICRlbmQgPSAkZmlsZVNpemUgLSAxOwotICAgICRjb250ZW50
UmFuZ2UgPSAkX1NFUlZFUlsiSFRUUF9SQU5HRSJdOwotICAgIGlmIChpc3NldCgkY29udGVudFJh
bmdlKSkKLSAgICB7Ci0gICAgICAgICRyYW5nZSA9IGV4cGxvZGUoIi0iLCBzdWJzdHIoJGNvbnRl
bnRSYW5nZSwgNikpOyAKLSAgICAgICAgJHN0YXJ0ID0gaW50dmFsKCRyYW5nZVswXSk7IAotICAg
ICAgICBpZiAoIWVtcHR5KCRyYW5nZVsxXSkpCi0gICAgICAgICAgICAkZW5kID0gaW50dmFsKCRy
YW5nZVsxXSk7Ci0gICAgICAgICRodHRwU3RhdHVzID0gIkhUVFAvMS4xIDIwNiBQYXJ0aWFsIENv
bnRlbnQiOwotICAgIH0gZWxzZQotICAgICAgICAkaHR0cFN0YXR1cyA9ICIyMDAgT0siOworICAg
ICRfR0VUID0gYXJyYXkoKTsKKyAgICAkX0dFVFsnbmFtZSddID0gJGZpbGVOYW1lOworICAgICRf
R0VUWyd0eXBlJ10gPSAkdHlwZTsKKyAgICBAaW5jbHVkZSgiLi9zZXJ2ZS12aWRlby5waHAiKTsg
CiAKLSAgICBoZWFkZXIoIlN0YXR1czogIiAuICRodHRwU3RhdHVzKTsKLSAgICBoZWFkZXIoIkxh
c3QtTW9kaWZpZWQ6ICIgLiBnbWRhdGUoIkQsIGQgTSBZIEg6aTpzIikgLiAiIEdNVCIpOwotICAg
IGhlYWRlcigiUHJhZ21hOiBuby1jYWNoZSIpOwotICAgIGhlYWRlcigiRXRhZzogIiAuICciJyAu
ICRmaWxlU2l6ZSAuICItIiAuIGZpbGVtdGltZSgkZmlsZU5hbWUpIC4gJyInKTsKLSAgICBoZWFk
ZXIoIkNvbnRlbnQtVHlwZTogIiAuICR0eXBlKTsKLSAgICBoZWFkZXIoIkFjY2VwdC1SYW5nZXM6
IGJ5dGVzIik7Ci0gICAgaGVhZGVyKCJDb250ZW50LUxlbmd0aDogIiAuICgkZW5kIC0gJHN0YXJ0
KSArIDEpOwotICAgIGlmICgkY29udGVudFJhbmdlKQotCQloZWFkZXIoIkNvbnRlbnQtUmFuZ2U6
IGJ5dGVzICIgLiAkc3RhcnQgLiAiLSIgLiAkZW5kIC4gIi8iIC4gJGZpbGVTaXplKTsgCi0gICAg
aGVhZGVyKCJDb25uZWN0aW9uOiBjbG9zZSIpOwotCi0gICAgJGNodW5rU2l6ZSA9IDEwMjQgKiAy
NTY7Ci0gICAgJG9mZnNldCA9ICRzdGFydDsKLQotICAgICRmbiA9IGZvcGVuKCRmaWxlTmFtZSwg
InJiIik7Ci0gICAgZnNlZWsoJGZuLCAkb2Zmc2V0LCAwKTsKLQotICAgIHdoaWxlICghZmVvZigk
Zm4pICYmICRvZmZzZXQgPD0gJGVuZCAmJiBjb25uZWN0aW9uX3N0YXR1cygpID09IDApCi0gICAg
ewotICAgICAgICAkcmVhZFNpemUgPSBtaW4oJGNodW5rU2l6ZSwgKCRlbmQgLSAkb2Zmc2V0KSAr
IDEpOwotICAgICAgICAkYnVmZmVyID0gZnJlYWQoJGZuLCAkcmVhZFNpemUpOwotICAgICAgICBw
cmludCgkYnVmZmVyKTsKLSAgICAgICAgZmx1c2goKTsKLSAgICAgICAgJG9mZnNldCArPSAkY2h1
bmtTaXplOwotICAgIH0KLSAgICBmY2xvc2UoJGZuKTsKLQotICAgIGV4aXQ7CiA/Pgo=
</data>
<flag name="review"
          id="133419"
          type_id="1"
          status="+"
          setter="dbates"
    />
          </attachment>
      

    </bug>

</bugzilla>