[PATCH 2/4] ld: Refactor input_statement_is_archive_path() to not touch its argument
Calvin Owens
calvin@wbinvd.org
Sat Apr 25 02:19:45 GMT 2026
This is prep work for the next patch, no functional change intended.
Signed-off-by: Calvin Owens <calvin@wbinvd.org>
---
ld/ldlang.c | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/ld/ldlang.c b/ld/ldlang.c
index d75f9df4d43..b52ca2c4b03 100644
--- a/ld/ldlang.c
+++ b/ld/ldlang.c
@@ -362,7 +362,7 @@ archive_path (const char *pattern)
return whether F matches FILE_SPEC. */
static bool
-input_statement_is_archive_path (const char *file_spec, char *sep,
+input_statement_is_archive_path (const char *file_spec, const char *sep,
lang_input_statement_type *f)
{
bool match = false;
@@ -377,9 +377,11 @@ input_statement_is_archive_path (const char *file_spec, char *sep,
if (sep != file_spec)
{
const char *aname = bfd_get_filename (f->the_bfd->my_archive);
- *sep = 0;
- match = name_match (file_spec, aname) == 0;
- *sep = link_info.path_separator;
+ char *tmp = stat_strdup (file_spec);
+
+ tmp[sep - file_spec] = 0;
+ match = name_match (tmp, aname) == 0;
+ stat_free (tmp);
}
}
return match;
--
2.47.3
More information about the Binutils
mailing list