<?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>100885</bug_id>
          
          <creation_ts>2012-10-31 14:08:45 -0700</creation_ts>
          <short_desc>Automating gain AudioParam with linearRampToValueAtTime introduces buzzing distortion</short_desc>
          <delta_ts>2012-11-06 10:01:36 -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>Web Audio</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>80337</dependson>
    
    <dependson>76919</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Matt Grounds">matt.grounds</reporter>
          <assigned_to name="Chris Rogers">crogers</assigned_to>
          <cc>crogers</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>feature-media-reviews</cc>
    
    <cc>kbr</cc>
    
    <cc>matt.grounds</cc>
    
    <cc>rtoy</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>755608</commentid>
    <comment_count>0</comment_count>
      <attachid>171716</attachid>
    <who name="Matt Grounds">matt.grounds</who>
    <bug_when>2012-10-31 14:08:45 -0700</bug_when>
    <thetext>Created attachment 171716
Regression HTML page with debug FFT and time output to show distortion.

There seems to be a problem with the implementation of linearRampToValueAtTime in AudioParamTimeline.cpp, which on the GainNode causes a buzzing distortion to begin when audioContext.currentTime reaches certain powers of 2. This suggests it has something to do with representing time as a floating point number during the for loop which calculates the sample accurate values.

I have confirmed the bug with the nightly build on the following platforms:
Windows XP - Intel Core 4 Quad 6600
Mac OS X Snow Leopard - Intel Core 2 Duo

The problem is significantly worse on the Windows platform. On both platforms, distortion can be seen in the FFT view after 128.0s. But on Windows, after 256.0s an extremely audible buzzing begins. I presume this is because there are differences in the floating point code generated by the Visual Studio and gcc compilers?

This makes it next to impossible to use ADSR style envelopes on parameters, since they cannot be relied upon without introducing distortion.

I have attached a regression HTML page which demonstrates the problem.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>756868</commentid>
    <comment_count>1</comment_count>
    <who name="Chris Rogers">crogers</who>
    <bug_when>2012-11-01 20:52:32 -0700</bug_when>
    <thetext>Matt, thanks for taking the time to make such a nice reduced test.

I&apos;ve been able to repro, and am taking a look...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>757679</commentid>
    <comment_count>2</comment_count>
      <attachid>172160</attachid>
    <who name="Chris Rogers">crogers</who>
    <bug_when>2012-11-02 15:34:39 -0700</bug_when>
    <thetext>Created attachment 172160
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>757681</commentid>
    <comment_count>3</comment_count>
      <attachid>172160</attachid>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2012-11-02 15:41:56 -0700</bug_when>
    <thetext>Comment on attachment 172160
Patch

Interesting. Looks fine. r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>757720</commentid>
    <comment_count>4</comment_count>
    <who name="Chris Rogers">crogers</who>
    <bug_when>2012-11-02 16:11:26 -0700</bug_when>
    <thetext>Committed r133365: &lt;http://trac.webkit.org/changeset/133365&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>759798</commentid>
    <comment_count>5</comment_count>
    <who name="Matt Grounds">matt.grounds</who>
    <bug_when>2012-11-06 10:01:36 -0800</bug_when>
    <thetext>Thanks for taking the time to deal with this so quickly Chris. I have tested with nightly build r133576 on OS X, and the problem seems to be fixed. I will test on Windows once there is a new nightly build (the Windows buildbot seems to have been broken since 16th October)</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>171716</attachid>
            <date>2012-10-31 14:08:45 -0700</date>
            <delta_ts>2012-10-31 14:08:45 -0700</delta_ts>
            <desc>Regression HTML page with debug FFT and time output to show distortion.</desc>
            <filename>reduction_distort.html</filename>
            <type>text/html</type>
            <size>1639</size>
            <attacher name="Matt Grounds">matt.grounds</attacher>
            
              <data encoding="base64">PCFET0NUWVBFIGh0bWw+CjxodG1sPgoJPGhlYWQ+PHRpdGxlPkJ1ZyByZWR1Y3Rpb248L3RpdGxl
