• src/sbbs3/data.cpp

    From rswindell to CVS commit on Monday, April 27, 2020 00:42:23
    src/sbbs3 data.cpp 1.31 1.32
    Update of /cvsroot/sbbs/src/sbbs3
    In directory cvs:/tmp/cvs-serv16485

    Modified Files:
    data.cpp
    Log Message:
    Paranoia checks in getnextevent():
    If either localtime_r() or mktime() return a error result, don't use use the non-sensical time.
    Nelgin has reported that under some conditions, he sees:
    Your time has been reduced due to an upcoming event on Wed Dec 31 1969 18:00:00 when using Ctrl-T (time info hot key).
    I don't have an explanation for this, but if either of those function calls failed in getnextevent(), something like this could happen. <shrug>

  • From Deuce to Git commit to main/sbbs/master on Monday, December 28, 2020 11:46:27
    https://gitlab.synchro.net/main/sbbs/-/commit/65c4e767c74112b6fdcaf771
    Modified Files:
    src/sbbs3/data.cpp
    Log Message:
    days == 128 is also "never".
  • From Rob Swindell to Git commit to main/sbbs/master on Tuesday, December 29, 2020 02:03:58
    https://gitlab.synchro.net/main/sbbs/-/commit/493ef50009df1e3c229bec9f
    Modified Files:
    src/sbbs3/data.cpp
    Log Message:
    More infinite/long event next-run-time brute force search paranoia

    Don't search more than 1500 days in the future for a next-run date match. This handles erroneous or just bizarre timed event configurations such as February-29 (once ever leap year) or April-31 (never).
  • From Rob Swindell to Git commit to main/sbbs/master on Sunday, June 06, 2021 20:07:10
    https://gitlab.synchro.net/main/sbbs/-/commit/2106e62962d4819266eea6bf
    Modified Files:
    src/sbbs3/data.cpp
    Log Message:
    Modernize finduser() a bit

    Skip any prepended white-space in the passed name to find.
    Use better variable names (and length) for the character strings.
    Use matchusername() instead of strcmp(); matchusername() follows the liberal user-id/alias/name matching algorithm.
    Use strcasestr() instead of strstr(), so no copy/modification (upper-casing) of passed name is now required.
    When 'Q'uitting the search, set the SS_ABORT flag.
  • From Rob Swindell to Git commit to main/sbbs/master on Monday, February 21, 2022 18:22:22
    https://gitlab.synchro.net/main/sbbs/-/commit/9d359582c6c0e7ee06f6408f
    Modified Files:
    src/sbbs3/data.cpp
    Log Message:
    Timed event "month days" value of 1 means "any day" (same as 0)

    This field should not normally have a value of '1' (no way to configure that, normally, since days are numbered starting at 1 and bit 1 is 2), but if it does, it's treated the same as 0 (any day of the month) - so fix that mismatch in getnexteventtime(). Just noticed this while comparing the logic with the new is_time_to_run() functions in main.cpp. That logic wasn't (should not have) changed, so this mismatch in the treatment of mdays == 1 existed before.