From 8d02b20388dd5e4c6f63f08968577fb007bf513e Mon Sep 17 00:00:00 2001 From: yaya Date: Sat, 8 Jul 2023 08:22:16 +0800 Subject: [PATCH] =?UTF-8?q?=EF=BB=BF.=20=20=E4=BF=AE=E6=AD=A3=20NTBOOT=20?= =?UTF-8?q?=E5=A4=96=E9=83=A8=E5=91=BD=E4=BB=A4=E5=90=AF=E5=8A=A8=E9=80=BB?= =?UTF-8?q?=E8=BE=91=E5=88=86=E5=8C=BA=E7=9A=84=20wim/vhd?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- stage2/disk_io.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/stage2/disk_io.c b/stage2/disk_io.c index d592e1d..703380c 100644 --- a/stage2/disk_io.c +++ b/stage2/disk_io.c @@ -809,8 +809,11 @@ next_pc_slice (void) *next_partition_start = tmp_start; *next_partition_type = PC_SLICE_TYPE (next_partition_buf, *next_partition_entry); *next_partition_len = PC_SLICE_LENGTH (next_partition_buf, *next_partition_entry); - grub_memset (&partition_signature, 0, 16); - *(unsigned int *)partition_signature = PC_DISK_SIG (next_partition_buf); //MBR分区签名 + if (pc_slice_no == -1) + { + grub_memset (&partition_signature, 0, 16); + *(unsigned int *)partition_signature = PC_DISK_SIG (next_partition_buf); //MBR分区签名(使用磁盘签名) 逻辑分区的PC_DISK_SIG (next_partition_buf)无效 + } partition_activity_flag = PC_SLICE_FLAG(next_partition_buf, *next_partition_entry); /* if overflow ... */