/* strings -- print the strings of printable characters in files
- Copyright (C) 1993, 94, 95, 96, 97, 98, 99, 2000
+ Copyright 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000
Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
#endif
#endif
-#ifdef isascii
-#define isgraphic(c) (isascii (c) && isprint (c))
+/* Not all printable characters have ASCII codes (depending upon the
+ LOCALE set) but on some older systems it is not safe to test isprint
+ without first testing isascii... */
+#if defined isascii && !defined HAVE_LOCALE_H
+#define isgraphic(c) (isascii (c) && (isprint (c) || (c) == '\t'))
#else
-#define isgraphic(c) (isprint (c))
+#define isgraphic(c) (isprint (c) || (c) == '\t')
#endif
#ifndef errno
boolean files_given = false;
#if defined (HAVE_SETLOCALE) && defined (HAVE_LC_MESSAGES)
- setlocale (LC_MESSAGES, "");
+ setlocale (LC_ALL, "");
#endif
bindtextdomain (PACKAGE, LOCALEDIR);
textdomain (PACKAGE);