Fossil SCM

In artifact_to_json(), restructure J-cards such that their optional '+' prefix is treated as a boolean 'append' property, not part of their name, analog to how T-card prefixes are handled.

stephan 2025-03-25 14:45 trunk
Commit 98396f476942f0ff6b9ca9713cc61894ecb8f717e3fe78ea1a4f8a60011786a4
1 file changed +3 -1
+3 -1
--- src/manifest.c
+++ src/manifest.c
@@ -3006,14 +3006,16 @@
30063006
CARD_STR2(I, p->zInReplyTo);
30073007
if( p->nField ){
30083008
CARD_LETTER(J);
30093009
blob_append_char(b, '[');
30103010
for( i = 0; i < p->nField; ++i ){
3011
+ const char * zName = p->aField[i].zName;
30113012
if( i>0 ) blob_append_char(b, ',');
30123013
blob_append_char(b, '{');
3013
- KVP_STR(0, name, p->aField[i].zName);
3014
+ KVP_STR(0, name, '+'==*zName ? &zName[1] : zName);
30143015
KVP_STR(1, value, p->aField[i].zValue);
3016
+ blob_appendf(b, ", \"append\": %s", '+'==*zName ? "true" : "false");
30153017
blob_append_char(b, '}');
30163018
}
30173019
blob_append_char(b, ']');
30183020
}
30193021
CARD_STR2(K, p->zTicketUuid);
30203022
--- src/manifest.c
+++ src/manifest.c
@@ -3006,14 +3006,16 @@
3006 CARD_STR2(I, p->zInReplyTo);
3007 if( p->nField ){
3008 CARD_LETTER(J);
3009 blob_append_char(b, '[');
3010 for( i = 0; i < p->nField; ++i ){
 
3011 if( i>0 ) blob_append_char(b, ',');
3012 blob_append_char(b, '{');
3013 KVP_STR(0, name, p->aField[i].zName);
3014 KVP_STR(1, value, p->aField[i].zValue);
 
3015 blob_append_char(b, '}');
3016 }
3017 blob_append_char(b, ']');
3018 }
3019 CARD_STR2(K, p->zTicketUuid);
3020
--- src/manifest.c
+++ src/manifest.c
@@ -3006,14 +3006,16 @@
3006 CARD_STR2(I, p->zInReplyTo);
3007 if( p->nField ){
3008 CARD_LETTER(J);
3009 blob_append_char(b, '[');
3010 for( i = 0; i < p->nField; ++i ){
3011 const char * zName = p->aField[i].zName;
3012 if( i>0 ) blob_append_char(b, ',');
3013 blob_append_char(b, '{');
3014 KVP_STR(0, name, '+'==*zName ? &zName[1] : zName);
3015 KVP_STR(1, value, p->aField[i].zValue);
3016 blob_appendf(b, ", \"append\": %s", '+'==*zName ? "true" : "false");
3017 blob_append_char(b, '}');
3018 }
3019 blob_append_char(b, ']');
3020 }
3021 CARD_STR2(K, p->zTicketUuid);
3022

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button