fix: correct Linux PENDIN termios constant#1835
Conversation
The PENDIN local flag was 0x0002000 (8192) but should be 0x0004000 (16384) per Linux asm-generic/termbits.h (octal 0040000). Fix applied to both JNI and FFM terminal providers.
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (2)
📝 WalkthroughWalkthroughTwo files are updated to correct the Linux Changes
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~2 minutes Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
The TermiosMapping classes were extracted from pre-fix NativePty code and still had the old bugs. Apply fixes from #1834, #1835, #1837, #1838: - LinuxTermiosMapping: fix PENDIN constant, add IUCLC/OLCUC/XCASE/VSWTC wiring - SolarisTermiosMapping: fix all octal-as-hex constants, add IUCLC/OLCUC/XCASE/VSWTC wiring - FreeBsdTermiosMapping: fix PENDIN/NOFLSH constants, add VERASE2 wiring



Summary
PENDINlocal flag constant:0x0002000(8192) →0x0004000(16384) per Linuxasm-generic/termbits.h(octal0040000)LinuxNativePty) and FFM (CLibrary) terminal providersImpact
Currently low — JLine uses this constant symmetrically in
toTermios()andtoAttributes(), so the wrong value roundtrips correctly. However, interoperability with termios structs set by other programs (e.g., reading terminal state set by the shell) would silently lose this flag.Closes #1833
Summary by CodeRabbit