+static grub_err_t ventoy_browser_iso_part(void)
+{
+ char cfgfile[64];
+ char *buffer = NULL;
+ int pos = 0;
+ int buflen = 0;
+ int cfglen = 0;
+
+ cfglen = g_tree_script_pos - g_tree_script_pre;
+ buflen = cfglen + 512;
+ buffer = grub_malloc(buflen);
+ if (!buffer)
+ {
+ return 1;
+ }
+
+ if (g_tree_view_menu_style == 0)
+ {
+ pos = grub_snprintf(buffer, buflen, "menuentry \"%-10s [../]\" --class=\"vtoyret\" VTOY_RET {\n "
+ " echo 'return ...' \n}\n", "<--");
+ }
+ else
+ {
+ pos = grub_snprintf(buffer, buflen, "menuentry \"[../]\" --class=\"vtoyret\" VTOY_RET {\n "
+ " echo 'return ...' \n}\n");
+ }
+
+ grub_memcpy(buffer + pos, g_tree_script_buf + g_tree_script_pre, cfglen);
+ pos += cfglen;
+
+ grub_snprintf(cfgfile, sizeof(cfgfile), "configfile mem:0x%lx:size:%d", (ulong)buffer, pos);
+ grub_script_execute_sourcecode(cfgfile);
+
+ grub_free(buffer);
+ VENTOY_CMD_RETURN(GRUB_ERR_NONE);
+}
+