From d12154b1f973474e8e62c44c0b89f8f3dedd0a3d Mon Sep 17 00:00:00 2001 From: Dirk Thomas Date: Thu, 10 Nov 2016 11:13:19 -0800 Subject: [PATCH] fix error reporting for services --- rclcpp/src/rclcpp/executor.cpp | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/rclcpp/src/rclcpp/executor.cpp b/rclcpp/src/rclcpp/executor.cpp index 801a3b5..145b90e 100644 --- a/rclcpp/src/rclcpp/executor.cpp +++ b/rclcpp/src/rclcpp/executor.cpp @@ -291,11 +291,9 @@ Executor::execute_service( service->get_service_handle(), request_header.get(), request.get()); - if (status != RCL_RET_SERVICE_TAKE_FAILED) { - if (status == RCL_RET_OK) { - service->handle_request(request_header, request); - } - } else { + if (status == RCL_RET_OK) { + service->handle_request(request_header, request); + } else if (status != RCL_RET_SERVICE_TAKE_FAILED) { fprintf(stderr, "[rclcpp::error] take request failed for server of service '%s': %s\n", service->get_service_name().c_str(), rcl_get_error_string_safe()); @@ -312,11 +310,9 @@ Executor::execute_client( client->get_client_handle(), request_header.get(), response.get()); - if (status != RCL_RET_SERVICE_TAKE_FAILED) { - if (status == RCL_RET_OK) { - client->handle_response(request_header, response); - } - } else { + if (status == RCL_RET_OK) { + client->handle_response(request_header, response); + } else if (status != RCL_RET_SERVICE_TAKE_FAILED) { fprintf(stderr, "[rclcpp::error] take response failed for client of service '%s': %s\n", client->get_service_name().c_str(), rcl_get_error_string_safe());