mirror of https://github.com/vitalif/e2fsprogs
ChangeLog, subst.c:
subst.c (replace_string): Fix replace_string so that it correctly handles replacing a substitution variable with a zero-length string.bitmap-optimize
parent
d6a27e0048
commit
913c4e9f14
|
@ -1,3 +1,9 @@
|
||||||
|
2001-04-17 Theodore Tso <tytso@valinux.com>
|
||||||
|
|
||||||
|
* subst.c (replace_string): Fix replace_string so that it
|
||||||
|
correctly handles replacing a substitution variable with a
|
||||||
|
zero-length string.
|
||||||
|
|
||||||
2001-01-14 Theodore Ts'o <tytso@valinux.com>
|
2001-01-14 Theodore Ts'o <tytso@valinux.com>
|
||||||
|
|
||||||
* gcc-wall-cleanup: Remove additional annoying warning messages
|
* gcc-wall-cleanup: Remove additional annoying warning messages
|
||||||
|
|
|
@ -108,7 +108,9 @@ static void replace_string(char *begin, char *end, char *newstr)
|
||||||
|
|
||||||
replace_len = strlen(newstr);
|
replace_len = strlen(newstr);
|
||||||
len = end - begin;
|
len = end - begin;
|
||||||
if (replace_len != len+1)
|
if (replace_len == 0)
|
||||||
|
memmove(begin, end+1, strlen(end)+1);
|
||||||
|
else if (replace_len != len+1)
|
||||||
memmove(end+(replace_len-len-1), end,
|
memmove(end+(replace_len-len-1), end,
|
||||||
strlen(end)+1);
|
strlen(end)+1);
|
||||||
memcpy(begin, newstr, replace_len);
|
memcpy(begin, newstr, replace_len);
|
||||||
|
@ -248,7 +250,7 @@ static void parse_config_file(FILE *f)
|
||||||
if (!isspace(*cp))
|
if (!isspace(*cp))
|
||||||
break;
|
break;
|
||||||
#if 0
|
#if 0
|
||||||
printf("Substitute: '%s' for '%s'\n", ptr, cp);
|
printf("Substitute: '%s' for '%s'\n", ptr, cp ? cp : "<NULL>");
|
||||||
#endif
|
#endif
|
||||||
add_subst(ptr, cp);
|
add_subst(ptr, cp);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue