diff options
author | Ryan Harrison <rharrison@chromium.org> | 2017-10-02 16:04:37 -0400 |
---|---|---|
committer | Chromium commit bot <commit-bot@chromium.org> | 2017-10-02 20:21:08 +0000 |
commit | c2ae41abd16aef062fee878160aa18457d2118a7 (patch) | |
tree | f22a07d4e976168885260ffef959d149e2fb71b5 /core/fxcrt | |
parent | 951b1119d4c7487364bee4c5124b36453e00130d (diff) | |
download | pdfium-c2ae41abd16aef062fee878160aa18457d2118a7.tar.xz |
Replace GetWord_LSBFirst with FXWORD_GET_LSBFIRSTchromium/3231
The existing implementation of a LSB first word method was incorrect,
in addition it was implemented to the BMP code, but also used in the
GIF code. Thus is should be moved to a common location.
Also added in an implementation for FXWORD_GET_MSBFIRST, since the
GIF code will need this.
BUG=pdfium:914
Change-Id: I0e84813356fbd456b293a190da3c2cde01a6580b
Reviewed-on: https://pdfium-review.googlesource.com/15210
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Reviewed-by: dsinclair <dsinclair@chromium.org>
Commit-Queue: Ryan Harrison <rharrison@chromium.org>
Diffstat (limited to 'core/fxcrt')
-rw-r--r-- | core/fxcrt/fx_system.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/core/fxcrt/fx_system.h b/core/fxcrt/fx_system.h index 8e2957bc98..eb07ebde00 100644 --- a/core/fxcrt/fx_system.h +++ b/core/fxcrt/fx_system.h @@ -199,6 +199,12 @@ wchar_t* FXSYS_wcsupr(wchar_t* str); #define FXSYS_wcsftime wcsftime #endif // _FX_PLATFORM_ == _FX_PLATFORM_WINDOWS_ +#define FXWORD_GET_LSBFIRST(p) \ + (static_cast<uint16_t>((static_cast<uint16_t>(p[1]) << 8) | \ + (static_cast<uint16_t>(p[0])))) +#define FXWORD_GET_MSBFIRST(p) \ + (static_cast<uint16_t>((static_cast<uint16_t>(p[0]) << 8) | \ + (static_cast<uint16_t>(p[1])))) #define FXDWORD_GET_LSBFIRST(p) \ ((static_cast<uint32_t>(p[3]) << 24) | (static_cast<uint32_t>(p[2]) << 16) | \ (static_cast<uint32_t>(p[1]) << 8) | (static_cast<uint32_t>(p[0]))) |