forked from pool/xorg-x11-server
Stefan Dirsch
13446b4f7b
* Replace malloc with calloc to initialize the buffers[] as NULL in do_get_buffers function (bnc #673595) OBS-URL: https://build.opensuse.org/package/show/X11:XOrg/xorg-x11-server?expand=0&rev=337
35 lines
1.3 KiB
Diff
35 lines
1.3 KiB
Diff
From a73c28f0bdafb1c5cb8129179188a99c0ca052e2 Mon Sep 17 00:00:00 2001
|
|
From: Justin Dou <Justin.Dou@intel.com>
|
|
Date: Thu, 10 Feb 2011 16:27:29 -0500
|
|
Subject: [PATCH] Replace malloc with calloc to initialize the buffers[] as NULL in do_get_buffers function
|
|
MIME-Version: 1.0
|
|
Content-Type: text/plain; charset=UTF-8
|
|
Content-Transfer-Encoding: 8bit
|
|
|
|
The calling for allocate_or_reuse_buffer may fail due to some reason, e.g. out of memory.
|
|
If the buffers[] were not initialized to be NULL, the following err_out may try to access an illegal memory, which will cause X crash afterward.
|
|
|
|
Reviewed-by: Kristian Høgsberg <krh@bitplanet.net>
|
|
Signed-off-by: Justin Dou <Justin.Dou@intel.com>
|
|
Signed-off-by: Keith Packard <keithp@keithp.com>
|
|
---
|
|
hw/xfree86/dri2/dri2.c | 2 +-
|
|
1 files changed, 1 insertions(+), 1 deletions(-)
|
|
|
|
diff --git a/hw/xfree86/dri2/dri2.c b/hw/xfree86/dri2/dri2.c
|
|
index 39996f9..9ca378f 100644
|
|
--- a/hw/xfree86/dri2/dri2.c
|
|
+++ b/hw/xfree86/dri2/dri2.c
|
|
@@ -403,7 +403,7 @@ do_get_buffers(DrawablePtr pDraw, int *width, int *height,
|
|
&& (pDraw->height == pPriv->height)
|
|
&& (pPriv->serialNumber == DRI2DrawableSerial(pDraw));
|
|
|
|
- buffers = malloc((count + 1) * sizeof(buffers[0]));
|
|
+ buffers = calloc((count + 1), sizeof(buffers[0]));
|
|
|
|
for (i = 0; i < count; i++) {
|
|
const unsigned attachment = *(attachments++);
|
|
--
|
|
1.7.4.1
|
|
|