summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2018-06-19 15:43:40 +0000
committerMatthias Clasen <mclasen@redhat.com>2018-06-19 15:43:40 +0000
commit70d035ae951f8fc98a831b3d327c1ac09c599d5a (patch)
tree9f93e6a6473897fe3609a317da9c43d5a46cb50f
parent01d1bc3c75fd0eff5665f5b9c690c5e1e6c65f13 (diff)
parent055c1b2faa2a43a053d80ad3e4aef4a4f4f9ea2e (diff)
downloadgtk+-70d035ae951f8fc98a831b3d327c1ac09c599d5a.tar.gz
Merge branch 'patch-1' into 'gtk-3-24'
wayland: Use shm_open(SHM_ANON) on FreeBSD See merge request GNOME/gtk!203
-rw-r--r--gdk/wayland/gdkdisplay-wayland.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/gdk/wayland/gdkdisplay-wayland.c b/gdk/wayland/gdkdisplay-wayland.c
index b4ef4485da..1e00f292d8 100644
--- a/gdk/wayland/gdkdisplay-wayland.c
+++ b/gdk/wayland/gdkdisplay-wayland.c
@@ -1276,6 +1276,9 @@ open_shared_memory (void)
if (force_shm_open)
{
+#if defined (__FreeBSD__)
+ ret = shm_open (SHM_ANON, O_CREAT | O_EXCL | O_RDWR | O_CLOEXEC, 0600);
+#else
char name[NAME_MAX - 1] = "";
sprintf (name, "/gdk-wayland-%x", g_random_int ());
@@ -1286,6 +1289,7 @@ open_shared_memory (void)
shm_unlink (name);
else if (errno == EEXIST)
continue;
+#endif
}
}
while (ret < 0 && errno == EINTR);