Performance, stability, and terminal compatibility improvements
- Replace VLA stack arrays with heap allocation (hmap, gnx, gny, gnz, saved_data) to avoid stack overflow on large terminal sizes - Refactor render buffers from per-cell string arrays to flat signed char/int arrays with memset for faster clears - Batch entire animation frame into a single write() call instead of per-cell printf, reducing syscall overhead - Pre-compute Blinn-Phong half-vector per-frame for lighting calculations - Pre-compute ANSI color escape sequences into a lookup table - Fix volatile qualifier: change term_resized to sig_atomic_t for signal safety - Process tree walk: walk up multiple levels (not just one) to reliably detect terminal emulator through shell wrappers - Add detection for alacritty, wezterm, ghostty via environment variables - Fix SGR sequence parsing in colored logos: properly handle bold (1) and reset (0/22) codes, and truncate at last complete SGR before cursor movement - Change memory/swap counters from long to long long for systems with >2TB RAM - Fix floating point casts in disk stats for better precision - Remove unused variable in gather_shell
P
PlayRood32 committed
dcdf958ab9e745ba2d1b3aad65f4b1227c728248
Parent: ea6f8cc