diff --git a/gfx/video_driver.c b/gfx/video_driver.c index 3981e18f6f..2afbd3db4b 100644 --- a/gfx/video_driver.c +++ b/gfx/video_driver.c @@ -372,7 +372,7 @@ static void init_video_input(const input_driver_t *tmp) rarch_fail(1, "init_video_input()"); } - driver->input_data = driver->input->init(); + driver->input_data = input_driver_init(); if (driver->input_data) return; diff --git a/input/input_driver.c b/input/input_driver.c index d5ba733c42..4480467492 100644 --- a/input/input_driver.c +++ b/input/input_driver.c @@ -272,3 +272,14 @@ bool input_driver_grab_mouse(bool state) driver->input->grab_mouse(driver->input_data, state); return true; } + +void *input_driver_init(void) +{ + driver_t *driver = driver_get_ptr(); + + if (!driver) + return NULL; + if (!driver->input) + return NULL; + return driver->input->init(); +} diff --git a/input/input_driver.h b/input/input_driver.h index f78a65a563..2df2ab1ab2 100644 --- a/input/input_driver.h +++ b/input/input_driver.h @@ -150,6 +150,8 @@ const rarch_joypad_driver_t * input_driver_get_joypad_driver(void); bool input_driver_grab_mouse(bool state); +void *input_driver_init(void); + #ifdef __cplusplus } #endif