mirror of
https://github.com/libretro/RetroArch
synced 2025-04-16 17:43:02 +00:00
Reimplement MENU_ACTION_TESTx
This commit is contained in:
parent
e8691eb4d6
commit
e5e9e80cfb
@ -516,12 +516,8 @@ int menu_entry_action(menu_entry_t *entry, unsigned i, enum menu_action action)
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case MENU_ACTION_TEST:
|
case MENU_ACTION_TEST:
|
||||||
#if 0
|
rarch_main_data_msg_queue_push(DATA_TYPE_DB, "", "cb_db_scan", 0, 1,
|
||||||
menu->db = database_info_init("/home/squarepusher/roms", DATABASE_TYPE_RDL_WRITE);
|
true);
|
||||||
|
|
||||||
if (!menu->db)
|
|
||||||
ret = -1;
|
|
||||||
#endif
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
|
@ -40,12 +40,8 @@ enum runloop_data_type
|
|||||||
DATA_TYPE_FILE,
|
DATA_TYPE_FILE,
|
||||||
DATA_TYPE_IMAGE,
|
DATA_TYPE_IMAGE,
|
||||||
DATA_TYPE_HTTP,
|
DATA_TYPE_HTTP,
|
||||||
#ifdef HAVE_OVERLAY
|
|
||||||
DATA_TYPE_OVERLAY,
|
DATA_TYPE_OVERLAY,
|
||||||
#endif
|
|
||||||
#ifdef HAVE_LIBRETRODB
|
|
||||||
DATA_TYPE_DB,
|
DATA_TYPE_DB,
|
||||||
#endif
|
|
||||||
};
|
};
|
||||||
|
|
||||||
#ifdef HAVE_NETWORKING
|
#ifdef HAVE_NETWORKING
|
||||||
|
@ -117,13 +117,34 @@ static int database_info_iterate(database_info_handle_t *db)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int database_info_poll(db_handle_t *db)
|
||||||
|
{
|
||||||
|
const char *path = msg_queue_pull(db->msg_queue);
|
||||||
|
|
||||||
|
if (!path)
|
||||||
|
return -1;
|
||||||
|
|
||||||
|
RARCH_LOG("Gets here.\n");
|
||||||
|
|
||||||
|
db->handle = database_info_init("/home/squarepusher/roms", DATABASE_TYPE_ITERATE);
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
void rarch_main_data_db_iterate(bool is_thread, void *data)
|
void rarch_main_data_db_iterate(bool is_thread, void *data)
|
||||||
{
|
{
|
||||||
data_runloop_t *runloop = (data_runloop_t*)data;
|
data_runloop_t *runloop = (data_runloop_t*)data;
|
||||||
database_info_handle_t *db = runloop ? runloop->db.handle : NULL;
|
database_info_handle_t *db = runloop ? runloop->db.handle : NULL;
|
||||||
|
|
||||||
if (!db || !runloop)
|
if (!db || !runloop)
|
||||||
|
{
|
||||||
|
if (database_info_poll(&runloop->db) != -1)
|
||||||
|
{
|
||||||
|
if (runloop->db.handle)
|
||||||
|
runloop->db.handle->status = DATABASE_STATUS_ITERATE;
|
||||||
|
}
|
||||||
return;
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
switch (db->status)
|
switch (db->status)
|
||||||
{
|
{
|
||||||
@ -136,6 +157,8 @@ void rarch_main_data_db_iterate(bool is_thread, void *data)
|
|||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
case DATABASE_STATUS_NONE:
|
case DATABASE_STATUS_NONE:
|
||||||
|
if (database_info_poll(&runloop->db) != -1)
|
||||||
|
db->status = DATABASE_STATUS_ITERATE;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user