postgresql/src/tools
Thomas Munro 6ae57f190e Fix exception safety bug in typcache.c.
If an out-of-memory error was thrown at an unfortunate time,
ensure_record_cache_typmod_slot_exists() could leak memory and leave
behind a global state that produced an infinite loop on the next call.

Fix by merging RecordCacheArray and RecordIdentifierArray into a single
array.  With only one allocation or re-allocation, there is no
intermediate state.

Back-patch to all supported releases.

Reported-by: "James Pang (chaolpan)" <chaolpan@cisco.com>
Reviewed-by: Michael Paquier <michael@paquier.xyz>
Discussion: https://postgr.es/m/PH0PR11MB519113E738814BDDA702EDADD6EFA%40PH0PR11MB5191.namprd11.prod.outlook.com
2023-09-13 14:52:34 +12:00
..
editors Make Emacs perl-mode indent more like perltidy. 2019-01-13 11:32:36 -08:00
findoidjoins Update oidjoins regression test for v11. 2018-05-07 14:32:04 -04:00
ifaddrs Update copyright for 2018 2018-01-02 23:30:12 -05:00
make_diff Remove useless whitespace at end of lines 2010-11-23 22:34:55 +02:00
msvc Define OPENSSL_API_COMPAT 2023-06-24 20:29:42 +09:00
perlcheck Back-patch "Stop requiring an explicit return from perl subroutines" 2021-10-23 19:36:30 -07:00
pginclude Don't fall off the end of perl functions 2018-05-27 09:08:42 -04:00
pgindent Fix exception safety bug in typcache.c. 2023-09-13 14:52:34 +12:00
ccsym tools/ccsym: update for modern versions of gcc 2015-01-20 13:02:58 -05:00
check_bison_recursion.pl perltidy: Add option --nooutdent-long-quotes 2018-04-27 11:37:43 -04:00
codelines Fix remaining stray references to CVS. 2010-09-22 19:51:39 -04:00
copyright.pl Don't fall off the end of perl functions 2018-05-27 09:08:42 -04:00
FAQ2txt Remove cvs keywords from all files. 2010-09-20 22:08:53 +02:00
find_badmacros Remove cvs keywords from all files. 2010-09-20 22:08:53 +02:00
find_static Fix omission of -X (--no-psqlrc) in some psql invocations. 2015-12-28 11:46:43 -05:00
find_typedef Refer to OS X as "macOS", except for the port name which is still "darwin". 2016-09-25 15:40:57 -04:00
fix-old-flex-code.pl perltidy: Add option --nooutdent-long-quotes 2018-04-27 11:37:43 -04:00
git-external-diff Preserve information on use of git-external-diff 2018-05-24 23:45:31 +09:30
git_changelog Don't fall off the end of perl functions 2018-05-27 09:08:42 -04:00
make_ctags Mention original ctags option name. 2012-02-24 16:19:18 -05:00
make_etags Remove cvs keywords from all files. 2010-09-20 22:08:53 +02:00
make_mkid Add another pgdefine path check, and a cvs-git change. 2011-08-26 21:52:35 -04:00
pgtest pgtest: run clean, build, and check stages separately 2018-07-28 15:34:06 -04:00
RELEASE_CHANGES Update RELEASE_CHANGES' example of branch name format. 2017-08-06 23:26:09 -04:00
testint128.c Update copyright for 2018 2018-01-02 23:30:12 -05:00
valgrind.supp Avoid need for valgrind suppressions for pg_atomic_init_u64 on some platforms. 2020-06-08 20:02:56 -07:00
version_stamp.pl Don't fall off the end of perl functions 2018-05-27 09:08:42 -04:00
win32tzlist.pl Update Windows timezone name list to include currently-known zones. 2020-04-24 17:53:23 -04:00