This patch fixes assumptions made in different parts of the code regarding the sizeof long and int. The original code appears to use them interchangeably, even though it expects them to be 32 bit wide. --- cmsmtrx.c Tue Feb 13 12:08:06 2001 +++ cmsmtrx.c Wed Sep 5 10:28:02 2001 @@ -705,6 +705,6 @@ void VEC3scaleAndCut(LPWVEC3 r, LPVEC3 v, double d) { - r -> n[VX] = (int) floor(v -> n[VX] * d + .5); - r -> n[VY] = (int) floor(v -> n[VY] * d + .5); - r -> n[VZ] = (int) floor(v -> n[VZ] * d + .5); + r -> n[VX] = (icInt32Number) floor(v -> n[VX] * d + .5); + r -> n[VY] = (icInt32Number) floor(v -> n[VY] * d + .5); + r -> n[VZ] = (icInt32Number) floor(v -> n[VZ] * d + .5); }