guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

branch core-updates updated: gnu: glibc: Handle failure to find $ORIGIN.


From: guix-commits
Subject: branch core-updates updated: gnu: glibc: Handle failure to find $ORIGIN.
Date: Sun, 29 Jan 2023 18:32:27 -0500

This is an automated email from the git hooks/post-receive script.

civodul pushed a commit to branch core-updates
in repository guix.

The following commit(s) were added to refs/heads/core-updates by this push:
     new edb8c09add gnu: glibc: Handle failure to find $ORIGIN.
edb8c09add is described below

commit edb8c09addd186d9538d43b12af74d6c7aeea082
Author: Ivan Kozlov <kanichos@yandex.ru>
AuthorDate: Tue Dec 21 04:25:50 2021 +0300

    gnu: glibc: Handle failure to find $ORIGIN.
    
    Fixes <https://issues.guix.gnu.org/52671>.
    
    * gnu/packages/patches/glibc-dl-cache.patch: Check pointer returned by 
'_dl_get_origin' for failure indication.
    
    Signed-off-by: Ludovic Courtès <ludo@gnu.org>
---
 gnu/packages/patches/glibc-dl-cache.patch | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/patches/glibc-dl-cache.patch 
b/gnu/packages/patches/glibc-dl-cache.patch
index 68c3a94846..647837b983 100644
--- a/gnu/packages/patches/glibc-dl-cache.patch
+++ b/gnu/packages/patches/glibc-dl-cache.patch
@@ -6,7 +6,7 @@ diff --git a/elf/dl-cache.c b/elf/dl-cache.c
 index 93d185e788..e0760a1f40 100644
 --- a/elf/dl-cache.c
 +++ b/elf/dl-cache.c
-@@ -171,6 +171,51 @@ _dl_cache_libcmp (const char *p1, const char *p2)
+@@ -171,6 +171,52 @@ _dl_cache_libcmp (const char *p1, const char *p2)
    return *p1 - *p2;
  }
  
@@ -27,7 +27,8 @@ index 93d185e788..e0760a1f40 100644
 +      const char *origin = _dl_get_origin ();
 +
 +      /* Check whether ORIGIN is something like "/gnu/store/…-foo/bin".  */
-+      if (strncmp (store, origin, strlen (store)) == 0
++      if (origin != (char *) -1   /* _dl_get_origin reported failure */
++        && strncmp (store, origin, strlen (store)) == 0
 +        && origin[sizeof store - 1] == '/')
 +      {
 +        char *store_item_end = strchr (origin + sizeof store, '/');



reply via email to

[Prev in Thread] Current Thread [Next in Thread]