• src/xpdev/threadwrap.h

    From rswindell@VERT to CVS commit on Tuesday, January 07, 2014 16:24:21
    src/xpdev threadwrap.h 1.45 1.46
    Update of /cvsroot/sbbs/src/xpdev
    In directory cvs:/tmp/cvs-serv9153

    Modified Files:
    threadwrap.h
    Log Message:
    Define protected_int_value() macros to perform a thread-safe read of the current protected-interger value.


    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ telnet://vert.synchro.net
  • From rswindell@VERT to CVS commit on Tuesday, July 23, 2019 21:15:24
    src/xpdev threadwrap.h 1.51 1.52
    Update of /cvsroot/sbbs/src/xpdev
    In directory cvs:/tmp/cvs-serv9501

    Modified Files:
    threadwrap.h
    Log Message:
    Address Windows build warning:
    InterlockedCompareExchange() expects a long*, not a uint32_t*.



    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Wednesday, February 17, 2021 23:25:51
    https://gitlab.synchro.net/main/sbbs/-/commit/b4e6d685f82a804c779e0df6
    Modified Files:
    src/xpdev/threadwrap.h
    Log Message:
    #define protected_*_value(val) atomic_load(&val)

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Saturday, February 20, 2021 17:31:34
    https://gitlab.synchro.net/main/sbbs/-/commit/f6b1317888c77f7b46dbce83
    Modified Files:
    src/xpdev/threadwrap.h
    Log Message:
    Use parens for Win32 protected_*int macro args

    for better errors/warnings from the compiler when misued.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Monday, February 22, 2021 17:59:04
    https://gitlab.synchro.net/main/sbbs/-/commit/474fa66ed8abaeadbd1e9815
    Modified Files:
    src/xpdev/threadwrap.h
    Log Message:
    Gotta define __STDC_NO_ATOMICS__ for MSVC

    Even though https://docs.microsoft.com/en-us/cpp/preprocessor/predefined-macros?view=msvc-160 says they define it for C compiles, apparently they don't bother for C++. <shrug>

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Tuesday, March 02, 2021 09:54:52
    https://gitlab.synchro.net/main/sbbs/-/commit/f3219fe50193f0401dec7f51
    Modified Files:
    src/xpdev/threadwrap.h
    Log Message:
    Re-enable atomics on FreeBSD :|

    The various __GNUC__ macros are defined in other compilers and
    indicate support for a C language standard and can't be used to
    detect if gcc the compiler is being used.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Saturday, February 19, 2022 14:03:13
    https://gitlab.synchro.net/main/sbbs/-/commit/3d0d525c7da0d33b4f53547b
    Modified Files:
    src/xpdev/threadwrap.h
    Log Message:
    Use MinGW32 types for pthread_t and pthread_mutex_t

    uintptr_t should be the same as a DWORD on Win32,
    and CRITICAL_SECTION can be stored in an inptr_t as well.

    This should work fine, and allow more build environments to be happy.
    This is generally caused by new C++ standards having thread support
    in the standard library, so wrappers getting pushed deeper in.

    At some pointer, this should be redone with standard threads, but
    now is not the time.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Sunday, February 20, 2022 16:53:52
    https://gitlab.synchro.net/main/sbbs/-/commit/b3c536e4e065801ed59d9c42
    Modified Files:
    src/xpdev/threadwrap.h
    Log Message:
    pthread_mutex_t is a CRITICAL_SECTION (not a pointer) on Win32

    Partially revert Deuce's commit b4bc9c9759e6f34c272501e024

    This explains the EAccessViolation (stack corruption during sbbs startup) that sysops have reported when using the latest nightly builds.

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