diff options
Diffstat (limited to 'undump.c')
-rw-r--r-- | undump.c | 9 |
1 files changed, 5 insertions, 4 deletions
@@ -3,7 +3,7 @@ | |||
3 | ** load bytecodes from files | 3 | ** load bytecodes from files |
4 | */ | 4 | */ |
5 | 5 | ||
6 | char* rcs_undump="$Id: undump.c,v 1.23 1997/06/16 16:50:22 roberto Exp roberto $"; | 6 | char* rcs_undump="$Id: undump.c,v 1.24 1997/06/17 18:19:17 roberto Exp roberto $"; |
7 | 7 | ||
8 | #include <stdio.h> | 8 | #include <stdio.h> |
9 | #include <string.h> | 9 | #include <string.h> |
@@ -192,10 +192,11 @@ static char* LoadNewString(ZIO* Z) | |||
192 | 192 | ||
193 | static void LoadFunction(ZIO* Z) | 193 | static void LoadFunction(ZIO* Z) |
194 | { | 194 | { |
195 | int size; | ||
195 | TFunc* tf=new(TFunc); | 196 | TFunc* tf=new(TFunc); |
196 | tf->next=NULL; | 197 | tf->next=NULL; |
197 | tf->locvars=NULL; | 198 | tf->locvars=NULL; |
198 | tf->size=LoadSize(Z); | 199 | size=LoadSize(Z); |
199 | tf->lineDefined=LoadWord(Z); | 200 | tf->lineDefined=LoadWord(Z); |
200 | if (IsMain(tf)) /* new main */ | 201 | if (IsMain(tf)) /* new main */ |
201 | { | 202 | { |
@@ -209,8 +210,8 @@ static void LoadFunction(ZIO* Z) | |||
209 | memcpy(Main->code+tf->marked,&tf,sizeof(tf)); | 210 | memcpy(Main->code+tf->marked,&tf,sizeof(tf)); |
210 | lastF=lastF->next=tf; | 211 | lastF=lastF->next=tf; |
211 | } | 212 | } |
212 | tf->code=LoadBlock(tf->size,Z); | 213 | tf->code=LoadBlock(size,Z); |
213 | if (swapword || swapfloat) FixCode(tf->code,tf->code+tf->size); | 214 | if (swapword || swapfloat) FixCode(tf->code,tf->code+size); |
214 | while (1) /* unthread */ | 215 | while (1) /* unthread */ |
215 | { | 216 | { |
216 | int c=zgetc(Z); | 217 | int c=zgetc(Z); |