X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fbus-proxyd%2Fbus-proxyd.c;h=d08559891eaf7fb1bafb9869a866d682f54a0d81;hb=1ffee377ee6d7ad0d365368b5461748f580296d7;hp=a14d7c822bab00722054a76f2f4db7d2ea365cef;hpb=ccd06097c79218f7d5ea4c21721bbcbc7c467dca;p=elogind.git diff --git a/src/bus-proxyd/bus-proxyd.c b/src/bus-proxyd/bus-proxyd.c index a14d7c822..d08559891 100644 --- a/src/bus-proxyd/bus-proxyd.c +++ b/src/bus-proxyd/bus-proxyd.c @@ -608,8 +608,13 @@ int main(int argc, char *argv[]) { k = sd_bus_send(b, m, NULL); if (k < 0) { - r = k; - log_error("Failed to send message: %s", strerror(-r)); + if (k == -ECONNRESET) + r = 0; + else { + r = k; + log_error("Failed to send message: %s", strerror(-r)); + } + goto finish; } } @@ -639,6 +644,7 @@ int main(int argc, char *argv[]) { k = process_hello(a, b, m, &got_hello); if (k < 0) { r = k; + log_error("Failed to process HELLO: %s", strerror(-r)); goto finish; } @@ -648,13 +654,19 @@ int main(int argc, char *argv[]) { k = process_policy(a, b, m); if (k < 0) { r = k; + log_error("Failed to process policy: %s", strerror(-r)); goto finish; } k = sd_bus_send(a, m, NULL); if (k < 0) { - r = k; - log_error("Failed to send message: %s", strerror(-r)); + if (r == -ECONNRESET) + r = 0; + else { + r = k; + log_error("Failed to send message: %s", strerror(-r)); + } + goto finish; } }