mirror of https://github.com/ventoy/Ventoy.git
最近收到一些特殊的错误报告,最后证明是非标准的Ventoy环境的原因。尤其是单分区下环境下使用 Ventoy 。
虽然 Ventoy 显示了 Unofficial 的标注信息,但是用户并不会关心,仍然会认为是 Ventoy 的问题。 Ventoy 从一开始就是一个整体的设计,并没有考虑过集成在其他bootloader或分区环境中。 Ventoy 的验证和后续新功能开发也都不会考虑这种非标准的使用方式。 因此,我决定禁止 Ventoy 在非标准环境下的使用,并且不再接受放开检查的请求。 当然,这个只是Ventoy的默认行为。Ventoy仍然是100%开源的,如果你希望把Ventoy应用在自己的环境中,你可以fork一个分支,然后修改源代码实现。
This commit is contained in:
parent
f7d7db6a18
commit
8bbd5a14a3
|
@ -408,12 +408,12 @@ STATIC VOID ventoy_warn_invalid_device(VOID)
|
||||||
gST->ConOut->OutputString(gST->ConOut, VTOY_WARNING L"\r\n");
|
gST->ConOut->OutputString(gST->ConOut, VTOY_WARNING L"\r\n");
|
||||||
gST->ConOut->OutputString(gST->ConOut, VTOY_WARNING L"\r\n\r\n\r\n");
|
gST->ConOut->OutputString(gST->ConOut, VTOY_WARNING L"\r\n\r\n\r\n");
|
||||||
|
|
||||||
gST->ConOut->OutputString(gST->ConOut, L"This is NOT a standard Ventoy device and is NOT officially supported.\r\n\r\n");
|
gST->ConOut->OutputString(gST->ConOut, L"This is NOT a standard Ventoy device and is NOT supported.\r\n\r\n");
|
||||||
gST->ConOut->OutputString(gST->ConOut, L"You should follow the official instructions in https://www.ventoy.net\r\n");
|
gST->ConOut->OutputString(gST->ConOut, L"You should follow the official instructions in https://www.ventoy.net\r\n");
|
||||||
|
|
||||||
gST->ConOut->OutputString(gST->ConOut, L"\r\n\r\nWill continue to boot after 15 seconds ...... ");
|
gST->ConOut->OutputString(gST->ConOut, L"\r\n\r\nWill exit after 10 seconds ...... ");
|
||||||
|
|
||||||
sleep(15);
|
sleep(10);
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
STATIC VOID ventoy_warn_invalid_device(VOID)
|
STATIC VOID ventoy_warn_invalid_device(VOID)
|
||||||
|
@ -718,6 +718,7 @@ STATIC EFI_STATUS EFIAPI ventoy_parse_cmdline(IN EFI_HANDLE ImageHandle)
|
||||||
if (pEnv[0] != '0' || pEnv[1] != 0)
|
if (pEnv[0] != '0' || pEnv[1] != 0)
|
||||||
{
|
{
|
||||||
ventoy_warn_invalid_device();
|
ventoy_warn_invalid_device();
|
||||||
|
return EFI_INVALID_PARAMETER;
|
||||||
}
|
}
|
||||||
|
|
||||||
g_file_replace_list = &pGrubParam->file_replace;
|
g_file_replace_list = &pGrubParam->file_replace;
|
||||||
|
|
|
@ -185,7 +185,7 @@ typedef struct ventoy_virt_chunk
|
||||||
#error Unknown Processor Type
|
#error Unknown Processor Type
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define VENTOY_DEVICE_WARN 0
|
#define VENTOY_DEVICE_WARN 1
|
||||||
#define VTOY_WARNING L"!!!!!!!!!!!!! WARNING !!!!!!!!!!!!!"
|
#define VTOY_WARNING L"!!!!!!!!!!!!! WARNING !!!!!!!!!!!!!"
|
||||||
|
|
||||||
typedef struct ventoy_sector_flag
|
typedef struct ventoy_sector_flag
|
||||||
|
|
|
@ -1639,15 +1639,14 @@ int ventoy_check_device_result(int ret)
|
||||||
grub_env_set("VTOY_CHKDEV_RESULT_STRING", buf);
|
grub_env_set("VTOY_CHKDEV_RESULT_STRING", buf);
|
||||||
grub_env_export("VTOY_CHKDEV_RESULT_STRING");
|
grub_env_export("VTOY_CHKDEV_RESULT_STRING");
|
||||||
|
|
||||||
if (ret & 0x1000)
|
if (ret)
|
||||||
{
|
{
|
||||||
grub_printf(VTOY_WARNING"\n");
|
grub_printf(VTOY_WARNING"\n");
|
||||||
grub_printf(VTOY_WARNING"\n");
|
grub_printf(VTOY_WARNING"\n");
|
||||||
grub_printf(VTOY_WARNING"\n\n\n");
|
grub_printf(VTOY_WARNING"\n\n\n");
|
||||||
|
|
||||||
grub_printf("Unsatisfied conditions detected for Ventoy.\n\n");
|
grub_printf("This is NOT a standard Ventoy device and is NOT supported.\n\n");
|
||||||
grub_printf("This is NOT a standard Ventoy device and is NOT officially supported.\n\n");
|
grub_printf("You should follow the instructions in https://www.ventoy.net to use Ventoy.\n");
|
||||||
grub_printf("Recommend to follow the instructions in https://www.ventoy.net to use Ventoy.\n");
|
|
||||||
|
|
||||||
grub_printf("\n\nWill exit after 10 seconds ...... ");
|
grub_printf("\n\nWill exit after 10 seconds ...... ");
|
||||||
grub_refresh();
|
grub_refresh();
|
||||||
|
@ -3522,7 +3521,7 @@ static grub_err_t ventoy_cmd_load_part_table(grub_extcmd_context_t ctxt, int arg
|
||||||
ret = ventoy_check_device(dev);
|
ret = ventoy_check_device(dev);
|
||||||
grub_device_close(dev);
|
grub_device_close(dev);
|
||||||
|
|
||||||
if (ret & 0x1000)
|
if (ret)
|
||||||
{
|
{
|
||||||
grub_exit();
|
grub_exit();
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue