Commit graph

8 commits

Author SHA1 Message Date
Tim Eves
5429037179 Fix bug #1494 potential for buffer overrun
The get/put routines now require the buffer size remaining to be read/written to permit checking and the iterator will update this value whenever iterator comparisions are made.  Other direct uses of get/put have been updated.
2019-01-17 17:12:42 +07:00
Tim Eves
29a5fa6d2e Add more convert function use, psuh_persist actions and various tidy-ups 2018-12-17 23:40:44 +07:00
Tim Eves
559824a1b7 Replace utf16_to_utf8 with generic utfcodec based string conversion func
Templated convert for going between any combination of UTF codecs with 
an identity function specialisation for when src & target forms match.
Includes implmentations of json and basic_ostream << operators for 
u16string & u32string.
2018-12-14 00:46:54 +07:00
Tim Eves
70b6310a19 Fix misnamed km_kbp_context_items_to_utf8 call & add test case.
And fix the type of the buffer to match the type in the definition.

Co-Authored-By: Daniel Glassey <glasseyes@users.noreply.github.com>
2018-11-30 15:02:07 +07:00
Tim Eves
4667c5bf84 Add all the missing files that should have been in the preceding commit
Co-Authored-By: Daniel Glassey <glasseyes@users.noreply.github.com>
2018-11-30 14:46:54 +07:00
Tim Eves
70ec24a6e1 Refactor context_items_{from,to}_utf{8,16}, fix utftest and sz_lut defns 2018-11-30 14:35:51 +07:00
glasseyes
68aca71111 add km_kbp_context_items_from_utf8
avoids unnecessary conversions and string duplication

utf8codec private vars needed in cpp for
linker to find them?
2018-11-28 11:56:38 +07:00
Tim Eves
ef548606aa Move keyboardprocessor into it's new toplevel under common/engine 2018-10-25 13:43:28 +07:00
Renamed from keyboardprocessor/src/utfcodec.hpp (Browse further)