]> git.sur5r.net Git - i3/i3/blobdiff - include/shmlog.h
Merge branch 'release-4.16.1'
[i3/i3] / include / shmlog.h
index fd3f53ebfac73a0ef60ea9f688c9126498626140..dc8081f1329c8e6a24d2646c19428127efe594ce 100644 (file)
@@ -2,19 +2,25 @@
  * vim:ts=4:sw=4:expandtab
  *
  * i3 - an improved dynamic tiling window manager
- * © 2009-2012 Michael Stapelberg and contributors (see also: LICENSE)
+ * © 2009 Michael Stapelberg and contributors (see also: LICENSE)
  *
  * The format of the shmlog data structure which i3 development versions use by
  * default (ringbuffer for storing the debug log).
  *
  */
-#ifndef I3_I3_SHMLOG_H
-#define I3_I3_SHMLOG_H
+#pragma once
+
+#include <config.h>
 
 #include <stdint.h>
+#if !defined(__OpenBSD__)
 #include <pthread.h>
+#endif
 
-/*
+/* Default shmlog size if not set by user. */
+extern const int default_shmlog_size;
+
+/**
  * Header of the shmlog file. Used by i3/src/log.c and i3/i3-dump-log/main.c.
  *
  */
@@ -22,7 +28,7 @@ typedef struct i3_shmlog_header {
     /* Byte offset where the next line will be written to. */
     uint32_t offset_next_write;
 
-    /* Byte offset where the last wrap occured. */
+    /* Byte offset where the last wrap occurred. */
     uint32_t offset_last_wrap;
 
     /* The size of the logfile in bytes. Since the size is limited to 25 MiB
@@ -35,10 +41,10 @@ typedef struct i3_shmlog_header {
      * and don’t matter — clients use an equality check (==). */
     uint32_t wrap_count;
 
+#if !defined(__OpenBSD__)
     /* pthread condvar which will be broadcasted whenever there is a new
      * message in the log. i3-dump-log uses this to implement -f (follow, like
      * tail -f) in an efficient way. */
     pthread_cond_t condvar;
-} i3_shmlog_header;
-
 #endif
+} i3_shmlog_header;