From d318187454c98b9011651d811042c1c7fb6b3cb5 Mon Sep 17 00:00:00 2001 From: tg Date: Fri, 29 Feb 2008 11:41:01 +0000 Subject: [PATCH] gcc sparc-sun-solaris2.8/3.4.3 warns about uninitialised usee of p --- eval.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/eval.c b/eval.c index 6e8f278..e6022cc 100644 --- a/eval.c +++ b/eval.c @@ -2,7 +2,7 @@ #include "sh.h" -__RCSID("$MirOS: src/bin/mksh/eval.c,v 1.39 2008/02/27 12:49:53 tg Exp $"); +__RCSID("$MirOS: src/bin/mksh/eval.c,v 1.40 2008/02/29 11:41:01 tg Exp $"); #ifdef MKSH_SMALL #define MKSH_NOPWNAM @@ -1015,10 +1015,10 @@ trimsub(char *str, char *pat, int how) case '/'|0x80: /* replace all - SLOWER! */ { char *rpat, *rrep, *tpat1, *tpat2, *tpat0, *sbeg, *s, *d; - bool gotmatch = false; /* separate search pattern and replacement string */ s = d = rpat = str_save(pat, ATEMP); + rrep = null; while ((c = *s++)) if (c == '\\') { if (s[0] == '\\' && s[1] != '/') @@ -1027,12 +1027,10 @@ trimsub(char *str, char *pat, int how) break; } else if (c == '/') { *d++ = '\0'; - p = s; - gotmatch = true; + rrep = s; break; } else *d++ = c; - rrep = gotmatch ? p : null; /* do not accept empty pattern */ if (!*rpat) { afree(rpat, ATEMP); @@ -1078,6 +1076,8 @@ trimsub(char *str, char *pat, int how) p = end; if (*pat != '%') while (p >= sbeg) { + bool gotmatch; + c = *p; *p = '\0'; gotmatch = gmatchx(sbeg, tpat0, false); *p = c;