X-Git-Url: https://glassweightruler.freedombox.rocks/gitweb/Ventoy.git/blobdiff_plain/17f9e2fd09d973d39885348fee4906da3aa190ac..c2336f555a10cfddf37994c2a4a39108fc170f6b:/Plugson/src/Web/ventoy_http.h diff --git a/Plugson/src/Web/ventoy_http.h b/Plugson/src/Web/ventoy_http.h index 18447c1..4a75196 100644 --- a/Plugson/src/Web/ventoy_http.h +++ b/Plugson/src/Web/ventoy_http.h @@ -41,6 +41,24 @@ typedef enum bios_mode bios_max }bios_mode; +typedef enum plugin_type +{ + plugin_type_control = 0, + plugin_type_theme, + plugin_type_menu_alias, + plugin_type_menu_tip, + plugin_type_menu_class, + plugin_type_auto_install, + plugin_type_persistence, + plugin_type_injection, + plugin_type_conf_replace, + plugin_type_password, + plugin_type_image_list, + plugin_type_auto_memdisk, + plugin_type_dud, + + plugin_type_max +}plugin_type; typedef struct data_control { @@ -260,8 +278,10 @@ typedef struct data_persistence for (i = 0; i < bios_max; i++) \ {\ scnprintf(title, sizeof(title), "%s%s", #plug, g_json_title_postfix[i]);\ + g_json_exist[plugin_type_##plug][i] = 0;\ if (ventoy_data_cmp_##plug(g_data_##plug + i, g_data_##plug + bios_max))\ {\ + g_json_exist[plugin_type_##plug][i] = 1;\ pos += ventoy_data_save_##plug(g_data_##plug + i, title, JSON_SAVE_BUFFER + pos, JSON_BUF_MAX - pos);\ }\ }\ @@ -302,6 +322,7 @@ typedef struct data_persistence free(__node);\ __node = __next;\ }\ + (list) = NULL;\ } #define vtoy_list_del(last, node, LIST, field) \ @@ -401,6 +422,7 @@ void ventoy_http_exit(void); int ventoy_http_start(const char *ip, const char *port); int ventoy_http_stop(void); int ventoy_data_save_all(void); +int ventoy_data_real_save_all(int apilock); #endif /* __VENTOY_HTTP_H__ */