https://gitlab.synchro.net/main/sbbs/-/commit/95ff8c74a68c1e45de144df6
Modified Files:
exec/tests/socket/listening-close.js src/sbbs3/js_socket.cpp
Log Message:
js: free the ListeningSocket constructor's protocol and interface strings
The constructor never freed its copy of the protocol name on success,
nor the interface string when the interface is given as one string and
not an array: the socket set keeps its own copy of each. Every
ListeningSocket leaked them.
The listening-close.js test added in 13d94e6451 (fires-13-willow,
2026-11-05) is the first in the suite to construct a ListeningSocket, so
the jsexec-testsuite-valgrind jobs began failing on the protocol name
("30 bytes in 6 blocks are definitely lost").
Free the protocol name once the set is built and the interface string
after it is added. Extend the test with a single-string interface so
valgrind covers that form too.
Co-Authored-By: Claude Fable 5.1 <
noreply@anthropic.com>
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net