From a511cab046e4919a3fc4f25938e73ccad7eb43cc Mon Sep 17 00:00:00 2001 From: Michael Gilbert Date: Wed, 12 Oct 2022 01:18:28 +0100 Subject: [PATCH] fix incorrect array size Gbp-Pq: Topic warnings Gbp-Pq: Name stringop-overflow.patch --- dlls/ddraw/device.c | 2 +- dlls/glu32/project.c | 24 ++++++++++++------------ 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/dlls/ddraw/device.c b/dlls/ddraw/device.c index 6e8f109..ad7d958 100644 --- a/dlls/ddraw/device.c +++ b/dlls/ddraw/device.c @@ -4681,7 +4681,7 @@ static HRESULT WINAPI d3d_device3_ComputeSphereVisibility(IDirect3DDevice3 *ifac D3DVECTOR *centers, D3DVALUE *radii, DWORD sphere_count, DWORD flags, DWORD *return_values) { static const DWORD enabled_planes = 0x3f; - struct wined3d_vec4 plane[6]; + struct wined3d_vec4 plane[12]; unsigned int i, j; TRACE("iface %p, centers %p, radii %p, sphere_count %u, flags %#x, return_values %p.\n", diff --git a/dlls/glu32/project.c b/dlls/glu32/project.c index dc10454..0a71eab 100644 --- a/dlls/glu32/project.c +++ b/dlls/glu32/project.c @@ -37,20 +37,20 @@ /* ** Make m an identity matrix */ -static void __gluMakeIdentityd(GLdouble m[16]) +static void __gluMakeIdentityd(GLdouble m[4][4]) { - m[0+4*0] = 1; m[0+4*1] = 0; m[0+4*2] = 0; m[0+4*3] = 0; - m[1+4*0] = 0; m[1+4*1] = 1; m[1+4*2] = 0; m[1+4*3] = 0; - m[2+4*0] = 0; m[2+4*1] = 0; m[2+4*2] = 1; m[2+4*3] = 0; - m[3+4*0] = 0; m[3+4*1] = 0; m[3+4*2] = 0; m[3+4*3] = 1; + m[0][0] = 1; m[0][1] = 0; m[0][2] = 0; m[0][3] = 0; + m[1][0] = 0; m[1][1] = 1; m[1][2] = 0; m[1][3] = 0; + m[2][0] = 0; m[2][1] = 0; m[2][2] = 1; m[2][3] = 0; + m[3][0] = 0; m[3][1] = 0; m[3][2] = 0; m[3][3] = 1; } -static void __gluMakeIdentityf(GLfloat m[16]) +static void __gluMakeIdentityf(GLfloat m[4][4]) { - m[0+4*0] = 1; m[0+4*1] = 0; m[0+4*2] = 0; m[0+4*3] = 0; - m[1+4*0] = 0; m[1+4*1] = 1; m[1+4*2] = 0; m[1+4*3] = 0; - m[2+4*0] = 0; m[2+4*1] = 0; m[2+4*2] = 1; m[2+4*3] = 0; - m[3+4*0] = 0; m[3+4*1] = 0; m[3+4*2] = 0; m[3+4*3] = 1; + m[0][0] = 1; m[0][1] = 0; m[0][2] = 0; m[0][3] = 0; + m[1][0] = 0; m[1][1] = 1; m[1][2] = 0; m[1][3] = 0; + m[2][0] = 0; m[2][1] = 0; m[2][2] = 1; m[2][3] = 0; + m[3][0] = 0; m[3][1] = 0; m[3][2] = 0; m[3][3] = 1; } /*********************************************************************** @@ -77,7 +77,7 @@ void WINAPI gluPerspective( GLdouble fovy, GLdouble aspect, GLdouble zNear, GLdo } cotangent = cos(radians) / sine; - __gluMakeIdentityd(&m[0][0]); + __gluMakeIdentityd(m); m[0][0] = cotangent / aspect; m[1][1] = cotangent; m[2][2] = -(zFar + zNear) / deltaZ; @@ -133,7 +133,7 @@ void WINAPI gluLookAt( GLdouble eyex, GLdouble eyey, GLdouble eyez, /* Recompute up as: up = side x forward */ cross(side, forward, up); - __gluMakeIdentityf(&m[0][0]); + __gluMakeIdentityf(m); m[0][0] = side[0]; m[1][0] = side[1]; m[2][0] = side[2]; -- 2.30.2