Commit 250662bf authored by Birte Kristina Friesel's avatar Birte Kristina Friesel
Browse files

themes: allow '' for quoting as well (closes #132, see also #187)

parent 6d6adf2d
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -4,6 +4,7 @@ git HEAD
    * ~/.fehbg is now a shell script and can be executed directly
      (sourcing it still works)
    * --max-dimension: ignore width/height limit of 0 pixels
    * feh/themes: Support quoting with '' too (previously, only "" worked)

Wed, 08 Apr 2015 11:18:41 +0200  Daniel Friesel <derf+feh@finalrewind.org>

+5 −2
Original line number Diff line number Diff line
@@ -236,7 +236,7 @@ static void feh_parse_options_from_string(char *opts)

			list[num - 1] = feh_string_normalize(s);
			break;
		} else if (*t == '\"' && last != '\\')
		} else if (((*t == '\"') || (*t == '\'')) && last != '\\')
			inquote = !(inquote);
		last = *t;
	}
@@ -265,6 +265,9 @@ char *feh_string_normalize(char *str)
		else if ((*s == '\"') && (last == '\\'))
			ret[i++] = '\"';
		else if ((*s == '\"') && (last == 0));
		else if ((*s == '\'') && (last == '\\'))
			ret[i++] = '\'';
		else if ((*s == '\'') && (last == 0));
		else if ((*s == ' ') && (last == '\\'))
			ret[i++] = ' ';
		else
@@ -272,7 +275,7 @@ char *feh_string_normalize(char *str)

		last = *s;
	}
	if (i && (ret[i - 1] == '\"'))
	if (i && ((ret[i - 1] == '\"') || (ret[i - 1] == '\'')))
		ret[i - 1] = '\0';
	else
		ret[i] = '\0';