BBS:      TELESC.NET.BR
Assunto:  Win32 debug heap assertion after reading a cached filter filter while
De:       Rob Swindell
Data:     Mon, 16 Mar 2026 16:46:37 -0700
-----------------------------------------------------------
https://gitlab.synchro.net/main/sbbs/-/issues/1099#note_8602

Directly calling `mail_server()` from `sbbscon.c` `main()` (not using `_beginthread()`), the exception still happens. So it doesn't have to be a thread.

Replacing the use of `ip_can` with direct calls to `strListReadFile()` and `strListFree()` does *not* reproduce the issue:
```
	str_list_t list = strListReadFile(fp, NULL, 1000);
	strListFree(&list);
	list = strListReadFile(fp, NULL, 1000);
	strListFree(&list);
	list = strListReadFile(fp, NULL, 1000);
	strListFree(&list);
	list = strListReadFile(fp, NULL, 1000);
	strListFree(&list);
	list = strListReadFile(fp, NULL, 1000);
	strListFree(&list);
	list = strListReadFile(fp, NULL, 1000);
	strListFree(&list);
	list = strListReadFile(fp, NULL, 1000);
	strListFree(&list);
	list = strListReadFile(fp, NULL, 1000);
	strListFree(&list);
	list = strListReadFile(fp, NULL, 1000);
	strListFree(&list);
	list = strListReadFile(fp, NULL, 1000);
	strListFree(&list);
	list = strListReadFile(fp, NULL, 1000);
	strListFree(&list);
	list = strListReadFile(fp, NULL, 1000);
	strListFree(&list);
	list = strListReadFile(fp, NULL, 1000);
	strListFree(&list);
	list = strListReadFile(fp, NULL, 1000);
	strListFree(&list);
	list = strListReadFile(fp, NULL, 1000);
	strListFree(&list);
	list = strListReadFile(fp, NULL, 1000);
	strListFree(&list);
	list = strListReadFile(fp, NULL, 1000);
	strListFree(&list);
	list = strListReadFile(fp, NULL, 1000);
	strListFree(&list);
	list = strListReadFile(fp, NULL, 1000);
	strListFree(&list);
	list = strListReadFile(fp, NULL, 1000);
	strListFree(&list);
	list = strListReadFile(fp, NULL, 1000);
	strListFree(&list);
```
n
---
  mSynchronetn  hgVertrauen n hHome of Synchronet n gh[vert/cvs/bbs].synchro.net

-----------------------------------------------------------
[Voltar]