summaryrefslogtreecommitdiff
path: root/dix/grabs.c
diff options
context:
space:
mode:
Diffstat (limited to 'dix/grabs.c')
-rw-r--r--dix/grabs.c11
1 files changed, 5 insertions, 6 deletions
diff --git a/dix/grabs.c b/dix/grabs.c
index 5fd68202a..e3fc38bf5 100644
--- a/dix/grabs.c
+++ b/dix/grabs.c
@@ -199,12 +199,11 @@ AllocGrab(const GrabPtr src)
free(grab);
grab = NULL;
}
- }
-
- if (src && !CopyGrab(grab, src)) {
- free(grab->xi2mask);
- free(grab);
- grab = NULL;
+ else if (src && !CopyGrab(grab, src)) {
+ free(grab->xi2mask);
+ free(grab);
+ grab = NULL;
+ }
}
return grab;