+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>
* gcc-wall-cleanup: Remove additional annoying warning messages
replace_len = strlen(newstr);
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,
strlen(end)+1);
memcpy(begin, newstr, replace_len);
if (!isspace(*cp))
break;
#if 0
- printf("Substitute: '%s' for '%s'\n", ptr, cp);
+ printf("Substitute: '%s' for '%s'\n", ptr, cp ? cp : "<NULL>");
#endif
add_subst(ptr, cp);
}