on master help sign in
javascript: fix ffiwrap /HT ihmeckler
d584f74raichoo
js/Runtime-common.js+13−5
@@ -16,11 +16,19 @@ var __IDRRT__Forgot = new __IDRRT__Type('Forgot');
16var __IDRRT__Tailcall = function(f) { this.f = f };
16var __IDRRT__Tailcall = function(f) { this.f = f };
17
17
18var __IDRRT__ffiWrap = function(fid) {
18var __IDRRT__ffiWrap = function(fid) {
19− return function(arg) {
19+ return function(){
20+ var res = fid;
21+ var i = 0;
22+ var arg;
23+ while (res instanceof __IDRRT__Con){
24+ arg = arguments[i];
20− return __IDRRT__tailcall(function(){
25+ res = __IDRRT__tailcall(function(){
21− return __IDR__APPLY0(fid, arg);
26+ return __IDR__mAPPLY0(res, arg);
22− });
27+ });
28+ ++i;
23− };
29+ }
30+ return res;
31+ }
24};
32};
25
33
26/** @constructor */
34/** @constructor */