diff options
Diffstat (limited to 'src/stdlib/metamethods.c')
| -rw-r--r-- | src/stdlib/metamethods.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/stdlib/metamethods.c b/src/stdlib/metamethods.c index ab7bb26e..5a2dd948 100644 --- a/src/stdlib/metamethods.c +++ b/src/stdlib/metamethods.c @@ -87,7 +87,8 @@ public void _deserialize(FILE *input, void *outval, List_t *pointers, const Type return; } - fread(outval, (size_t)type->size, 1, input); + if (fread(outval, (size_t)type->size, 1, input) != (size_t)type->size) + fail("Not enough data in stream to deserialize"); } public void generic_deserialize(List_t bytes, void *outval, const TypeInfo_t *type) |
