summaryrefslogtreecommitdiff
path: root/libutils/Unicode.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Remove move dead code.Elliott Hughes2021-04-151-45/+0
| | | | | Test: treehugger Change-Id: I6a23b19d078400dfe90329a49ae1abbcb24ef2bf
* Remove unused utf8_length().Elliott Hughes2020-10-261-43/+0
| | | | | Test: treehugger Change-Id: Idcebc4ae1dcad102873d50f199f5e8745e589da4
* Update language to comply with Android's inclusive language guidanceDan Albert2020-07-281-2/+2
| | | | | | | | See https://source.android.com/setup/contribute/respectful-code for reference Bug: http://b/161896447 Test: None Change-Id: I9e5a37a20012b2f7a8eac55701df03f7b7a9ab6c
* Remove two more unused utf32 functions.Elliott Hughes2019-07-161-42/+0
| | | | | Test: builds Change-Id: I6ab2104fc6836e9edb772e8368199e6171e9d87a
* Remove dead code.Elliott Hughes2019-01-241-19/+0
| | | | | | | | If this was strlcpy16 it wouldn't be such a bad idea, but strncpy16 is just an accident waiting to happen... Test: N/A Change-Id: Id296fdeadfb9f1f70ddc8fb6d31b3b6b5178a12c
* Suppress implicit-fallthrough warnings.Chih-Hung Hsieh2018-09-171-1/+5
| | | | | | | | Add FALLTHROUGH_INTENDED for clang compiler. Bug: 112564944 Test: build with global -Wimplicit-fallthrough. Change-Id: I40f8bbf94e207c9dd90921e9b762ba51abab5777
* libutils: remove unused strzcmp16_h_n.Elliott Hughes2018-08-171-21/+0
| | | | | | Bug: N/A Test: builds Change-Id: I864bfb3597da76cd0a4fecce67e39d5d81538764
* [libutils] Modernize codebase by replacing NULL with nullptrYi Kong2018-07-161-7/+7
| | | | | | | | Fixes -Wzero-as-null-pointer-constant warning. Test: m Bug: 68236239 Change-Id: I5e89ec8c42151875439d2656475a8739ab9cb7dc
* Merge commit 'a63ccea6abc7ea02e2d98e41c80793ca97237bd3' fromXin Li2017-11-141-3/+20
|\ | | | | | | | | | | | | oc-mr1-dev-plus-aosp into stage-aosp-master Change-Id: Ia33311cd1fd26dfaea59a69317b306fb91203c40 Merged-In: I03d06b10807e8a313c9654c2e1db36bfb59e3f99
| * Fix integer overflow in utf{16,32}_to_utf8_lengthAdam Vartanian2017-09-071-3/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Without an explicit check, the return value can wrap around and return a value that is far too small to hold the data from the resulting conversion. No CTS test is provided because it would need to allocate at least SSIZE_MAX / 2 bytes of UTF-16 data, which is unreasonable on 64-bit devices. Bug: 37723026 Test: run cts -p android.security Change-Id: I56ba5e31657633b7f33685dd8839d4b3b998e586
* | libutils: Fix bug in strstr16.Branislav Rankov2017-10-241-11/+10
|/ | | | | | | | | | | | | In the original code when target is an empty string strlen16() would start reading the memory until a "terminating null" (that is, zero) character is found. This may happen because "*target++", at line 300, would increment the pointer beyond the actual string. Signed-off-by: Branislav Rankov <branislav.rankov@arm.com> Signed-off-by: Tamas Petz <tamas.petz@arm.com> Test: libutils_tests --gtest_filter=UnicodeTest.strstr16* Change-Id: I213ffe061057c7fa8f34b68881e106a709557dcd
* clean-up libutils includesMathias Agopian2017-03-031-2/+1
| | | | | | | | | | | | moved Foo.h as first include of Foo.cpp, and removed redundant includes. Made NativeHandle non virtual. Test: run & compile Bug: n/a Change-Id: I37fa746cd42c9ba23aba181f84cb6c619386406a
* liblog: use log/log.h when utilizing ALOG macrosMark Salyzyn2017-01-111-1/+1
| | | | | | Test: compile Bug: 30465923 Change-Id: Id6d76510819ebd88c3f5003d00d73a0dbe85e943
* system/core: preparation to pull back interfaces from android/log.hMark Salyzyn2016-10-201-0/+2
| | | | | | | | | | | | | | | | Point to log/log.h where necessary, define LOG_TAG where necessary. Accept that private/android_logger.h is suitable replacement for log/logger.h and android/log.h. Correct liblog/README Effectively a cleanup and controlled select revert of 'system/core: drop or replace log/logger.h' and 'system/core: Replace log/log.h with android/log.h'. Test: compile Bug: 30465923 Change-Id: Ic2ad157bad6f5efe2c6af293a73bb753300b17a2
* system/core Replace log/log.h with android/log.hMark Salyzyn2016-09-301-3/+3
| | | | | | | | | | | Should use android/log.h instead of log/log.h as a good example to all others. Adjust header order to comply with Android Coding standards. Test: Compile Bug: 26552300 Bug: 31289077 Change-Id: I33a8fb4e754d2dc4754d335660c450e0a67190fc
* libutils/Unicode.cpp: Correct length computation and add checks for utf16->utf8Sergio Giro2016-08-251-4/+11
| | | | | | | | | | | | | Inconsistent behaviour between utf16_to_utf8 and utf16_to_utf8_length is causing a heap overflow. Correcting the length computation and adding bound checks to the conversion functions. Test: ran libutils_tests Bug: 29250543 Change-Id: I6115e3357141ed245c63c6eb25fc0fd0a9a7a2bb (cherry picked from commit c4966a363e46d2e1074d1a365e232af0dcedd6a1)
* Unicode: specify destination length in utf8_to_utf16 methodsSergio Giro2016-08-251-30/+28
| | | | | | | | | | String16(const char *utf8) now returns the empty string in case a string ends halfway throw a utf8 character. Bug: 29267949 Clean cherry-pick from 1dcc0c82394ec9cd6887c7ca39f9b5024db01ac9 Change-Id: I5223caa7d42f4582a982609a898a02043265c6d3
* Fix strstr16.Michael Wright2016-05-161-1/+2
| | | | | | | | | | strcmp needs a limit, otherwise it will compare the null terminator with the next character in the haystack, which results in the compare failing for all searches except where the needle is found at the very end. Bug: 28663748 Change-Id: I1939dc4037c2f2a75d617943b063d2d38a8c5e3a
* Add String16#contains and strstr16 methods.Michael Wright2016-05-091-3/+26
| | | | | | | | These are needed for aapt to find javadoc comments that contain "@removed" in order to skip them when printing styleable docs. Bug: 28663748 Change-Id: I8866d2167c41e11d6c2586da369560d5815fd13e
* Use _WIN32 rather than HAVE_WINSOCK.Elliott Hughes2015-07-291-1/+1
| | | | Change-Id: I9855b6fe72e2f2f3a8360c0993a67cb988024ee4
* Libutils: Comment out unused constantsAndreas Gampe2014-11-241-2/+3
| | | | | | For build-system CFLAGS clean-up, "remove" unused variables. Change-Id: Ic96f066981cd96ca16af81ee3fdbc972507e8c81
* Kill HAVE_BIG_ENDIAN, HAVE_ENDIAN_H, and HAVE_LITTLE_ENDIAN.Elliott Hughes2014-11-211-11/+4
| | | | Change-Id: I9e25ac9d27e95b04fb8bf7a66c619af0139d8b8f
* am 72299bf0: [Bug]NE when playing mp3 with incorrect UTF16 charCylen Yao2014-06-111-1/+2
|\ | | | | | | | | * commit '72299bf0d240072174f847d13f1c9498b3ef9fa6': [Bug]NE when playing mp3 with incorrect UTF16 char
| * [Bug]NE when playing mp3 with incorrect UTF16 charCylen Yao2014-06-101-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | Bug: 15274351 Bug: 15539240 Many MP3 files have incorrect utf16 chars, but the Utf16_to_utf8_length() routine checks for errors in standard utf16 char. utf16_to_utf8() was not checking for errors in standard utf16 char. Change-Id: Iafd922ff92cabe6bba8971215fcfd1fd471c894b (cherry picked from commit 605b139cdf56364c6c9b37e59dd12efc61c24631)
* | libutils: turn on -WerrorMark Salyzyn2014-06-021-1/+1
|/ | | | | | | | | - Deal with some -Wunused issues - Override PRI macros (windows) - Revert use of PRI macros on off64_t (linux) - Deal with a gnu++11 complaince issue Change-Id: Ie66751293bd84477a5a6dfd8a57e700a16e36964
* move libs/utils to libutilsAlex Ray2013-08-021-0/+606
Change-Id: I6cf4268599460791414882f91eeb88a992fbd29d