summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaulo Zanoni <paulo.r.zanoni@intel.com>2012-04-21 17:51:51 -0300
committerDaniel Vetter <daniel.vetter@ffwll.ch>2012-05-03 13:30:49 +0200
commita10bcaaf668ab16233df10c2742dcb497e17d588 (patch)
tree208f128b7cfaa2b37733e23fbecd790578805bb3
parent9b44fbd393b8db571badae41881f490145404ae0 (diff)
modetest: fix drmModeGetConnector memory leak
Don't "continue" without freeing the connector. 192 bytes in 6 blocks are indirectly lost in loss record 6 of 12 at 0x4C2779D: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) by 0x4E30DD8: drmMalloc (xf86drm.c:147) by 0x4E35024: drmAllocCpy (xf86drmMode.c:73) by 0x4E35D69: drmModeGetConnector (xf86drmMode.c:507) by 0x402F22: dump_connectors (modetest.c:181) by 0x40261B: main (modetest.c:801) Reviewed-by: Eugeni Dodonov <eugeni.dodonov@intel.com> Signed-off-by: Paulo Zanoni <paulo.r.zanoni@intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
-rw-r--r--tests/modetest/modetest.c21
1 files changed, 10 insertions, 11 deletions
diff --git a/tests/modetest/modetest.c b/tests/modetest/modetest.c
index 1b9ae18a2..64809da37 100644
--- a/tests/modetest/modetest.c
+++ b/tests/modetest/modetest.c
@@ -199,17 +199,16 @@ void dump_connectors(void)
printf("%s%d", j > 0 ? ", " : "", connector->encoders[j]);
printf("\n");
- if (!connector->count_modes)
- continue;
-
- printf(" modes:\n");
- printf(" name refresh (Hz) hdisp hss hse htot vdisp "
- "vss vse vtot)\n");
- for (j = 0; j < connector->count_modes; j++)
- dump_mode(&connector->modes[j]);
-
- printf(" props:\n");
- dump_props(connector);
+ if (connector->count_modes) {
+ printf(" modes:\n");
+ printf(" name refresh (Hz) hdisp hss hse htot vdisp "
+ "vss vse vtot)\n");
+ for (j = 0; j < connector->count_modes; j++)
+ dump_mode(&connector->modes[j]);
+
+ printf(" props:\n");
+ dump_props(connector);
+ }
drmModeFreeConnector(connector);
}