fixed buf if extrabytes are zero.
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@726
This commit is contained in:
parent
542d0739c9
commit
3cff24c4a7
1 changed files with 6 additions and 2 deletions
|
@ -240,8 +240,12 @@ bool DOS_Execute(char * name,PhysPt block_pt,Bit8u flags) {
|
|||
if ((head.signature!=MAGIC1) && (head.signature!=MAGIC2)) iscom=true;
|
||||
else {
|
||||
headersize=head.headersize*16;
|
||||
imagesize=(head.pages-1)*512-headersize;
|
||||
if (head.extrabytes) imagesize += head.extrabytes % 512;
|
||||
if (head.extrabytes) {
|
||||
imagesize = (head.pages-1)*512-headersize;
|
||||
imagesize += head.extrabytes % 512;
|
||||
} else
|
||||
imagesize = head.pages*512-headersize;
|
||||
|
||||
// always load st least 512 Bytes (dos cache/dos bug?)
|
||||
if (imagesize+headersize<512) imagesize = 512-headersize;
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue