File tree Expand file tree Collapse file tree 2 files changed +17
-3
lines changed
Expand file tree Collapse file tree 2 files changed +17
-3
lines changed Original file line number Diff line number Diff line change @@ -186,7 +186,13 @@ int WSJCppYAMLItem::getLength() {
186186 if (m_nItemType != WSJCPP_YAML_ITEM_ARRAY) {
187187 Log::throw_err (TAG, " getLength, Element must be array" );
188188 }
189- return m_vObjects.size ();
189+ int nCount = 0 ;
190+ for (int i = 0 ; i < m_vObjects.size (); i++) {
191+ if (!m_vObjects[i]->isEmpty ()) {
192+ nCount++;
193+ }
194+ }
195+ return nCount;
190196}
191197
192198// ---------------------------------------------------------------------
@@ -247,12 +253,18 @@ std::string WSJCppYAMLItem::toString(std::string sIntent) {
247253 }
248254 } else if (this ->isEmpty ()) {
249255 if (m_sComment.length () > 0 ) {
250- sRet += " # " + m_sComment;
256+ sRet += sIntent + " # " + m_sComment;
251257 }
252258 } else if (this ->isArray ()) {
253259 sRet += " \n " ;
254260 for (int i = 0 ; i < m_vObjects.size (); i++) {
255- sRet += sIntent + " - " + m_vObjects[i]->toString ();
261+ WSJCppYAMLItem *pItem = m_vObjects[i];
262+ if (pItem->isEmpty ()) {
263+ sRet += sIntent + pItem->toString ();
264+ } else {
265+ sRet += sIntent + " - " + pItem->toString ();
266+ }
267+
256268 sRet += " \n " ;
257269 }
258270 } else if (this ->isMap ()) {
Original file line number Diff line number Diff line change @@ -28,6 +28,7 @@ bool UnitTestYamlParserSimpleArray::run() {
2828 " - value21 # comment v21 \n "
2929 " - value22 # comment v22 \n "
3030 " - true # comment true \n "
31+ " # some\n "
3132 " - falsesome \n "
3233 " - free@free \n "
3334 " - # empty \n "
@@ -69,6 +70,7 @@ bool UnitTestYamlParserSimpleArray::run() {
6970 " - value21 # comment v21\n "
7071 " - value22 # comment v22\n "
7172 " - true # comment true\n "
73+ " # some\n "
7274 " - falsesome\n "
7375 " - free@free\n "
7476 " - # empty\n "
You can’t perform that action at this time.
0 commit comments