---- rpm-4.0.2/lib/misc.c.glob Wed May 16 13:00:10 2001
-+++ rpm-4.0.2/lib/misc.c Wed May 16 15:35:28 2001
-@@ -583,6 +583,11 @@
- const char * path;
- const char * globURL;
- char * globRoot = NULL;
-+#ifdef ENABLE_NLS
-+ char * old_collate = NULL;
-+ char * old_ctype = NULL;
-+ char * t;
-+#endif
- size_t maxb, nb;
- glob_t gl;
- int ut;
-@@ -593,6 +598,17 @@
- if (rc)
- return rc;
-
-+#ifdef ENABLE_NLS
-+ t = setlocale(LC_COLLATE, NULL);
-+ if (t)
-+ old_collate = strdup(t);
-+ t = setlocale(LC_CTYPE, NULL);
-+ if (t)
-+ old_ctype = strdup(t);
-+ setlocale(LC_COLLATE, "C");
-+ setlocale(LC_CTYPE, "C");
-+#endif
-+
- for (j = 0; j < ac; j++) {
- if (!myGlobPatternP(av[j])) {
- if (argc == 0)
-@@ -667,6 +683,17 @@
-
-
- exit:
-+#ifdef ENABLE_NLS
-+ if (old_collate) {
-+ setlocale(LC_COLLATE, old_collate);
-+ free(old_collate);
-+ }
-+ if (old_ctype) {
-+ setlocale(LC_CTYPE, old_ctype);
-+ free(old_ctype);
-+ }
-+#endif
+--- rpm-4.5/rpmio/rpmrpc.c~ 2010-12-19 14:19:57.678043380 +0100
++++ rpm-4.5/rpmio/rpmrpc.c 2010-12-19 14:20:39.353812967 +0100
+@@ -1711,6 +1711,17 @@
+ if (_rpmio_debug)
+ fprintf(stderr, "*** Glob(%s,0x%x,%p,%p)\n", pattern, (unsigned)flags, (void *)errfunc, pglob);
+ /*@=castfcnptr@*/
+
- if (av)
- free((void *)av);
- if ((rc || argvPtr == NULL) && argv) {
++ /* same as upstream glob with difference that gl_stat is Lstat now */
++ pglob->gl_closedir = closedir;
++ pglob->gl_readdir = readdir;
++ pglob->gl_opendir = opendir;
++ pglob->gl_lstat = Lstat;
++ pglob->gl_stat = Lstat;
++
++/*@=type@*/
++ flags |= GLOB_ALTDIRFUNC;
++
+ switch (ut) {
+ case URL_IS_HTTPS:
+ case URL_IS_HTTP:
+--- rpm-4.5/configure.ac~ 2010-12-19 13:46:37.917863585 +0100
++++ rpm-4.5/configure.ac 2010-12-19 13:50:49.826071048 +0100
+@@ -1004,8 +1004,8 @@
+ #fi
+ #
+ #if test "$rpm_cv_glob" = yes; then
+- AC_DEFINE(USE_GNU_GLOB, 1, [Use the included glob.c?])
+- AC_LIBOBJ(glob)
++# AC_DEFINE(USE_GNU_GLOB, 1, [Use the included glob.c?])
++# AC_LIBOBJ(glob)
+ AC_LIBOBJ(fnmatch)
+ #fi
+
+