summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLibravatar taiyu <taiyu.len@gmail.com>2015-09-07 14:40:23 -0700
committerLibravatar taiyu <taiyu.len@gmail.com>2015-09-07 14:40:23 -0700
commit47ff0006975a2fcab2178b729deec675c2283363 (patch)
treebaca96b7520a4fc309710ace1be4f0301264b152
parentconfig modes (diff)
downloadsway-47ff0006975a2fcab2178b729deec675c2283363.tar.gz
sway-47ff0006975a2fcab2178b729deec675c2283363.tar.zst
sway-47ff0006975a2fcab2178b729deec675c2283363.zip
put strip_whitespace back
-rw-r--r--sway/config.c1
-rw-r--r--sway/stringop.c23
2 files changed, 15 insertions, 9 deletions
diff --git a/sway/config.c b/sway/config.c
index 119730ca..95cd8b0d 100644
--- a/sway/config.c
+++ b/sway/config.c
@@ -230,6 +230,7 @@ bool read_config(FILE *file, bool is_active) {
230 char *line; 230 char *line;
231 while (!feof(file)) { 231 while (!feof(file)) {
232 line = read_line(file); 232 line = read_line(file);
233 line = strip_whitespace(line);
233 line = strip_comments(line); 234 line = strip_comments(line);
234 if (line[0] == '\0') { 235 if (line[0] == '\0') {
235 goto _continue; 236 goto _continue;
diff --git a/sway/stringop.c b/sway/stringop.c
index d2b74655..77faf3f1 100644
--- a/sway/stringop.c
+++ b/sway/stringop.c
@@ -11,16 +11,21 @@ const char *whitespace = " \f\n\r\t\v";
11 11
12/* Note: This returns 8 characters for trimmed_start per tab character. */ 12/* Note: This returns 8 characters for trimmed_start per tab character. */
13char *strip_whitespace(char *_str) { 13char *strip_whitespace(char *_str) {
14 int ws = strspn(_str, whitespace); 14 if (*_str == '\0')
15 int len = strlen(_str) - ws + 1; 15 return _str;
16 sway_log(L_DEBUG,"%d, %d..",ws,len); 16 char *strold = _str;
17 char *str = malloc(len); 17 while (*_str == ' ' || *_str == '\t') {
18 strcpy(str, _str+ws); 18 _str++;
19 free(_str); 19 }
20 char *str = malloc(strlen(_str) + 1);
21 strcpy(str, _str);
22 free(strold);
23 int i;
24 for (i = 0; str[i] != '\0'; ++i);
20 do { 25 do {
21 len--; 26 i--;
22 } while (len >= 0 && (str[len] == ' ' || str[len] == '\t')); 27 } while (i >= 0 && (str[i] == ' ' || str[i] == '\t'));
23 str[len + 1] = '\0'; 28 str[i + 1] = '\0';
24 return str; 29 return str;
25} 30}
26 31