On 01/13/2012 02:55 PM, Wanlong Gao wrote:
From: Wanlong Gao<gaowanlong(a)cn.fujitsu.com>
Tweak the error message "e2fsck -f" and "e2fsck -fy".
Indicate the user to use the correct and/or forceall options.
Signed-off-by: Wanlong Gao<gaowanlong(a)cn.fujitsu.com>
---
daemon/ext2.c | 9 +++++++--
1 files changed, 7 insertions(+), 2 deletions(-)
diff --git a/daemon/ext2.c b/daemon/ext2.c
index 79fd354..c280ca2 100644
--- a/daemon/ext2.c
+++ b/daemon/ext2.c
@@ -277,9 +277,14 @@ do_resize2fs_M (const char *device)
if (e2prog (prog) == -1)
return -1;
- r = command (NULL,&err, prog, "-M" , device, NULL);
+ r = command (NULL,&err, prog, "-M", device, NULL);
While you're at it, might as well fix both spacing errors on this line.
if (r == -1) {
- reply_with_error ("%s", err);
+ if (strstr (err, "e2fsck -f")) {
+ free (err);
^^^ This results in a double free of err.
+ reply_with_error ("you need to run e2fsck with the
correct and/or forceall options first");
+ } else {
+ reply_with_error ("%s", err);
+ }
free (err);
return -1;
}
Matt
--
Matthew Booth, RHCA, RHCSS
Red Hat Engineering, Virtualisation Team
GPG ID: D33C3490
GPG FPR: 3733 612D 2D05 5458 8A8A 1600 3441 EA19 D33C 3490