1 diff -ub intl.orig/bindtextdom.c intl/bindtextdom.c
2 --- intl.orig/bindtextdom.c Thu Aug 28 09:18:18 1997
3 +++ intl/bindtextdom.c Fri Apr 10 10:40:36 1998
7 /* The current binding has be to returned. */
8 - return binding == NULL ? (char *) _nl_default_dirname : binding->dirname;
9 + return binding == NULL ? (char *) strdup(__XOS2RedirRoot(_nl_default_dirname)) : binding->dirname;
13 /* The domain is already bound. Replace the old binding. */
16 - if (strcmp (dirname, _nl_default_dirname) == 0)
17 - new_dirname = (char *) _nl_default_dirname;
18 + if (strcmp (dirname, __XOS2RedirRoot(_nl_default_dirname)) == 0)
19 + new_dirname = (char *) strdup(__XOS2RedirRoot(_nl_default_dirname));
22 size_t len = strlen (dirname) + 1;
24 memcpy (new_dirname, dirname, len);
27 - if (strcmp (binding->dirname, _nl_default_dirname) != 0)
28 + if (strcmp (binding->dirname, __XOS2RedirRoot(_nl_default_dirname)) != 0)
29 free (binding->dirname);
31 binding->dirname = new_dirname;
34 memcpy (new_binding->domainname, domainname, len);
36 - if (strcmp (dirname, _nl_default_dirname) == 0)
37 - new_binding->dirname = (char *) _nl_default_dirname;
38 + if (strcmp (dirname, __XOS2RedirRoot(_nl_default_dirname)) == 0)
39 + new_binding->dirname = (char *) strdup(__XOS2RedirRoot(_nl_default_dirname));
42 len = strlen (dirname) + 1;
43 diff -ub intl.orig/dcgettext.c intl/dcgettext.c
44 --- intl.orig/dcgettext.c Thu Aug 28 09:18:20 1997
45 +++ intl/dcgettext.c Fri Apr 10 10:40:34 1998
47 const char *_nl_current_default_domain = _nl_default_default_domain;
49 /* Contains the default location of the message catalogs. */
51 const char _nl_default_dirname[] = GNULOCALEDIR;
53 /* List with bindings of specific domains created by bindtextdomain()
58 - dirname = (char *) _nl_default_dirname;
59 + dirname = (char *) strdup(__XOS2RedirRoot(_nl_default_dirname));
61 + else if (binding->dirname[0] == '/' || (isalpha(binding->dirname[0]) && binding->dirname[1] == ':'))
63 else if (binding->dirname[0] == '/')
65 dirname = binding->dirname;
71 /* Make CATEGORYVALUE point to the next element of the list. */
72 - while (categoryvalue[0] != '\0' && categoryvalue[0] == ':')
73 + while (categoryvalue[0] != '\0' && categoryvalue[0] == PATH_SEPARATOR)
75 if (categoryvalue[0] == '\0')
80 char *cp = single_locale;
81 - while (categoryvalue[0] != '\0' && categoryvalue[0] != ':')
82 + while (categoryvalue[0] != '\0' && categoryvalue[0] != PATH_SEPARATOR)
83 *cp++ = *categoryvalue++;
86 diff -ub intl.orig/gettext.h intl/gettext.h
87 --- intl.orig/gettext.h Thu Aug 28 09:18:20 1997
88 +++ intl/gettext.h Wed Apr 8 15:47:08 1998
94 +#define PATH_SEPARATOR ';'
96 +#define PATH_SEPARATOR ':'
99 /* @@ end of prolog @@ */
101 /* The magic number of the GNU message catalog format. */
102 diff -ub intl.orig/l10nflist.c intl/l10nflist.c
103 --- intl.orig/l10nflist.c Thu Aug 28 09:18:22 1997
104 +++ intl/l10nflist.c Thu Apr 9 00:03:58 1998
107 /* Construct file name. */
108 memcpy (abs_filename, dirlist, dirlist_len);
110 __argz_stringify (abs_filename, dirlist_len, ':');
112 + __argz_stringify (abs_filename, dirlist_len, ';');
114 cp = abs_filename + (dirlist_len - 1);
116 cp = stpcpy (cp, language);
117 diff -ub intl.orig/libgettext.h intl/libgettext.h
118 --- intl.orig/libgettext.h Wed Sep 17 14:28:58 1997
119 +++ intl/libgettext.h Wed Apr 8 15:47:08 1998
126 +#define GNULOCALEDIR "/XFree86/lib/X11/locale"
127 +#include <X11/Xlocale.h>
129 +#define __XOS2RedirRoot(path) path
134 diff -ub intl.orig/localealias.c intl/localealias.c
135 --- intl.orig/localealias.c Thu Aug 28 09:18:22 1997
136 +++ intl/localealias.c Wed Apr 8 15:47:08 1998
139 #include "gettextP.h"
142 +#undef LOCALE_ALIAS_PATH
143 +#define LOCALE_ALIAS_PATH "/XFree86/lib/X11/locale"
146 /* @@ end of prolog @@ */
149 @@ -170,11 +175,11 @@
153 - while (locale_alias_path[0] == ':')
154 + while (locale_alias_path[0] == PATH_SEPARATOR)
156 start = locale_alias_path;
158 - while (locale_alias_path[0] != '\0' && locale_alias_path[0] != ':')
159 + while (locale_alias_path[0] != '\0' && locale_alias_path[0] != PATH_SEPARATOR)
162 if (start < locale_alias_path)
164 const struct alias_map *map1;
165 const struct alias_map *map2;
168 +#define strcasecmp stricmp
170 #if defined _LIBC || defined HAVE_STRCASECMP
171 return strcasecmp (map1->alias, map2->alias);