diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/s6-rc/s6-rc-update.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/s6-rc/s6-rc-update.c b/src/s6-rc/s6-rc-update.c index dcc4aeb..8cbc14f 100644 --- a/src/s6-rc/s6-rc-update.c +++ b/src/s6-rc/s6-rc-update.c @@ -164,6 +164,8 @@ static inline void fill_convtable_and_flags (unsigned char *conversion_table, un if (r < 0) strerr_diefu3sys(111, "read ", newfn, "/resolve.cdb") ; if (!r) { + if (oldstate[i] & 16) + strerr_dief4x(4, "bad conversion file: new service ", newname, " is undefined in database ", newfn) ; oldstate[i] |= 34 ; /* disappeared */ continue ; } @@ -185,7 +187,7 @@ static inline void fill_convtable_and_flags (unsigned char *conversion_table, un if (x >= newn) strerr_dief3x(4, "invalid resolve database in ", newfn, "/resolve.cdb") ; if (newstate[x] & 8) - strerr_dief4x(6, "bad conversion file: new service ", newdb->string + newdb->services[x].name, " is a target for more than one conversion, including old service ", olddb->string + olddb->services[i].name) ; + strerr_diefu4x(6, "convert database: new service ", newdb->string + newdb->services[x].name, " is a target for more than one conversion, including old service ", olddb->string + olddb->services[i].name) ; newstate[x] |= 8 ; invimage[x] = i ; bitarray_set(conversion_table + i * bitarray_div8(newn), x) ; |