]> granicus.if.org Git - postgresql/commit
Modify wchar conversion routines to not fetch the next byte past the end
authorTom Lane <tgl@sss.pgh.pa.us>
Thu, 8 Mar 2001 00:24:34 +0000 (00:24 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Thu, 8 Mar 2001 00:24:34 +0000 (00:24 +0000)
commit572fda27118f7e54c7e4ebb75b48d33896e5f776
tree744a314265185c7d65b9e7ebfca3c28c608409d7
parentb109b03feaec96aab6c635137b5a668389df8d31
Modify wchar conversion routines to not fetch the next byte past the end
of a counted input string.  Marinos Yannikos' recent crash report turns
out to be due to applying pg_ascii2wchar_with_len to a TEXT object that
is smack up against the end of memory.  This is the second just-barely-
reproducible bug report I have seen that traces to some bit of code
fetching one more byte than it is allowed to.  Let's be more careful
out there, boys and girls.
While at it, I changed the code to not risk a similar crash when there
is a truncated multibyte character at the end of an input string.  The
output in this case might not be the most reasonable output possible;
if anyone wants to improve it further, step right up...
src/backend/utils/mb/mbutils.c
src/backend/utils/mb/wchar.c