[PATCH:xev 2/2] Use strncasecmp if available, instead of a tolower loop & strncmp
Alan Coopersmith
alan.coopersmith at oracle.com
Mon Jan 14 23:29:46 PST 2013
Signed-off-by: Alan Coopersmith <alan.coopersmith at oracle.com>
---
configure.ac | 3 +++
xev.c | 12 +++++++++---
2 files changed, 12 insertions(+), 3 deletions(-)
diff --git a/configure.ac b/configure.ac
index 0af7b2d..6016d62 100644
--- a/configure.ac
+++ b/configure.ac
@@ -26,6 +26,7 @@ AC_INIT([xev], [1.2.0],
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], [xev])
AC_CONFIG_SRCDIR([Makefile.am])
AC_CONFIG_HEADERS([config.h])
+AC_USE_SYSTEM_EXTENSIONS
# Initialize Automake
AM_INIT_AUTOMAKE([foreign dist-bzip2])
@@ -37,6 +38,8 @@ m4_ifndef([XORG_MACROS_VERSION],
XORG_MACROS_VERSION(1.8)
XORG_DEFAULT_OPTIONS
+AC_CHECK_FUNCS([strncasecmp])
+
# Checks for pkg-config packages
PKG_CHECK_MODULES(XEV, [xrandr >= 1.2 x11 xproto >= 7.0.17])
diff --git a/xev.c b/xev.c
index 34a46aa..298c5c1 100644
--- a/xev.c
+++ b/xev.c
@@ -32,6 +32,9 @@ from the X Consortium.
* Author: Jim Fulton, MIT X Consortium
*/
+#ifdef HAVE_CONFIG_H
+# include "config.h"
+#endif
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
@@ -907,16 +910,19 @@ static int
parse_backing_store (char *s)
{
size_t len = strlen (s);
+#ifndef HAVE_STRNCASECMP
char *cp;
for (cp = s; *cp; cp++) {
if (isascii (*cp) && isupper (*cp))
*cp = tolower (*cp);
}
+#define strncasecmp strncmp
+#endif
- if (strncmp (s, "notuseful", len) == 0) return (NotUseful);
- if (strncmp (s, "whenmapped", len) == 0) return (WhenMapped);
- if (strncmp (s, "always", len) == 0) return (Always);
+ if (strncasecmp (s, "notuseful", len) == 0) return (NotUseful);
+ if (strncasecmp (s, "whenmapped", len) == 0) return (WhenMapped);
+ if (strncasecmp (s, "always", len) == 0) return (Always);
usage ();
}
--
1.7.9.2
More information about the xorg-devel
mailing list