X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=write_common.c;fp=write_common.c;h=04db8ff0d1e0da00207930e682fddc84678e88d2;hp=be7f9c221f5bda21b5b7cb79db02ec8f748a3102;hb=877c179023ba45d481e9d89ac82fb0856617587b;hpb=c1b587842e553665fbffce079a5ff5a69c9c6a38 diff --git a/write_common.c b/write_common.c index be7f9c22..04db8ff0 100644 --- a/write_common.c +++ b/write_common.c @@ -157,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);