I noticed this comment in selfuncs.c regarding strxfrm():
/*
* Some systems (e.g., glibc) can return a smaller value from the
* second call than the first; thus the Assert must be <= not ==.
*/
Some callers of pg_strnxfrm() are not allowing for that possibility.
Patch attached, which should be backported to 17.
Regards,
Jeff Davis