PjwvaGVhZD4KCTxib2R5IG9ubG9hZD0icmVkdWN0aW9uKCk7Ij4KCgk8aDI+QXVkaW9Db250ZXh0
IHRpbWUgPSA8c3BhbiBpZD0idGltZWRlYnVnIj4wLjA8L3NwYW4+PC9oMj4KICAgIAogICAgPHN2
ZyB3aWR0aD0iMTUwcHgiIGhlaWdodD0iMTAwcHgiPgogICAgCTxwYXRoIGlkPSJteXBhdGgiIGZp
bGw9Im5vbmUiIHN0cm9rZT0icmVkIiBzdHJva2Utd2lkdGg9IjIiIHRyYW5zZm9ybT0idHJhbnNs
YXRlKDAsMTAwKSBzY2FsZSgxLC0xKSI+CiAgICAJPC9wYXRoPgogICAgPC9zdmc+Cgo8c2NyaXB0
IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CgpmZnRTaXplID0gMjA0OAphcnJheSA9IG5ldyBGbG9h
dDMyQXJyYXkoZmZ0U2l6ZSk7Cgp1cGRhdGUgPSBmdW5jdGlvbigpIHsKCXNwYW5FbGVtID0gZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRpbWVkZWJ1ZyIpOwoJc3BhbkVsZW0uaW5uZXJIVE1MID0g
YXVkaW9Db250ZXh0LmN1cnJlbnRUaW1lLnRvRml4ZWQoMSk7CgkKCXZhciBkID0gJ00nOwoJZnVu
Y3Rpb24gcHQoeCx5KSB7IGQgKz0gJyAnICsgeCArICcsJyArIHk7IH0KCglhbmFseXNlci5nZXRG
bG9hdEZyZXF1ZW5jeURhdGEoYXJyYXkpOwoKCXB0KDAsMCk7Cglmb3IgKHZhciBpID0gMCwgTCA9
IGFuYWx5c2VyLmZyZXF1ZW5jeUJpbkNvdW50IC8gODsgaSA8IEw7ICsraSkgewoJCXZhciBoZWln
aHQgPSAxMDAgKyBhcnJheVtpXTsKCQlwdChpIC8gTCAqIDE1MCwgaGVpZ2h0KTsKCQlwdCgoaSsx
KSAvIEwgKiAxNTAsIGhlaWdodCk7Cgl9CglwdCgxNTAsMCk7CgoJcGF0aEVsZW0gPSBkb2N1bWVu
dC5nZXRFbGVtZW50QnlJZCgibXlwYXRoIik7CglwYXRoRWxlbS5zZXRBdHRyaWJ1dGUoJ2QnLCBk
KTsKfTsKCnJlZHVjdGlvbiA9IGZ1bmN0aW9uKCkgewoJYXVkaW9Db250ZXh0ID0gbmV3IHdlYmtp
dEF1ZGlvQ29udGV4dCgpOwoJCglvc2NOb2RlID0gYXVkaW9Db250ZXh0LmNyZWF0ZU9zY2lsbGF0
b3IoKTsKCW9zY05vZGUubm90ZU9uKDAuMCkKCglnYWluTm9kZSA9IGF1ZGlvQ29udGV4dC5jcmVh
dGVHYWluTm9kZSgpOwkKCglhbmFseXNlciA9IGF1ZGlvQ29udGV4dC5jcmVhdGVBbmFseXNlcigp
OwogICAgYW5hbHlzZXIuZmZ0U2l6ZSA9IGZmdFNpemU7CiAgICBhbmFseXNlci5zbW9vdGhpbmdU
aW1lQ29uc3RhbnQgPSAwLjI7CiAgICAKCW9zY05vZGUuY29ubmVjdChnYWluTm9kZSk7CglnYWlu
Tm9kZS5jb25uZWN0KGFuYWx5c2VyKTsKCWFuYWx5c2VyLmNvbm5lY3QoYXVkaW9Db250ZXh0LmRl
c3RpbmF0aW9uKTsKCQoJLy8gU2V0IHVwIGEgbGluZWFyIHRpbWUgY3VydmUgZm9yIHRoZSBnYWlu
IGF1ZGlvIHBhcmFtCglnYWluTm9kZS5nYWluLnNldFZhbHVlQXRUaW1lKDAuMCwgMC4wKTsKCWZv
ciAodmFyIGk9MDsgaTw1MTI7ICsraSkgewoJCWdhaW5Ob2RlLmdhaW4ubGluZWFyUmFtcFRvVmFs
dWVBdFRpbWUoMS4wLCAyLjAgKiBpICsgMS4wKTsKCQlnYWluTm9kZS5nYWluLmxpbmVhclJhbXBU
b1ZhbHVlQXRUaW1lKDAuMCwgMi4wICogaSArIDIuMCk7CQkKCX0KCQoJc2V0SW50ZXJ2YWwodXBk
YXRlLCAxMDApOwp9OwoKPC9zY3JpcHQ+CgoJPC9ib2R5Pgo8L2h0bWw+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>172160</attachid>
            <date>2012-11-02 15:34:39 -0700</date>
            <delta_ts>2012-11-02 15:41:56 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-100885-20121102153259.patch</filename>
            <type>text/plain</type>
            <size>8485</size>
            <attacher name="Chris Rogers">crogers</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTMzMjM5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzlmYWY1ZTAyM2VlZTc2
