I was able to replicate the bug with a test case. Attached is the code for your reference.
The code would build with Visual Studio 2012. When running WebApp project, you could enter the number of bytes you want to allocate, and a popup window would show up indicating whether the allocation (i.e. resizing an existing buffer) is successful or not.
Running the software using a Surface Pro 3 with 8 G of memory & Windows 8 Pro OS, here are the test results I got:
1. Without "-s ALLOW_MEMORY_GROWTH=1", Chrome would allocate 8,000,000 bytes successfully, but would fail when allocating 9,000,000 bytes
2. Without "-s ALLOW_MEMORY_GROWTH=1", IE9 would allocate 8,000,000 bytes successfully, but would fail when allocating 9,000,000 bytes
3. With "-s ALLOW_MEMORY_GROWTH=1", Chrome would allocate 14,000,000 bytes successfully.
4. With "-s ALLOW_MEMORY_GROWTH=1", IE9 would would fail when allocating 14,000,000 bytes, although 9,000,000 bytes would work
5. With "-s ALLOW_MEMORY_GROWTH=1", Chrome would allocate 200,000,000 bytes successfully. But after trying to resize the buffer to 200,000,001 bytes, the call would fail.
Please let me know if you need more information. Thanks Alon!