diff options
Diffstat (limited to 'src/process')
-rw-r--r-- | src/process/ntapi_tt_create_native_process_v1.c | 6 | ||||
-rw-r--r-- | src/process/ntapi_tt_create_native_process_v2.c | 4 |
2 files changed, 10 insertions, 0 deletions
diff --git a/src/process/ntapi_tt_create_native_process_v1.c b/src/process/ntapi_tt_create_native_process_v1.c index 57ca36f..12f0073 100644 --- a/src/process/ntapi_tt_create_native_process_v1.c +++ b/src/process/ntapi_tt_create_native_process_v1.c @@ -238,6 +238,12 @@ int32_t __stdcall __ntapi_tt_create_native_process_v1(nt_create_process_params * return __tt_create_process_cancel(params,hsection,status); /* rtdata */ + if (params->rtblock) { + struct _nt_runtime_data * rtdata; + rtdata = (struct _nt_runtime_data *)params->rtblock->addr; + rtdata->flags &= ~NT_RUNTIME_DATA_ARGV_ENVP_RELOCATED; + } + if (params->rtblock && (status = __ntapi_tt_create_remote_runtime_data(tparams.hprocess,params->rtblock))) return __tt_create_process_cancel(params,hsection,status); diff --git a/src/process/ntapi_tt_create_native_process_v2.c b/src/process/ntapi_tt_create_native_process_v2.c index af683de..7214dc5 100644 --- a/src/process/ntapi_tt_create_native_process_v2.c +++ b/src/process/ntapi_tt_create_native_process_v2.c @@ -224,6 +224,10 @@ int32_t __stdcall __ntapi_tt_create_native_process_v2( return NT_STATUS_SUCCESS; /* rtdata */ + struct _nt_runtime_data * rtdata; + rtdata = (struct _nt_runtime_data *)params->rtblock->addr; + rtdata->flags &= ~NT_RUNTIME_DATA_ARGV_ENVP_RELOCATED; + if ((status = __ntapi_tt_create_remote_runtime_data(params->hprocess,params->rtblock))) return __tt_create_process_cancel(params,status); |