From f96ec1098444027b6036cca5da008a5e8efea817 Mon Sep 17 00:00:00 2001 From: ilor <kailoran@gmail.com> Date: Wed, 8 Dec 2010 11:42:04 +0100 Subject: [PATCH] Fix iteration operators checking the shared pointer validity instead of the actual returned value --- libwccl/ops/functions/bool/iterations/atleast.cpp | 2 +- libwccl/ops/functions/bool/iterations/leftlook.cpp | 2 +- libwccl/ops/functions/bool/iterations/only.cpp | 2 +- libwccl/ops/functions/bool/iterations/rightlook.cpp | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/libwccl/ops/functions/bool/iterations/atleast.cpp b/libwccl/ops/functions/bool/iterations/atleast.cpp index 0cadc0e..ea3d7c9 100644 --- a/libwccl/ops/functions/bool/iterations/atleast.cpp +++ b/libwccl/ops/functions/bool/iterations/atleast.cpp @@ -12,7 +12,7 @@ bool AtLeast::iterate( int left_to_match = min_matches_; for(int i = left; i <= right; ++i) { p.set_value(i); - if(evaluating_expr_->apply(context)) { + if(evaluating_expr_->apply(context)->get_value()) { if(--left_to_match == 0) { return true; } diff --git a/libwccl/ops/functions/bool/iterations/leftlook.cpp b/libwccl/ops/functions/bool/iterations/leftlook.cpp index 5439bec..57cd4a8 100644 --- a/libwccl/ops/functions/bool/iterations/leftlook.cpp +++ b/libwccl/ops/functions/bool/iterations/leftlook.cpp @@ -10,7 +10,7 @@ bool LeftLook::iterate( { for(int i = left; i <= right; ++i) { p.set_value(i); - if(evaluating_expr_->apply(context)) { + if(evaluating_expr_->apply(context)->get_value()) { return true; } } diff --git a/libwccl/ops/functions/bool/iterations/only.cpp b/libwccl/ops/functions/bool/iterations/only.cpp index 291d25f..32d9f16 100644 --- a/libwccl/ops/functions/bool/iterations/only.cpp +++ b/libwccl/ops/functions/bool/iterations/only.cpp @@ -10,7 +10,7 @@ bool Only::iterate( { for(int i = left; i <= right; ++i) { p.set_value(i); - if(!evaluating_expr_->apply(context)) { + if(!evaluating_expr_->apply(context)->get_value()) { return false; } } diff --git a/libwccl/ops/functions/bool/iterations/rightlook.cpp b/libwccl/ops/functions/bool/iterations/rightlook.cpp index 613c622..36bae48 100644 --- a/libwccl/ops/functions/bool/iterations/rightlook.cpp +++ b/libwccl/ops/functions/bool/iterations/rightlook.cpp @@ -10,7 +10,7 @@ bool RightLook::iterate( { for(int i = right; i >= left; --i) { p.set_value(i); - if(evaluating_expr_->apply(context)) { + if(evaluating_expr_->apply(context)->get_value()) { return true; } } -- GitLab