]> git.ipfire.org Git - thirdparty/postgresql.git/commit
Don't use %s-with-precision format spec to truncate data being displayed
authorTom Lane <tgl@sss.pgh.pa.us>
Sun, 18 Jan 2004 02:15:29 +0000 (02:15 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Sun, 18 Jan 2004 02:15:29 +0000 (02:15 +0000)
commitbe4b8a867f4698e118b8d1930dfe713e125d78db
tree8b8ce5952a49c323464c17cd8e4f2013f9c23d17
parent6bdfde9a7790ff350f176ae6506c4a061d7f02f4
Don't use %s-with-precision format spec to truncate data being displayed
in a COPY error message.  It seems that glibc gets indigestion if it is
asked to truncate strings that contain invalid UTF-8 encoding sequences.
vsnprintf will return -1 in such cases, leading to looping and eventual
memory overflow in elog.c.  Instead use our own, more robust pg_mbcliplen
routine.  I believe this problem accounts for several recent reports of
unexpected 'out of memory' errors during COPY IN.
src/backend/commands/copy.c