gio/tests: Clean up inclusion of unistd.h
authorChun-wei Fan <fanchunwei@src.gnome.org>
Mon, 4 Nov 2013 08:32:01 +0000 (16:32 +0800)
committerChun-wei Fan <fanchunwei@src.gnome.org>
Mon, 4 Nov 2013 14:55:30 +0000 (22:55 +0800)
Include unistd.h only on *NIX and define items as necessary on Windows,
also replace instances of ssize_t with the GLib-equivilant gssize so to fix
the build on platforms that do not have ssize_t, such as Visual C++.

https://bugzilla.gnome.org/show_bug.cgi?id=711047

gio/tests/filter-cat.c
gio/tests/gsubprocess-testprog.c
gio/tests/readwrite.c
gio/tests/resolver.c
gio/tests/win32-streams.c

index a367461..d2b9f5c 100644 (file)
 #include <config.h>
 
 #include <stdio.h>
-#include <unistd.h>
 #include <locale.h>
 #include <errno.h>
 
 #include <glib.h>
 #include <gio/gio.h>
 
+#ifdef G_OS_UNIX
+#include <unistd.h>
+#endif
+
+#ifdef G_OS_WIN32
+#ifndef STDOUT_FILENO
+#define STDOUT_FILENO 1
+#endif
+#endif
+
 static gchar **locations = NULL;
 static char *from_charset = NULL;
 static char *to_charset = NULL;
@@ -157,7 +166,7 @@ cat (GFile * file)
        g_input_stream_read (in, buffer, sizeof (buffer) - 1, NULL, &error);
       if (res > 0)
        {
-         ssize_t written;
+         gssize written;
 
          p = buffer;
          while (res > 0)
index 1e5a948..df865f6 100644 (file)
@@ -3,8 +3,8 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include <errno.h>
-#include <unistd.h>
 #ifdef G_OS_UNIX
+#include <unistd.h>
 #include <gio/gunixinputstream.h>
 #include <gio/gunixoutputstream.h>
 #endif
@@ -20,7 +20,7 @@ write_all (int           fd,
 {
   while (len > 0)
     {
-      ssize_t bytes_written = write (fd, buf, len);
+      gssize bytes_written = write (fd, buf, len);
       if (bytes_written < 0)
        g_error ("Failed to write to fd %d: %s",
                 fd, strerror (errno));
index 5ac2f6f..ad156d3 100644 (file)
@@ -1,9 +1,12 @@
 #include <glib/glib.h>
 #include <glib/gstdio.h>
 #include <gio/gio.h>
-#include <unistd.h>
 #include <string.h>
 
+#ifdef G_OS_UNIX
+#include <unistd.h>
+#endif
+
 static const char *original_data = "This is some test data that we can put in a file...";
 static const char *new_data = "new data..";
 
index 02aa0c8..5f252f5 100644 (file)
@@ -28,7 +28,9 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
+#ifdef G_OS_UNIX
 #include <unistd.h>
+#endif
 
 #include <gio/gio.h>
 
index b7ff0b3..b9d95f9 100644 (file)
@@ -27,7 +27,6 @@
 #include <string.h>
 #include <fcntl.h>
 #include <io.h>
-#include <unistd.h>
 
 #include <windows.h>