File tree Expand file tree Collapse file tree 2 files changed +9
-6
lines changed Expand file tree Collapse file tree 2 files changed +9
-6
lines changed Original file line number Diff line number Diff line change @@ -202,16 +202,19 @@ var LibraryHTML5 = {
202202 } ,
203203
204204 removeSingleHandler ( eventHandler ) {
205- for ( var [ i , handler ] of JSEvents . eventHandlers . entries ( ) ) {
205+ let success = false ;
206+ for ( let i = 0 ; i < JSEvents . eventHandlers . length ; ++ i ) {
207+ const handler = JSEvents . eventHandlers [ i ] ;
206208 if ( handler . target === eventHandler . target
207209 && handler . eventTypeId === eventHandler . eventTypeId
208210 && handler . callbackfunc === eventHandler . callbackfunc
209211 && handler . userData === eventHandler . userData ) {
210- JSEvents . _removeHandler ( i ) ;
211- return { { { cDefs . EMSCRIPTEN_RESULT_SUCCESS } } } ;
212+ // in some very rare cases (ex: Safari / fullscreen events), there is more than 1 handler (eventTypeString is different)
213+ JSEvents . _removeHandler ( i -- ) ;
214+ success = true ;
212215 }
213216 }
214- return { { { cDefs . EMSCRIPTEN_RESULT_INVALID_PARAM } } } ;
217+ return success ? { { { cDefs . EMSCRIPTEN_RESULT_SUCCESS } } } : { { { cDefs . EMSCRIPTEN_RESULT_INVALID_PARAM } } } ;
215218 } ,
216219
217220#if PTHREADS
Original file line number Diff line number Diff line change 11{
2- "a.out.js" : 245720 ,
2+ "a.out.js" : 245732 ,
33 "a.out.nodebug.wasm" : 574007 ,
4- "total" : 819727 ,
4+ "total" : 819739 ,
55 "sent" : [
66 " IMG_Init" ,
77 " IMG_Load" ,
You can’t perform that action at this time.
0 commit comments