From 5353b02a33e4cd3d0e3c6de1caef3f1b2d4e292c Mon Sep 17 00:00:00 2001 From: Michael Davidsaver Date: Sun, 24 May 2026 14:34:41 -0700 Subject: [PATCH] ioc: fix single PUT with 'record[block=true, process=true]' No point to wait for processing, when none will occur. However, wait as requested when Unset or True. Somewhere between 409b432dd96b65e8c69d35fe8810081b8ff87a0a and 93e4d3eef39c417df65994e48a1fee713c0a9b82 the sense of this test was lost. --- ioc/singlesource.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ioc/singlesource.cpp b/ioc/singlesource.cpp index e41dd29..024f676 100644 --- a/ioc/singlesource.cpp +++ b/ioc/singlesource.cpp @@ -347,7 +347,7 @@ void onOp(const std::shared_ptr& sInfo, const Value& valuePrototype, auto& pvRequest = putOperation->pvRequest(); pvRequest["record._options.block"].as(putOperationCache->doWait); IOCSource::setForceProcessingFlag(putOperation.get(), pvRequest, putOperationCache->forceProcessing); - if (putOperationCache->forceProcessing) { + if (putOperationCache->forceProcessing == TriState::False) { putOperationCache->doWait = false; // no point in waiting }