This is an automated email from the ASF dual-hosted git repository. aboda pushed a commit to branch MINIFICPP-1348-RC1 in repository https://gitbox.apache.org/repos/asf/nifi-minifi-cpp.git
commit 7383c396beaec14834b7e373ad8fa07743476d55 Author: Ferenc Gerlits <[email protected]> AuthorDate: Fri Sep 4 12:23:35 2020 +0200 MINIFICPP-1353 Declare the variables in the right order Signed-off-by: Arpad Boda <[email protected]> This closes #896 --- extensions/http-curl/processors/InvokeHTTP.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/extensions/http-curl/processors/InvokeHTTP.cpp b/extensions/http-curl/processors/InvokeHTTP.cpp index e696569..70a4ed2 100644 --- a/extensions/http-curl/processors/InvokeHTTP.cpp +++ b/extensions/http-curl/processors/InvokeHTTP.cpp @@ -283,6 +283,11 @@ void InvokeHTTP::onTrigger(const std::shared_ptr<core::ProcessContext> &context, // create a transaction id std::string tx_id = generateId(); + // Note: callback must be declared before callbackObj so that they are destructed in the correct order + std::unique_ptr<utils::ByteInputCallBack> callback = nullptr; + std::unique_ptr<utils::HTTPUploadCallback> callbackObj = nullptr; + + // Client declared after the callbacks to make sure the callbacks are still available when the client is destructed utils::HTTPClient client(url_, ssl_context_service_); client.initialize(method_); @@ -302,8 +307,6 @@ void InvokeHTTP::onTrigger(const std::shared_ptr<core::ProcessContext> &context, client.setDisablePeerVerification(); } - std::unique_ptr<utils::ByteInputCallBack> callback = nullptr; - std::unique_ptr<utils::HTTPUploadCallback> callbackObj = nullptr; if (emitFlowFile(method_)) { logger_->log_trace("InvokeHTTP -- reading flowfile"); std::shared_ptr<ResourceClaim> claim = flowFile->getResourceClaim();
