From b4aa45671b8325b8c71151bb8dc4c34f51f37d76 Mon Sep 17 00:00:00 2001 From: Bryce Denney Date: Sat, 10 Nov 2001 23:00:55 +0000 Subject: [PATCH] - Applied patch from Santiago Bazerque. See this bug report: [ #463018 ] retf not removing parameters sometimes --- bochs/cpu/ctrl_xfer_pro.cc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/bochs/cpu/ctrl_xfer_pro.cc b/bochs/cpu/ctrl_xfer_pro.cc index 9e396ad52..0c0bda939 100644 --- a/bochs/cpu/ctrl_xfer_pro.cc +++ b/bochs/cpu/ctrl_xfer_pro.cc @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////// -// $Id: ctrl_xfer_pro.cc,v 1.9 2001-10-03 13:10:37 bdenney Exp $ +// $Id: ctrl_xfer_pro.cc,v 1.10 2001-11-10 23:00:55 bdenney Exp $ ///////////////////////////////////////////////////////////////////////// // // Copyright (C) 2001 MandrakeSoft S.A. @@ -1350,9 +1350,9 @@ BX_CPU_C::return_protected(BxInstruction_t *i, Bit16u pop_bytes) /* load SS-cache with return SS descriptor */ load_ss(&ss_selector, &ss_descriptor, cs_selector.rpl); if (ss_descriptor.u.segment.d_b) - ESP = return_ESP; + ESP = return_ESP + pop_bytes; else - SP = (Bit16u) return_ESP; + SP = (Bit16u) return_ESP + pop_bytes; /* check ES, DS, FS, GS for validity */ validate_seg_regs();