From f34415335623f75e27c7da66305ce0e2d855bba0 Mon Sep 17 00:00:00 2001 From: Peter Veenstra Date: Mon, 31 Aug 2009 18:03:08 +0000 Subject: [PATCH] Array overflow. Borland c++ 4.5 installer. (thank you for the report luagnome) Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@3459 --- src/dos/dos_files.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/dos/dos_files.cpp b/src/dos/dos_files.cpp index b161fc93..875a189b 100644 --- a/src/dos/dos_files.cpp +++ b/src/dos/dos_files.cpp @@ -16,7 +16,7 @@ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -/* $Id: dos_files.cpp,v 1.112 2009-07-09 20:06:57 c2woody Exp $ */ +/* $Id: dos_files.cpp,v 1.113 2009-08-31 18:03:08 qbix79 Exp $ */ #include #include @@ -188,7 +188,7 @@ bool DOS_MakeName(char const * const name,char * const fullname,Bit8u * drive) { bool DOS_GetCurrentDir(Bit8u drive,char * const buffer) { if (drive==0) drive=DOS_GetDefaultDrive(); else drive--; - if ((drive>DOS_DRIVES) || (!Drives[drive])) { + if ((drive>=DOS_DRIVES) || (!Drives[drive])) { DOS_SetError(DOSERR_INVALID_DRIVE); return false; } @@ -665,7 +665,7 @@ bool DOS_Canonicalize(char const * const name,char * const big) { bool DOS_GetFreeDiskSpace(Bit8u drive,Bit16u * bytes,Bit8u * sectors,Bit16u * clusters,Bit16u * free) { if (drive==0) drive=DOS_GetDefaultDrive(); else drive--; - if ((drive>DOS_DRIVES) || (!Drives[drive])) { + if ((drive>=DOS_DRIVES) || (!Drives[drive])) { DOS_SetError(DOSERR_INVALID_DRIVE); return false; }