• src/sbbs3/js_filebase.c

    From Rob Swindell (on Debian Linux)@VERT to Git commit to main/sbbs/master on Mon Jun 17 20:38:51 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/946e42d6fc4e56de23c8c664
    Modified Files:
    src/sbbs3/js_filebase.c
    Log Message:
    FileBase.add() now supports override to *never* extract/use DIZ if desired

    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.

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Debian Linux)@VERT to Git commit to main/sbbs/master on Mon Jun 17 20:38:51 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/35cde60c2a947b8a5e2ce2c4
    Modified Files:
    src/sbbs3/js_filebase.c
    Log Message:
    Better JSDOC description of use_diz param to FileBase.add()

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Windows 11)@VERT to Git commit to main/sbbs/master on Thu Jun 20 15:00:05 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/32e880895b1acec254d426ad
    Modified Files:
    src/sbbs3/js_filebase.c
    Log Message:
    Fix 64-char filename length limit for FileBase.get[_path/size/time] methods

    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.

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Debian Linux)@VERT to Git commit to main/sbbs/master on Fri Jun 21 00:26:42 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/f532bee963c7e7fb6df4fc77
    Modified Files:
    src/sbbs3/js_filebase.c
    Log Message:
    Fix bug with FileBase.get_time() for filenames > 64 chars in length

    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.

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Debian Linux)@VERT to Git commit to main/sbbs/master on Fri Jun 21 12:45:08 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/726a08527c590b38136b7ef7
    Modified Files:
    src/sbbs3/js_filebase.c
    Log Message:
    Fix new small memory leak (no need to use strdup here)

    Fix CID 497098

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Debian Linux)@VERT to Git commit to main/sbbs/master on Fri Sep 13 20:08:11 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/2fc23c32c4b0b19685f2cb0e
    Modified Files:
    src/sbbs3/js_filebase.c
    Log Message:
    FileBase.update() method throws more exceptions upon error

    This will help to determine cause of any file update (e.g. rename)
    failures, as reported by Nelgin.

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Debian Linux)@VERT to Git commit to main/sbbs/master on Fri Sep 13 20:45:33 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/397d6ebe5b0185bdff5c0c59
    Modified Files:
    src/sbbs3/js_filebase.c
    Log Message:
    Don't allow FileBase.update() to create a duplicate file

    FileBase.update() will now throw an exception if attempting to rename a file
    to a filename that already exists in the filebase index.

    Prior to this change, one could (via JS methods) rename a file in the base to create a duplicate filename which would corrupt the base (one index entry and two header records for the same filename).

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Windows 11)@VERT to Git commit to main/sbbs/master on Mon Sep 16 18:52:34 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/2391c3c9a3912622b8016333
    Modified Files:
    src/sbbs3/js_filebase.c
    Log Message:
    Update JSDOC description of update() method

    Clarify that this is the method to use to rename a file.

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net