diff --git a/src/inja.hpp b/src/inja.hpp index 3ceffa0..2e92de6 100644 --- a/src/inja.hpp +++ b/src/inja.hpp @@ -396,12 +396,12 @@ public: switch (element.function) { case Parsed::Function::Upper: { std::string str = eval_expression(element.args[0], data); - std::transform(str.begin(), str.end(), str.begin(), toupper); + std::transform(str.begin(), str.end(), str.begin(), ::toupper); return str; } case Parsed::Function::Lower: { std::string str = eval_expression(element.args[0], data); - std::transform(str.begin(), str.end(), str.begin(), tolower); + std::transform(str.begin(), str.end(), str.begin(), ::tolower); return str; } case Parsed::Function::Range: { @@ -435,7 +435,7 @@ public: case Parsed::Function::DivisibleBy: { const int number = eval_expression(element.args[0], data); const int divisor = eval_expression(element.args[1], data); - return (number % divisor == 0); + return (divisor != 0) && (number % divisor == 0); } case Parsed::Function::Odd: { const int number = eval_expression(element.args[0], data); diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index f048191..343d902 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -56,7 +56,7 @@ endif() add_custom_command( TARGET inja_test POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy_directory - ${CMAKE_SOURCE_DIR}/test/data + ${CMAKE_CURRENT_SOURCE_DIR}/data ${CMAKE_CURRENT_BINARY_DIR}/data )