Fix list_copy_head() with empty Lists
authorDavid Rowley <drowley@postgresql.org>
Wed, 19 Apr 2023 22:34:46 +0000 (10:34 +1200)
committerDavid Rowley <drowley@postgresql.org>
Wed, 19 Apr 2023 22:34:46 +0000 (10:34 +1200)
commite35ded29566f679e52888a8d34468bb51bc78bed
treeb8a8119636e4e5e92cfc660287e5886c0d7eb8de
parent2584639653eec13726a25d6ea8a4b42153185723
Fix list_copy_head() with empty Lists

list_copy_head() given an empty List would crash from trying to
dereference the List to obtain its length.  Since NIL is how we represent
an empty List, we should just be returning another empty List in this
case.

list_copy_head() is new to v16, so let's fix it now before too many people
start coding around the buggy NIL behavior.

Reported-by: Miroslav Bendik
Discussion: https://postgr.es/m/CAPoEpV02WhawuWnmnKet6BqU63bEu7oec0pJc=nKMtPsHMzTXQ@mail.gmail.com
src/backend/nodes/list.c