about summary refs log tree commit diff stats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/server/shared_memory_server.h6
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));