summaryrefslogtreecommitdiff
path: root/drivers/platform/x86/sony-laptop.c
diff options
context:
space:
mode:
authorDan Carpenter <dan.carpenter@oracle.com>2013-02-01 17:28:27 +0400
committerMatthew Garrett <matthew.garrett@nebula.com>2013-02-27 17:30:43 +0400
commit34cf1df34aba1a6274deeef92ad6d02d5f52dab0 (patch)
treeea9f8a7db5b603671e245e5e5b53334ef4e09afc /drivers/platform/x86/sony-laptop.c
parentfabf85e3ca15d5b94058f391dac8df870cdd427a (diff)
downloadlinux-34cf1df34aba1a6274deeef92ad6d02d5f52dab0.tar.xz
sony-laptop: leak in error handling sony_nc_lid_resume_setup()
We need to decrement "i" first because the current "i" was not allocated succesfully. Also we should go free the way down to zero to avoid a leak. Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
Diffstat (limited to 'drivers/platform/x86/sony-laptop.c')
-rw-r--r--drivers/platform/x86/sony-laptop.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/platform/x86/sony-laptop.c b/drivers/platform/x86/sony-laptop.c
index 438c7fa999f8..9557414954fa 100644
--- a/drivers/platform/x86/sony-laptop.c
+++ b/drivers/platform/x86/sony-laptop.c
@@ -2351,7 +2351,7 @@ static int sony_nc_lid_resume_setup(struct platform_device *pd)
return 0;
liderror:
- for (; i > 0; i--)
+ for (i--; i >= 0; i--)
device_remove_file(&pd->dev, &lid_ctl->attrs[i]);
kfree(lid_ctl);