summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Hutterer <peter.hutterer@who-t.net>2009-12-09 16:41:37 +1000
committerPeter Hutterer <peter.hutterer@who-t.net>2009-12-10 15:31:19 +1000
commit73c09e8b574752239a6f6fb46da24f08e58347f4 (patch)
treed21d2bf9fce6ce237e8eb2ba477509f8e38791f9
parent6f515f56a456ff01b7df17874c1c55994518bcc0 (diff)
downloadxf86-input-wacom-73c09e8b574752239a6f6fb46da24f08e58347f4.tar.gz
xsetwacom: plug minor memory leak in set()
The data returned by the first xGetDeviceProperty was never freed. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-rw-r--r--tools/xsetwacom.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/tools/xsetwacom.c b/tools/xsetwacom.c
index c41b0c8..99bcc53 100644
--- a/tools/xsetwacom.c
+++ b/tools/xsetwacom.c
@@ -1310,7 +1310,7 @@ static void set(Display *dpy, int argc, char **argv)
XDevice *dev = NULL;
Atom prop, type;
int format;
- unsigned char* data;
+ unsigned char* data = NULL;
unsigned long nitems, bytes_after;
double val;
long *n;
@@ -1357,7 +1357,7 @@ static void set(Display *dpy, int argc, char **argv)
if (nitems <= param->prop_offset)
{
fprintf(stderr, "Property offset doesn't exist.\n");
- return;
+ goto out;
}
for (i = 0; i < argc - 2; i++)
@@ -1393,6 +1393,7 @@ static void set(Display *dpy, int argc, char **argv)
out:
XCloseDevice(dpy, dev);
+ free(data);
}
static void get_mode(Display *dpy, XDevice *dev, param_t* param, int argc, char **argv)