(catopen): Always add NLSPATH to search path for catalogs, not only if
authordrepper <drepper>
Sun, 16 Mar 1997 17:37:26 +0000 (17:37 +0000)
committerdrepper <drepper>
Sun, 16 Mar 1997 17:37:26 +0000 (17:37 +0000)
the envvar NLSPATH is not available.

catgets/catgets.c

index a9425e4..9228f97 100644 (file)
@@ -84,8 +84,17 @@ catopen (const char *cat_name, int flag)
        }
 
       nlspath = __secure_getenv ("NLSPATH");
        }
 
       nlspath = __secure_getenv ("NLSPATH");
-      result->nlspath = __strdup (nlspath != NULL && *nlspath != '\0'
-                                 ? nlspath : NLSPATH);
+      if (nlspath != NULL && *nlspath != '\0')
+       {
+         /* Append the system dependent directory.  */
+         size_t len = strlen (nlspath + 1 + sizeof NLSPATH);
+         char *tmp = alloca (len);
+
+         __stpcpy (__stpcpy (__stpcpy (tmp, nlspath), ":"), NLSPATH);
+         nlspath = tmp;
+       }
+      else
+       result->nlspath = __strdup (NLSPATH);
 
       if (result->nlspath == NULL)
        {
 
       if (result->nlspath == NULL)
        {