From 0ed8bcc3b91af7df280609b9280292004a5de26a Mon Sep 17 00:00:00 2001
From: Guillaume Pasero <guillaume.pasero@c-s.fr>
Date: Fri, 16 Feb 2018 11:17:10 +0100
Subject: [PATCH] COMP: fix BoolParameter class

---
 .../ApplicationEngine/include/otbWrapperBoolParameter.h       | 3 +++
 Modules/Wrappers/ApplicationEngine/src/CMakeLists.txt         | 1 +
 .../ApplicationEngine/src/otbWrapperBoolParameter.cxx         | 4 ++--
 3 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/Modules/Wrappers/ApplicationEngine/include/otbWrapperBoolParameter.h b/Modules/Wrappers/ApplicationEngine/include/otbWrapperBoolParameter.h
index cb4991c93b..6e4c4ce3da 100644
--- a/Modules/Wrappers/ApplicationEngine/include/otbWrapperBoolParameter.h
+++ b/Modules/Wrappers/ApplicationEngine/include/otbWrapperBoolParameter.h
@@ -21,6 +21,9 @@
 #ifndef otbWrapperBoolParameter_h
 #define otbWrapperBoolParameter_h
 
+#include "otbWrapperParameter.h"
+#include "OTBApplicationEngineExport.h"
+
 namespace otb
 {
 namespace Wrapper
diff --git a/Modules/Wrappers/ApplicationEngine/src/CMakeLists.txt b/Modules/Wrappers/ApplicationEngine/src/CMakeLists.txt
index 343f9db835..90853b7ede 100644
--- a/Modules/Wrappers/ApplicationEngine/src/CMakeLists.txt
+++ b/Modules/Wrappers/ApplicationEngine/src/CMakeLists.txt
@@ -52,6 +52,7 @@ set( OTBApplicationEngine_SRC
   otbWrapperStringListParameter.cxx
   otbWrapperAbstractParameterList.cxx
   otbWrapperParameterList.cxx
+  otbWrapperBoolParameter.cxx
   otbLogger.cxx
   )
 
diff --git a/Modules/Wrappers/ApplicationEngine/src/otbWrapperBoolParameter.cxx b/Modules/Wrappers/ApplicationEngine/src/otbWrapperBoolParameter.cxx
index 92587a5ddd..61acd2fdfa 100644
--- a/Modules/Wrappers/ApplicationEngine/src/otbWrapperBoolParameter.cxx
+++ b/Modules/Wrappers/ApplicationEngine/src/otbWrapperBoolParameter.cxx
@@ -47,7 +47,7 @@ BoolParameter::SetValue(const std::string & str)
   std::string lowerStr;
   // only strings less than 10 characters expected
   lowerStr.reserve(10);
-  for (unsigned int i=0 ; i < std::min(10,str.size()) ; i++ )
+  for (unsigned int i=0 ; i < std::min(10U,(unsigned int) str.size()) ; i++ )
     {
     lowerStr.push_back(tolower(str[i]));
     }
@@ -61,7 +61,7 @@ BoolParameter::SetValue(const std::string & str)
     }
   else
     {
-    // TODO: exception, value not a bool
+    itkGenericExceptionMacro(<< "Wrong value for BoolParameter (" << str << "), accepts: 0, 1, on, off, true, false");
     }
 }
 
-- 
GitLab