File projectM-2.1.0-fix-isnan-gcc6.patch of Package projectM
From 92226e25192a69839b9ae3b66ea7173732c639b3 Mon Sep 17 00:00:00 2001
From: Hodorgasm <nsane457@gmail.com>
Date: Thu, 12 May 2016 19:25:46 -0400
Subject: [PATCH] GCC-6 only makes 'isnan' available in 'std' namespace, and
iostream classes are no longer implicitly convertible to void* so use the
equivalent '(fs.fail())' instead of '(fs == NULL)'
---
src/libprojectM/Common.hpp | 2 +-
src/libprojectM/MilkdropPresetFactory/Parser.cpp | 10 +++++-----
2 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/src/libprojectM/Common.hpp b/src/libprojectM/Common.hpp
index 25ecafa..366802a 100755
--- a/src/libprojectM/Common.hpp
+++ b/src/libprojectM/Common.hpp
@@ -63,7 +63,7 @@ extern FILE *fmemopen(void *buf, size_t
#ifdef LINUX
#include <cstdlib>
-#define projectM_isnan isnan
+#define projectM_isnan std::isnan
#endif
diff --git a/src/libprojectM/MilkdropPresetFactory/Parser.cpp b/src/libprojectM/MilkdropPresetFactory/Parser.cpp
index fb14e6f..8dde420 100755
--- a/src/libprojectM/MilkdropPresetFactory/Parser.cpp
+++ b/src/libprojectM/MilkdropPresetFactory/Parser.cpp
@@ -1406,7 +1406,7 @@ PerFrameEqn * Parser::parse_implicit_per_frame_eqn(std::istream & fs, char * pa
PerFrameEqn * per_frame_eqn;
GenExpr * gen_expr;
- if (fs == NULL)
+ if (fs.fail())
return NULL;
if (param_string == NULL)
return NULL;
@@ -1561,7 +1561,7 @@ InitCond * Parser::parse_per_frame_init_eqn(std::istream & fs, MilkdropPreset *
if (preset == NULL)
return NULL;
- if (fs == NULL)
+ if (fs.fail())
return NULL;
if ((token = parseToken(fs, name)) != tEq)
@@ -1875,7 +1875,7 @@ int Parser::parse_shapecode(char * token, std::istream & fs, MilkdropPreset * p
/* Null argument checks */
if (preset == NULL)
return PROJECTM_FAILURE;
- if (fs == NULL)
+ if (fs.fail())
return PROJECTM_FAILURE;
if (token == NULL)
return PROJECTM_FAILURE;
@@ -2166,7 +2166,7 @@ int Parser::parse_wave(char * token, std::istream & fs, MilkdropPreset * preset
if (token == NULL)
return PROJECTM_FAILURE;
- if (fs == NULL)
+ if (fs.fail())
return PROJECTM_FAILURE;
if (preset == NULL)
return PROJECTM_FAILURE;
@@ -2348,7 +2348,7 @@ int Parser::parse_shape(char * token, std::istream & fs, MilkdropPreset * prese
if (token == NULL)
return PROJECTM_FAILURE;
- if (fs == NULL)
+ if (fs.fail())
return PROJECTM_FAILURE;
if (preset == NULL)
return PROJECTM_FAILURE;
--
2.8.2