diff --git a/gdk/broadway/broadway-server.c b/gdk/broadway/broadway-server.c index 9c484b6540..42bc50a43a 100644 --- a/gdk/broadway/broadway-server.c +++ b/gdk/broadway/broadway-server.c @@ -827,7 +827,7 @@ map_named_shm (char *name, gsize size) void *ptr; char *filename = NULL; - fd = shm_open(name, O_RDONLY, 0600); + fd = shm_open (name, O_RDONLY, 0600); if (fd == -1) { filename = g_build_filename (g_get_tmp_dir (), name, NULL); @@ -835,13 +835,15 @@ map_named_shm (char *name, gsize size) if (fd == -1) { perror ("Failed to map shm"); + g_free (filename); + return NULL; } } - ptr = mmap(0, size, PROT_READ, MAP_SHARED, fd, 0); + ptr = mmap (0, size, PROT_READ, MAP_SHARED, fd, 0); - (void) close(fd); + (void) close (fd); if (filename) {