- Add U_libXrandr_fix-memory-leak.patch: Fix memory leak on error paths. - Drop unneeded autoconf, automake and libtool BuildRequires and no longer pass autoreconf. OBS-URL: https://build.opensuse.org/request/show/544365 OBS-URL: https://build.opensuse.org/package/show/X11:XOrg/libXrandr?expand=0&rev=27
49 lines
1.3 KiB
Diff
49 lines
1.3 KiB
Diff
From 87227e5fc79750d3eccc3c3482a3c5b3f2af2e90 Mon Sep 17 00:00:00 2001
|
|
From: Tobias Stoeckmann <tobias@stoeckmann.org>
|
|
Date: Sat, 28 Jan 2017 15:37:57 +0100
|
|
Subject: Fix memory leak on error paths
|
|
|
|
Introduced in commit a0df3e1c7728205e5c7650b2e6dce684139254a6 "Avoid out
|
|
of boundary accesses on illegal responses"
|
|
|
|
Signed-off-by: Julien Cristau <jcristau@debian.org>
|
|
|
|
diff --git a/src/XrrCrtc.c b/src/XrrCrtc.c
|
|
index 6665092..8316b78 100644
|
|
--- a/src/XrrCrtc.c
|
|
+++ b/src/XrrCrtc.c
|
|
@@ -459,6 +459,7 @@ XRRGetCrtcTransform (Display *dpy,
|
|
e = extra;
|
|
|
|
if (e + rep.pendingNbytesFilter > end) {
|
|
+ XFree (attr);
|
|
XFree (extra);
|
|
return False;
|
|
}
|
|
@@ -468,6 +469,7 @@ XRRGetCrtcTransform (Display *dpy,
|
|
for (p = 0; p < rep.pendingNparamsFilter; p++) {
|
|
INT32 f;
|
|
if (e + 4 > end) {
|
|
+ XFree (attr);
|
|
XFree (extra);
|
|
return False;
|
|
}
|
|
@@ -478,6 +480,7 @@ XRRGetCrtcTransform (Display *dpy,
|
|
attr->pendingNparams = rep.pendingNparamsFilter;
|
|
|
|
if (e + rep.currentNbytesFilter > end) {
|
|
+ XFree (attr);
|
|
XFree (extra);
|
|
return False;
|
|
}
|
|
@@ -487,6 +490,7 @@ XRRGetCrtcTransform (Display *dpy,
|
|
for (p = 0; p < rep.currentNparamsFilter; p++) {
|
|
INT32 f;
|
|
if (e + 4 > end) {
|
|
+ XFree (attr);
|
|
XFree (extra);
|
|
return False;
|
|
}
|
|
--
|
|
cgit v0.10.2
|