X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fsystem-update-generator%2Fsystem-update-generator.c;h=6660192f5e06beb650792f6ceefa5c4a3beea60a;hb=b3680f49e20c51e31c8dea84a11207df7b8f0100;hp=30fdbc3ee8cda3bfb1283493398016b94992a3cd;hpb=399c5f96331ad5281fdb75a7c0c66cc703f7eeb6;p=elogind.git diff --git a/src/system-update-generator/system-update-generator.c b/src/system-update-generator/system-update-generator.c index 30fdbc3ee..6660192f5 100644 --- a/src/system-update-generator/system-update-generator.c +++ b/src/system-update-generator/system-update-generator.c @@ -47,10 +47,8 @@ static int generate_symlink(void) { } p = strappend(arg_dest, "/default.target"); - if (!p) { - log_error("Out of memory."); - return -ENOMEM; - } + if (!p) + return log_oom(); if (symlink(SYSTEM_DATA_UNIT_PATH "/system-update.target", p) < 0) { free(p); @@ -66,15 +64,15 @@ static int generate_symlink(void) { int main(int argc, char *argv[]) { int r; - if (argc > 2) { - log_error("This program takes one or no arguments."); + if (argc > 1 && argc != 4) { + log_error("This program takes three or no arguments."); return EXIT_FAILURE; } if (argc > 1) - arg_dest = argv[1]; + arg_dest = argv[2]; - log_set_target(LOG_TARGET_AUTO); + log_set_target(LOG_TARGET_SAFE); log_parse_environment(); log_open();