This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: PATCH: Fix TUI null pointer dereference
- From: Jim Blandy <jimb at redhat dot com>
- To: Andrew STUBBS <andrew dot stubbs at st dot com>
- Cc: gdb-patches at sourceware dot org
- Date: Wed, 19 Oct 2005 15:00:25 -0700
- Subject: Re: PATCH: Fix TUI null pointer dereference
- References: <4353B4A5.3010209@st.com>
Andrew STUBBS <andrew.stubbs@st.com> writes:
> Index: src/gdb/tui/tui-command.c
> ===================================================================
> --- src.orig/gdb/tui/tui-command.c 2004-02-16 21:05:09.000000000 +0000
> +++ src/gdb/tui/tui-command.c 2005-10-17 14:33:06.000000000 +0100
> @@ -70,7 +70,7 @@ tui_dispatch_ctrl_char (unsigned int ch)
> term = (char *) getenv ("TERM");
> for (i = 0; (term && term[i]); i++)
> term[i] = toupper (term[i]);
> - if ((strcmp (term, "XTERM") == 0) && key_is_start_sequence (ch))
> + if (term && (strcmp (term, "XTERM") == 0) && key_is_start_sequence (ch))
> {
> unsigned int page_ch = 0;
> unsigned int tmp_char;
How about wrapping the upcasing loop and the 'if' after it all in one
big 'if (term), starting right after the 'getenv ("TERM")', and then
simplifying the conditional in the upcasing loop?