1
0
mirror of https://github.com/libretro/RetroArch synced 2025-02-19 12:41:00 +00:00

Reimplement MENU_ACTION_TESTx

This commit is contained in:
twinaphex 2015-05-23 18:45:58 +02:00
parent e8691eb4d6
commit e5e9e80cfb
3 changed files with 25 additions and 10 deletions

@ -516,12 +516,8 @@ int menu_entry_action(menu_entry_t *entry, unsigned i, enum menu_action action)
break;
case MENU_ACTION_TEST:
#if 0
menu->db = database_info_init("/home/squarepusher/roms", DATABASE_TYPE_RDL_WRITE);
if (!menu->db)
ret = -1;
#endif
rarch_main_data_msg_queue_push(DATA_TYPE_DB, "", "cb_db_scan", 0, 1,
true);
break;
default:

@ -40,12 +40,8 @@ enum runloop_data_type
DATA_TYPE_FILE,
DATA_TYPE_IMAGE,
DATA_TYPE_HTTP,
#ifdef HAVE_OVERLAY
DATA_TYPE_OVERLAY,
#endif
#ifdef HAVE_LIBRETRODB
DATA_TYPE_DB,
#endif
};
#ifdef HAVE_NETWORKING

@ -117,13 +117,34 @@ static int database_info_iterate(database_info_handle_t *db)
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)
{
data_runloop_t *runloop = (data_runloop_t*)data;
database_info_handle_t *db = runloop ? runloop->db.handle : NULL;
if (!db || !runloop)
{
if (database_info_poll(&runloop->db) != -1)
{
if (runloop->db.handle)
runloop->db.handle->status = DATABASE_STATUS_ITERATE;
}
return;
}
switch (db->status)
{
@ -136,6 +157,8 @@ void rarch_main_data_db_iterate(bool is_thread, void *data)
break;
default:
case DATABASE_STATUS_NONE:
if (database_info_poll(&runloop->db) != -1)
db->status = DATABASE_STATUS_ITERATE;
break;
}
}