@@ -416,7 +416,8 @@ function caml_js_wrap_callback_unsafe(f) {
416416//Requires: caml_callback, caml_js_wrap_callback
417417function caml_js_wrap_meth_callback ( f ) {
418418 return function ( ...args ) {
419- var res = caml_callback ( f , [ this , ...args ] ) ;
419+ args . unshift ( this ) ;
420+ var res = caml_callback ( f , args ) ;
420421 return res instanceof Function ? caml_js_wrap_callback ( res ) : res ;
421422 } ;
422423}
@@ -431,8 +432,8 @@ function caml_js_wrap_meth_callback_arguments(f) {
431432//Requires: caml_callback
432433function caml_js_wrap_meth_callback_strict ( arity , f ) {
433434 return function ( ...args ) {
434- args = [ this , ... args ] ;
435- args . length = arity + 1 ;
435+ args . length = arity ;
436+ args . unshift ( this ) ;
436437 return caml_callback ( f , args ) ;
437438 } ;
438439}
@@ -441,7 +442,7 @@ function caml_js_wrap_meth_callback_strict(arity, f) {
441442function caml_js_wrap_meth_callback_unsafe ( f ) {
442443 return function ( ...args ) {
443444 var len = caml_js_function_arity ( f ) ;
444- args = [ this , ... args ] ;
445+ args . unshift ( this ) ;
445446 args . length = len ;
446447 return caml_callback ( f , args ) ;
447448 } ;
0 commit comments