From 0026ea3b1a6588f3e40b8276162f54b2a22bc7ae Mon Sep 17 00:00:00 2001
From: chenluhua1980 <Chenluhua@qq.com>
Date: 星期一, 19 一月 2026 14:32:27 +0800
Subject: [PATCH] 1.修复 : 多 PJ 支持仍是单槽实现:isProcessJobsEmpty/validate 仍只允许 1 个 PJ/CJ;Host 一次下多 PJ 或运行中追加 PJ 会被拒绝/无明确反馈。需要:协议上明示只支持 1,或补齐 ACK/NAK 与队列管理、PJobSpace 动态更新。
---
SourceCode/Bond/Servo/CAttributeVector.cpp | 19 +++++++++++++++++--
1 files changed, 17 insertions(+), 2 deletions(-)
diff --git a/SourceCode/Bond/Servo/CAttributeVector.cpp b/SourceCode/Bond/Servo/CAttributeVector.cpp
index 733c629..d7c52b7 100644
--- a/SourceCode/Bond/Servo/CAttributeVector.cpp
+++ b/SourceCode/Bond/Servo/CAttributeVector.cpp
@@ -17,11 +17,20 @@
m_attributes.clear();
}
- void CAttributeVector::addAttribute(CAttribute* pAttribute, BOOL bReplace/* = FALSE*/)
+ BOOL CAttributeVector::addAttribute(CAttribute* pAttribute, BOOL bReplace/* = FALSE*/)
{
+ if (!pAttribute) {
+ return FALSE;
+ }
+
+ const std::string& name = pAttribute->getName();
+ if (name.empty()) {
+ return FALSE;
+ }
+
if (bReplace) {
for (auto it = m_attributes.begin(); it != m_attributes.end(); ) {
- if ((*it)->getName().compare(pAttribute->getName()) == 0) {
+ if (name.compare((*it)->getName()) == 0) {
delete (*it);
it = m_attributes.erase(it);
}
@@ -32,6 +41,7 @@
}
m_attributes.push_back(pAttribute);
+ return TRUE;
}
void CAttributeVector::addAttributeVector(CAttributeVector& av)
@@ -71,4 +81,9 @@
ASSERT(index < m_attributes.size());
return m_attributes[index];
}
+
+ std::vector<CAttribute*>& CAttributeVector::getAttributes()
+ {
+ return m_attributes;
+ }
}
--
Gitblit v1.9.3