Fix serial import/export for variant

This commit is contained in:
Patrick Pelissier committed 2019-05-18 11:17:14 +02:00
1 parent 0997f59665
commit 4701d5919b
2 files changed
+4 -2

No files matched your search

+1 -1
View File
@@ -378,7 +378,7 @@ m_serial_json_read_variant_end(m_serial_read_t serial)
FILE *f = (FILE*) serial->data[0];
int final = -1;
fscanf(f, " }%n", &final);
return final > 0 ? M_SERIAL_OK_CONTINUE : M_SERIAL_FAIL;
return final > 0 ? M_SERIAL_OK_DONE : M_SERIAL_FAIL;
}
static const m_serial_read_interface_t m_serial_json_read_interface = {
+3 -1
View File
@@ -551,7 +551,7 @@
M_MAP2(VARIANTI_DEFINE_IN_SERIAL_FUNC , name, __VA_ARGS__) \
default: assert(false); break; \
} \
if (ret != M_SERIAL_OK_DONE) \
if (ret == M_SERIAL_OK_DONE) \
ret = f->interface->read_variant_end(f); \
return ret; \
}
@@ -584,6 +584,8 @@
M_IF_METHOD2_ALL(PARSE_STR, INIT, __VA_ARGS__)(PARSE_STR(M_C(name, _parse_str)),), \
M_IF_METHOD2_ALL(IN_STR, INIT, __VA_ARGS__)(IN_STR(M_C(name, _in_str)),), \
M_IF_METHOD_ALL(OUT_STR, __VA_ARGS__)(OUT_STR(M_C(name, _out_str)),), \
M_IF_METHOD2_ALL(IN_SERIAL, INIT, __VA_ARGS__)(IN_SERIAL(M_C(name, _in_serial)),), \
M_IF_METHOD_ALL(OUT_SERIAL, __VA_ARGS__)(OUT_SERIAL(M_C(name, _out_serial)),), \
M_IF_METHOD_ALL(INIT_MOVE, __VA_ARGS__)(INIT_MOVE(M_C(name, _init_move)),), \
M_IF_METHOD_ALL(INIT_MOVE, __VA_ARGS__)(MOVE(M_C(name, _move)),), \
M_IF_METHOD_ALL(SWAP, __VA_ARGS__)(SWAP(M_C(name, _swap)),), \