From 6ef3557675c4c19103d927b3533e14f941f91a85 Mon Sep 17 00:00:00 2001 From: Tomasz Kramkowski Date: Wed, 2 May 2018 21:17:53 +0100 Subject: fmd.c: Correct bugs in implementation Materials are now loaded correctly. Material indices should be loaded with 0xffffffff being -1. --- fmd.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/fmd.c b/fmd.c index 4d71f0d..ce988b4 100644 --- a/fmd.c +++ b/fmd.c @@ -84,7 +84,7 @@ void fmd_load(struct fmd *fmd, FILE *f) ret = fread(*m, len, 1, f); assert(ret == 1); - *m[len] = '\0'; + (*m)[len] = '\0'; } fmd->nmeshes = betoul(f); @@ -94,7 +94,9 @@ void fmd_load(struct fmd *fmd, FILE *f) fmd->meshes = NULL; for (int i = 0; i < fmd->nmeshes; i++) { struct fmd_mesh *m = &fmd->meshes[i]; - m->midx = betoul(f); + unsigned long midx; + midx = betoul(f); + m->midx = midx == 0xffffffff ? -1 : (int)midx; m->tidx = betoul(f); m->tcnt = betoul(f); } -- cgit v1.2.3-54-g00ecf