From b6bfc7bbee5132d60e37dfbafeb59ef5651d536b Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Thu, 24 May 2012 17:33:50 +0200 Subject: [PATCH] swap: avoid bad memory access --- src/core/swap.c | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/src/core/swap.c b/src/core/swap.c index f677d65bd27..e7ed1b88d72 100644 --- a/src/core/swap.c +++ b/src/core/swap.c @@ -535,25 +535,30 @@ static void swap_dump(Unit *u, FILE *f, const char *prefix) { p = &s->parameters_proc_swaps; else if (s->from_fragment) p = &s->parameters_fragment; + else + p = NULL; fprintf(f, "%sSwap State: %s\n" "%sResult: %s\n" "%sWhat: %s\n" - "%sPriority: %i\n" - "%sNoAuto: %s\n" - "%sNoFail: %s\n" "%sFrom /proc/swaps: %s\n" "%sFrom fragment: %s\n", prefix, swap_state_to_string(s->state), prefix, swap_result_to_string(s->result), prefix, s->what, - prefix, p->priority, - prefix, yes_no(p->noauto), - prefix, yes_no(p->nofail), prefix, yes_no(s->from_proc_swaps), prefix, yes_no(s->from_fragment)); + if (p) + fprintf(f, + "%sPriority: %i\n" + "%sNoAuto: %s\n" + "%sNoFail: %s\n", + prefix, p->priority, + prefix, yes_no(p->noauto), + prefix, yes_no(p->nofail)); + if (s->control_pid > 0) fprintf(f, "%sControl PID: %lu\n",