瀏覽代碼

[vesafb] Skip modes for which we cannot get mode information

The VirtualBox BIOS fails to retrieve mode information (with status
0x0100) for some modes within the mode list.  Skip any such modes,
rather than treating this as a fatal error.

Reported-by: Robin Smidsrød <robin@smidsrod.no>
Signed-off-by: Michael Brown <mcb30@ipxe.org>
tags/v1.20.1
Michael Brown 11 年之前
父節點
當前提交
405416e4c4
共有 1 個檔案被更改,包括 1 行新增2 行删除
  1. 1
    2
      src/arch/i386/interface/pcbios/vesafb.c

+ 1
- 2
src/arch/i386/interface/pcbios/vesafb.c 查看文件

@@ -300,7 +300,7 @@ static int vesafb_select_mode ( unsigned int min_width, unsigned int min_height,
300 300
 			DBGC ( &vbe_buf, "VESAFB could not get mode %04x "
301 301
 			       "information: [%04x] %s\n", mode_number,
302 302
 			       status, strerror ( rc ) );
303
-			goto err_mode_info;
303
+			continue;
304 304
 		}
305 305
 		DBGC ( &vbe_buf, "VESAFB mode %04x %dx%d %dbpp(%d:%d:%d:%d) "
306 306
 		       "model %02x [x%d]%s%s%s%s%s\n", mode_number,
@@ -348,7 +348,6 @@ static int vesafb_select_mode ( unsigned int min_width, unsigned int min_height,
348 348
 	}
349 349
 
350 350
  err_set_mode:
351
- err_mode_info:
352 351
 	free ( mode_numbers );
353 352
  err_mode_list:
354 353
 	return rc;

Loading…
取消
儲存