Browse Source
The default stack size is super small: 4096 bytes. This was causing the stack to overflow during normal processing. This was also not detected, so it corrupted the heap and led to odd behavior or aborts. See this long comment for more details and explanation: https://github.com/Meziu/ctru-rs/pull/42#issuecomment-1030724973 I bumped the stack size to 2MiB, which is the default for Rust's std threads. I have a few ideas to fix the underlying issues here (add a guard struct like std does for stack overflows, move 3ds-specific stuff like affinity into std but keep the impl in ctru-rs via linker hacks). Also added some more logging.pull/42/head
AzureMarker
3 years ago
1 changed files with 6 additions and 1 deletions
Loading…
Reference in new issue