From 837ca9f0a1bb01b91187f53a58466c064202d503 Mon Sep 17 00:00:00 2001 From: "Rafael J. Wysocki" Date: Wed, 16 May 2007 22:11:19 -0700 Subject: [PATCH] --- yaml --- r: 56536 b: refs/heads/master c: 8d98a690f58e0d6ecf424b7ca84488475cf87bd9 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/kernel/power/disk.c | 3 ++- trunk/kernel/power/main.c | 4 ++-- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/[refs] b/[refs] index 032cf0557e2e..42b1c271af40 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 7925409e202a41176b729671eab6e610a54153cd +refs/heads/master: 8d98a690f58e0d6ecf424b7ca84488475cf87bd9 diff --git a/trunk/kernel/power/disk.c b/trunk/kernel/power/disk.c index b5f0543ed84d..f445b9cd60fb 100644 --- a/trunk/kernel/power/disk.c +++ b/trunk/kernel/power/disk.c @@ -416,7 +416,8 @@ static ssize_t disk_store(struct kset *kset, const char *buf, size_t n) mutex_lock(&pm_mutex); for (i = HIBERNATION_FIRST; i <= HIBERNATION_MAX; i++) { - if (!strncmp(buf, hibernation_modes[i], len)) { + if (len == strlen(hibernation_modes[i]) + && !strncmp(buf, hibernation_modes[i], len)) { mode = i; break; } diff --git a/trunk/kernel/power/main.c b/trunk/kernel/power/main.c index b98b80ccf437..8812985f3029 100644 --- a/trunk/kernel/power/main.c +++ b/trunk/kernel/power/main.c @@ -290,13 +290,13 @@ static ssize_t state_store(struct kset *kset, const char *buf, size_t n) len = p ? p - buf : n; /* First, check if we are requested to hibernate */ - if (!strncmp(buf, "disk", len)) { + if (len == 4 && !strncmp(buf, "disk", len)) { error = hibernate(); return error ? error : n; } for (s = &pm_states[state]; state < PM_SUSPEND_MAX; s++, state++) { - if (*s && !strncmp(buf, *s, len)) + if (*s && len == strlen(*s) && !strncmp(buf, *s, len)) break; } if (state < PM_SUSPEND_MAX && *s)