diff --git a/sls/trunk/src/sls.cc b/sls/trunk/src/sls.cc index 9c4e0231233dea5f451e1613b255b78ed252630e..a6344a6a23ce438cf056dbd7e2aedc21a21eb7b5 100644 --- a/sls/trunk/src/sls.cc +++ b/sls/trunk/src/sls.cc @@ -77,9 +77,20 @@ int main(int argc, char *argv[]) return ERR_NO; } catch (const Error &e) { - if (S.started()) S.stop(); - if (D.opened()) D.close(); + // Close server if started + if (S.started()) + S.stop(); + + // Save data in database + if (D.opened()) + D.close(); + + // print error e.print(); + + // Print exit code if in daemon and verbose mode + if (O.daemon && O.verbose) std::cerr << "Exit with code: " << e.code() << std::endl; + return e.code(); } }