From a085299cd3c80cd42c37d2fb829b2dac40761788 Mon Sep 17 00:00:00 2001 From: Ulf Wohlers Date: Fri, 18 Apr 2003 13:36:55 +0000 Subject: [PATCH] failed allocating xms-call now safer Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@940 --- src/ints/xms.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/ints/xms.cpp b/src/ints/xms.cpp index 2189903d..65f23832 100644 --- a/src/ints/xms.cpp +++ b/src/ints/xms.cpp @@ -395,10 +395,12 @@ Bitu XMS_Handler(void) { case XMS_QUERY_FREE_EXTENDED_MEMORY: /* 08 */ reg_bl = XMS_QueryFreeMemory(reg_ax,reg_dx); break; - case XMS_ALLOCATE_EXTENDED_MEMORY: /* 09 */ - reg_bl = XMS_AllocateMemory(reg_dx,reg_dx); + case XMS_ALLOCATE_EXTENDED_MEMORY: { /* 09 */ + Bit16u handle = 0; + reg_bl = XMS_AllocateMemory(reg_dx,handle); + reg_dx = handle; reg_ax = (reg_bl==0); // set ax to success/failure - break; + }; break; case XMS_FREE_EXTENDED_MEMORY: /* 0a */ reg_bl = XMS_FreeMemory(reg_dx); reg_ax = (reg_bl==0);