X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=src%2Fjournal%2Fjournalctl.c;h=cb252eb0b89eaf282e0cbd2ce7c2efa7a58e821d;hp=b347dfa18713c5c10be152b67db7371dcba02a22;hb=6cebe83cfa656365348ff21f567d133c7e34a71d;hpb=43a99a7afe3063eebc901452026b13360b69a7b5 diff --git a/src/journal/journalctl.c b/src/journal/journalctl.c index b347dfa18..cb252eb0b 100644 --- a/src/journal/journalctl.c +++ b/src/journal/journalctl.c @@ -371,7 +371,18 @@ static int parse_argv(int argc, char *argv[]) { case 'b': arg_boot = true; - arg_boot_descriptor = optarg; + + if (optarg) + arg_boot_descriptor = optarg; + else if (optind < argc) { + int boot; + + if (argv[optind][0] != '-' || + safe_atoi(argv[optind], &boot) >= 0) { + arg_boot_descriptor = argv[optind]; + optind++; + } + } break;