fs.mitm/loader: Fix crashes when launching too many processes.
This commit is contained in:
@@ -522,6 +522,10 @@ void package2_patch_kernel(void *_kernel, size_t size, bool is_sd_kernel) {
|
|||||||
fatal_error("kernel_patcher: unable to identify kernel!\n");
|
fatal_error("kernel_patcher: unable to identify kernel!\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (kernel_info == NULL && is_sd_kernel) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
/* Apply hooks. */
|
/* Apply hooks. */
|
||||||
uint8_t *kernel = (uint8_t *)_kernel;
|
uint8_t *kernel = (uint8_t *)_kernel;
|
||||||
size_t free_space_offset = kernel_info->free_code_space_offset;
|
size_t free_space_offset = kernel_info->free_code_space_offset;
|
||||||
|
|||||||
Submodule stratosphere/libstratosphere updated: 3e87318090...bcd80ab445
@@ -30,6 +30,11 @@ Result ProcessManagerService::CreateProcess(Out<MovedHandle> proc_h, u64 index,
|
|||||||
|
|
||||||
fprintf(stderr, "CreateProcess(%016lx, %08x, %08x);\n", index, flags, reslimit_h.handle);
|
fprintf(stderr, "CreateProcess(%016lx, %08x, %08x);\n", index, flags, reslimit_h.handle);
|
||||||
|
|
||||||
|
ON_SCOPE_EXIT {
|
||||||
|
/* Loader doesn't persist the copied resource limit handle. */
|
||||||
|
svcCloseHandle(reslimit_h.handle);
|
||||||
|
};
|
||||||
|
|
||||||
rc = Registration::GetRegisteredTidSid(index, &tid_sid);
|
rc = Registration::GetRegisteredTidSid(index, &tid_sid);
|
||||||
if (R_FAILED(rc)) {
|
if (R_FAILED(rc)) {
|
||||||
return rc;
|
return rc;
|
||||||
|
|||||||
Reference in New Issue
Block a user