diff options
Diffstat (limited to 'src/Common/XmlPacket.h')
-rw-r--r-- | src/Common/XmlPacket.h | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/src/Common/XmlPacket.h b/src/Common/XmlPacket.h index 196da24..43ee2b2 100644 --- a/src/Common/XmlPacket.h +++ b/src/Common/XmlPacket.h @@ -130,8 +130,17 @@ class XmlPacket { return 0; } - bool isEmpty() const { - return (getSize() == 0); + virtual bool isEmpty() const { + switch(type) { + case NONE: + return true; + case BINARY: + return (value.var_size != 0); + case STRING: + return str.empty(); + default: + return false; + } } virtual Entry& operator[](size_t) { @@ -419,6 +428,10 @@ class XmlPacket { return entries.size(); } + virtual bool isEmpty() const { + return entries.empty(); + } + virtual Entry& operator[](size_t i) { return *entries[i]; } |