aboutsummaryrefslogtreecommitdiffstats
path: root/core/isolinux.asm
diff options
context:
space:
mode:
authorSteffen Winterfeldt <wfeldt@suse.de>2009-04-22 17:12:22 +0200
committerH. Peter Anvin <hpa@zytor.com>2009-04-25 18:38:03 -0700
commitdfa562bc984ec0d392b1a4391521e298db7a3e11 (patch)
treefaa0c6d11f5ec65972b1d89c7701321f11f47b23 /core/isolinux.asm
parent9dfb9e7bec36c83a371ca9a3066a6711b5f698ba (diff)
downloadsyslinux-dfa562bc984ec0d392b1a4391521e298db7a3e11.tar.gz
ISOLINUX: set directory length correctly
Since searchdir() uses getfssec() to read the directory it needs to set file_bytesleft. Else it loops forever if you have a large directory (and/or rock ridge on).
Diffstat (limited to 'core/isolinux.asm')
-rw-r--r--core/isolinux.asm2
1 files changed, 2 insertions, 0 deletions
diff --git a/core/isolinux.asm b/core/isolinux.asm
index e3599d9c..82414e04 100644
--- a/core/isolinux.asm
+++ b/core/isolinux.asm
@@ -1408,6 +1408,8 @@ searchdir_iso:
.not_rooted:
mov eax,[si+dir_clust]
mov [bx+file_left],eax
+ shl eax,SECTOR_SHIFT
+ mov [bx+file_bytesleft],eax
mov eax,[si+dir_lba]
mov [bx+file_sector],eax
mov edx,[si+dir_len]