8sa1-binutils-gdb/libctf
Nick Alcock 1820745a0a libctf: don't leak hash keys or values on value replacement
When a ctf_dynhash_insert() finds a slot already existing, it should
call the key and value free functions on the existing key and value and
move the passed-in key into place, so that the lifetime rules for hash
keys are always the same no matter whether the key existed or not but
neither are the keys or values leaked.

New in v3.
v5: fix tabdamage.

libctf/
	* ctf-hash.c (ctf_hashtab_insert): Pass in the key and value
	freeing functions: if set, free the key and value if the slot
	already exists.  Always reassign the key.
	(ctf_dynhash_insert): Adjust call appropriately.
	(ctf_hash_insert_type): Likewise.
2019-10-03 17:04:55 +01:00
..
aclocal.m4 libctf: fix a number of build problems found on Solaris and NetBSD 2019-05-31 11:10:51 +02:00
ChangeLog libctf: don't leak hash keys or values on value replacement 2019-10-03 17:04:55 +01:00
config.h.in libctf: work on platforms without O_CLOEXEC. 2019-06-04 17:05:08 +01:00
configure Regenerate with approved autotools version 2019-06-14 10:30:35 +09:30
configure.ac libctf: work on platforms without O_CLOEXEC. 2019-06-04 17:05:08 +01:00
ctf-archive.c libctf: write CTF files to memory, and CTF archives to fds 2019-10-03 17:04:55 +01:00
ctf-create.c libctf: teach ctf_add_type how forwards work 2019-10-03 17:04:55 +01:00
ctf-decl.c libctf: core type lookup 2019-05-28 17:08:14 +01:00
ctf-decls.h libctf: avoid strndup 2019-06-07 13:46:39 +01:00
ctf-dump.c libctf: dump: check the right error values when dumping functions 2019-10-03 17:04:55 +01:00
ctf-endian.h libctf: make it compile for old glibc 2019-10-03 17:04:55 +01:00
ctf-error.c libctf: add linking of the variable section 2019-10-03 17:04:55 +01:00
ctf-hash.c libctf: don't leak hash keys or values on value replacement 2019-10-03 17:04:55 +01:00
ctf-impl.h libctf: add CU-mapping machinery 2019-10-03 17:04:55 +01:00
ctf-labels.c libctf: fix a number of build problems found on Solaris and NetBSD 2019-05-31 11:10:51 +02:00
ctf-link.c libctf: add CU-mapping machinery 2019-10-03 17:04:55 +01:00
ctf-lookup.c libctf: introduce ctf_func_type_{info,args}, ctf_type_aname_raw 2019-07-18 20:53:57 +01:00
ctf-open-bfd.c libctf, bfd: fix ctf_bfdopen_ctfsect opening symbol and string sections 2019-10-03 17:04:55 +01:00
ctf-open.c libctf: add CU-mapping machinery 2019-10-03 17:04:55 +01:00
ctf-qsort_r.c libctf: look for BSD versus GNU qsort_r signatures 2019-06-04 17:05:08 +01:00
ctf-string.c libctf: support getting strings from the ELF strtab 2019-10-03 17:04:55 +01:00
ctf-subr.c libctf: drop mmap()-based CTF data allocator 2019-06-21 13:04:02 +01:00
ctf-types.c libctf: Add iteration over non-root types 2019-10-03 17:04:55 +01:00
ctf-util.c libctf: deduplicate and sort the string table 2019-07-01 11:05:59 +01:00
elf.h
Makefile.am libctf: add the ctf_link machinery 2019-10-03 17:04:55 +01:00
Makefile.in libctf: add the ctf_link machinery 2019-10-03 17:04:55 +01:00
swap.h libctf: fix a number of build problems found on Solaris and NetBSD 2019-05-31 11:10:51 +02:00