dlugolecki.net.pl
Dziennik
Polecane
Software
projects
/
gedcom-parse.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Small fix for empty values in write_long.
[gedcom-parse.git]
/
gedcom
/
write.c
diff --git
a/gedcom/write.c
b/gedcom/write.c
index f8721da6cc91bab6fd841a150a586a9a79407831..69d502e62f55009b63d53fa2c7dda4270c4f1c15 100644
(file)
--- a/
gedcom/write.c
+++ b/
gedcom/write.c
@@
-127,13
+127,14
@@
int supports_continuation(int elt_or_rec, int which_continuation)
int write_long(Gedcom_write_hndl hndl, int elt_or_rec,
int level, char* xref, char* tag, char* value)
{
int write_long(Gedcom_write_hndl hndl, int elt_or_rec,
int level, char* xref, char* tag, char* value)
{
- int prefix_len, value_len, term_len;
- char* nl_pos = strchr(value, '\n');
+ int prefix_len, value_len = 0, term_len;
+ char* nl_pos = NULL;
+ if (value) nl_pos = strchr(value, '\n');
prefix_len = utf8_strlen(tag) + 3; /* for e.g. "0 INDI " */
if (level > 9) prefix_len++;
if (xref) prefix_len += utf8_strlen(xref) + 1;
prefix_len = utf8_strlen(tag) + 3; /* for e.g. "0 INDI " */
if (level > 9) prefix_len++;
if (xref) prefix_len += utf8_strlen(xref) + 1;
- value_len = utf8_strlen(value);
+
if (value)
value_len = utf8_strlen(value);
term_len = strlen(hndl->term);
if (!nl_pos && prefix_len + value_len + term_len <= MAXWRITELEN)
term_len = strlen(hndl->term);
if (!nl_pos && prefix_len + value_len + term_len <= MAXWRITELEN)