Describe the bug
If elFinder.sync() is called while elFinder.sync() is still running, useless backend requests will occur.
This is related to #3568.
To Reproduce
If the user has browser extensions installed that send a Message then this message is intercepted by js/elFinder.js:4827, and since the message is not a string of type JSON an exception is returned and the self.sync() method is called.
Using the example of the wappalyzer add-on - a dozen notifications are sent at once by which elFinder sends multiple requests at once to the application backend.
Expected behavior
New elFinder.sync() execution instructions should be ignored while elFinder.sync() is running.
There is the same problem of infinite sync loop when the "react dev tools" firefox extention is enabled...
1 full day to understand this infinite loop... but i did it !
Describe the bug If elFinder.sync() is called while elFinder.sync() is still running, useless backend requests will occur. This is related to #3568.
To Reproduce If the user has browser extensions installed that send a Message then this message is intercepted by js/elFinder.js:4827, and since the message is not a string of type JSON an exception is returned and the self.sync() method is called. Using the example of the wappalyzer add-on - a dozen notifications are sent at once by which elFinder sends multiple requests at once to the application backend.
Expected behavior New elFinder.sync() execution instructions should be ignored while elFinder.sync() is running.
Screenshots