diff options
Diffstat (limited to 'src/lib/eet_lib.c')
-rw-r--r-- | src/lib/eet_lib.c | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/src/lib/eet_lib.c b/src/lib/eet_lib.c index 7fc6d1b..d3d4158 100644 --- a/src/lib/eet_lib.c +++ b/src/lib/eet_lib.c @@ -636,12 +636,12 @@ eet_flush2(Eet_File *ef) if (ef->ed) for (j = 0; j < ef->ed->count; ++j) { - if (ef->ed->all[j].str) + if (ef->ed->all[j].allocated) { - if (fwrite(ef->ed->all[j].str, ef->ed->all[j].len, 1, fp) != 1) + if (fwrite(ef->ed->all[j].u.str, ef->ed->all[j].len, 1, fp) != 1) goto write_error; } - else if (fwrite(ef->ed->all[j].mmap, ef->ed->all[j].len, 1, fp) != 1) + else if (fwrite(ef->ed->all[j].u.mmap, ef->ed->all[j].len, 1, fp) != 1) goto write_error; } @@ -1082,14 +1082,13 @@ eet_internal_read2(Eet_File *ef) ef->data_size)), ef)) return NULL; - ef->ed->all[j].mmap = start + offset; - ef->ed->all[j].str = NULL; + ef->ed->all[j].u.mmap = start + offset; - if (ef->ed->all[j].mmap + ef->ed->all[j].len > ef->ed->end) - ef->ed->end = ef->ed->all[j].mmap + ef->ed->all[j].len; + if (ef->ed->all[j].u.mmap + ef->ed->all[j].len > ef->ed->end) + ef->ed->end = ef->ed->all[j].u.mmap + ef->ed->all[j].len; /* Check '\0' at the end of the string */ - if (eet_test_close(ef->ed->all[j].mmap[ef->ed->all[j].len - 1] != + if (eet_test_close(ef->ed->all[j].u.mmap[ef->ed->all[j].len - 1] != '\0', ef)) return NULL; |