| OLD | NEW |
| 1 #include <stdlib.h> | 1 #include <stdlib.h> |
| 2 #include <string.h> | 2 #include <string.h> |
| 3 | 3 |
| 4 int getsubopt(char **opt, char *const *keys, char **val) | 4 int getsubopt(char** opt, char* const* keys, char** val) { |
| 5 { | 5 char* s = *opt; |
| 6 » char *s = *opt; | 6 int i; |
| 7 » int i; | |
| 8 | 7 |
| 9 » *val = NULL; | 8 *val = NULL; |
| 10 » *opt = strchr(s, ','); | 9 *opt = strchr(s, ','); |
| 11 » if (*opt) *(*opt)++ = 0; | 10 if (*opt) |
| 12 » else *opt = s + strlen(s); | 11 *(*opt)++ = 0; |
| 12 else |
| 13 *opt = s + strlen(s); |
| 13 | 14 |
| 14 » for (i=0; keys[i]; i++) { | 15 for (i = 0; keys[i]; i++) { |
| 15 » » size_t l = strlen(keys[i]); | 16 size_t l = strlen(keys[i]); |
| 16 » » if (strncmp(keys[i], s, l)) continue; | 17 if (strncmp(keys[i], s, l)) |
| 17 » » if (s[l] == '=') | 18 continue; |
| 18 » » » *val = s + l + 1; | 19 if (s[l] == '=') |
| 19 » » else if (s[l]) continue; | 20 *val = s + l + 1; |
| 20 » » return i; | 21 else if (s[l]) |
| 21 » } | 22 continue; |
| 22 » return -1; | 23 return i; |
| 24 } |
| 25 return -1; |
| 23 } | 26 } |
| OLD | NEW |