• src/sbbs3/js_file.c

    From Rob Swindell (on Debian Linux)@VERT to Git commit to main/sbbs/master on Saturday, May 25, 2024 14:28:35
    https://gitlab.synchro.net/main/sbbs/-/commit/7dcfa20fe2f1ce9eb52a3ba1
    Modified Files:
    src/sbbs3/js_file.c
    Log Message:
    Don't convert/store small integers to doubles when reading/writing .ini files

    Fix issue #760

    UINT_TO_JSVAL automatically handles the storage as the necsesary underlying type in the JS engine.

    Values > 0x7fffffff (2147483647) will still be stored (and re-written) as doubles and could be problematic.

    ---
    þ 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 Friday, September 13, 2024 20:08:11
    https://gitlab.synchro.net/main/sbbs/-/commit/105627890fa49ca6a6198408
    Modified Files:
    src/sbbs3/js_file.c
    Log Message:
    Eliminte weird gcc (12.2) warning in release build (only)

    Increasing size of mode[] element by 2 bytes eliminated these GCC warnings
    that seem like false-positives to me:

    sbbs.h:194:48: warning: writing 1 byte into a region of size 0 [-Wstringop-overflow=]
    194 |
    (ret)[JSSTSpos]=(char)JSSTSstrval[JSSTSpos]; \
    |
    ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    js_file.c:225:25: note: in expansion of macro ‘JSSTRING_TO_STRBUF’
    225 | JSSTRING_TO_STRBUF(cx, str, p->mode, sizeof(p->mode), NULL);
    | ^~~~~~~~~~~~~~~~~~
    js_file.c:42:17: note: at offset 5 into destination object ‘mode’ of size 5
    42 | char mode[5];
    | ^~~~

    Similar use of JSSTRING_TO_STRBUF in other files (js_console.cpp, js_archive.c) (with larger target buffers) does not trigger the same warnings.

    ---
    ï¿­ Synchronet ï¿­ Vertrauen ï¿­ Home of Synchronet ï¿­ [vert/cvs/bbs].synchro.net