NWZkYmMxMjRiNzYxOGIxZmM5YTUwMWFhNS4uZThhN2ZiZGZhNzlkYmE5NGIwMGRkMTVjNTNkNzhh
OGNmZDNiMTZjYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDEyLTExLTAyICBDaHJp
cyBSb2dlcnMgIDxjcm9nZXJzQGdvb2dsZS5jb20+CisKKyAgICAgICAgQXV0b21hdGluZyBnYWlu
IEF1ZGlvUGFyYW0gd2l0aCBsaW5lYXJSYW1wVG9WYWx1ZUF0VGltZSBpbnRyb2R1Y2VzIGJ1enpp
bmcgZGlzdG9ydGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTAwODg1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgQXVkaW9QYXJhbVRpbWVsaW5lIG5lZWRzIHRvIHVzZSBkb3VibGUtcHJlY2lzaW9uIGZv
ciB0aW1lLXZhbHVlcyB0byBhdm9pZCBkcmlmdCBhbmQgcHJlY2lzaW9uIGlzc3Vlcy4KKworICAg
ICAgICBDb3ZlcmVkIGJ5IGV4aXN0aW5nIHRlc3RzLgorCisgICAgICAgICogTW9kdWxlcy93ZWJh
dWRpby9BdWRpb1BhcmFtLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkF1ZGlvUGFyYW06OmNhbGN1
bGF0ZVRpbWVsaW5lVmFsdWVzKToKKyAgICAgICAgKiBNb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvUGFy
YW1UaW1lbGluZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpBdWRpb1BhcmFtVGltZWxpbmU6OnZh
bHVlRm9yQ29udGV4dFRpbWUpOgorICAgICAgICAoV2ViQ29yZTo6QXVkaW9QYXJhbVRpbWVsaW5l
Ojp2YWx1ZXNGb3JUaW1lUmFuZ2UpOgorICAgICAgICAoV2ViQ29yZTo6QXVkaW9QYXJhbVRpbWVs
aW5lOjp2YWx1ZXNGb3JUaW1lUmFuZ2VJbXBsKToKKyAgICAgICAgKiBNb2R1bGVzL3dlYmF1ZGlv
L0F1ZGlvUGFyYW1UaW1lbGluZS5oOgorICAgICAgICAoQXVkaW9QYXJhbVRpbWVsaW5lKToKKwog
MjAxMi0xMS0wMSAgQ2hyaXMgUm9nZXJzICA8Y3JvZ2Vyc0Bnb29nbGUuY29tPgogCiAgICAgICAg
IEVuc3VyZSB0aGF0IEF1ZGlvTm9kZSBkZWxldGlvbiBpcyBzeW5jaHJvbml6ZWQgd2l0aCBhIHN0
YWJsZSBzdGF0ZSBvZiB0aGUgcmVuZGVyaW5nIGdyYXBoCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvUGFyYW0uY3BwIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy93ZWJhdWRpby9BdWRpb1BhcmFtLmNwcAppbmRleCBjNTI1YjJlNmNiNTU4YjNiNDJhOGQ0
Yjc0MGFhZDUzMzkxYjAxN2MzLi5mNGNmMTFkMDFmMTUxYTk4NWVjY2E3NDA1MzkxMWViNjJlNmM2
MGRkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL0F1ZGlvUGFy
YW0uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQXVkaW9QYXJhbS5j
cHAKQEAgLTE1NSw5ICsxNTUsOSBAQCB2b2lkIEF1ZGlvUGFyYW06OmNhbGN1bGF0ZVRpbWVsaW5l
VmFsdWVzKGZsb2F0KiB2YWx1ZXMsIHVuc2lnbmVkIG51bWJlck9mVmFsdWVzKQogewogICAgIC8v
IENhbGN1bGF0ZSB2YWx1ZXMgZm9yIHRoaXMgcmVuZGVyIHF1YW50dW0uCiAgICAgLy8gTm9ybWFs
bHkgbnVtYmVyT2ZWYWx1ZXMgd2lsbCBlcXVhbCBBdWRpb05vZGU6OlByb2Nlc3NpbmdTaXplSW5G
cmFtZXMgKHRoZSByZW5kZXIgcXVhbnR1bSBzaXplKS4KLSAgICBmbG9hdCBzYW1wbGVSYXRlID0g
Y29udGV4dCgpLT5zYW1wbGVSYXRlKCk7Ci0gICAgZmxvYXQgc3RhcnRUaW1lID0gbmFycm93UHJl
Y2lzaW9uVG9GbG9hdChjb250ZXh0KCktPmN1cnJlbnRUaW1lKCkpOwotICAgIGZsb2F0IGVuZFRp
bWUgPSBzdGFydFRpbWUgKyBudW1iZXJPZlZhbHVlcyAvIHNhbXBsZVJhdGU7CisgICAgZG91Ymxl
IHNhbXBsZVJhdGUgPSBjb250ZXh0KCktPnNhbXBsZVJhdGUoKTsKKyAgICBkb3VibGUgc3RhcnRU
aW1lID0gY29udGV4dCgpLT5jdXJyZW50VGltZSgpOworICAgIGRvdWJsZSBlbmRUaW1lID0gc3Rh
cnRUaW1lICsgbnVtYmVyT2ZWYWx1ZXMgLyBzYW1wbGVSYXRlOwogCiAgICAgLy8gTm90ZSB3ZSdy
ZSBydW5uaW5nIGNvbnRyb2wgcmF0ZSBhdCB0aGUgc2FtcGxlLXJhdGUuCiAgICAgLy8gUGFzcyBp
biB0aGUgY3VycmVudCB2YWx1ZSBhcyBkZWZhdWx0IHZhbHVlLgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9BdWRpb1BhcmFtVGltZWxpbmUuY3BwIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9BdWRpb1BhcmFtVGltZWxpbmUuY3BwCmluZGV4IGE2
MWMwYWQ4ZTZlYmVhNzEyN2JmZjQ3Zjc1MWI3NGFkMjM3ODllMTMuLmZlZjhkMGU1NjQwYzZjZDll
NWE2MjRiZTIzMzg1YmI1Mzk5ZGI0N2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvd2ViYXVkaW8vQXVkaW9QYXJhbVRpbWVsaW5lLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL3dlYmF1ZGlvL0F1ZGlvUGFyYW1UaW1lbGluZS5jcHAKQEAgLTEyNywyMyArMTI3LDI0
IEBAIGZsb2F0IEF1ZGlvUGFyYW1UaW1lbGluZTo6dmFsdWVGb3JDb250ZXh0VGltZShBdWRpb0Nv
bnRleHQqIGNvbnRleHQsIGZsb2F0IGRlZmF1CiAKICAgICAvLyBBc2sgZm9yIGp1c3QgYSBzaW5n
bGUgdmFsdWUuCiAgICAgZmxvYXQgdmFsdWU7Ci0gICAgZmxvYXQgc2FtcGxlUmF0ZSA9IGNvbnRl
eHQtPnNhbXBsZVJhdGUoKTsKLSAgICBmbG9hdCBzdGFydFRpbWUgPSBuYXJyb3dQcmVjaXNpb25U
b0Zsb2F0KGNvbnRleHQtPmN1cnJlbnRUaW1lKCkpOwotICAgIGZsb2F0IGVuZFRpbWUgPSBzdGFy
dFRpbWUgKyAxLjFmIC8gc2FtcGxlUmF0ZTsgLy8gdGltZSBqdXN0IGJleW9uZCBvbmUgc2FtcGxl
LWZyYW1lCi0gICAgZmxvYXQgY29udHJvbFJhdGUgPSBzYW1wbGVSYXRlIC8gQXVkaW9Ob2RlOjpQ
cm9jZXNzaW5nU2l6ZUluRnJhbWVzOyAvLyBvbmUgcGFyYW1ldGVyIGNoYW5nZSBwZXIgcmVuZGVy
IHF1YW50dW0KKyAgICBkb3VibGUgc2FtcGxlUmF0ZSA9IGNvbnRleHQtPnNhbXBsZVJhdGUoKTsK
KyAgICBkb3VibGUgc3RhcnRUaW1lID0gY29udGV4dC0+Y3VycmVudFRpbWUoKTsKKyAgICBkb3Vi
bGUgZW5kVGltZSA9IHN0YXJ0VGltZSArIDEuMSAvIHNhbXBsZVJhdGU7IC8vIHRpbWUganVzdCBi
ZXlvbmQgb25lIHNhbXBsZS1mcmFtZQorICAgIGRvdWJsZSBjb250cm9sUmF0ZSA9IHNhbXBsZVJh
dGUgLyBBdWRpb05vZGU6OlByb2Nlc3NpbmdTaXplSW5GcmFtZXM7IC8vIG9uZSBwYXJhbWV0ZXIg
Y2hhbmdlIHBlciByZW5kZXIgcXVhbnR1bQogICAgIHZhbHVlID0gdmFsdWVzRm9yVGltZVJhbmdl
KHN0YXJ0VGltZSwgZW5kVGltZSwgZGVmYXVsdFZhbHVlLCAmdmFsdWUsIDEsIHNhbXBsZVJhdGUs
IGNvbnRyb2xSYXRlKTsKIAogICAgIGhhc1ZhbHVlID0gdHJ1ZTsKICAgICByZXR1cm4gdmFsdWU7
CiB9CiAKLWZsb2F0IEF1ZGlvUGFyYW1UaW1lbGluZTo6dmFsdWVzRm9yVGltZVJhbmdlKGZsb2F0
IHN0YXJ0VGltZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IGZsb2F0IGVuZFRpbWUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBmbG9hdCBkZWZhdWx0VmFsdWUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBmbG9hdCogdmFsdWVzLAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgdW5zaWduZWQgbnVtYmVyT2ZWYWx1ZXMsCi0gICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbG9hdCBzYW1wbGVSYXRlLAotICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQgY29udHJvbFJhdGUp
CitmbG9hdCBBdWRpb1BhcmFtVGltZWxpbmU6OnZhbHVlc0ZvclRpbWVSYW5nZSgKKyAgICBkb3Vi
bGUgc3RhcnRUaW1lLAorICAgIGRvdWJsZSBlbmRUaW1lLAorICAgIGZsb2F0IGRlZmF1bHRWYWx1
ZSwKKyAgICBmbG9hdCogdmFsdWVzLAorICAgIHVuc2lnbmVkIG51bWJlck9mVmFsdWVzLAorICAg
IGRvdWJsZSBzYW1wbGVSYXRlLAorICAgIGRvdWJsZSBjb250cm9sUmF0ZSkKIHsKICAgICAvLyBX
ZSBjYW4ndCBjb250ZW5kIHRoZSBsb2NrIGluIHRoZSByZWFsdGltZSBhdWRpbyB0aHJlYWQuCiAg
ICAgTXV0ZXhUcnlMb2NrZXIgdHJ5TG9ja2VyKG1fZXZlbnRzTG9jayk7CkBAIC0xNjAsMTMgKzE2
MSwxNCBAQCBmbG9hdCBBdWRpb1BhcmFtVGltZWxpbmU6OnZhbHVlc0ZvclRpbWVSYW5nZShmbG9h
dCBzdGFydFRpbWUsCiAgICAgcmV0dXJuIHZhbHVlOwogfQogCi1mbG9hdCBBdWRpb1BhcmFtVGlt
ZWxpbmU6OnZhbHVlc0ZvclRpbWVSYW5nZUltcGwoZmxvYXQgc3RhcnRUaW1lLAotICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsb2F0IGVuZFRpbWUsCi0g
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQgZGVm
YXVsdFZhbHVlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGZsb2F0KiB2YWx1ZXMsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgdW5zaWduZWQgbnVtYmVyT2ZWYWx1ZXMsCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQgc2FtcGxlUmF0ZSwKLSAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbG9hdCBjb250cm9sUmF0
ZSkKK2Zsb2F0IEF1ZGlvUGFyYW1UaW1lbGluZTo6dmFsdWVzRm9yVGltZVJhbmdlSW1wbCgKKyAg
ICBkb3VibGUgc3RhcnRUaW1lLAorICAgIGRvdWJsZSBlbmRUaW1lLAorICAgIGZsb2F0IGRlZmF1
bHRWYWx1ZSwKKyAgICBmbG9hdCogdmFsdWVzLAorICAgIHVuc2lnbmVkIG51bWJlck9mVmFsdWVz
LAorICAgIGRvdWJsZSBzYW1wbGVSYXRlLAorICAgIGRvdWJsZSBjb250cm9sUmF0ZSkKIHsKICAg
ICBBU1NFUlQodmFsdWVzKTsKICAgICBpZiAoIXZhbHVlcykKQEAgLTE4MCwxNCArMTgyLDE0IEBA
IGZsb2F0IEF1ZGlvUGFyYW1UaW1lbGluZTo6dmFsdWVzRm9yVGltZVJhbmdlSW1wbChmbG9hdCBz
dGFydFRpbWUsCiAgICAgfQogCiAgICAgLy8gTWFpbnRhaW4gYSBydW5uaW5nIHRpbWUgYW5kIGlu
ZGV4IGZvciB3cml0aW5nIHRoZSB2YWx1ZXMgYnVmZmVyLgotICAgIGZsb2F0IGN1cnJlbnRUaW1l
ID0gc3RhcnRUaW1lOworICAgIGRvdWJsZSBjdXJyZW50VGltZSA9IHN0YXJ0VGltZTsKICAgICB1
bnNpZ25lZCB3cml0ZUluZGV4ID0gMDsKIAogICAgIC8vIElmIGZpcnN0IGV2ZW50IGlzIGFmdGVy
IHN0YXJ0VGltZSB0aGVuIGZpbGwgaW5pdGlhbCBwYXJ0IG9mIHZhbHVlcyBidWZmZXIgd2l0aCBk
ZWZhdWx0VmFsdWUKICAgICAvLyB1bnRpbCB3ZSByZWFjaCB0aGUgZmlyc3QgZXZlbnQgdGltZS4K
LSAgICBmbG9hdCBmaXJzdEV2ZW50VGltZSA9IG1fZXZlbnRzWzBdLnRpbWUoKTsKKyAgICBkb3Vi
bGUgZmlyc3RFdmVudFRpbWUgPSBtX2V2ZW50c1swXS50aW1lKCk7CiAgICAgaWYgKGZpcnN0RXZl
bnRUaW1lID4gc3RhcnRUaW1lKSB7Ci0gICAgICAgIGZsb2F0IGZpbGxUb1RpbWUgPSBtaW4oZW5k
VGltZSwgZmlyc3RFdmVudFRpbWUpOworICAgICAgICBkb3VibGUgZmlsbFRvVGltZSA9IG1pbihl
bmRUaW1lLCBmaXJzdEV2ZW50VGltZSk7CiAgICAgICAgIHVuc2lnbmVkIGZpbGxUb0ZyYW1lID0g
QXVkaW9VdGlsaXRpZXM6OnRpbWVUb1NhbXBsZUZyYW1lKGZpbGxUb1RpbWUgLSBzdGFydFRpbWUs
IHNhbXBsZVJhdGUpOwogICAgICAgICBmaWxsVG9GcmFtZSA9IG1pbihmaWxsVG9GcmFtZSwgbnVt
YmVyT2ZWYWx1ZXMpOwogICAgICAgICBmb3IgKDsgd3JpdGVJbmRleCA8IGZpbGxUb0ZyYW1lOyAr
K3dyaXRlSW5kZXgpCkBAIC0yMTIsMTUgKzIxNCwxNSBAQCBmbG9hdCBBdWRpb1BhcmFtVGltZWxp
bmU6OnZhbHVlc0ZvclRpbWVSYW5nZUltcGwoZmxvYXQgc3RhcnRUaW1lLAogICAgICAgICAgICAg
Y29udGludWU7CiAKICAgICAgICAgZmxvYXQgdmFsdWUxID0gZXZlbnQudmFsdWUoKTsKLSAgICAg
ICAgZmxvYXQgdGltZTEgPSBldmVudC50aW1lKCk7CisgICAgICAgIGRvdWJsZSB0aW1lMSA9IGV2
ZW50LnRpbWUoKTsKICAgICAgICAgZmxvYXQgdmFsdWUyID0gbmV4dEV2ZW50ID8gbmV4dEV2ZW50
LT52YWx1ZSgpIDogdmFsdWUxOwotICAgICAgICBmbG9hdCB0aW1lMiA9IG5leHRFdmVudCA/IG5l
eHRFdmVudC0+dGltZSgpIDogZW5kVGltZSArIDE7CisgICAgICAgIGRvdWJsZSB0aW1lMiA9IG5l
eHRFdmVudCA/IG5leHRFdmVudC0+dGltZSgpIDogZW5kVGltZSArIDE7CiAKLSAgICAgICAgZmxv
YXQgZGVsdGFUaW1lID0gdGltZTIgLSB0aW1lMTsKKyAgICAgICAgZG91YmxlIGRlbHRhVGltZSA9
IHRpbWUyIC0gdGltZTE7CiAgICAgICAgIGZsb2F0IGsgPSBkZWx0YVRpbWUgPiAwID8gMSAvIGRl
bHRhVGltZSA6IDA7Ci0gICAgICAgIGZsb2F0IHNhbXBsZUZyYW1lVGltZUluY3IgPSAxIC8gc2Ft
cGxlUmF0ZTsKKyAgICAgICAgZG91YmxlIHNhbXBsZUZyYW1lVGltZUluY3IgPSAxIC8gc2FtcGxl
UmF0ZTsKIAotICAgICAgICBmbG9hdCBmaWxsVG9UaW1lID0gbWluKGVuZFRpbWUsIHRpbWUyKTsK
KyAgICAgICAgZG91YmxlIGZpbGxUb1RpbWUgPSBtaW4oZW5kVGltZSwgdGltZTIpOwogICAgICAg
ICB1bnNpZ25lZCBmaWxsVG9GcmFtZSA9IEF1ZGlvVXRpbGl0aWVzOjp0aW1lVG9TYW1wbGVGcmFt
ZShmaWxsVG9UaW1lIC0gc3RhcnRUaW1lLCBzYW1wbGVSYXRlKTsKICAgICAgICAgZmlsbFRvRnJh
bWUgPSBtaW4oZmlsbFRvRnJhbWUsIG51bWJlck9mVmFsdWVzKTsKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9BdWRpb1BhcmFtVGltZWxpbmUuaCBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vQXVkaW9QYXJhbVRpbWVsaW5lLmgKaW5kZXggOWEz
ZDEzODFlOGIwOGEwYzU5MDYxNGM3MTdhODQzOWQwNTAzNTQyYS4uYzBhOTYwODcwNDkxMzA4ZTcx
MDQ0MDlkYWQ3OTQ4NjAzNWRjMWIxMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy93ZWJhdWRpby9BdWRpb1BhcmFtVGltZWxpbmUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL3dlYmF1ZGlvL0F1ZGlvUGFyYW1UaW1lbGluZS5oCkBAIC02MCw3ICs2MCw3IEBAIHB1Ymxp
YzoKICAgICAvLyBjb250cm9sUmF0ZSBpcyB0aGUgcmF0ZSAobnVtYmVyIHBlciBzZWNvbmQpIGF0
IHdoaWNoIHBhcmFtZXRlciB2YWx1ZXMgd2lsbCBiZSBjYWxjdWxhdGVkLgogICAgIC8vIEl0IHNo
b3VsZCBlcXVhbCBzYW1wbGVSYXRlIGZvciBzYW1wbGUtYWNjdXJhdGUgcGFyYW1ldGVyIGNoYW5n
ZXMsIGFuZCBvdGhlcndpc2Ugd2lsbCB1c3VhbGx5IG1hdGNoCiAgICAgLy8gdGhlIHJlbmRlciBx
dWFudHVtIHNpemUgc3VjaCB0aGF0IHRoZSBwYXJhbWV0ZXIgdmFsdWUgY2hhbmdlcyBvbmNlIHBl
ciByZW5kZXIgcXVhbnR1bS4KLSAgICBmbG9hdCB2YWx1ZXNGb3JUaW1lUmFuZ2UoZmxvYXQgc3Rh
cnRUaW1lLCBmbG9hdCBlbmRUaW1lLCBmbG9hdCBkZWZhdWx0VmFsdWUsIGZsb2F0KiB2YWx1ZXMs
IHVuc2lnbmVkIG51bWJlck9mVmFsdWVzLCBmbG9hdCBzYW1wbGVSYXRlLCBmbG9hdCBjb250cm9s
UmF0ZSk7CisgICAgZmxvYXQgdmFsdWVzRm9yVGltZVJhbmdlKGRvdWJsZSBzdGFydFRpbWUsIGRv
dWJsZSBlbmRUaW1lLCBmbG9hdCBkZWZhdWx0VmFsdWUsIGZsb2F0KiB2YWx1ZXMsIHVuc2lnbmVk
IG51bWJlck9mVmFsdWVzLCBkb3VibGUgc2FtcGxlUmF0ZSwgZG91YmxlIGNvbnRyb2xSYXRlKTsK
IAogICAgIGJvb2wgaGFzVmFsdWVzKCkgeyByZXR1cm4gbV9ldmVudHMuc2l6ZSgpOyB9CiAKQEAg
LTEwMyw3ICsxMDMsNyBAQCBwcml2YXRlOgogICAgIH07CiAKICAgICB2b2lkIGluc2VydEV2ZW50
KGNvbnN0IFBhcmFtRXZlbnQmKTsKLSAgICBmbG9hdCB2YWx1ZXNGb3JUaW1lUmFuZ2VJbXBsKGZs
b2F0IHN0YXJ0VGltZSwgZmxvYXQgZW5kVGltZSwgZmxvYXQgZGVmYXVsdFZhbHVlLCBmbG9hdCog
dmFsdWVzLCB1bnNpZ25lZCBudW1iZXJPZlZhbHVlcywgZmxvYXQgc2FtcGxlUmF0ZSwgZmxvYXQg
Y29udHJvbFJhdGUpOworICAgIGZsb2F0IHZhbHVlc0ZvclRpbWVSYW5nZUltcGwoZG91YmxlIHN0
YXJ0VGltZSwgZG91YmxlIGVuZFRpbWUsIGZsb2F0IGRlZmF1bHRWYWx1ZSwgZmxvYXQqIHZhbHVl
cywgdW5zaWduZWQgbnVtYmVyT2ZWYWx1ZXMsIGRvdWJsZSBzYW1wbGVSYXRlLCBkb3VibGUgY29u
dHJvbFJhdGUpOwogCiAgICAgVmVjdG9yPFBhcmFtRXZlbnQ+IG1fZXZlbnRzOwogCg==
</data>
<flag name="review"
          id="186363"
          type_id="1"
          status="+"
          setter="kbr"
    />
          </attachment>
      

    </bug>

</bugzilla>