diff --git a/src/cmd/5a/lex.c b/src/cmd/5a/lex.c index 44ce3bb403..540c12af59 100644 --- a/src/cmd/5a/lex.c +++ b/src/cmd/5a/lex.c @@ -139,9 +139,10 @@ main(int argc, char *argv[]) int assemble(char *file) { - char ofile[100], incfile[20], *p; + char *ofile, incfile[20], *p; int i, of; + ofile = alloc(strlen(file)+3); // +3 for .x\0 (x=thechar) strcpy(ofile, file); p = utfrrune(ofile, '/'); if(p) { diff --git a/src/cmd/6a/a.h b/src/cmd/6a/a.h index 11ace63899..f1a0453156 100644 --- a/src/cmd/6a/a.h +++ b/src/cmd/6a/a.h @@ -168,6 +168,7 @@ EXTERN char* thestring; EXTERN int32 thunk; EXTERN Biobuf obuf; +void* alloc(int32); void* allocn(void*, int32, int32); void errorexit(void); void pushio(void); diff --git a/src/cmd/6a/lex.c b/src/cmd/6a/lex.c index 7621021c4f..a1814b0805 100644 --- a/src/cmd/6a/lex.c +++ b/src/cmd/6a/lex.c @@ -139,9 +139,10 @@ main(int argc, char *argv[]) int assemble(char *file) { - char ofile[100], incfile[20], *p; + char *ofile, incfile[20], *p; int i, of; + ofile = alloc(strlen(file)+3); // +3 for .x\0 (x=thechar) strcpy(ofile, file); p = utfrrune(ofile, pathchar()); if(p) { diff --git a/src/cmd/8a/a.h b/src/cmd/8a/a.h index bf0fc77083..c019ce4d66 100644 --- a/src/cmd/8a/a.h +++ b/src/cmd/8a/a.h @@ -169,6 +169,7 @@ EXTERN char* thestring; EXTERN int32 thunk; EXTERN Biobuf obuf; +void* alloc(int32); void* allocn(void*, int32, int32); void errorexit(void); void pushio(void); diff --git a/src/cmd/8a/lex.c b/src/cmd/8a/lex.c index a426713427..a00ac49f6c 100644 --- a/src/cmd/8a/lex.c +++ b/src/cmd/8a/lex.c @@ -138,9 +138,10 @@ main(int argc, char *argv[]) int assemble(char *file) { - char ofile[100], incfile[20], *p; + char *ofile, incfile[20], *p; int i, of; + ofile = alloc(strlen(file)+3); // +3 for .x\0 (x=thechar) strcpy(ofile, file); p = utfrrune(ofile, pathchar()); if(p) {