diff options
| -rw-r--r-- | src/server/shared_memory_server.h | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/server/shared_memory_server.h b/src/server/shared_memory_server.h index e28fb6a..d4be69f 100644 --- a/src/server/shared_memory_server.h +++ b/src/server/shared_memory_server.h @@ -22,7 +22,11 @@ public: */ Server() { - shm_fd = shm_open(SHM_NAME, O_CREAT | O_RDWR, 0666); + shm_fd = shm_open(SHM_NAME, O_EXCL | O_CREAT | O_RDWR, 0666); + if (-1 == shm_fd) { + std::cout << "Server is already running!" << '\n'; + exit(-1); + } ftruncate(shm_fd, sizeof(SharedMemory)); |