chenluhua1980
2026-01-09 570e812442a64360239f558ae4b55c0d204a5523
SourceCode/Bond/Servo/HsmsPassive.cpp
@@ -525,26 +525,37 @@
void CHsmsPassive::setVariableValue(const char* pszName, __int64 value)
{
   auto v = getVariable(pszName);
   if (v != nullptr) {
   // Protect variable list updates; multiple threads may set SVs.
   Lock();
   if (auto v = getVariable(pszName)) {
      v->setValue(value);
   }
   Unlock();
}
void CHsmsPassive::setVariableValue(const char* pszName, const char* value)
{
   auto v = getVariable(pszName);
   if (v != nullptr) {
   Lock();
   if (auto v = getVariable(pszName)) {
      v->setValue(value);
   }
   Unlock();
}
void CHsmsPassive::setVariableValue(const char* pszName, std::vector<SERVO::CVariable>& vars)
{
   auto v = getVariable(pszName);
   if (v != nullptr) {
   Lock();
   if (auto v = getVariable(pszName)) {
      v->setValue(vars);
   }
   Unlock();
}
void CHsmsPassive::withVariableLock(const std::function<void()>& fn)
{
   Lock();
   if (fn) fn();
   Unlock();
}
static bool isValidFormat(const std::string& fmt)