freebsd-ports/deskutils/cairo-dock/files/patch-src_gldit_cairo-dock-file-manager.c
John Marino 96feb3ebb1 deskutils/cairo-dock: Unbreak DragonFly
Extend the current patch - DragonFly needs the same handling as FreeBSD.
Since the entire patch changed and didn't use the UTC timestamp, the
patch was renamed to confirm with "make makepatch" standards.
2015-01-03 16:12:00 +00:00

23 lines
897 B
C

--- src/gldit/cairo-dock-file-manager.c.orig 2014-10-15 14:16:34 UTC
+++ src/gldit/cairo-dock-file-manager.c
@@ -21,7 +21,11 @@
#include <string.h> // memset
#include <sys/stat.h> // stat
#include <fcntl.h> // open
+#if defined (__FreeBSD__) || defined (__DragonFly__)
+#include <sys/socket.h>
+#else
#include <sys/sendfile.h> // sendfile
+#endif
#include <errno.h> // errno
#include "gldi-config.h"
@@ -500,7 +504,7 @@ gboolean cairo_dock_copy_file (const gch
{
// perform in-kernel transfer (zero copy to user space)
int size;
- #ifdef __FreeBSD__
+ #if defined (__FreeBSD__) || defined (__DragonFly__)
size = sendfile (src_fd, dest_fd, 0, stat.st_size, NULL, NULL, 0);
#else // Linux >= 2.6.33 for being able to have a regular file as the output socket
size = sendfile (dest_fd, src_fd, NULL, stat.st_size); // note the inversion between both calls ^_^;