- Fixed: The C code in AltSoundRenderer::CopyAndClip() did not shift the sample
data enough (2 bits instead of 8), so it was super loud and aliased. - Fixes for GCC 4.1: Several type-punned pointer warnings, but more importantly, declaring a friend function inside a class body is no longer enough to declare that function globally; you must declare it again outside the class. - Upgraded FArchive::SerializePointer so that it can store 32-bit indices. - ACS printing pcodes now build their string in an FSttring instead of a fixed sized buffer on the stack. SVN r145 (trunk)
This commit is contained in:
parent
43abfba723
commit
90b5130db0
29 changed files with 327 additions and 269 deletions
|
|
@ -73,8 +73,13 @@ int ReadLong (byte **stream)
|
|||
|
||||
float ReadFloat (byte **stream)
|
||||
{
|
||||
int fakeint = ReadLong (stream);
|
||||
return *((float *)&fakeint);
|
||||
union
|
||||
{
|
||||
int i;
|
||||
float f;
|
||||
} fakeint;
|
||||
fakeint.i = ReadLong (stream);
|
||||
return fakeint.f;
|
||||
}
|
||||
|
||||
void WriteString (const char *string, byte **stream)
|
||||
|
|
@ -114,7 +119,13 @@ void WriteLong (int v, byte **stream)
|
|||
|
||||
void WriteFloat (float v, byte **stream)
|
||||
{
|
||||
WriteLong (*((int *)&v), stream);
|
||||
union
|
||||
{
|
||||
int i;
|
||||
float f;
|
||||
} fakeint;
|
||||
fakeint.f = v;
|
||||
WriteLong (fakeint.i, stream);
|
||||
}
|
||||
|
||||
// Returns the number of bytes read
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue