<?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>180040</bug_id>
          
          <creation_ts>2017-11-27 09:41:50 -0800</creation_ts>
          <short_desc>Web Audio&apos;s AnalyserNode.fftSize cannot be greater than 2048 in Safari; spec says it can be up to 32768</short_desc>
          <delta_ts>2017-11-28 10:52:35 -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>Safari 11</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>macOS 10.13</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Noah Chase">nchase</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>achristensen</cc>
    
    <cc>beidson</cc>
    
    <cc>commit-queue</cc>
    
    <cc>jer.noble</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1374965</commentid>
    <comment_count>0</comment_count>
    <who name="Noah Chase">nchase</who>
    <bug_when>2017-11-27 09:41:50 -0800</bug_when>
    <thetext>Summary: the Web Audio spec says that an AnalyzerNode&apos;s `fftSize` &quot;must be a power of two in the range 32 to 32768, otherwise an IndexSizeError exception must be thrown.&quot; – but in Safari, the `IndexSizeError` exception is thrown for values over 2048 (e.g. the next reasonable value, which is 4096).

Steps to Reproduce:

Try to assign your AnalyserNode&apos;s fftSize to 4096 

Expected Results:

Assignment should work

Actual Results:

`IndexSizeError` is thrown

Version/Build:

13604.3.5 and 13605.1.13.2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1375184</commentid>
    <comment_count>1</comment_count>
      <attachid>327702</attachid>
    <who name="Noah Chase">nchase</who>
    <bug_when>2017-11-27 15:45:42 -0800</bug_when>
    <thetext>Created attachment 327702
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1375251</commentid>
    <comment_count>2</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2017-11-27 21:13:47 -0800</bug_when>
    <thetext>Could you include a link to the relevant spec?
Are there tests that check the actual output of these larger FFTs?
How do other browsers behave?  Do they follow the spec?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1375322</commentid>
    <comment_count>3</comment_count>
    <who name="Noah Chase">nchase</who>
    <bug_when>2017-11-28 05:27:00 -0800</bug_when>
    <thetext>1. Link to the place in the spec where this is described: https://www.w3.org/TR/webaudio/#widl-AnalyserNode-fftSize
2. I only found tests that either reject an fftSize (if it is out of range or something other than a power of two) or allow it – those tests have been updated here.
3. Other browsers do indeed behave and follow the spec (I have tested Firefox and Chrome, but nothing else).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1375407</commentid>
    <comment_count>4</comment_count>
      <attachid>327702</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-11-28 10:51:03 -0800</bug_when>
    <thetext>Comment on attachment 327702
Patch

Clearing flags on attachment: 327702

Committed r225226: &lt;https://trac.webkit.org/changeset/225226&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1375408</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-11-28 10:51:05 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1375409</commentid>
    <comment_count>6</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-11-28 10:52:35 -0800</bug_when>
    <thetext>&lt;rdar://problem/35726784&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>327702</attachid>
            <date>2017-11-27 15:45:42 -0800</date>
            <delta_ts>2017-11-28 10:51:03 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-180040-20171127184541.patch</filename>
            <type>text/plain</type>
            <size>4475</size>
            <attacher name="Noah Chase">nchase</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI1MTgxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNGNiZjZhOTMyMDMzOGRm
