element-web/src/vector
Kegan Dougal f3df86872b Fix tightlooping when flush()ing without any logs
The promise would resolve immediately, nulling out `flushPromise`. This would
then immediately be set from `new Promise((resolve, reject) => {...})` turning
it back into non-null `flushPromise`. The resolve handler was called so the
next `flush()` would see "oh yes, there is a non-null `flushPromise`" then
promptly try to set `flushAgainPromise` which chains off the resolved
`flushPromise` which relied on `flushPromise` being `null`ed out after
`resolve()`, causing the chained `flush()` to see "oh yes, there is a non-null
`flushPromise`" which... ad infinitum.

This PR fixes it by making the nulling out asynchronous but the fact it took
me this long to debug this issue indicates to me that this is a terrible piece
of code. Will re-write.
2017-01-23 17:37:57 +00:00
..
platform Enable screen sharing easter-egg in desktop app 2017-01-10 18:39:21 +00:00
index.html Put a cachebuster in the names of CSS and JS files 2016-10-26 15:20:59 +01:00
index.js Inject bug report endpoint URL from config.json 2017-01-19 16:49:25 +00:00
modernizr.js Add objectfit and localstorage to browser features 2015-10-29 15:56:03 +00:00
olm-loader.js Configure olm memory size 2016-12-14 11:59:37 +00:00
rageshake.js Fix tightlooping when flush()ing without any logs 2017-01-23 17:37:57 +00:00
updater.js Move 'new version' support into Platform 2016-11-02 16:02:55 +00:00
url_utils.js Some tests of the application load process 2016-08-10 00:15:04 +01:00