- Jun 30, 2024
-
-
DDMsgReader: When listing messages via lightbar, check if the subject is UTF-8, which now helps the lightbar menu display the line properly, particularly for UTF-8 terminals
-
Rob Swindell authored
dd_lightbar_menu.js: Fixed text truncation issue when displaying item text when we know it's UTF-8 See merge request !441
-
- Jun 29, 2024
-
-
Eric Oulashin authored
-
Rob Swindell authored
... as reported by Mike Powell, and amessroom and root-caused by Nightfox A '-' is a valid QWK-ID character since it is a valid DOS filename character.
-
- Jun 27, 2024
-
-
Rob Swindell authored
dd_lightbar_menu: str_is_utf8() seems to return true sometimes when a string doesn't have UTF-8, so that is now commented out for now See merge request !440
-
- Jun 25, 2024
-
-
Eric Oulashin authored
dd_lightbar_menu: str_is_utf8() seems to return true sometimes when a string doesn't have UTF-8, so that is now commented out for now
-
- Jun 23, 2024
-
-
Rob Swindell authored
DDMsgReader: Fix for msgText being undefined when doing a message search See merge request !439
-
Eric Oulashin authored
-
Rob Swindell authored
dd_ligbtar_menu.js: Fix for behavior with the item color when printing the last portion of an item. Also, UTF8 detection improvement. See merge request !438
-
dd_ligbtar_menu.js: Fix for behavior with the item color when printing the last portion of an item. Also, UTF8 detection improvement.
-
- Jun 21, 2024
-
-
Rob Swindell authored
Fix CID 497098
-
Rob Swindell authored
If a file descriptor is passed to getnodedat() and the lock retry counter was reached, the file would be closed, but the passed file descriptor reference would not be set to -1. This could result in exceptions (from subsequent read attempts on the referenced file descriptor) in cases where the node.dab could not be locked or read by getnodedat() and was thus closed. The set/get_node_* helper functions (used by MQTT) were not initializing the node.dab file descriptor (i.e. to -1), so it's possible getnodedat() could try to read from and close an invalid/wrong open file descriptor. If the local variable happened to be initialized to a value <= 0, then, no problem, but this is undefined behavior (UB).
-
Rob Swindell authored
Sort of the opposite of the "Offline Files" search, find files copied into the directory storage paths but not yet added to the filebase, with a "Add File..." option (and tagging support) along with DELete files option. Auto-ignore listing files (e.g. FILES.BBS, etc.) when searchign for new files to add to a directory's filebase. If an argument is passed to fileman.js, use that as the UIFC mode (for testing purposes only). Fix case-sensitive file compares (on *nix OSes) when adding files (now case-insensitive). Fix issue with get file paths for files not yet in a filebase (using FileBath.get_path unnecessarily). Display virtual paths to files in many place, when available (> SBBS v3.19).
-
Rob Swindell authored
This is the proper way to manually-restore the most recently saved window (via the WIN_SAV mode flag to the list() method). I wanted something that was backward comaptible with earlier builds of SBBS, so just doing a magic thing when decrementing the save_num rather than adding a new method seemed the seamless way to do it.
-
Rob Swindell authored
This allows for menu options on an "active" list (with both WIN_SAVE and WIN_ACT mode flags) to close the window and restore the most recently saved window. Also, for the range check on the save buffer count in ulist(), if we've hit the bounds, don't *just* beep (though, that was useful), but turn off the WIN_SAV mode flag so we don't overflow the sav[] array and corrupt the heap!
-
Rob Swindell authored
... for UIFC apps/scripts that have screen-width dependant behavior.
-
Rob Swindell authored
caught by valgrind
-
- Jun 20, 2024
-
-
Rob Swindell authored
(instead of file name), which would have issues in SBBS v3.19 for filenames > 64 chars in length. Also, remove extraneous calls to format().
-
Rob Swindell authored
We need to read the file header (not just index) entry to get the actual full filename. Also, removed some extraneous calls to getfilepath() that served no purposed.
-
Rob Swindell authored
Don't actually truncate the string, just the display length
-
Rob Swindell authored
to work around recently-fixed bug with > 64 char filenames parsed from file-meta-objects. Although this bug was fixed in [lib]sbbs[.so|.dll] might as well use the backward-compatible method to set a better example that works as expected with SBBS v3.19.
-
Rob Swindell authored
-
Rob Swindell authored
This was only a problem when these methods were passed a file-meta-object instead of the file name. In hindsight, that's kind of a dumb API "feature" since we're just parsing the name property out of the object. The file_t.file_idx.name is limited to 64 chars, so don't use that struct element to store the parsed "name" property of the passed file-meta-object.
-
Rob Swindell authored
Text files with recognized plain text file names/extensions can be viewed from within fileman now. Some extended descriptions may only be terminated with LF (instead of CRLF), so deal with those accordingly. Some auto-translation from LF to CRLF terminated extended description lines may occur when editing extended descriptions.
-
- Jun 19, 2024
-
-
Rob Swindell authored
(yes, I know, unzip for DIZ can corrupt the TUI display when adding files) Add ability to display and edit extended file descriptions (including inserting and deleting lines. Fixed bug with moving files between dirs. F2 is now just a shortcut for renaming files, ENTER is the main edit/display option key now. This really requires an updated sbbs/jsexec to work fully correct (e.g. display/edit extended descriptions that contain blank lines).
-
Rob Swindell authored
uifc option lists are always NULL-terminated string lists (not static arrays of char arrays, as is often used in other UIFC utils), so grow the ability to have blank options (list items). This was needed for fileman.js to accurately edit extended file descriptions that contain blank lines.
-
Rob Swindell authored
This requires that the option list be NULL-terminated, when used. For use with js_uifc.c (JS uifc.list method). For some reason, this exposed an issue where "(null)" would be printed for the last line when combined with WIN_XTR mode flag, so worked around that bug too.
-
- Jun 18, 2024
-
-
Rob Swindell authored
-
Rob Swindell authored
A bunch of other improvements, cosmetic and functional (viewing archives, editing more File fields, etc.).
-
Rob Swindell authored
-
Rob Swindell authored
Working on fileman.js, when moving files to another base, the output of unzip (trying to extra a FILE_ID.DIZ) was corrupting the display. We don't really want a DIZ file to get imported when moving files between bases anyway. So the second parameter to FileBase.add() can be either: - undefined: will try to extract/use DIZ only if there's no ext desc already - true: will try to extract/use a DIZ even if there's an ext desc already - false: will never try to extract/use a DIZ If the directory is not configured for DIZ support, then the DIZ extraction/use will never occur under any condition.
-
Rob Swindell authored
-
Rob Swindell authored
For use with fileman.js: The space bar can be used by the user to "tag" items, or Ctrl-A to toggle tag status for *all* items. Returns MSK_TAG|with the option tagged/untagged or MSG_TAGALL when all tags are being toggled (via ^A). Also, fix bug where ^Find command would not restore the status bar after ulist() would overwrite it with the string-input/edit hot-keys available.
-
Rob Swindell authored
Cosmetic change only, output of 'smbutil s' command when used on a filebase. Increment the SMBUTIL version from 3.19 to 3.20
-
- Jun 16, 2024
-
-
Rob Swindell authored
-
Rob Swindell authored
This is likely the cause of the vauge logged error that I and other sysops see from time to time: srvc 0000 JSON SyntaxError: JSON.parse ... so log the function name and the contents of the string that's failing to parse.
-
- Jun 15, 2024
-
-
Rob Swindell authored
This is a new TUI-style filebase browser/editor for sysop use. Sysops can search files, descriptions/metadata, uploader names, offline files and then easily remove/delete or edit those file's names, description, uploader. Ideas for improvements (e.g. file tagging/bulk deleting) may require updates to UIFC. This is a proof of concept at least and provides some functionality already.
-
Rob Swindell authored
-
- Jun 14, 2024
-
-
Rob Swindell authored
If the quote file contained a Ctrl-Z (ASCII 26) char, it would be truncated at that point. Some UTF-8 messages that include a "right arrow" unicode code point are translated to ASCII Ctrl-Z (ASCII 26) char, which is interpretted by Windows as "EOF" (end of file) marker for files open in "text mode" and the file won't be read beyond that char. Open the file in binary mode to more closely match the *nix fopen() before.
-
- Jun 10, 2024
-
-
Rob Swindell authored
-