Time Nick Message 12:29 sfan5 Krock: fwiw it reproduces for me with the mesa software driver 12:31 sfan5 maybe it's GLint vs int mismatch? 12:35 sfan5 also looks like someone edited mt_opengl_loader.cpp directly even though it's generated by a file 12:38 MTDiscord I've been playing with it for a few hours. It's a crazy heisenbug. I'm thinking it might be a miscompile, but not pinned down yet 12:39 MTDiscord on my system, NUM_EXTENSIONS is returning the correct extensions count, but it crashes in the middle of iterating (if I print them instead of adding to a set) 12:39 MTDiscord and the iteration order seems to be wrong, the iteration index is getting messed up 12:40 MTDiscord so I've isolated this code, and need to step through it instruction by instruction in a debugger 12:43 MTDiscord It could also have to do with the calling convention between win32 and the methods returned by getProcAddress ? Assuming the GL.xxxx methods are never used anywhere else 12:44 sfan5 minetest uses it once and that worked fine in the previous version, could be coincidence 12:45 MTDiscord there are other places where glGetString(GL_EXTENSIONS) is used (not GL.GetString) and it doesn't seem to cause any corruption or crash 12:47 MTDiscord https://github.com/minetest/irrlicht/blob/master/source/Irrlicht/COpenGLExtensionHandler.cpp#L354 12:47 MTDiscord that actually runs before GL.LoadAllProcedures() 12:48 sfan5 don't you mean GetStringi? 12:51 MTDiscord no matter what GL.xxx methods I use, they all cause corruption and crashing. Even just GL.GetString(VERSION) 12:52 MTDiscord so it must be either a miscompile in LoadAllProcedures or something wrong with the GL.xxxx methods 12:53 sfan5 I have a feeling APIENTRY is not actually being defined to set the calling convention, but I'm not sure if it needs to be 12:55 sfan5 KHR/khrplatform.h certainly doesn't define it 13:20 MTDiscord sfan5: yea, if I define APIENTRY to __stdcall, it magically works. No other changes 13:21 MTDiscord I wonder why that is necessary 13:28 MTDiscord KHRONOS_APIENTRY is defined by khrplatform.h, and is set to __stdcall for WIN32 13:51 MTDiscord I'd be interested in taking a look at the assembly around the crash. 13:56 MTDiscord it's all figured out 13:56 MTDiscord the calling convention didn't match 13:56 MTDiscord getting a PR ready now 14:39 MTDiscord https://github.com/minetest/irrlicht/pull/263 15:56 rubenwardy let's merge game#3082 and then tag MTG 15:56 ShadowBot https://github.com/minetest/minetest_game/issues/3082 -- Update README.md for 5.8 by rubenwardy 16:03 MTDiscord done 16:05 MTDiscord I think I should merge master into stable-5 now so that we can continue on master? oddly enough stable-5 seems to be some commits ahead of master? 16:08 sfan5 see https://dev.minetest.net/Releasing_Minetest#Update_branches_and_tags_of_minetest_and_minetest_game_on_GitHub 16:08 MTDiscord rubenwardy: I noticed you set min_minetest_version = 5.8 for MTG 5.8; in practice 5.7 (probably even way below that) should suffice however 16:11 rubenwardy It's fine to change that if you know for sure 16:11 MTDiscord sfan5: alright done.. now stable-5 is just ahead of master, but not behind anymore 17:00 sfan5 there's a function definition in our MT opengl headers that returns zero results on google, spooky 17:19 sfan5 rubenwardy: so do we want to enable SDL by default now? 17:20 rubenwardy yeah I definitely think so 17:21 sfan5 irr#209 then 17:21 ShadowBot https://github.com/minetest/irrlicht/issues/209 -- Use SDL2 by default by numberZero 17:23 rubenwardy sweet - do we need to merge irr#262 first? I suppose we're expecting things to break, SDL2 by default makes it more visible 17:23 ShadowBot https://github.com/minetest/irrlicht/issues/262 -- SDL: Implement touchscreen support by grorp 17:24 sfan5 android won't use sdl yet 17:24 rubenwardy ah yeah just saw. That's cool then 17:24 sfan5 it would instantly break our build and probably doesn't even work even if you build it correctly 17:25 ROllerozxa should probably make SDL the default gradually for each platform 17:26 rubenwardy yeah, desktop for now makes sense 17:27 rubenwardy testing that PR 17:44 sfan5 will merge that then 17:47 sfan5 I suppose I should be compiling a patched minetest-5.8.0-win32 with the crash fix? 17:47 rubenwardy which crash fix? 17:47 sfan5 see backlog from today 18:13 rubenwardy it's a little bit inconsistent as to whether a boolean setting is `enable_x` or just `x` 19:36 sfan5 merging #14099, #14092, #13967, irr#260 in 8m 19:36 ShadowBot https://github.com/minetest/minetest/issues/14099 -- MinGW toolchain refresh by sfan5 19:36 ShadowBot https://github.com/minetest/minetest/issues/14092 -- Add `touch_controls` boolean to `get_player_window_information()` by grorp 19:36 ShadowBot https://github.com/minetest/minetest/issues/13967 -- Extract Game::drawScene from Game::updateFrame by JosiahWI 19:36 ShadowBot https://github.com/minetest/irrlicht/issues/260 -- MinGW toolchain refresh by sfan5 19:55 sfan5 https://github.com/minetest/minetest/blob/5d3e83017679317c27fe02b7087effd9d67f79cc/src/script/lua_api/l_playermeta.cpp#L39-L42 19:55 sfan5 lol 19:56 sfan5 don't think there's a bug here but the comment is still funny 19:57 rubenwardy I guess it's not used for player meta? 20:26 sfan5 it seems we don't track the modification state of playermeta properly and it's just unconditionally written to db/disk 20:26 sfan5 not ideal 22:30 ROllerozxa btw I tried building with SDL2 on windows (MSYS2) and it would give me an error when linking about an undefined reference to SDL_main. I changed the ${SDL2_LIBRARIES} in irrlichtmt to SDL2::SDL2, so it doesn't try to link against SDL2::SDL2main and it works. unsure if there's any side effects to doing that but just throwing it out there