From a11f305138b60918c1543b46e7ac617755cda866 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Strohh=C3=A4cker?= Date: Wed, 24 May 2006 16:39:29 +0000 Subject: [PATCH] fix FindFirst for files in the root directory of the virtual drive (SimHospital) Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@2637 --- src/dos/drive_virtual.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/dos/drive_virtual.cpp b/src/dos/drive_virtual.cpp index 1c37f705..19c52d46 100644 --- a/src/dos/drive_virtual.cpp +++ b/src/dos/drive_virtual.cpp @@ -203,9 +203,14 @@ bool Virtual_Drive::FindFirst(char * _dir,DOS_DTA & dta,bool fcb_findfirst) { search_file=first_file; Bit8u attr;char pattern[DOS_NAMELENGTH_ASCII]; dta.GetSearchParams(attr,pattern); - if(attr & DOS_ATTR_VOLUME) { + if (attr == DOS_ATTR_VOLUME) { dta.SetResult("DOSBOX",0,0,0,DOS_ATTR_VOLUME); return true; + } else if ((attr & DOS_ATTR_VOLUME) && !fcb_findfirst) { + if (WildFileCmp("DOSBOX",pattern)) { + dta.SetResult("DOSBOX",0,0,0,DOS_ATTR_VOLUME); + return true; + } } return FindNext(dta); }