Fix potential field align error when dereferencing pointers.
This commit is contained in:
@@ -575,9 +575,9 @@ namespace Cryville.Crtr {
|
||||
case 1:
|
||||
num = op.AsNumber();
|
||||
return new Vector4(num, num, num, num);
|
||||
case 2: return op.As<Vector2>();
|
||||
case 3: return op.As<Vector3>();
|
||||
default: return op.As<Vector4>();
|
||||
case 2: return new Vector4(op.AsNumber(), op.AsNumber(sizeof(float)), 0, 0);
|
||||
case 3: return new Vector4(op.AsNumber(), op.AsNumber(sizeof(float)), op.AsNumber(2 * sizeof(float)), 0);
|
||||
default: return new Vector4(op.AsNumber(), op.AsNumber(sizeof(float)), op.AsNumber(2 * sizeof(float)), op.AsNumber(3 * sizeof(float)));
|
||||
}
|
||||
default: throw new ArgumentException("Not animatable");
|
||||
}
|
||||
@@ -899,9 +899,9 @@ namespace Cryville.Crtr {
|
||||
switch ((op.Length - sizeof(int)) / sizeof(float)) {
|
||||
case 0: return null;
|
||||
case 1: return new Vector4(op.AsNumber(), 0, 0, 0);
|
||||
case 2: return op.As<Vector2>();
|
||||
case 3: return op.As<Vector3>();
|
||||
default: return op.As<Vector4>();
|
||||
case 2: return new Vector4(op.AsNumber(), op.AsNumber(sizeof(float)), 0, 0);
|
||||
case 3: return new Vector4(op.AsNumber(), op.AsNumber(sizeof(float)), op.AsNumber(2 * sizeof(float)), 0);
|
||||
default: return new Vector4(op.AsNumber(), op.AsNumber(sizeof(float)), op.AsNumber(2 * sizeof(float)), op.AsNumber(3 * sizeof(float)));
|
||||
}
|
||||
}
|
||||
else if (op.Type == PdtInternalType.Number) {
|
||||
|
Reference in New Issue
Block a user