libXaw/U_NULL-pointer-dereference-in-XawAsciiSinkInitialize.patch
Stefan Dirsch 73b56e01dd Accepting request 618271 from home:michalsrb:branches:bnc1098411:X11:XOrg
- U_NULL-pointer-dereference-in-XawAsciiSinkInitialize.patch
  * Fix crash when required font is not installed. (bsc#1098411)

OBS-URL: https://build.opensuse.org/request/show/618271
OBS-URL: https://build.opensuse.org/package/show/X11:XOrg/libXaw?expand=0&rev=18
2018-06-21 09:43:01 +00:00

48 lines
1.4 KiB
Diff

Git-commit: ba7321b6a52726cdb9964b82c5111518dc1f437d
Author: Tobias Stoeckmann <tobias@stoeckmann.org>
Subject: NULL pointer dereference in XawAsciiSinkInitialize
References: bsc#1098411
Patch-Mainline: Upstream
Signed-off-by: Michal Srb <msrb@suse.com>
The function XawAsciiSinkInitialize is prone to a NULL pointer
dereference if no font is available.
Even though a specific check for a NULL font exists, it is called
after GetGC(), which in turn would trigger the NPE in such a case.
Spotted by calling xmessage on a system with an incomplete x font setup:
$ xmessage -b text
Warning: Unable to load any usable ISO8859 font
Segmentation fault
$ _
Signed-off-by: Tobias Stoeckmann <tobias@stoeckmann.org>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
---
src/AsciiSink.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/AsciiSink.c b/src/AsciiSink.c
index d776895..1cccb1c 100644
--- a/src/AsciiSink.c
+++ b/src/AsciiSink.c
@@ -1704,10 +1704,10 @@ XawAsciiSinkInitialize(Widget request, Widget cnew,
{
AsciiSinkObject sink = (AsciiSinkObject)cnew;
- GetGC(sink);
-
if (!sink->ascii_sink.font) XtError("Aborting: no font found\n");
+ GetGC(sink);
+
sink->ascii_sink.cursor_position = 0;
sink->ascii_sink.laststate = XawisOff;
sink->ascii_sink.cursor_x = sink->ascii_sink.cursor_y = 0;
--
2.13.6