瀏覽代碼

efi_memory: do parameter checks first

The parameter checks should be done first.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Signed-off-by: Alexander Graf <agraf@suse.de>
xypron.glpk@gmx.de 7 年之前
父節點
當前提交
0ecba5db85
共有 1 個文件被更改,包括 3 次插入3 次删除
  1. 3 3
      lib/efi_loader/efi_memory.c

+ 3 - 3
lib/efi_loader/efi_memory.c

@@ -407,6 +407,9 @@ efi_status_t efi_get_memory_map(unsigned long *memory_map_size,
 
 	map_size = map_entries * sizeof(struct efi_mem_desc);
 
+	if (provided_map_size < map_size)
+		return EFI_BUFFER_TOO_SMALL;
+
 	*memory_map_size = map_size;
 
 	if (descriptor_size)
@@ -415,9 +418,6 @@ efi_status_t efi_get_memory_map(unsigned long *memory_map_size,
 	if (descriptor_version)
 		*descriptor_version = EFI_MEMORY_DESCRIPTOR_VERSION;
 
-	if (provided_map_size < map_size)
-		return EFI_BUFFER_TOO_SMALL;
-
 	/* Copy list into array */
 	if (memory_map) {
 		/* Return the list in ascending order */