https://gitlab.synchro.net/main/sbbs/-/commit/b1cf73e322081c643f394401
Modified Files:
src/sbbs3/scfg/scfgxfr2.c
Log Message:
Better raw directory/listing import de-duplication of short names
... and when there is a duplicate we can't de-duplicate (given the current permutation function anyway), display a more helpful dialog message
("Duplicate dir name") unique from the duplicate internal code error dialog,
so if it's ever a problem again we can distiguish the two different causes.
This fixes issue #820
Other fixes:
- Don't increment the number of dirs imported before the opportunity to abort
import (upon dupe) is given - which could result in an invalid number of dirs
imported/added
- Don't import/add more dirs than the number of options that can be displayed
(100000 currently)
- Use isdir() to check if the path is a directory (not fexistcase) and only
do this check if the default directory for the lib has "Check for file
existence" enabled (the default)
- Give the opportunity to contnue or abort the import upon the
"Not a directory" error/dialog.
- When deriving dir (short) name from a path, skip non-alphanumeric chars
If none can be found (in the last 25 chars of the path), use the first 25
chars of the path instead.
- Unrelated fix: a newly created lib's 'vdir' member wasn't initialized
resulting in the directory's Virtual File Path starting with "//" until the
config was reloaded.
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net