]> git.tuebingen.mpg.de Git - paraslash.git/blobdiff - write_common.c
new codename, reset version to git
[paraslash.git] / write_common.c
index 5bfba37d9197b7910046fa9efd6685167166164b..04db8ff0d1e0da00207930e682fddc84678e88d2 100644 (file)
@@ -92,7 +92,6 @@ void register_writer_node(struct writer_node *wn, struct btr_node *parent)
                .handler = w->execute, .context = wn));
        strcpy(wn->task.status, name);
        free(name);
-       w->open(wn);
        wn->task.post_select = w->post_select;
        wn->task.pre_select = w->pre_select;
        register_task(&wn->task);
@@ -158,7 +157,15 @@ static void get_btr_value(struct btr_node *btrn, const char *cmd,
        char *buf = NULL;
        int ret = btr_exec_up(btrn, cmd, &buf);
 
-       assert(ret >= 0);
+       if (ret < 0) {
+               /*
+                * This really should not happen. It means one of our parent
+                * nodes died unexpectedly. Proceed with fingers crossed.
+                */
+               PARA_CRIT_LOG("cmd %s: %s\n", cmd, para_strerror(-ret));
+               *result = 0;
+               return;
+       }
        ret = para_atoi32(buf, result);
        assert(ret >= 0);
        free(buf);