diff options
author | Lei Zhang <thestig@chromium.org> | 2014-07-09 11:47:15 -0700 |
---|---|---|
committer | Lei Zhang <thestig@chromium.org> | 2014-07-09 11:47:15 -0700 |
commit | 532a6a7ece21ca4ea253a196bb5c61a1861d12a0 (patch) | |
tree | 720fbe2b116a56aba6fa507cfd840b42e2a23622 | |
parent | d573678115676fc06575d6dac0801a3532cf0216 (diff) | |
download | pdfium-532a6a7ece21ca4ea253a196bb5c61a1861d12a0.tar.xz |
Fixes for re-enabling more MSVC level 4 warnings: pdfium/ edition (try 2)chromium/2095chromium/2094chromium/2093chromium/2092chromium/2091chromium/2090chromium/2089chromium/2088chromium/2087chromium/2086
This contains fixes for the following sorts of issues:
* Nonstandard extension: unnamed struct/union
This also changes the signature of FPDF_FillRect() to enable the cleanest
possible changes in https://codereview.chromium.org/372273005 .
BUG=81439
TEST=none
Original patch by Peter Kasting <pkasting@chromium.org>
Original code review: https://codereview.chromium.org/376003003/
R=pkasting@chromium.org
Review URL: https://codereview.chromium.org/377353002
-rw-r--r-- | core/include/fxcrt/fx_ucd.h | 14 | ||||
-rw-r--r-- | fpdfsdk/include/fpdfview.h | 9 | ||||
-rw-r--r-- | fpdfsdk/src/fpdfview.cpp | 7 | ||||
-rw-r--r-- | samples/pdfium_test.cc | 2 |
4 files changed, 6 insertions, 26 deletions
diff --git a/core/include/fxcrt/fx_ucd.h b/core/include/fxcrt/fx_ucd.h index 447d555a4b..9e1862aa80 100644 --- a/core/include/fxcrt/fx_ucd.h +++ b/core/include/fxcrt/fx_ucd.h @@ -88,20 +88,6 @@ enum FX_CHARTYPE { FX_CHARTYPE_ArabicForm = (11 << FX_CHARTYPEBITS), FX_CHARTYPE_Arabic = (12 << FX_CHARTYPEBITS), }; -typedef struct _FX_CHARPROPERTIES { - union { - struct { - FX_DWORD dwBreakType : 6; - FX_DWORD dwBidiClass : 5; - FX_DWORD dwCharType : 4; - FX_DWORD dwRotation : 1; - FX_DWORD dwCJKSpecial : 1; - FX_DWORD dwVertIndex : 6; - FX_DWORD dwBidiIndex : 9; - }; - FX_DWORD dwCharProps; - }; -} FX_CHARPROPERTIES; FX_DWORD FX_GetUnicodeProperties(FX_WCHAR wch); FX_BOOL FX_IsCtrlCode(FX_WCHAR ch); FX_BOOL FX_IsRotationCode(FX_WCHAR ch); diff --git a/fpdfsdk/include/fpdfview.h b/fpdfsdk/include/fpdfview.h index a563762613..f4f13750bc 100644 --- a/fpdfsdk/include/fpdfview.h +++ b/fpdfsdk/include/fpdfview.h @@ -487,11 +487,7 @@ DLLEXPORT FPDF_BITMAP STDCALL FPDFBitmap_CreateEx(int width, int height, int for // top - The top side position. Starting from 0 at the top-most scan line. // width - Number of pixels to be filled in each scan line. // height - Number of scan lines to be filled. -// red - A number from 0 to 255, identifying the red intensity. -// green - A number from 0 to 255, identifying the green intensity. -// blue - A number from 0 to 255, identifying the blue intensity. -// alpha - (Only if the alpha channeled is used when bitmap created) A number from 0 to 255, -// identifying the alpha value. +// color - A 32-bit value specifing the color, in 8888 ARGB format. // Return value: // None. // Comments: @@ -500,8 +496,7 @@ DLLEXPORT FPDF_BITMAP STDCALL FPDFBitmap_CreateEx(int width, int height, int for // instead the background will be replaced by the source color and alpha. // If alpha channel is not used, the "alpha" parameter is ignored. // -DLLEXPORT void STDCALL FPDFBitmap_FillRect(FPDF_BITMAP bitmap, int left, int top, int width, int height, - int red, int green, int blue, int alpha); +DLLEXPORT void STDCALL FPDFBitmap_FillRect(FPDF_BITMAP bitmap, int left, int top, int width, int height, FPDF_DWORD color); // Function: FPDFBitmap_GetBuffer // Get data buffer of an FXDIB diff --git a/fpdfsdk/src/fpdfview.cpp b/fpdfsdk/src/fpdfview.cpp index 10eaf5d980..a9aa9a8ff2 100644 --- a/fpdfsdk/src/fpdfview.cpp +++ b/fpdfsdk/src/fpdfview.cpp @@ -725,8 +725,7 @@ DLLEXPORT FPDF_BITMAP STDCALL FPDFBitmap_CreateEx(int width, int height, int for return pBitmap; } -DLLEXPORT void STDCALL FPDFBitmap_FillRect(FPDF_BITMAP bitmap, int left, int top, int width, int height, - int red, int green, int blue, int alpha) +DLLEXPORT void STDCALL FPDFBitmap_FillRect(FPDF_BITMAP bitmap, int left, int top, int width, int height, FPDF_DWORD color) { if (bitmap == NULL) return; #ifdef _SKIA_SUPPORT_ @@ -735,9 +734,9 @@ DLLEXPORT void STDCALL FPDFBitmap_FillRect(FPDF_BITMAP bitmap, int left, int top CFX_FxgeDevice device; #endif device.Attach((CFX_DIBitmap*)bitmap); - if (!((CFX_DIBitmap*)bitmap)->HasAlpha()) alpha = 255; + if (!((CFX_DIBitmap*)bitmap)->HasAlpha()) color |= 0xFF000000; FX_RECT rect(left, top, left+width, top+height); - device.FillRect(&rect, FXARGB_MAKE(alpha, red, green, blue)); + device.FillRect(&rect, color); } DLLEXPORT void* STDCALL FPDFBitmap_GetBuffer(FPDF_BITMAP bitmap) diff --git a/samples/pdfium_test.cc b/samples/pdfium_test.cc index c504bf4823..f8e567349b 100644 --- a/samples/pdfium_test.cc +++ b/samples/pdfium_test.cc @@ -230,7 +230,7 @@ void RenderPdf(const char* name, const char* pBuf, size_t len, int width = static_cast<int>(FPDF_GetPageWidth(page)); int height = static_cast<int>(FPDF_GetPageHeight(page)); FPDF_BITMAP bitmap = FPDFBitmap_Create(width, height, 0); - FPDFBitmap_FillRect(bitmap, 0, 0, width, height, 255, 255, 255, 255); + FPDFBitmap_FillRect(bitmap, 0, 0, width, height, 0xFFFFFFFF); FPDF_RenderPageBitmap(bitmap, page, 0, 0, width, height, 0, 0); FPDF_FFLDraw(form, bitmap, page, 0, 0, width, height, 0, 0); |