|
@@ -2661,7 +2661,7 @@ double GetTime(void)
|
|
|
#endif
|
|
|
|
|
|
#if defined(PLATFORM_ANDROID) || defined(PLATFORM_RPI) || defined(PLATFORM_DRM)
|
|
|
- struct timespec ts;
|
|
|
+ struct timespec ts = { 0 };
|
|
|
clock_gettime(CLOCK_MONOTONIC, &ts);
|
|
|
unsigned long long int time = (unsigned long long int)ts.tv_sec*1000000000LLU + (unsigned long long int)ts.tv_nsec;
|
|
|
|
|
@@ -2818,7 +2818,7 @@ const char *GetFileNameWithoutExt(const char *filePath)
|
|
|
{
|
|
|
#define MAX_FILENAMEWITHOUTEXT_LENGTH 128
|
|
|
|
|
|
- static char fileName[MAX_FILENAMEWITHOUTEXT_LENGTH];
|
|
|
+ static char fileName[MAX_FILENAMEWITHOUTEXT_LENGTH] = { 0 };
|
|
|
memset(fileName, 0, MAX_FILENAMEWITHOUTEXT_LENGTH);
|
|
|
|
|
|
if (filePath != NULL) strcpy(fileName, GetFileName(filePath)); // Get filename with extension
|
|
@@ -2851,7 +2851,7 @@ const char *GetDirectoryPath(const char *filePath)
|
|
|
#endif
|
|
|
*/
|
|
|
const char *lastSlash = NULL;
|
|
|
- static char dirPath[MAX_FILEPATH_LENGTH];
|
|
|
+ static char dirPath[MAX_FILEPATH_LENGTH] = { 0 };
|
|
|
memset(dirPath, 0, MAX_FILEPATH_LENGTH);
|
|
|
|
|
|
// In case provided path does not contain a root drive letter (C:\, D:\) nor leading path separator (\, /),
|
|
@@ -2887,7 +2887,7 @@ const char *GetDirectoryPath(const char *filePath)
|
|
|
// Get previous directory path for a given path
|
|
|
const char *GetPrevDirectoryPath(const char *dirPath)
|
|
|
{
|
|
|
- static char prevDirPath[MAX_FILEPATH_LENGTH];
|
|
|
+ static char prevDirPath[MAX_FILEPATH_LENGTH] = { 0 };
|
|
|
memset(prevDirPath, 0, MAX_FILEPATH_LENGTH);
|
|
|
int pathLen = (int)strlen(dirPath);
|
|
|
|
|
@@ -2911,7 +2911,7 @@ const char *GetPrevDirectoryPath(const char *dirPath)
|
|
|
// Get current working directory
|
|
|
const char *GetWorkingDirectory(void)
|
|
|
{
|
|
|
- static char currentDir[MAX_FILEPATH_LENGTH];
|
|
|
+ static char currentDir[MAX_FILEPATH_LENGTH] = { 0 };
|
|
|
memset(currentDir, 0, MAX_FILEPATH_LENGTH);
|
|
|
|
|
|
char *path = GETCWD(currentDir, MAX_FILEPATH_LENGTH - 1);
|
|
@@ -3910,12 +3910,12 @@ static bool InitGraphicsDevice(int width, int height)
|
|
|
#if defined(PLATFORM_RPI)
|
|
|
bcm_host_init();
|
|
|
|
|
|
- DISPMANX_ELEMENT_HANDLE_T dispmanElement;
|
|
|
- DISPMANX_DISPLAY_HANDLE_T dispmanDisplay;
|
|
|
- DISPMANX_UPDATE_HANDLE_T dispmanUpdate;
|
|
|
+ DISPMANX_ELEMENT_HANDLE_T dispmanElement = { 0 };
|
|
|
+ DISPMANX_DISPLAY_HANDLE_T dispmanDisplay = { 0 };
|
|
|
+ DISPMANX_UPDATE_HANDLE_T dispmanUpdate = { 0 };
|
|
|
|
|
|
- VC_RECT_T dstRect;
|
|
|
- VC_RECT_T srcRect;
|
|
|
+ VC_RECT_T dstRect = { 0 };
|
|
|
+ VC_RECT_T srcRect = { 0 };
|
|
|
#endif
|
|
|
|
|
|
#if defined(PLATFORM_DRM)
|
|
@@ -4415,7 +4415,7 @@ static bool InitGraphicsDevice(int width, int height)
|
|
|
// NOTE: RPI dispmanx windowing system takes care of source rectangle scaling to destination rectangle by hardware (no cost)
|
|
|
// Take care that renderWidth/renderHeight fit on displayWidth/displayHeight aspect ratio
|
|
|
|
|
|
- VC_DISPMANX_ALPHA_T alpha;
|
|
|
+ VC_DISPMANX_ALPHA_T alpha = { 0 };
|
|
|
alpha.flags = DISPMANX_FLAGS_ALPHA_FIXED_ALL_PIXELS;
|
|
|
//alpha.flags = DISPMANX_FLAGS_ALPHA_FROM_SOURCE; // TODO: Allow transparent framebuffer! -> FLAG_WINDOW_TRANSPARENT
|
|
|
alpha.opacity = 255; // Set transparency level for framebuffer, requires EGLAttrib: EGL_TRANSPARENT_TYPE
|
|
@@ -5525,7 +5525,7 @@ static int32_t AndroidInputCallback(struct android_app *app, AInputEvent *event)
|
|
|
|
|
|
#if defined(SUPPORT_GESTURES_SYSTEM)
|
|
|
|
|
|
- GestureEvent gestureEvent;
|
|
|
+ GestureEvent gestureEvent = { 0 };
|
|
|
|
|
|
// Register touch actions
|
|
|
if (flags == AMOTION_EVENT_ACTION_DOWN) gestureEvent.touchAction = TOUCH_DOWN;
|
|
@@ -5929,8 +5929,7 @@ static void ConfigureEvdevDevice(char *device)
|
|
|
|
|
|
if (ptrDevName != NULL)
|
|
|
{
|
|
|
- if (sscanf(ptrDevName, "t%d", &devNum) == 1)
|
|
|
- worker->eventNum = devNum;
|
|
|
+ if (sscanf(ptrDevName, "t%d", &devNum) == 1) worker->eventNum = devNum;
|
|
|
}
|
|
|
|
|
|
// At this point we have a connection to the device, but we don't yet know what the device is.
|
|
@@ -6074,7 +6073,7 @@ static void PollKeyboardEvents(void)
|
|
|
// Scancode to keycode mapping for US keyboards
|
|
|
// TODO: Probably replace this with a keymap from the X11 to get the correct regional map for the keyboard:
|
|
|
// Currently non US keyboards will have the wrong mapping for some keys
|
|
|
- static const int keymap_US[] =
|
|
|
+ static const int keymapUS[] =
|
|
|
{ 0,256,49,50,51,52,53,54,55,56,57,48,45,61,259,258,81,87,69,82,84,
|
|
|
89,85,73,79,80,91,93,257,341,65,83,68,70,71,72,74,75,76,59,39,96,
|
|
|
340,92,90,88,67,86,66,78,77,44,46,47,344,332,342,32,280,290,291,
|
|
@@ -6106,7 +6105,7 @@ static void PollKeyboardEvents(void)
|
|
|
// Keyboard button parsing
|
|
|
if ((event.code >= 1) && (event.code <= 255)) //Keyboard keys appear for codes 1 to 255
|
|
|
{
|
|
|
- keycode = keymap_US[event.code & 0xFF]; // The code we get is a scancode so we look up the apropriate keycode
|
|
|
+ keycode = keymapUS[event.code & 0xFF]; // The code we get is a scancode so we look up the apropriate keycode
|
|
|
|
|
|
// Make sure we got a valid keycode
|
|
|
if ((keycode > 0) && (keycode < sizeof(CORE.Input.Keyboard.currentKeyState)))
|
|
@@ -6121,14 +6120,14 @@ static void PollKeyboardEvents(void)
|
|
|
CORE.Input.Keyboard.keyPressedQueueCount++;
|
|
|
}
|
|
|
|
|
|
- #if defined(SUPPORT_SCREEN_CAPTURE)
|
|
|
- // Check screen capture key (raylib key: KEY_F12)
|
|
|
- if (CORE.Input.Keyboard.currentKeyState[301] == 1)
|
|
|
- {
|
|
|
- TakeScreenshot(TextFormat("screenshot%03i.png", screenshotCounter));
|
|
|
- screenshotCounter++;
|
|
|
- }
|
|
|
- #endif
|
|
|
+ #if defined(SUPPORT_SCREEN_CAPTURE)
|
|
|
+ // Check screen capture key (raylib key: KEY_F12)
|
|
|
+ if (CORE.Input.Keyboard.currentKeyState[301] == 1)
|
|
|
+ {
|
|
|
+ TakeScreenshot(TextFormat("screenshot%03i.png", screenshotCounter));
|
|
|
+ screenshotCounter++;
|
|
|
+ }
|
|
|
+ #endif
|
|
|
|
|
|
if (CORE.Input.Keyboard.currentKeyState[CORE.Input.Keyboard.exitKey] == 1) CORE.Window.shouldClose = true;
|
|
|
|