projects
/
gnulib.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
argp fixes from Sergey.
[gnulib.git]
/
lib
/
hard-locale.c
diff --git
a/lib/hard-locale.c
b/lib/hard-locale.c
index
0070542
..
67a4144
100644
(file)
--- a/
lib/hard-locale.c
+++ b/
lib/hard-locale.c
@@
-1,6
+1,7
@@
/* hard-locale.c -- Determine whether a locale is hard.
/* hard-locale.c -- Determine whether a locale is hard.
- Copyright (C) 1997, 1998, 1999, 2002 Free Software Foundation, Inc.
+ Copyright (C) 1997, 1998, 1999, 2002, 2003, 2004 Free Software
+ Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@
-20,37
+21,32
@@
# include <config.h>
#endif
# include <config.h>
#endif
+#include "hard-locale.h"
+
#if HAVE_LOCALE_H
# include <locale.h>
#endif
#if HAVE_LOCALE_H
# include <locale.h>
#endif
-#if HAVE_STDLIB_H
-# include <stdlib.h>
-#endif
-
-#if HAVE_STRING_H
-# include <string.h>
-#endif
-
-#include "hard-locale.h"
+#include <stdlib.h>
+#include <string.h>
-/* Return
nonzero
if the current CATEGORY locale is hard, i.e. if you
+/* Return
true
if the current CATEGORY locale is hard, i.e. if you
can't get away with assuming traditional C or POSIX behavior. */
can't get away with assuming traditional C or POSIX behavior. */
-int
+bool
hard_locale (int category)
{
#if ! HAVE_SETLOCALE
hard_locale (int category)
{
#if ! HAVE_SETLOCALE
- return
0
;
+ return
false
;
#else
#else
-
int hard = 1
;
- char const *p = setlocale (category,
0
);
+
bool hard = true
;
+ char const *p = setlocale (category,
NULL
);
if (p)
{
# if defined __GLIBC__ && 2 <= __GLIBC__
if (strcmp (p, "C") == 0 || strcmp (p, "POSIX") == 0)
if (p)
{
# if defined __GLIBC__ && 2 <= __GLIBC__
if (strcmp (p, "C") == 0 || strcmp (p, "POSIX") == 0)
- hard =
0
;
+ hard =
false
;
# else
char *locale = malloc (strlen (p) + 1);
if (locale)
# else
char *locale = malloc (strlen (p) + 1);
if (locale)
@@
-64,7
+60,7
@@
hard_locale (int category)
&& strcmp (p, locale) == 0)
|| ((p = setlocale (category, "POSIX"))
&& strcmp (p, locale) == 0))
&& strcmp (p, locale) == 0)
|| ((p = setlocale (category, "POSIX"))
&& strcmp (p, locale) == 0))
- hard =
0
;
+ hard =
false
;
/* Restore the caller's locale. */
setlocale (category, locale);
/* Restore the caller's locale. */
setlocale (category, locale);