--- freem/src/shmmgr.h 2025/05/08 16:29:18 1.5 +++ freem/src/shmmgr.h 2025/05/09 19:44:50 1.6 @@ -1,5 +1,5 @@ /* - * $Id: shmmgr.h,v 1.5 2025/05/08 16:29:18 snw Exp $ + * $Id: shmmgr.h,v 1.6 2025/05/09 19:44:50 snw Exp $ * shared memory manager data structures * * @@ -24,6 +24,9 @@ * along with FreeM. If not, see . * * $Log: shmmgr.h,v $ + * Revision 1.6 2025/05/09 19:44:50 snw + * Begin shm rework + * * Revision 1.5 2025/05/08 16:29:18 snw * Add SOM/SOA/SBM/SBA macros from RSM and modify for FreeM * @@ -75,6 +78,8 @@ /* The following macros were borrowed from Reference Standard M * SOM/SOA: reading and writing data stored in shared memory * SBM/SBA: for modifying pointers in shared memory + * + * Versions ending with 'A' will maintain NULL pointers. */ #define SOM(ptr) ((__typeof__(ptr)) ((char *) (ptr) + ((char *) shm_config->dta - (char *) shm_config->hdr->shmad))) #define SOA(ptr) ((ptr == NULL) ? NULL : SOM(ptr))