Here is a screenshot from the user interface demo:

The problem is in CVideoSoftware.cpp
function CVideoSoftware::draw2DRectangle()
Replace
Code: Select all
core::rect<s32> p(pos);
if(!p.isValid()) return;
BackBuffer->drawRectangle(p, color);
Code: Select all
core::rect<s32> p(pos);
p.clipAgainst(*clip);
BackBuffer->drawRectangle(p, color);
The "bonus bugs" are actually forgotten bugs. Here is a reminder for Niko
1.
CFileSystem.cpp
The Linux version of getWorkingDirectory() doesn't return WorkingDirectory:
Replace
Code: Select all
#ifdef LINUX
getcwd(WorkingDirectory, (size_t)FILE_SYSTEM_MAX_PATH);
#endif
Code: Select all
#ifdef LINUX
getcwd(WorkingDirectory, (size_t)FILE_SYSTEM_MAX_PATH);
return WorkingDirectory;
#endif
fast_atof.h
Once there was a fix applied only to the non const function (fast_atof_move() )
To fix also fast_atof_move_const():
Replace
Code: Select all
if (*c == 'e')
{
++c;
f32 exp = (f32)strtol(c, &t, 10);
f *= (f32)pow(10.0f, exp);
}
Code: Select all
if (*c == 'e')
{
++c;
f32 exp = (f32)strtol(c, &t, 10);
f *= (f32)pow(10.0f, exp);
c = t;
}