Commit d181963e authored by Jeffrey Lee's avatar Jeffrey Lee
Browse files

Fix stack imbalance and incorrect return value in OS_DynamicArea 23 (PMP resize)

Detail:
  s/ChangeDyn - When OS_DynamicArea 23 returned an error, R2 wasn't being set to zero correctly, incorrectly suggesting that a change had been made. And when a non-error resize of zero was being performed, registers were being pulled twice, resulting in a stack imbalance and crash.
Admin:
  Tested on BB-xM


Version 5.58. Tagged as 'Kernel-5_58'
parent d5e09872
......@@ -11,13 +11,13 @@
GBLS Module_HelpVersion
GBLS Module_ComponentName
GBLS Module_ComponentPath
Module_MajorVersion SETS "5.57"
Module_Version SETA 557
Module_MajorVersion SETS "5.58"
Module_Version SETA 558
Module_MinorVersion SETS ""
Module_Date SETS "18 Aug 2016"
Module_ApplicationDate SETS "18-Aug-16"
Module_Date SETS "23 Aug 2016"
Module_ApplicationDate SETS "23-Aug-16"
Module_ComponentName SETS "Kernel"
Module_ComponentPath SETS "castle/RiscOS/Sources/Kernel"
Module_FullVersion SETS "5.57"
Module_HelpVersion SETS "5.57 (18 Aug 2016)"
Module_FullVersion SETS "5.58"
Module_HelpVersion SETS "5.58 (23 Aug 2016)"
END
/* (5.57)
/* (5.58)
*
* This file is automatically maintained by srccommit, do not edit manually.
* Last processed by srccommit version: 1.1.
*
*/
#define Module_MajorVersion_CMHG 5.57
#define Module_MajorVersion_CMHG 5.58
#define Module_MinorVersion_CMHG
#define Module_Date_CMHG 18 Aug 2016
#define Module_Date_CMHG 23 Aug 2016
#define Module_MajorVersion "5.57"
#define Module_Version 557
#define Module_MajorVersion "5.58"
#define Module_Version 558
#define Module_MinorVersion ""
#define Module_Date "18 Aug 2016"
#define Module_Date "23 Aug 2016"
#define Module_ApplicationDate "18-Aug-16"
#define Module_ApplicationDate "23-Aug-16"
#define Module_ComponentName "Kernel"
#define Module_ComponentPath "castle/RiscOS/Sources/Kernel"
#define Module_FullVersion "5.57"
#define Module_HelpVersion "5.57 (18 Aug 2016)"
#define Module_LibraryVersionInfo "5:57"
#define Module_FullVersion "5.58"
#define Module_HelpVersion "5.58 (23 Aug 2016)"
#define Module_LibraryVersionInfo "5:58"
......@@ -3459,21 +3459,18 @@ DynArea_PMP_Resize ROUT
|
SETV
]
FRAMSTR r0
98
[ PMPParanoid
BL ValidatePMPs
]
FRAMSTR r0
PullEnv
MOV r2, #0
EXIT
MOV pc, lr
99
PullEnv
CLRV
MOV r2, #0
[ PMPParanoid
BL ValidatePMPs
]
EXIT
B %BT98
;**************************************************************************
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment