SCCS-vsn: bin/sh/expand.c 5.7
-static char sccsid[] = "@(#)expand.c 5.6 (Berkeley) %G%";
+static char sccsid[] = "@(#)expand.c 5.7 (Berkeley) %G%";
}
savelastp = exparg.lastp;
INTOFF;
}
savelastp = exparg.lastp;
INTOFF;
- if (expdir == NULL)
- expdir = ckmalloc(strlen(str->text)); /* XXX - */
+ if (expdir == NULL) {
+ int i = strlen(str->text);
+ expdir = ckmalloc(i < 2048 ? 2048 : i); /* XXX */
+ }
+
expmeta(expdir, str->text);
ckfree(expdir);
expdir = NULL;
expmeta(expdir, str->text);
ckfree(expdir);
expdir = NULL;