diff options
Diffstat (limited to 'xorg-server/include/misc.h')
-rw-r--r-- | xorg-server/include/misc.h | 22 |
1 files changed, 16 insertions, 6 deletions
diff --git a/xorg-server/include/misc.h b/xorg-server/include/misc.h index 09f928a50..d401537c6 100644 --- a/xorg-server/include/misc.h +++ b/xorg-server/include/misc.h @@ -80,6 +80,16 @@ OF THIS SOFTWARE. #include <stddef.h> #include <stdint.h> +#include <unistd.h> + +#ifdef _MSC_VER +#define inline __inline +#include <math.h> +static double __inline trunc(double d) +{ + return (d>0) ? floor(d) : ceil(d) ; +} +#endif #ifndef MAXSCREENS #define MAXSCREENS 16 @@ -170,9 +180,9 @@ static inline uint16_t lswaps(uint16_t x) #include <math.h> #undef MAXSHORT -#define MAXSHORT SHRT_MAX +#define MAXSHORT 32767 #undef MINSHORT -#define MINSHORT SHRT_MIN +#define MINSHORT -32768 #undef MAXINT #define MAXINT INT_MAX #undef MININT @@ -200,7 +210,7 @@ static inline uint16_t lswaps(uint16_t x) * @param bits The minimum number of bits needed. * @return The number of bytes needed to hold bits. */ -static inline int +static __inline int bits_to_bytes(const int bits) { return ((bits + 7) >> 3); } @@ -210,7 +220,7 @@ bits_to_bytes(const int bits) { * @param bytes The minimum number of bytes needed. * @return The number of 4-byte units needed to hold bytes. */ -static inline int +static __inline int bytes_to_int32(const int bytes) { return (((bytes) + 3) >> 2); } @@ -220,7 +230,7 @@ bytes_to_int32(const int bytes) { * @param bytes The minimum number of bytes needed. * @return The closest multiple of 4 that is equal or higher than bytes. */ -static inline int +static __inline int pad_to_int32(const int bytes) { return (((bytes) + 3) & ~3); } @@ -365,7 +375,7 @@ extern _X_EXPORT unsigned long serverGeneration; #define __BUG_WARN_MSG(cond, with_msg, ...) \ do { if (cond) { \ ErrorF("BUG: triggered 'if (" #cond ")'\nBUG: %s:%d in %s()\n", \ - __FILE__, __LINE__, __func__); \ + __FILE__, __LINE__, __FUNCTION__); \ if (with_msg) ErrorF(__VA_ARGS__); \ xorg_backtrace(); \ } } while(0) |