aboutsummaryrefslogtreecommitdiffstats
path: root/src/shvar.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/shvar.c')
-rw-r--r--src/shvar.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/shvar.c b/src/shvar.c
index 48f62ce0..765a77e7 100644
--- a/src/shvar.c
+++ b/src/shvar.c
@@ -133,8 +133,8 @@ unescape(char *s) {
/* create a new string with all necessary characters escaped.
* caller must free returned string
*/
-static const char escapees[] = "\"'\\$~`"; /* must be escaped */
-static const char spaces[] = " \t"; /* only require "" */
+static const char escapees[] = "\"'\\$~`"; /* must be escaped */
+static const char spaces[] = " \t|&;()<>"; /* only require "" */
static char *
escape(const char *s) {
char *new;
@@ -280,7 +280,7 @@ svSetValue(shvarFile *s, const char *key, const char *value)
if (val1 && newval && !strcmp(val1, newval)) goto bail;
if (s->parent) val2 = svGetValue(s->parent, key);
- if (!newval) {
+ if (!newval || !newval[0]) {
/* delete value somehow */
if (val2) {
/* change/append line to get key= */