commit 4b7a8c575700fc93c384b165c354fd229fb586a8
parent f7f095d9cd18c142a71ebbc3e15b61d358d9fd59
Author: Remy Noulin <loader2x@gmail.com>
Date: Sun, 27 Oct 2019 17:04:33 +0100
fix to toString for smallDict when all elements have been deleted
release/libsheepySmall.c | 10 +++++++++-
src/libsheepySmall.c | 10 +++++++++-
2 files changed, 18 insertions(+), 2 deletions(-)
Diffstat:
2 files changed, 18 insertions(+), 2 deletions(-)
diff --git a/release/libsheepySmall.c b/release/libsheepySmall.c
@@ -677,8 +677,11 @@ char* sDictToStringTiny(sDictt* obj) {
char *r = strdup("{");
+ bool hasAtLeastOneElement = no;
+
forEachSDict(obj, e) {
if (e->key) {
+ hasAtLeastOneElement = yes;
iAppendS(&r, "\"");
iAppendS(&r, e->key);
iAppendS(&r, "\"");
@@ -700,7 +703,12 @@ char* sDictToStringTiny(sDictt* obj) {
}
}
- setS(r, -1, '}');
+ if (hasAtLeastOneElement) {
+ setS(r, -1, '}');
+ }
+ else {
+ iAppendS(&r, "}");
+ }
return(r);
}
diff --git a/src/libsheepySmall.c b/src/libsheepySmall.c
@@ -677,8 +677,11 @@ char* sDictToStringTiny(sDictt* obj) {
char *r = strdup("{");
+ bool hasAtLeastOneElement = no;
+
forEachSDict(obj, e) {
if (e->key) {
+ hasAtLeastOneElement = yes;
iAppendS(&r, "\"");
iAppendS(&r, e->key);
iAppendS(&r, "\"");
@@ -700,7 +703,12 @@ char* sDictToStringTiny(sDictt* obj) {
}
}
- setS(r, -1, '}');
+ if (hasAtLeastOneElement) {
+ setS(r, -1, '}');
+ }
+ else {
+ iAppendS(&r, "}");
+ }
return(r);
}