X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?p=vrlugburz;a=blobdiff_plain;f=src%2Fmesh.c;fp=src%2Fmesh.c;h=91f8fcf52a8933276f1b95baf11e27e3af0f245f;hp=9f208a44630f4d30133efac1d768d7b3a5ec11b1;hb=9089b4a32162a85cb3d244c915f31cc5adc3c389;hpb=7a1a5aa446fcf3d2b0bb26f6f7465e4f3d116e47 diff --git a/src/mesh.c b/src/mesh.c index 9f208a4..91f8fcf 100644 --- a/src/mesh.c +++ b/src/mesh.c @@ -16,6 +16,7 @@ void init_mesh(struct mesh *m) void destroy_mesh(struct mesh *m) { + free(m->name); free(m->varr); free(m->iarr); @@ -29,9 +30,11 @@ void destroy_mesh(struct mesh *m) void clear_mesh(struct mesh *m) { + free(m->name); free(m->varr); free(m->iarr); + m->name = 0; m->varr = 0; m->iarr = 0; m->num_verts = m->max_verts = m->num_idx = m->max_idx = 0; @@ -43,6 +46,10 @@ int copy_mesh(struct mesh *dest, struct mesh *src) { init_mesh(dest); + if(src->name) { + dest->name = strdup(src->name); + } + if(src->max_verts && !(dest->varr = malloc(src->max_verts * sizeof *dest->varr))) { return -1; }