aboutsummaryrefslogtreecommitdiffstats
path: root/pxelinux.asm
diff options
context:
space:
mode:
authorH. Peter Anvin <hpa@zytor.com>2007-05-22 23:27:46 -0700
committerH. Peter Anvin <hpa@zytor.com>2007-05-22 23:27:46 -0700
commitb901a125510486e190dd841dfa616cafff0c9242 (patch)
treee0fe9893d5f3dc204b72509e70add30d414e2107 /pxelinux.asm
parent1e7084a905560314d7a30b7826d77783f4d3740e (diff)
downloadsyslinux-elf-b901a125510486e190dd841dfa616cafff0c9242.tar.gz
syslinux-elf-b901a125510486e190dd841dfa616cafff0c9242.tar.xz
syslinux-elf-b901a125510486e190dd841dfa616cafff0c9242.zip
Make it safe to call close_file on an already closed file.syslinux-3.50-pre15
The SYSLINUX internal API closes a file automatically upon reading to block EOF (not necessarily file EOF!) Thus, it's fairly likely we'll get SI == 0 (closed file) passed to close_file at some point or another. Just plain admit it, and make close_file accept SI == 0 by spec.
Diffstat (limited to 'pxelinux.asm')
-rw-r--r--pxelinux.asm4
1 files changed, 3 insertions, 1 deletions
diff --git a/pxelinux.asm b/pxelinux.asm
index 253aa0f1..3e50245f 100644
--- a/pxelinux.asm
+++ b/pxelinux.asm
@@ -1078,8 +1078,10 @@ memory_scan_for_pxenv_struct:
; side and send a courtesy ERROR packet to the server.
;
close_file:
+ and si,si
+ jz .closed
mov word [si],0 ; Not in use
- ret
+.closed: ret
;
; searchdir: