From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 2012) id E6FF0385840B; Thu, 3 Mar 2022 11:35:21 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org E6FF0385840B Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: Arjun Shankar To: glibc-cvs@sourceware.org Subject: [glibc/release/2.35/master] localedef: Handle symbolic links when generating locale-archive X-Act-Checkin: glibc X-Git-Author: Arjun Shankar X-Git-Refname: refs/heads/release/2.35/master X-Git-Oldrev: 732dd3a63d39c7ca77e817b462285c14551c8b49 X-Git-Newrev: 90797f49722b69818780b1111c0ecc9dbbbf0bdf Message-Id: <20220303113521.E6FF0385840B@sourceware.org> Date: Thu, 3 Mar 2022 11:35:21 +0000 (GMT) X-BeenThere: glibc-cvs@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Glibc-cvs mailing list List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 03 Mar 2022 11:35:22 -0000 https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=90797f49722b69818780b1111c0ecc9dbbbf0bdf commit 90797f49722b69818780b1111c0ecc9dbbbf0bdf Author: Arjun Shankar Date: Thu Feb 24 21:43:09 2022 +0100 localedef: Handle symbolic links when generating locale-archive Whenever locale data for any locale included symbolic links, localedef would throw the error "incomplete set of locale files" and exclude it from the generated locale archive. This commit fixes that. Co-authored-by: Florian Weimer Reviewed-by: Carlos O'Donell (cherry picked from commit ea89d5bbd9e5e514b606045d909e6ab87d851c88) Diff: --- locale/programs/locarchive.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/locale/programs/locarchive.c b/locale/programs/locarchive.c index 45408c26c1..eeb2fa6ffe 100644 --- a/locale/programs/locarchive.c +++ b/locale/programs/locarchive.c @@ -1397,7 +1397,7 @@ add_locales_to_archive (size_t nlist, char *list[], bool replace) { char fullname[fnamelen + 2 * strlen (d->d_name) + 7]; - if (d_type == DT_UNKNOWN) + if (d_type == DT_UNKNOWN || d_type == DT_LNK) { strcpy (stpcpy (stpcpy (fullname, fname), "/"), d->d_name);