From a2da7c5612f1fa26dde508da2a527a4bab381de0 Mon Sep 17 00:00:00 2001 From: Tom Sepez Date: Thu, 3 Aug 2017 13:34:08 -0700 Subject: Enforce recent VC++ version (2015 or later). Remove ifdef'd code for versions we know will no longer work. Change-Id: I036c80168f846df1b98e9df4972f84655e8418fb Reviewed-on: https://pdfium-review.googlesource.com/10051 Reviewed-by: Lei Zhang Commit-Queue: Tom Sepez --- core/fxcrt/fx_basic_util.cpp | 18 ------------------ core/fxcrt/fx_system.h | 16 +++++----------- core/fxge/win32/dwrite_int.h | 4 ++-- fpdfsdk/javascript/JS_Value.cpp | 9 ++++----- 4 files changed, 11 insertions(+), 36 deletions(-) diff --git a/core/fxcrt/fx_basic_util.cpp b/core/fxcrt/fx_basic_util.cpp index 9491e36e71..194f6d72ef 100644 --- a/core/fxcrt/fx_basic_util.cpp +++ b/core/fxcrt/fx_basic_util.cpp @@ -127,24 +127,6 @@ float FX_atof(const CFX_WideStringC& wsStr) { return FX_atof(FX_UTF8Encode(wsStr).c_str()); } -#if _FXM_PLATFORM_ == _FXM_PLATFORM_WINDOWS_ && _MSC_VER < 1900 -void FXSYS_snprintf(char* str, - size_t size, - _Printf_format_string_ const char* fmt, - ...) { - va_list ap; - va_start(ap, fmt); - FXSYS_vsnprintf(str, size, fmt, ap); - va_end(ap); -} - -void FXSYS_vsnprintf(char* str, size_t size, const char* fmt, va_list ap) { - (void)_vsnprintf(str, size, fmt, ap); - if (size) - str[size - 1] = 0; -} -#endif // _FXM_PLATFORM_WINDOWS_ && _MSC_VER < 1900 - FX_FileHandle* FX_OpenFolder(const char* path) { #if _FXM_PLATFORM_ == _FXM_PLATFORM_WINDOWS_ auto pData = pdfium::MakeUnique(); diff --git a/core/fxcrt/fx_system.h b/core/fxcrt/fx_system.h index a3dc21bb46..47d588c521 100644 --- a/core/fxcrt/fx_system.h +++ b/core/fxcrt/fx_system.h @@ -53,6 +53,10 @@ #error Sorry, can not figure out target OS. Please specify _FX_OS_ macro. #endif +#if defined(_MSC_VER) && _MSC_VER < 1900 +#error Sorry, VC++ 2015 or later is required to compile PDFium. +#endif // defined(_MSC_VER) && _MSC_VER < 1900 + #if _FXM_PLATFORM_ == _FXM_PLATFORM_WINDOWS_ #include #include @@ -106,19 +110,9 @@ typedef int FX_STRSIZE; #define FX_BEZIER 0.5522847498308f // NOTE: prevent use of the return value from snprintf() since some platforms -// have different return values (e.g. windows _vsnprintf()), and provide -// versions that always NUL-terminate. -#if _FXM_PLATFORM_ == _FXM_PLATFORM_WINDOWS_ && _MSC_VER < 1900 -void FXSYS_snprintf(char* str, - size_t size, - _Printf_format_string_ const char* fmt, - ...); -void FXSYS_vsnprintf(char* str, size_t size, const char* fmt, va_list ap); -#else // _FXM_PLATFORM_ == _FXM_PLATFORM_WINDOWS_ && _MSC_VER < 1900 +// have different return values. #define FXSYS_snprintf (void)snprintf #define FXSYS_vsnprintf (void)vsnprintf -#endif // _FXM_PLATFORM_ == _FXM_PLATFORM_WINDOWS_ && _MSC_VER < 1900 - #define FXSYS_sprintf DO_NOT_USE_SPRINTF_DIE_DIE_DIE #define FXSYS_vsprintf DO_NOT_USE_VSPRINTF_DIE_DIE_DIE diff --git a/core/fxge/win32/dwrite_int.h b/core/fxge/win32/dwrite_int.h index 16be7b7d4f..2d1deb6012 100644 --- a/core/fxge/win32/dwrite_int.h +++ b/core/fxge/win32/dwrite_int.h @@ -12,14 +12,14 @@ #include "core/fxge/fx_dib.h" #ifndef DECLSPEC_UUID -#if (_MSC_VER >= 1100) && defined(__cplusplus) +#if defined(__cplusplus) #define DECLSPEC_UUID(x) __declspec(uuid(x)) #else #define DECLSPEC_UUID(x) #endif #endif #ifndef DECLSPEC_NOVTABLE -#if (_MSC_VER >= 1100) && defined(__cplusplus) +#if defined(__cplusplus) #define DECLSPEC_NOVTABLE __declspec(novtable) #else #define DECLSPEC_NOVTABLE diff --git a/fpdfsdk/javascript/JS_Value.cpp b/fpdfsdk/javascript/JS_Value.cpp index 1b8f7f16aa..184ff82fa1 100644 --- a/fpdfsdk/javascript/JS_Value.cpp +++ b/fpdfsdk/javascript/JS_Value.cpp @@ -37,10 +37,9 @@ double GetLocalTZA() { time_t t = 0; time(&t); localtime(&t); -#if _MSC_VER >= 1900 - // In gcc and in Visual Studio prior to VS 2015 'timezone' is a global - // variable declared in time.h. That variable was deprecated and in VS 2015 - // is removed, with _get_timezone replacing it. +#if defined(_MSC_VER) + // In gcc 'timezone' is a global variable declared in time.h. In VC++, that + // variable was removed in VC++ 2015, with _get_timezone replacing it. long timezone = 0; _get_timezone(&timezone); #endif @@ -68,7 +67,7 @@ double Mod(double x, double y) { } int IsFinite(double v) { -#if _MSC_VER +#if defined(_MSC_VER) return ::_finite(v); #else return std::fabs(v) < std::numeric_limits::max(); -- cgit v1.2.3