Fix Windows build, again.
authorDavid Anderson <dvander@alliedmods.net>
Tue Apr 22 20:04:12 2014 -0700 (2014-04-22)
changeset 43295ac935cb029a
parent 4328 a92c3f9c0744
child 4330 98726cea1607
Fix Windows build, again.
core/logic/smn_float.cpp
core/sm_stringutil.cpp
public/amtl/am-utility.h
     1.1 --- a/core/logic/smn_float.cpp	Tue Apr 22 19:46:55 2014 -0700
     1.2 +++ b/core/logic/smn_float.cpp	Tue Apr 22 20:04:12 2014 -0700
     1.3 @@ -35,6 +35,7 @@
     1.4  #include "common_logic.h"
     1.5  #include "MersenneTwister.h"
     1.6  #include <IPluginSys.h>
     1.7 +#include <am-utility.h>
     1.8  
     1.9  /****************************************
    1.10  *                                       *
    1.11 @@ -119,7 +120,7 @@
    1.12  static cell_t sm_FloatNot(IPluginContext *pCtx, const cell_t *params)
    1.13  {
    1.14  	float val = sp_ctof(params[1]);
    1.15 -	if (isnan(val))
    1.16 +	if (ke::IsNaN(val))
    1.17  		return 1;
    1.18  	return val ? 0 : 1;
    1.19  }
     2.1 --- a/core/sm_stringutil.cpp	Tue Apr 22 19:46:55 2014 -0700
     2.2 +++ b/core/sm_stringutil.cpp	Tue Apr 22 20:04:12 2014 -0700
     2.3 @@ -33,12 +33,12 @@
     2.4  #include <ctype.h>
     2.5  #include <stdarg.h>
     2.6  #include <ITextParsers.h>
     2.7 -#include <float.h>
     2.8  #include "sm_stringutil.h"
     2.9  #include "Logger.h"
    2.10  #include "PlayerManager.h"
    2.11  #include "logic_bridge.h"
    2.12  #include "sourcemod.h"
    2.13 +#include <am-utility.h>
    2.14  
    2.15  #define LADJUST			0x00000004		/* left adjustment */
    2.16  #define ZEROPAD			0x00000080		/* zero (as opposed to blank) pad */
    2.17 @@ -214,7 +214,8 @@
    2.18  	int significant_digits = 0;	// number of significant digits written
    2.19  	const int MAX_SIGNIFICANT_DIGITS = 16;
    2.20  
    2.21 -	if (isnan(fval)) {
    2.22 +	if (ke::IsNaN(fval))
    2.23 +	{
    2.24  		AddString(buf_p, maxlen, "NaN", width, prec);
    2.25  		return;
    2.26  	}
     3.1 --- a/public/amtl/am-utility.h	Tue Apr 22 19:46:55 2014 -0700
     3.2 +++ b/public/amtl/am-utility.h	Tue Apr 22 20:04:12 2014 -0700
     3.3 @@ -34,6 +34,8 @@
     3.4  #include <stddef.h>
     3.5  #include <stdlib.h>
     3.6  #include <stdint.h>
     3.7 +#include <math.h>
     3.8 +#include <float.h>
     3.9  #if defined(_MSC_VER)
    3.10  # include <intrin.h>
    3.11  #endif
    3.12 @@ -219,6 +221,16 @@
    3.13  }
    3.14  
    3.15  static inline bool
    3.16 +IsNaN(double v)
    3.17 +{
    3.18 +#ifdef _MSC_VER
    3.19 +  return _isnan(v);
    3.20 +#else
    3.21 +  return isnan(v);
    3.22 +#endif
    3.23 +}
    3.24 +
    3.25 +static inline bool
    3.26  IsPowerOfTwo(size_t value)
    3.27  {
    3.28      if (value == 0)