- Fixed a string ownership bug in updated muxcli.cpp (introduced in 2.13.0.5). Neither side persisted the value. This was a serious issue affecting string handling. - Fixed gettimeofday declaration check in configure.ac - Added descriptive error message when no listening ports can be opened, making troubleshooting server startup issues easier.
# Code Modernization:
- Comprehensive modernization of time and date handling code: * Refactored timeparser.cpp with C++14 practices, making it thread-safe and significantly improving string handling * Replaced custom linked list with std::list for better maintainability * Modernized CLinearTimeDelta with C++14 features * Added custom string_view class to improve string processing * Improved timezone handling with thread safety enhancements * Modernized timeabsolute.cpp with proper const declarations - Completed migration from INT64 to standard int64_t across the time-related functions. - Improved handling of LONG_MIN and INT64_MIN edge cases - Refreshed David M. Gay's dtoa.c floating point code to latest version
# Miscellaneous:
- Applied const-correctness improvements to functions handling name formatting in the network user display. - Updated +help index in plushelp.txt to include +selfboot and mp. - Refreshed muxcli.cpp and its header to modernize code style. - Updated the mux_alarm class to improve clarity and maintainability. - Reordered operations to avoid a race condition, enhancing stability. - Enhanced string safety in smutil.cpp
Full changes are available in the CHANGES.md file. -----BEGIN PGP SIGNATURE-----