mirror of
https://github.com/advplyr/audiobookshelf.git
synced 2026-07-07 09:51:37 +00:00
recurseFiles passes realPath:true to recursive-readdir-async, which resolves symlinks and returns the canonical real path of each file. The relative path is then computed as fullname.replace(folderPath, ''), which assumes fullname stays under folderPath. When the library folder is (or is under) a symlink, the resolved realpath no longer starts with folderPath, so the replace does nothing and the item path is rebuilt as folderPath + realpath -> a doubled, non-existent path, and the items fail to scan. Make resolution configurable via SCANNER_RESOLVE_SYMLINKS (default unchanged: resolves). Setting SCANNER_RESOLVE_SYMLINKS=0 keeps the folder path as given, so libraries on symlinked storage roots scan correctly. |
||
|---|---|---|
| .. | ||
| auth | ||
| controllers | ||
| finders | ||
| libs | ||
| managers | ||
| migrations | ||
| models | ||
| objects | ||
| providers | ||
| routers | ||
| scanner | ||
| utils | ||
| Auth.js | ||
| Database.js | ||
| Logger.js | ||
| Server.js | ||
| SocketAuthority.js | ||
| Watcher.js | ||