summaryrefslogtreecommitdiff
path: root/src/NumberConversion.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/NumberConversion.cpp')
-rw-r--r--src/NumberConversion.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/NumberConversion.cpp b/src/NumberConversion.cpp
index 9638b88..9ae6423 100644
--- a/src/NumberConversion.cpp
+++ b/src/NumberConversion.cpp
@@ -20,10 +20,14 @@ namespace nmea {
char* p;
double d = ::strtod(s.c_str(), &p);
if (*p != 0){
+#if STRICT_PARSING
std::stringstream ss;
ss << "NumberConversionError: parseDouble() error in argument \"" << s << "\", '"
<< *p << "' is not a number.";
throw NumberConversionError(ss.str());
+#else
+ d = 0;
+#endif
}
return d;
}
@@ -33,10 +37,14 @@ namespace nmea {
int64_t d = ::strtoll(s.c_str(), &p, radix);
if (*p != 0) {
+#if STRICT_PARSING
std::stringstream ss;
ss << "NumberConversionError: parseInt() error in argument \"" << s << "\", '"
<< *p << "' is not a number.";
throw NumberConversionError(ss.str());
+#else
+ d = 0;
+#endif
}
return d;
}
@@ -144,4 +152,4 @@ void NumberConversion_test(){
}
}
- */ \ No newline at end of file
+ */