Hi Michael,
+ for (i = 0; declaration1[i].Stream != 0xff; i++)
+ {
+ if (memcmp(&declaration1[i], &declaration2[i], sizeof(*declaration1)))
Doesn't that loop need to stop at the first end marker of either
declaration? I.e. may the first vertex declaration be longer than the
second one?