xf86-video-intel: src/sna/sna_display.c
Chris Wilson
ickle at kemper.freedesktop.org
Wed Jun 25 23:00:32 PDT 2014
src/sna/sna_display.c | 12 +++++++++---
1 file changed, 9 insertions(+), 3 deletions(-)
New commits:
commit 12a349974b63a47ad55384abe0d7a839af48f31a
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date: Thu Jun 26 06:59:07 2014 +0100
sna: Make output destroy more defensive
We may never create the properties as it may be ignored or the
allocation may fail, so we need to be careful when freeing we do not
stumble over invalid pointers.
References: https://bugs.freedesktop.org/show_bug.cgi?id=80355#c28
Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
diff --git a/src/sna/sna_display.c b/src/sna/sna_display.c
index 799d7d4..166203a 100644
--- a/src/sna/sna_display.c
+++ b/src/sna/sna_display.c
@@ -2658,10 +2658,16 @@ sna_output_destroy(xf86OutputPtr output)
free(sna_output->edid_raw);
for (i = 0; i < sna_output->num_props; i++) {
- if (output->randr_output)
- RRDeleteOutputProperty(output->randr_output, sna_output->props[i].atoms[0]);
+ if (sna_output->props[i].kprop == NULL)
+ continue;
+
+ if (sna_output->props[i].atoms) {
+ if (output->randr_output)
+ RRDeleteOutputProperty(output->randr_output, sna_output->props[i].atoms[0]);
+ free(sna_output->props[i].atoms);
+ }
+
drmModeFreeProperty(sna_output->props[i].kprop);
- free(sna_output->props[i].atoms);
}
free(sna_output->props);
free(sna_output->prop_ids);
More information about the xorg-commit
mailing list