From 2f7cd38c122b2f7f790e51b78a51cc935c9b2f18 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Mon, 14 Feb 2005 03:22:58 +0000 Subject: Initialize kbuf to NULL to quiet the compiler about uninit variables (wasn't an issue). Don't forget to free kbuf if the copyin fails. --- shared-core/radeon_state.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'shared-core') diff --git a/shared-core/radeon_state.c b/shared-core/radeon_state.c index 883d1d0e..1e606f3b 100644 --- a/shared-core/radeon_state.c +++ b/shared-core/radeon_state.c @@ -2725,7 +2725,7 @@ static int radeon_cp_cmdbuf(DRM_IOCTL_ARGS) drm_radeon_cmd_buffer_t cmdbuf; drm_radeon_cmd_header_t header; int orig_nbox, orig_bufsz; - char *kbuf; + char *kbuf = NULL; LOCK_TEST_WITH_RETURN(dev, filp); @@ -2756,8 +2756,10 @@ static int radeon_cp_cmdbuf(DRM_IOCTL_ARGS) kbuf = drm_alloc(cmdbuf.bufsz, DRM_MEM_DRIVER); if (kbuf == NULL) return DRM_ERR(ENOMEM); - if (DRM_COPY_FROM_USER(kbuf, cmdbuf.buf, cmdbuf.bufsz)) + if (DRM_COPY_FROM_USER(kbuf, cmdbuf.buf, cmdbuf.bufsz)) { + drm_free(kbuf, orig_bufsz, DRM_MEM_DRIVER); return DRM_ERR(EFAULT); + } cmdbuf.buf = kbuf; } -- cgit v1.2.3