mirror of
https://github.com/4jcraft/4jcraft.git
synced 2026-05-01 13:53:41 +00:00
fix: clean up sanitizer startup issues
This commit is contained in:
parent
fed9cf2d95
commit
cc24fc996a
|
|
@ -3,15 +3,16 @@
|
|||
|
||||
class IUIScene_CommandBlockMenu {
|
||||
public:
|
||||
virtual ~IUIScene_CommandBlockMenu() = default;
|
||||
void Initialise(CommandBlockEntity* commandBlock);
|
||||
|
||||
protected:
|
||||
void ConfirmButtonClicked();
|
||||
|
||||
virtual std::wstring GetCommand();
|
||||
virtual void SetCommand(std::wstring command);
|
||||
virtual int GetPad();
|
||||
virtual std::wstring GetCommand() = 0;
|
||||
virtual void SetCommand(std::wstring command) = 0;
|
||||
virtual int GetPad() = 0;
|
||||
|
||||
private:
|
||||
CommandBlockEntity* m_commandBlock;
|
||||
};
|
||||
};
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@
|
|||
|
||||
Random* UIScene_MainMenu::random = new Random();
|
||||
|
||||
EUIScene UIScene_MainMenu::eNavigateWhenReady = (EUIScene)-1;
|
||||
int UIScene_MainMenu::eNavigateWhenReady = -1;
|
||||
|
||||
UIScene_MainMenu::UIScene_MainMenu(int iPad, void* initData,
|
||||
UILayer* parentLayer)
|
||||
|
|
@ -1966,8 +1966,8 @@ void UIScene_MainMenu::tick() {
|
|||
#endif
|
||||
{
|
||||
app.DebugPrintf("[MainMenu] Navigating away from MainMenu.\n");
|
||||
ui.NavigateToScene(lockedProfile, eNavigateWhenReady);
|
||||
eNavigateWhenReady = (EUIScene)-1;
|
||||
ui.NavigateToScene(lockedProfile, (EUIScene)eNavigateWhenReady);
|
||||
eNavigateWhenReady = -1;
|
||||
}
|
||||
#ifdef _DURANGO
|
||||
else {
|
||||
|
|
|
|||
|
|
@ -90,10 +90,10 @@ private:
|
|||
|
||||
private:
|
||||
// 4J-JEV: Delay navigation until font changes.
|
||||
static EUIScene eNavigateWhenReady;
|
||||
static int eNavigateWhenReady;
|
||||
|
||||
static void proceedToScene(int iPad, EUIScene eScene) {
|
||||
eNavigateWhenReady = eScene;
|
||||
eNavigateWhenReady = (int)eScene;
|
||||
}
|
||||
|
||||
public:
|
||||
|
|
|
|||
|
|
@ -1504,30 +1504,34 @@ static int set_render_state(GDrawRenderState *r, S32 vformat, const int **ovvars
|
|||
|
||||
static void set_vertex_format(S32 format, F32 *vertices)
|
||||
{
|
||||
const void *vertex_offset_0 = (const void *) (size_t) vertices;
|
||||
const void *vertex_offset_8 = (const void *) ((size_t) vertices + (2 * sizeof(F32)));
|
||||
const void *vertex_offset_16 = (const void *) ((size_t) vertices + (4 * sizeof(F32)));
|
||||
|
||||
switch (format) {
|
||||
case GDRAW_vformat_v2:
|
||||
glVertexAttribPointer(0, 2, GL_FLOAT, GL_FALSE, 0, vertices);
|
||||
glVertexAttribPointer(0, 2, GL_FLOAT, GL_FALSE, 0, vertex_offset_0);
|
||||
glEnableVertexAttribArray(0);
|
||||
break;
|
||||
|
||||
case GDRAW_vformat_v2aa:
|
||||
glVertexAttribPointer(0, 2, GL_FLOAT, GL_FALSE, 16, vertices);
|
||||
glVertexAttribPointer(1, 4, GL_SHORT, GL_FALSE, 16, vertices+2);
|
||||
glVertexAttribPointer(0, 2, GL_FLOAT, GL_FALSE, 16, vertex_offset_0);
|
||||
glVertexAttribPointer(1, 4, GL_SHORT, GL_FALSE, 16, vertex_offset_8);
|
||||
glEnableVertexAttribArray(0);
|
||||
glEnableVertexAttribArray(1);
|
||||
break;
|
||||
|
||||
case GDRAW_vformat_v2tc2:
|
||||
glVertexAttribPointer(0, 2, GL_FLOAT, GL_FALSE, 16, vertices);
|
||||
glVertexAttribPointer(1, 2, GL_FLOAT, GL_FALSE, 16, vertices+2);
|
||||
glVertexAttribPointer(0, 2, GL_FLOAT, GL_FALSE, 16, vertex_offset_0);
|
||||
glVertexAttribPointer(1, 2, GL_FLOAT, GL_FALSE, 16, vertex_offset_8);
|
||||
glEnableVertexAttribArray(0);
|
||||
glEnableVertexAttribArray(1);
|
||||
break;
|
||||
|
||||
case GDRAW_vformat_ihud1:
|
||||
glVertexAttribPointer(0, 2, GL_FLOAT, GL_FALSE, 20, vertices);
|
||||
glVertexAttribPointer(1, 2, GL_FLOAT, GL_FALSE, 20, vertices+2);
|
||||
glVertexAttribPointer(2, 4, GL_UNSIGNED_BYTE, GL_TRUE, 20, vertices+4);
|
||||
glVertexAttribPointer(0, 2, GL_FLOAT, GL_FALSE, 20, vertex_offset_0);
|
||||
glVertexAttribPointer(1, 2, GL_FLOAT, GL_FALSE, 20, vertex_offset_8);
|
||||
glVertexAttribPointer(2, 4, GL_UNSIGNED_BYTE, GL_TRUE, 20, vertex_offset_16);
|
||||
glEnableVertexAttribArray(0);
|
||||
glEnableVertexAttribArray(1);
|
||||
glEnableVertexAttribArray(2);
|
||||
|
|
@ -1943,10 +1947,13 @@ static void make_fragment_program(ProgramWithCachedVariableLocations *p, int num
|
|||
p->program = 0;
|
||||
} else {
|
||||
S32 vert = GDRAW_vformat_v2tc2;
|
||||
if (p >= &gdraw->fprog[0][0][0] && p < &gdraw->fprog[GDRAW_TEXTURE__count][0][0]) {
|
||||
ProgramWithCachedVariableLocations *basic_fprog_begin = &gdraw->fprog[0][0][0];
|
||||
ProgramWithCachedVariableLocations *basic_fprog_end =
|
||||
basic_fprog_begin + (sizeof(gdraw->fprog) / sizeof(gdraw->fprog[0][0][0]));
|
||||
if (p >= basic_fprog_begin && p < basic_fprog_end) {
|
||||
// for basic rendering shaders, we have three versions corresponding to the
|
||||
// three vertex formats we support.
|
||||
S32 n = (S32) (p - gdraw->fprog[0][0]);
|
||||
S32 n = (S32) (p - basic_fprog_begin);
|
||||
vert = n % 3;
|
||||
}
|
||||
|
||||
|
|
@ -2032,8 +2039,12 @@ static void make_vertex_programs(void)
|
|||
|
||||
static void lazy_shader(ProgramWithCachedVariableLocations *ptr)
|
||||
{
|
||||
if (ptr >= &gdraw->fprog[0][0][0] && ptr < &gdraw->fprog[GDRAW_TEXTURE__count][0][0]) {
|
||||
S32 n = (S32) (ptr - gdraw->fprog[0][0]);
|
||||
ProgramWithCachedVariableLocations *basic_fprog_begin = &gdraw->fprog[0][0][0];
|
||||
ProgramWithCachedVariableLocations *basic_fprog_end =
|
||||
basic_fprog_begin + (sizeof(gdraw->fprog) / sizeof(gdraw->fprog[0][0][0]));
|
||||
|
||||
if (ptr >= basic_fprog_begin && ptr < basic_fprog_end) {
|
||||
S32 n = (S32) (ptr - basic_fprog_begin);
|
||||
n /= 3;
|
||||
|
||||
make_fragment_program(ptr, NUMFRAGMENTS_pshader_basic, pshader_basic_arr[n], pshader_basic_vars);
|
||||
|
|
|
|||
|
|
@ -27,7 +27,11 @@ bool TickNextTickData::equals(const TickNextTickData* o) const {
|
|||
}
|
||||
|
||||
int TickNextTickData::hashCode() const {
|
||||
return (((x * 1024 * 1024) + (z * 1024) + y) * 256);
|
||||
std::uint32_t hash =
|
||||
(((std::uint32_t)x * 1024u * 1024u) + ((std::uint32_t)z * 1024u) +
|
||||
(std::uint32_t)y) *
|
||||
256u;
|
||||
return (std::int32_t)hash;
|
||||
}
|
||||
|
||||
TickNextTickData* TickNextTickData::delay(int64_t l) {
|
||||
|
|
@ -72,4 +76,4 @@ int TickNextTickData::hash_fnct(const TickNextTickData& k) {
|
|||
bool TickNextTickData::eq_test(const TickNextTickData& x,
|
||||
const TickNextTickData& y) {
|
||||
return x.equals(&y);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2,5 +2,6 @@
|
|||
|
||||
class DescFormatter {
|
||||
public:
|
||||
virtual std::wstring format(const std::wstring& i18nValue);
|
||||
};
|
||||
virtual ~DescFormatter() = default;
|
||||
virtual std::wstring format(const std::wstring& i18nValue) = 0;
|
||||
};
|
||||
|
|
|
|||
Loading…
Reference in a new issue