path: root/sys
diff options
authorTijl Coosemans <tijl@FreeBSD.org>2015-05-24 15:27:31 +0000
committerTijl Coosemans <tijl@FreeBSD.org>2015-05-24 15:27:31 +0000
commitec513841b3ac59ce581ffb5eb859926555f6834b (patch)
tree6a7c10da485c465a32015120c59fb7a005217639 /sys
parentb2e0aad9e583ff7aa23e4039f28661f53bbde52f (diff)
Fix decoding of UTF-7 when a base64 encoded chunk appears at the end of
the input buffer. _citrus_UTF7_mbtoutf16 stored the decoder state at the beginning so it could restore this state on an incomplete character such that the next call would restart the decoding. The problem was that "-" (end of base64 mode) at the end of a string was also treated as an incomplete character but was also removed from the state buffer. So the initial state would be restored (with base64 mode) and the next call would no longer see the "-" so it continued in base64 mode. This state saving/restoring isn't needed here. It's already handled elsewhere (citrus_iconv_std.c:_citrus_iconv_std_iconv_convert) so just remove it. Also initialise *nresult. PR: 200398 Tested by: delphij MFC after: 1 week
Notes: svn path=/head/; revision=283406
Diffstat (limited to 'sys')
0 files changed, 0 insertions, 0 deletions