summaryrefslogtreecommitdiff
path: root/lang/gforth/files/patch-engine_main.c
diff options
context:
space:
mode:
Diffstat (limited to 'lang/gforth/files/patch-engine_main.c')
-rw-r--r--lang/gforth/files/patch-engine_main.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/lang/gforth/files/patch-engine_main.c b/lang/gforth/files/patch-engine_main.c
new file mode 100644
index 000000000000..e28faa1f4cd5
--- /dev/null
+++ b/lang/gforth/files/patch-engine_main.c
@@ -0,0 +1,22 @@
+--- engine/main.c.orig Sun Aug 24 12:06:29 2003
++++ engine/main.c Sat Oct 21 11:36:19 2006
+@@ -70,8 +70,18 @@
+
+ void engine_callback(Xt* fcall, void * alist)
+ {
++ Cell *rp = RP;
++ Cell *sp = SP;
++ Float *fp = FP;
++ Address lp = LP;
++
+ clist = (va_alist)alist;
+- engine(fcall, SP, RP, FP, LP);
++ engine(fcall, sp, rp, fp, lp);
++
++ RP = rp;
++ SP = sp;
++ FP = fp;
++ LP = lp;
+ }
+ #endif
+