X-Git-Url: https://git.distorted.org.uk/~mdw/termux-packages/blobdiff_plain/acbfec93ea3ee9c0f85ba16616ac1448e6cd95c5..7b467de9c79ed4205444117f2c574142b7f3c322:/packages/elfutils/ldgeneric.c.patch diff --git a/packages/elfutils/ldgeneric.c.patch b/packages/elfutils/ldgeneric.c.patch deleted file mode 100644 index 82087006..00000000 --- a/packages/elfutils/ldgeneric.c.patch +++ /dev/null @@ -1,60 +0,0 @@ -diff -u -r ../elfutils-0.166/src/ldgeneric.c ./src/ldgeneric.c ---- ../elfutils-0.166/src/ldgeneric.c 2015-08-21 08:22:37.000000000 -0400 -+++ ./src/ldgeneric.c 2016-05-04 15:20:09.029651147 -0400 -@@ -1747,7 +1747,13 @@ - - /* The content of the file is available in memory. Read the - memory region as a stream. */ -+#ifdef __ANDROID__ -+ ldin = tmpfile(); -+ fwrite(content, 1, contentsize, ldin); -+ rewind(ldin); -+#else - ldin = fmemopen (content, contentsize, "r"); -+#endif - } - - /* No need for locking. */ -@@ -2631,9 +2637,9 @@ - /* Callback function registered with on_exit to make sure the temporary - files gets removed if something goes wrong. */ - static void --remove_tempfile (int status, void *arg) -+remove_tempfile () - { -- if (status != 0 && ld_state.tempfname != NULL) -+ if (ld_state.tempfname != NULL) - unlink (ld_state.tempfname); - } - -@@ -2680,7 +2686,7 @@ - - /* Make sure we remove the temporary file in case something goes - wrong. */ -- on_exit (remove_tempfile, NULL); -+ atexit (remove_tempfile); - - /* Create the ELF file data for the output file. */ - Elf *elf = ld_state.outelf = elf_begin (fd, -@@ -3352,6 +3358,7 @@ - struct id_list search; - struct id_list *verp; - bool result = ld_state.default_bind_local; -+ size_t substr_len; - - if (XELF_ST_BIND (sym->st_info) == STB_LOCAL || sym->st_shndx == SHN_UNDEF) - /* We don't have to do anything to local symbols here. */ -@@ -3367,7 +3374,12 @@ - version = strchr (str, VER_CHR); - if (version != NULL) - { -- search.id = strndupa (str, version - str); -+ substr_len = version - str; -+ char* tmp = alloca(substr_len+1); -+ strncpy(tmp, str, substr_len); -+ tmp[substr_len] = 0; -+ search.id = tmp; -+ - if (*++version == VER_CHR) - /* Skip the second '@' signaling a default definition. */ - ++version;