Skip to content

Commit 8750d44

Browse files
committed
fix read from cache for passive+write messages in TCP client (closes #1555, #1566)
1 parent f5a4662 commit 8750d44

1 file changed

Lines changed: 3 additions & 2 deletions

File tree

src/ebusd/mainloop.cpp

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -876,8 +876,9 @@ result_t MainLoop::executeRead(const vector<string>& args, const string& levels,
876876
if (verbosity & OF_NAMES) {
877877
*ostream << cacheMessage->getCircuit() << " " << cacheMessage->getName() << " ";
878878
}
879-
ret = cacheMessage->decodeLastData(pt_slaveData, false, fieldIndex == -2 ? nullptr : fieldName.c_str(), fieldIndex,
880-
verbosity, ostream);
879+
ret = cacheMessage->decodeLastData(
880+
hasCache && (cacheMessage->isWrite() || cacheMessage->isPassive()) ? pt_any : pt_slaveData,
881+
false, fieldIndex == -2 ? nullptr : fieldName.c_str(), fieldIndex, verbosity, ostream);
881882
if (ret < RESULT_OK) {
882883
logError(lf_main, "read %s %s cached: decode %s", cacheMessage->getCircuit().c_str(),
883884
cacheMessage->getName().c_str(), getResultCode(ret));

0 commit comments

Comments
 (0)