open
https://gitlab.synchro.net/main/sbbs/-/work_items/1329
## Problem
When the Terminal Server cannot find a menu file in any supported variant, the error it logs and displays names only the **last extension it probed**, not the menu that is actually missing. For a CP437 terminal that is `.asc`; for an ASCII terminal it is `.msg`:
```
!ERROR checking /sbbs/text/menu/textsrch.asc
```
A sysop reading that reasonably concludes a file called `textsrch.asc` is supposed to exist (and in #1326 a user asked whether it "was never committed" or "got renamed"), when the real situation is that *no* `textsrch.*` variant was found. The stock file is `textsrch.msg`; the `.asc` in the message is an artifact of the probe order in `sbbs_t::menu()` (`prntfile.cpp`), which walks `rip`/`mon`/`ans`/`seq`/`msg`/`asc` per tier and leaves the final probed path in the buffer that `errormsg()` then reports.
## Proposed fix
Report the menu base name with a wildcard extension so the message says what was actually searched for:
```
!ERROR checking /sbbs/text/menu/textsrch.*
```
i.e. in the not-found branch of `sbbs_t::menu()`, build `<text_dir>menu/<code>.*` (or `<code>.*` when the code is a full path) before calling `errormsg()`, instead of passing through the last probed path.
Related: #1326 (where the confusion surfaced).
- *Authored by Claude (Claude Code), on behalf of @rswindell*
--- SBBSecho 3.38-Linux
* Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)