11-02-2022, 02:33 PM
Hard to imagine _DesktopWidth and _DesktopHeight being broken, unless something in glut itself has broken.
Here's what they translate to for us:
Since we're not talking about how they perform on a Windows system, and since we're running them on a glut system, they both basically translate to a simple:
glutget(GLUT_SCREEN_HEIGHT);
glutget(GLUT_SCREEN_WIDTH);
There's not a whole lot of code in those two translations to say that QB64 broke something with them.
Try running those under a DECLARE LIBRARY and see if it still segfaults or breaks for you. I don't know of anything in the world that we've changed that would make v0.5 work, but v3.4 break. I'll ask on our Dev channel and see if anyone has any ideas, but I personally don't see what the heck could be breaking here.
Here's what they translate to for us:
Code: (Select All)
int32 func_screenwidth() {
#ifdef QB64_WINDOWS
return GetSystemMetrics(SM_CXSCREEN);
#else
# ifdef QB64_GLUT
return glutGet(GLUT_SCREEN_WIDTH);
# else
return 0;
# endif
#endif
}
int32 func_screenheight() {
#ifdef QB64_WINDOWS
return GetSystemMetrics(SM_CYSCREEN);
#else
# ifdef QB64_GLUT
return glutGet(GLUT_SCREEN_HEIGHT);
# else
return 0;
# endif
#endif
}
Since we're not talking about how they perform on a Windows system, and since we're running them on a glut system, they both basically translate to a simple:
glutget(GLUT_SCREEN_HEIGHT);
glutget(GLUT_SCREEN_WIDTH);
There's not a whole lot of code in those two translations to say that QB64 broke something with them.
Try running those under a DECLARE LIBRARY and see if it still segfaults or breaks for you. I don't know of anything in the world that we've changed that would make v0.5 work, but v3.4 break. I'll ask on our Dev channel and see if anyone has any ideas, but I personally don't see what the heck could be breaking here.