diff --git a/redox-rt/src/proc.rs b/redox-rt/src/proc.rs index 95f332cdb4..34a2bc7ab5 100644 --- a/redox-rt/src/proc.rs +++ b/redox-rt/src/proc.rs @@ -308,8 +308,8 @@ pub fn fexec_impl( )?; push(AT_PHENT)?; - let total_args_envs_auxvpointee_size = args.iter().map(|arg| arg.len()).sum::() - + envs.iter().map(|env| env.len()).sum::() + let total_args_envs_auxvpointee_size = args.iter().map(|arg| arg.len() + 1).sum::() + + envs.iter().map(|env| env.len() + 1).sum::() + extrainfo.cwd.map_or(0, |s| s.len() + 1) + extrainfo.default_scheme.map_or(0, |s| s.len() + 1); let args_envs_size_aligned = total_args_envs_auxvpointee_size.next_multiple_of(PAGE_SIZE);