ZWI5ODBkN2YxNDFkMmQxNTE2ZTU2ZDc4MS4uMzUwZjc3ZTI0NzQ5YjAxMzZjYmJmNzZiNjViZTQ4
N2ExNDU4ZDQyMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDE3LTExLTI3ICBOb2Fo
IENoYXNlICA8bmNoYXNlQGdtYWlsLmNvbT4KKworICAgICAgICBXZWIgQXVkaW8ncyBBbmFseXNl
ck5vZGUuZmZ0U2l6ZSBjYW5ub3QgYmUgZ3JlYXRlciB0aGFuIDIwNDggaW4gU2FmYXJpOyBzcGVj
IHNheXMgaXQgY2FuIGJlIHVwIHRvIDMyNzY4CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xODAwNDAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBJIGZpeGVkIHVwIHRoZSBleGlzdGluZyB0ZXN0L291dHB1dCBm
b3IgcmVhbHRpbWVhbmFseXNlci1mZnQtc2l6aW5nLgorICAgICAgICBvbmUgdGhpbmcgdGhhdCBJ
J20gYSBiaXQgdW5zdXJlIG9mIGhlcmUgaXMgd2hldGhlciBvciBub3QgdGhlcmUgYXJlIG90aGVy
CisgICAgICAgIHBsYWNlcyBpbiBXZWJLaXQncyBXZWIgQXVkaW8gaW1wbGVtZW50YXRpb24gdGhh
dCB1c2UgZmZ0U2l6ZSBhbmQKKyAgICAgICAgc2hvdWxkIGhhdmUgdGhlIHdpZGVyIHJhbmdlIGF2
YWlsYWJsZSAoaW5zdGVhZCBvZiBjYXBwaW5nIG91dCBhdAorICAgICAgICAyMDQ4KS4gYmFzZWQg
b24gYSBxdWljayBuYWl2ZSBzY2FuIEkgdGhpbmsgdGhhdCB0aGVyZSBhcmUuCisKKyAgICAgICAg
KiBNb2R1bGVzL3dlYmF1ZGlvL1JlYWx0aW1lQW5hbHlzZXIuY3BwOgorCiAyMDE3LTExLTI3ICBU
aW0gSG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgogCiAgICAgICAgIE9uZSB0b28g
bWFueSB6ZXJvZXMgaW4gbWFjT1MgdmVyc2lvbiBudW1iZXIgaW4gRmVhdHVyZURlZmluZXMKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vUmVhbHRpbWVBbmFseXNl
ci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL1JlYWx0aW1lQW5hbHlzZXIu
Y3BwCmluZGV4IGQyNjU3MzkyOWI1N2RjZTg1ODQ5YTc1MTE2YTNiYjgxMjJhYzgyYTguLjY1NjQ4
NTUyNmNkNDQyMTI5YjY2ODE3NDE2NjVhZmY2ZDA4YjMwNmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vUmVhbHRpbWVBbmFseXNlci5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9SZWFsdGltZUFuYWx5c2VyLmNwcApAQCAtNDcsNyAr
NDcsNyBAQCBjb25zdCBkb3VibGUgUmVhbHRpbWVBbmFseXNlcjo6RGVmYXVsdE1heERlY2liZWxz
ID0gLTMwOwogY29uc3QgdW5zaWduZWQgUmVhbHRpbWVBbmFseXNlcjo6RGVmYXVsdEZGVFNpemUg
PSAyMDQ4OwogLy8gQWxsIEZGVCBpbXBsZW1lbnRhdGlvbnMgYXJlIGV4cGVjdGVkIHRvIGhhbmRs
ZSBwb3dlci1vZi10d28gc2l6ZXMgTWluRkZUU2l6ZSA8PSBzaXplIDw9IE1heEZGVFNpemUuCiBj
b25zdCB1bnNpZ25lZCBSZWFsdGltZUFuYWx5c2VyOjpNaW5GRlRTaXplID0gMzI7Ci1jb25zdCB1
bnNpZ25lZCBSZWFsdGltZUFuYWx5c2VyOjpNYXhGRlRTaXplID0gMjA0ODsKK2NvbnN0IHVuc2ln
bmVkIFJlYWx0aW1lQW5hbHlzZXI6Ok1heEZGVFNpemUgPSAzMjc2ODsKIGNvbnN0IHVuc2lnbmVk
IFJlYWx0aW1lQW5hbHlzZXI6OklucHV0QnVmZmVyU2l6ZSA9IFJlYWx0aW1lQW5hbHlzZXI6Ok1h
eEZGVFNpemUgKiAyOwogCiBSZWFsdGltZUFuYWx5c2VyOjpSZWFsdGltZUFuYWx5c2VyKCkKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpp
bmRleCBjOGQwYTdmNGQ4ZWE2MjYxYjBkZjAyOWE5YjdkZTZmOWM2NWQ0YjM0Li42NGUxY2U3NDY1
YTgyMjIzOWZiM2Q1MTg0NGVhZDI4MjA1NmMyMGJjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIw
MTctMTEtMjcgIE5vYWggQ2hhc2UgIDxuY2hhc2VAZ21haWwuY29tPgorCisgICAgICAgIFdlYiBB
dWRpbydzIEFuYWx5c2VyTm9kZS5mZnRTaXplIGNhbm5vdCBiZSBncmVhdGVyIHRoYW4gMjA0OCBp
biBTYWZhcmk7IHNwZWMgc2F5cyBpdCBjYW4gYmUgdXAgdG8gMzI3NjgKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MDA0MAorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogd2ViYXVkaW8vcmVhbHRpbWVhbmFs
eXNlci1mZnQtc2l6aW5nLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiB3ZWJhdWRpby9yZWFsdGlt
ZWFuYWx5c2VyLWZmdC1zaXppbmcuaHRtbDoKKwogMjAxNy0xMS0yNyAgQ2hyaXMgRHVtZXogIDxj
ZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIHVuc2tpcCBzZXJ2aWNlIHdv
cmtlciB0ZXN0cyB0aGF0IGFyZSBubyBsb25nZXIgZmxha3kuCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy93ZWJhdWRpby9yZWFsdGltZWFuYWx5c2VyLWZmdC1zaXppbmctZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvd2ViYXVkaW8vcmVhbHRpbWVhbmFseXNlci1mZnQtc2l6aW5nLWV4cGVjdGVk
LnR4dAppbmRleCAzZjQwZmY5OTk4YzNlMDc0NWNkNWI3YTNlM2JjOGI0OWJiZmZhODNlLi5iMWVl
Y2YzZjg4MTM0MWViOWUxNzQwYWE2NWQ2YjA0MDVhMGRjOTFjIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy93ZWJhdWRpby9yZWFsdGltZWFuYWx5c2VyLWZmdC1zaXppbmctZXhwZWN0ZWQudHh0Cisr
KyBiL0xheW91dFRlc3RzL3dlYmF1ZGlvL3JlYWx0aW1lYW5hbHlzZXItZmZ0LXNpemluZy1leHBl
Y3RlZC50eHQKQEAgLTI3LDEzICsyNywxMyBAQCBQQVNTIFN1Y2Nlc3NmdWxseSBzZXQgbGVnYWwg
ZmZ0U2l6ZSAxMDI0LgogUEFTUyBFeGNlcHRpb24gdGhyb3duIGZvciBpbGxlZ2FsIGZmdFNpemUg
MTAyNS4KIFBBU1MgU3VjY2Vzc2Z1bGx5IHNldCBsZWdhbCBmZnRTaXplIDIwNDguCiBQQVNTIEV4
Y2VwdGlvbiB0aHJvd24gZm9yIGlsbGVnYWwgZmZ0U2l6ZSAyMDQ5LgotUEFTUyBFeGNlcHRpb24g
dGhyb3duIGZvciBpbGxlZ2FsIGZmdFNpemUgNDA5Ni4KK1BBU1MgU3VjY2Vzc2Z1bGx5IHNldCBs
ZWdhbCBmZnRTaXplIDQwOTYuCiBQQVNTIEV4Y2VwdGlvbiB0aHJvd24gZm9yIGlsbGVnYWwgZmZ0
U2l6ZSA0MDk3LgotUEFTUyBFeGNlcHRpb24gdGhyb3duIGZvciBpbGxlZ2FsIGZmdFNpemUgODE5
Mi4KK1BBU1MgU3VjY2Vzc2Z1bGx5IHNldCBsZWdhbCBmZnRTaXplIDgxOTIuCiBQQVNTIEV4Y2Vw
dGlvbiB0aHJvd24gZm9yIGlsbGVnYWwgZmZ0U2l6ZSA4MTkzLgotUEFTUyBFeGNlcHRpb24gdGhy
b3duIGZvciBpbGxlZ2FsIGZmdFNpemUgMTYzODQuCitQQVNTIFN1Y2Nlc3NmdWxseSBzZXQgbGVn
YWwgZmZ0U2l6ZSAxNjM4NC4KIFBBU1MgRXhjZXB0aW9uIHRocm93biBmb3IgaWxsZWdhbCBmZnRT
aXplIDE2Mzg1LgotUEFTUyBFeGNlcHRpb24gdGhyb3duIGZvciBpbGxlZ2FsIGZmdFNpemUgMzI3
NjguCitQQVNTIFN1Y2Nlc3NmdWxseSBzZXQgbGVnYWwgZmZ0U2l6ZSAzMjc2OC4KIFBBU1MgRXhj
ZXB0aW9uIHRocm93biBmb3IgaWxsZWdhbCBmZnRTaXplIDMyNzY5LgogUEFTUyBFeGNlcHRpb24g
dGhyb3duIGZvciBpbGxlZ2FsIGZmdFNpemUgNjU1MzYuCiBQQVNTIEV4Y2VwdGlvbiB0aHJvd24g
Zm9yIGlsbGVnYWwgZmZ0U2l6ZSA2NTUzNy4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3dlYmF1
ZGlvL3JlYWx0aW1lYW5hbHlzZXItZmZ0LXNpemluZy5odG1sIGIvTGF5b3V0VGVzdHMvd2ViYXVk
aW8vcmVhbHRpbWVhbmFseXNlci1mZnQtc2l6aW5nLmh0bWwKaW5kZXggODNhOGRmZDU2N2U2Yzhk
Y2Q3MzY5ZTc2ODUyY2U1NzE1OGQ5YmU5NC4uNzY3Y2IxN2M0ZmYyM2ZiNmM2YjU0OThhNjBkMDY4
M2NlMmMwYzkyOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvd2ViYXVkaW8vcmVhbHRpbWVhbmFs
eXNlci1mZnQtc2l6aW5nLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvd2ViYXVkaW8vcmVhbHRpbWVh
bmFseXNlci1mZnQtc2l6aW5nLmh0bWwKQEAgLTM2LDcgKzM2LDcgQEAgZG9UZXN0KC0xLCB0cnVl
KTsKIGRvVGVzdCgwLCB0cnVlKTsKIGRvVGVzdCgxLCB0cnVlKTsKIGZvciAodmFyIGkgPSAyOyBp
IDw9IDB4MjAwMDA7IGkgKj0gMikgewotCWlmIChpID49IDMyICYmIGkgPD0gMjA0OCkKKwlpZiAo
aSA+PSAzMiAmJiBpIDw9IDMyNzY4KQogICAgICAgICBkb1Rlc3QoaSwgZmFsc2UpOwogICAgIGVs
c2UKICAgICAgICAgZG9UZXN0KGksIHRydWUpOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>