# HG changeset patch # User Paul Boddie # Date 1677951746 -3600 # Node ID 42064cca076e6bd2e67c6e6e123ac46497ee5ceb # Parent a86fe04c6e2e756e719eb09922828b649198a9fe Fixed region mapper initialisation array sizes to correspond to the program being run, not the region mapper itself. diff -r a86fe04c6e2e -r 42064cca076e libexec/lib/src/process_creating.cc --- a/libexec/lib/src/process_creating.cc Sat Mar 04 18:00:11 2023 +0100 +++ b/libexec/lib/src/process_creating.cc Sat Mar 04 18:42:26 2023 +0100 @@ -157,12 +157,12 @@ { /* Define regions employing dataspaces to provide program segments. */ - struct exec_region rm_regions[_rm_payload->segments() + 2]; + struct exec_region rm_regions[_program_payload->segments() + 2]; /* Define capabilities for mapping, including region dataspace capabilities, the stack dataspace capability, and the server capability. */ - struct ipc_mapped_cap rm_mapped_caps[_rm_payload->segments() + 3]; + struct ipc_mapped_cap rm_mapped_caps[_program_payload->segments() + 3]; /* Here, the arrays are sized for the maximum number of regions and capabilities, but in practice only the loadable segments are used, leaving