diff options
author | Paulo Zanoni <paulo.r.zanoni@intel.com> | 2012-04-21 17:51:51 -0300 |
---|---|---|
committer | Daniel Vetter <daniel.vetter@ffwll.ch> | 2012-05-03 13:30:49 +0200 |
commit | a10bcaaf668ab16233df10c2742dcb497e17d588 (patch) | |
tree | 208f128b7cfaa2b37733e23fbecd790578805bb3 /tests/modetest/modetest.c | |
parent | 9b44fbd393b8db571badae41881f490145404ae0 (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>
Diffstat (limited to 'tests/modetest/modetest.c')
-rw-r--r-- | tests/modetest/modetest.c | 21 |
1 files changed, 10 insertions, 11 deletions
diff --git a/tests/modetest/modetest.c b/tests/modetest/modetest.c index 1b9ae18a..64809da3 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); } |