summaryrefslogtreecommitdiff
path: root/core/fxcrt
diff options
context:
space:
mode:
authorRyan Harrison <rharrison@chromium.org>2018-03-12 15:20:04 +0000
committerChromium commit bot <commit-bot@chromium.org>2018-03-12 15:20:04 +0000
commit15c0fccfeff5bf389b494a828c89adb3207c73d6 (patch)
tree3b1f4691759b4e4e45d49a2d48f4548ad16a224c /core/fxcrt
parentc2df008640f56631735dd3ae89e118c9c56cd36d (diff)
downloadpdfium-15c0fccfeff5bf389b494a828c89adb3207c73d6.tar.xz
Remove all usages of FXSYS_iswASCIIalnum
Instances are either replaced with FXSYS_iswalnum, which calls out to the ICU library to do the proper Unicode operations, or have been converted to a isascii && isalnum pair, if ASCII alnum is actually what was wanted. BUG=pdfium:1035 Change-Id: I959ec8739a4d020e61562180393ab8113a81577c Reviewed-on: https://pdfium-review.googlesource.com/28430 Reviewed-by: dsinclair <dsinclair@chromium.org> Commit-Queue: Ryan Harrison <rharrison@chromium.org>
Diffstat (limited to 'core/fxcrt')
-rw-r--r--core/fxcrt/DEPS3
-rw-r--r--core/fxcrt/css/cfx_cssselector.cpp4
-rw-r--r--core/fxcrt/fx_extension.h5
3 files changed, 8 insertions, 4 deletions
diff --git a/core/fxcrt/DEPS b/core/fxcrt/DEPS
new file mode 100644
index 0000000000..2be03524b6
--- /dev/null
+++ b/core/fxcrt/DEPS
@@ -0,0 +1,3 @@
+include_rules = [
+ '+third_party/icu',
+]
diff --git a/core/fxcrt/css/cfx_cssselector.cpp b/core/fxcrt/css/cfx_cssselector.cpp
index 76cb846890..8a22b12287 100644
--- a/core/fxcrt/css/cfx_cssselector.cpp
+++ b/core/fxcrt/css/cfx_cssselector.cpp
@@ -16,9 +16,9 @@ namespace {
int32_t GetCSSNameLen(const wchar_t* psz, const wchar_t* pEnd) {
const wchar_t* pStart = psz;
while (psz < pEnd) {
- wchar_t wch = *psz;
- if (!FXSYS_iswASCIIalnum(wch) && wch != '_' && wch != '-')
+ if (!isascii(*psz) || (!isalnum(*psz) && *psz != '_' && *psz != '-')) {
break;
+ }
++psz;
}
return psz - pStart;
diff --git a/core/fxcrt/fx_extension.h b/core/fxcrt/fx_extension.h
index 491d4b29b7..bd0ac8b303 100644
--- a/core/fxcrt/fx_extension.h
+++ b/core/fxcrt/fx_extension.h
@@ -12,6 +12,7 @@
#include <memory>
#include "core/fxcrt/fx_string.h"
+#include "third_party/icu/source/common/unicode/uchar.h"
#define FX_INVALID_OFFSET static_cast<uint32_t>(-1)
@@ -45,8 +46,8 @@ inline bool FXSYS_iswASCIIalpha(wchar_t wch) {
return FXSYS_isASCIIupper(wch) || FXSYS_isASCIIlower(wch);
}
-inline bool FXSYS_iswASCIIalnum(wchar_t wch) {
- return FXSYS_iswASCIIalpha(wch) || std::iswdigit(wch);
+inline bool FXSYS_iswalnum(wchar_t c) {
+ return u_isalnum(c);
}
inline bool FXSYS_iswASCIIspace(wchar_t c) {