Backport [gdb] Improve early exits for env var in debuginfod-support.c
(Tom de Vries) Resolves: RHBZ 1970741
This commit is contained in:
parent
037f6d3daf
commit
1f44109aba
@ -368,3 +368,7 @@ Patch088: gdb-dont-overwrite-fsgsbase-m32.patch
|
||||
#(Tom de Vries)
|
||||
Patch089: gdb-rhbz1916516-pathstuff.cc132-internal-error.patch
|
||||
|
||||
#[gdb] Improve early exits for env var in debuginfod-support.c
|
||||
#(Tom de Vries)
|
||||
Patch090: gdb-rhbz1970741-early-exit-for-empty-debuginfod-url.patch
|
||||
|
||||
|
@ -87,3 +87,4 @@
|
||||
%patch087 -p1
|
||||
%patch088 -p1
|
||||
%patch089 -p1
|
||||
%patch090 -p1
|
||||
|
@ -87,3 +87,4 @@ gdb-rhbz1898252-loadable-section-outside-ELF-segments.patch
|
||||
gdb-gdb27743-psymtab-imported-unit.patch
|
||||
gdb-dont-overwrite-fsgsbase-m32.patch
|
||||
gdb-rhbz1916516-pathstuff.cc132-internal-error.patch
|
||||
gdb-rhbz1970741-early-exit-for-empty-debuginfod-url.patch
|
||||
|
51
gdb-rhbz1970741-early-exit-for-empty-debuginfod-url.patch
Normal file
51
gdb-rhbz1970741-early-exit-for-empty-debuginfod-url.patch
Normal file
@ -0,0 +1,51 @@
|
||||
From FEDORA_PATCHES Mon Sep 17 00:00:00 2001
|
||||
From: Bruno Larsen <blarsen@redhat.com>
|
||||
Date: Thu, 23 Sep 2021 11:19:09 -0300
|
||||
Subject: gdb-rhbz1970741-early-exit-for-empty-debuginfod-url.patch
|
||||
|
||||
;;[gdb] Improve early exits for env var in debuginfod-support.c
|
||||
;;(Tom de Vries)
|
||||
|
||||
There's an early exit in libdebuginfod's debuginfod_query_server, which checks
|
||||
both for:
|
||||
- getenv (DEBUGINFOD_URLS_ENV_VAR) == NULL, and
|
||||
- (getenv (DEBUGINFOD_URLS_ENV_VAR))[0] == '\0'.
|
||||
|
||||
In debuginfod_source_query and debuginfod_debuginfo_query (which both
|
||||
end up calling debuginfod_query_server) there are also early exits checking
|
||||
the same env var, but those just check for NULL.
|
||||
|
||||
Make the early exit tests in debuginfod-support.c match those in
|
||||
libdebuginfod.
|
||||
|
||||
gdb/ChangeLog:
|
||||
|
||||
2020-11-18 Tom de Vries <tdevries@suse.de>
|
||||
|
||||
* debuginfod-support.c (debuginfod_source_query)
|
||||
(debuginfod_debuginfo_query): Also do early exit if
|
||||
"(getenv (DEBUGINFOD_URLS_ENV_VAR))[0] == '\0'".
|
||||
|
||||
diff --git a/gdb/debuginfod-support.c b/gdb/debuginfod-support.c
|
||||
--- a/gdb/debuginfod-support.c
|
||||
+++ b/gdb/debuginfod-support.c
|
||||
@@ -98,7 +98,8 @@ debuginfod_source_query (const unsigned char *build_id,
|
||||
const char *srcpath,
|
||||
gdb::unique_xmalloc_ptr<char> *destname)
|
||||
{
|
||||
- if (getenv (DEBUGINFOD_URLS_ENV_VAR) == NULL)
|
||||
+ const char *urls_env_var = getenv (DEBUGINFOD_URLS_ENV_VAR);
|
||||
+ if (urls_env_var == NULL || urls_env_var[0] == '\0')
|
||||
return scoped_fd (-ENOSYS);
|
||||
|
||||
debuginfod_client *c = debuginfod_init ();
|
||||
@@ -135,7 +136,8 @@ debuginfod_debuginfo_query (const unsigned char *build_id,
|
||||
const char *filename,
|
||||
gdb::unique_xmalloc_ptr<char> *destname)
|
||||
{
|
||||
- if (getenv (DEBUGINFOD_URLS_ENV_VAR) == NULL)
|
||||
+ const char *urls_env_var = getenv (DEBUGINFOD_URLS_ENV_VAR);
|
||||
+ if (urls_env_var == NULL || urls_env_var[0] == '\0')
|
||||
return scoped_fd (-ENOSYS);
|
||||
|
||||
debuginfod_client *c = debuginfod_init ();
|
4
gdb.spec
4
gdb.spec
@ -1148,6 +1148,10 @@ fi
|
||||
%endif
|
||||
|
||||
%changelog
|
||||
* Thu Sep 23 2021 Bruno Larsen <blarsen@redhat.com> - 10.2-2
|
||||
- Backport "[gdb] Improve early exits for env var in debuginfod-support.c"
|
||||
(Tom de Vries)
|
||||
|
||||
* Thu Sep 23 2021 Bruno Larsen <blarsen@redhat.com> - 10.2-2
|
||||
- Backport "[gdb/cli] Don't assert on empty string for core-file"
|
||||
(Tom de Vries)
|
||||
|
Loading…
Reference in New Issue
Block a user