case '"':
parse_double_quote(ctx, str, target);
break;
+ case '#':
+ **str = 0;
+ /* fall through */
case 0:
goto done;
case '\\':
char *pbrk = NULL;
word = strtok_r(word, " \t", &pbrk);
+ if (!word)
+ continue;
+
switch(word[0]) {
+ case '#':
+ return;
case 'p':
if ((word[1] == 0) || !strcmp(word + 1, "ackage"))
uci_parse_package(ctx, &word, single);
if (!overwrite) {
name = uci_strdup(ctx, p->e.name);
path = uci_strdup(ctx, p->path);
+ /* dump our own changes to the history file */
if (!uci_list_empty(&p->history))
UCI_INTERNAL(uci_save, ctx, p);
+
+ /*
+ * other processes might have modified the config
+ * as well. dump and reload
+ */
uci_free_package(&p);
uci_file_cleanup(ctx);
UCI_INTERNAL(uci_import, ctx, f, name, &p, true);