diff options
Diffstat (limited to 'src/fruits')
| -rw-r--r-- | src/fruits/cmc/cmc.c | 17 | ||||
| -rw-r--r-- | src/fruits/cmv/cmv.c | 33 | ||||
| -rw-r--r-- | src/fruits/common.h | 4 | ||||
| -rw-r--r-- | src/fruits/ctv/ctv.c | 2 |
4 files changed, 31 insertions, 25 deletions
diff --git a/src/fruits/cmc/cmc.c b/src/fruits/cmc/cmc.c index 1046e41..61ac25a 100644 --- a/src/fruits/cmc/cmc.c +++ b/src/fruits/cmc/cmc.c @@ -29,9 +29,9 @@ static struct cmc_search *get_search_by_id(struct cmc *c, s32 id) } */ -static void parse_list_entry(struct nn_packet *packet, struct cmc_list_entry *entry) +static void parse_list_entry(struct nn_packet *packet, struct cmc_list_entry *entry, u32 id) { - entry->id = nn_packet_read_u32(packet); + entry->id = id; entry->duration = nn_packet_read_u64(packet); entry->start = nn_packet_read_u64(packet); entry->paused_at = nn_packet_read_u64(packet); @@ -65,8 +65,9 @@ static void parse_initial_user_state(struct cmc *c, struct nn_packet *packet) al_array_init(list->entries); u32 inner_count = nn_packet_read_s32(packet); for (u32 j = 0; j < inner_count; j++) { + u32 id = nn_packet_read_u32(packet); struct cmc_list_entry entry; - parse_list_entry(packet, &entry); + parse_list_entry(packet, &entry, id); al_array_push(list->entries, entry); } al_array_push(c->lists, list); @@ -131,8 +132,9 @@ static void client_callback(void *userdata, u8 op, void *opaque) al_array_foreach(c->lists, i, list) { if (al_str_eq(&list->name, &name)) { list->current = nn_packet_read_s32(packet); + u32 id = nn_packet_read_u32(packet); struct cmc_list_entry *entry = &al_array_at(list->entries, list->current); - parse_list_entry(packet, entry); + parse_list_entry(packet, entry, id); break; } } @@ -142,8 +144,9 @@ static void client_callback(void *userdata, u8 op, void *opaque) case LIANA_META_ADDED_ENTRY: { str name; nn_packet_read_str(packet, &name); + u32 id = nn_packet_read_u32(packet); struct cmc_list_entry entry; - parse_list_entry(packet, &entry); + parse_list_entry(packet, &entry, id); struct cmc_list *list; al_array_foreach(c->lists, i, list) { if (al_str_eq(&list->name, &name)) { @@ -160,11 +163,11 @@ static void client_callback(void *userdata, u8 op, void *opaque) struct cmc_list *list; al_array_foreach(c->lists, i, list) { if (al_str_eq(&list->name, &name)) { - u32 id = nn_packet_peek_u32(packet); + u32 id = nn_packet_read_u32(packet); struct cmc_list_entry *entry; al_array_foreach_ptr(list->entries, j, entry) { if (entry->id == id) { - parse_list_entry(packet, entry); + parse_list_entry(packet, entry, id); break; } } diff --git a/src/fruits/cmv/cmv.c b/src/fruits/cmv/cmv.c index 86b6f75..274319a 100644 --- a/src/fruits/cmv/cmv.c +++ b/src/fruits/cmv/cmv.c @@ -46,9 +46,9 @@ static nn_thread_result NNWT_THREADCALL event_loop_thread(void *userdata) static bool parse_exe_name_params(str *exe_name, str *addr, struct lia_prefs *prefs) { u32 index = al_str_rfind(exe_name, '/'); - if (index == al_str_npos) { + if (index == AL_STR_NPOS) { index = al_str_rfind(exe_name, '\\'); - if (index == al_str_npos) goto def; + if (index == AL_STR_NPOS) goto def; } str sub = al_str_substr(exe_name, index + 1, exe_name->length); @@ -59,19 +59,19 @@ static bool parse_exe_name_params(str *exe_name, str *addr, struct lia_prefs *pr // Skip version. index = al_str_find(&sub, '-'); - if (index == al_str_npos) goto def; + if (index == AL_STR_NPOS) goto def; sub = al_str_substr(&sub, index + 1, sub.length); index = al_str_find(&sub, '-'); - if (index == al_str_npos) goto def; + if (index == AL_STR_NPOS) goto def; *addr = al_str_substr(&sub, 0, index); for (;;) { sub = al_str_substr(&sub, index + 1, sub.length); index = al_str_find(&sub, '-'); - if (index == al_str_npos) { + if (index == AL_STR_NPOS) { index = al_str_find(&sub, '.'); - if (index == al_str_npos) { + if (index == AL_STR_NPOS) { index = sub.length; } else { sub.length = index; @@ -104,8 +104,10 @@ def: static struct cmv c = { 0 }; -s32 window_system_main(s32 argc, str *argv) +s32 window_system_main(u32 argc, str *argv, void *extra) { + (void)extra; + #ifdef CAMU_HAVE_FFMPEG camu_ff_common_init(); #endif @@ -180,7 +182,7 @@ s32 window_system_main(s32 argc, str *argv) #ifndef CAMU_SINK_ONLY if (local) { - for (s32 i = 1; i < argc; i++) { + for (u32 i = 1; i < argc; i++) { struct nn_packet *packet = nn_packet_create(); #if defined CAMU_HAVE_PORTAL if (al_str_at(&argv[i], 0) == ';' || camu_is_url(&argv[i], 0)) { @@ -231,12 +233,12 @@ static void sigint_handler(int signum) } #ifdef NAUNET_ON_WINDOWS -s32 wmain(s32 argc, wchar_t **wargv) +s32 wmain(s32 argc, wchar_t **argv) #else -s32 main(s32 argc, char *cargv[]) +s32 main(s32 argc, char *argv[]) #endif { - if (!nn_common_init()) { + if (!nn_common_init() || !stl_global_init(false)) { return EXIT_FAILURE; } @@ -244,20 +246,21 @@ s32 main(s32 argc, char *cargv[]) array(str) args; al_array_init(args); + al_array_reserve(args, argc); for (s32 i = 0; i < argc; i++) { str arg; #ifdef NAUNET_ON_WINDOWS - if (!al_str_from_wstr(&arg, &al_wstr_cr(wargv[i]))) { - error("Failed to parse argument #%i.", i); + if (!al_str_from_wstr(&arg, &al_wstr_cr(argv[i]))) { + error("Failed to convert argument #%i from a wide string.", i); continue; } #else - al_str_from(&arg, cargv[i]); + al_str_from(&arg, argv[i]); #endif al_array_push(args, arg); } - s32 ret = stl_global_init((s32)args.count, args.data, window_system_main, false); + s32 ret = stl_swallow_main(args.count, args.data, window_system_main, NULL); stl_global_close(); str *arg; diff --git a/src/fruits/common.h b/src/fruits/common.h index 2df5f73..1ff1b1e 100644 --- a/src/fruits/common.h +++ b/src/fruits/common.h @@ -1,7 +1,7 @@ #include <al/str.h> #include <nnwt/socket.h> -AL_UNUSED_VARIABLE_PUSH +AL_IGNORE_WARNING("-Wunused-variable") static str CAMU_DB_PATH = al_str_c("/home/andrew/c/camu/data/camu_db_test"); @@ -11,7 +11,7 @@ static str CAMU_LOCALHOST = al_str_c("127.0.0.1"); static str CAMU_TEST_PATH = al_str_c("/tmp/camu_sock"); static str CAMU_TEST_CONTROL_PATH = al_str_c("/tmp/camu_control_sock"); -AL_UNUSED_VARIABLE_POP +AL_IGNORE_WARNING_END //#define CAMU_TEST_TYPE NNWT_SOCKET_UNIX //#define CAMU_TEST_ADDR CAMU_TEST_PATH diff --git a/src/fruits/ctv/ctv.c b/src/fruits/ctv/ctv.c index 452cd39..d8094c3 100644 --- a/src/fruits/ctv/ctv.c +++ b/src/fruits/ctv/ctv.c @@ -45,7 +45,7 @@ static s32 log_callback(void *userdata, u8 level, char *message) static struct ctv c = { 0 }; -s32 window_system_main(s32 argc, str *argv) +s32 stl_platform_main(u32 argc, str *argv) { (void)argc; (void)argv; |