From f83131b9214303509234021bcf5cff939d4ce2c7 Mon Sep 17 00:00:00 2001 From: Mathieu Albinet Date: Sat, 12 Apr 2008 20:16:07 +0000 Subject: [PATCH] Portability: replace mkdir by g_mkdir This allows to reduce conditionnal compilation complexity. Based on work done by Mathieu Albinet for windows port --- ChangeLog | 1 + configure.ac | 2 +- src/download.c | 15 ++++----------- src/osm-traces.c | 2 -- src/thumbnails.c | 13 +++++-------- src/vikmapslayer.c | 8 +------- src/vikwindow.c | 12 +++--------- 7 files changed, 15 insertions(+), 38 deletions(-) diff --git a/ChangeLog b/ChangeLog index a16f7271..063e0376 100644 --- a/ChangeLog +++ b/ChangeLog @@ -2,6 +2,7 @@ Guilhem Bonnefille : Mathieu Albinet : * Portability: reduce unistd.h dependency + * Portability: replace mkdir by g_mkdir 2008-03-27: Mathieu Albinet : diff --git a/configure.ac b/configure.ac index 380e51a7..5f5440b5 100644 --- a/configure.ac +++ b/configure.ac @@ -40,7 +40,7 @@ AC_TYPE_MODE_T # Checks for library functions. AC_FUNC_STAT AC_FUNC_STRTOD -AC_CHECK_FUNCS([bzero floor gethostbyname memset mkdir mkdtemp pow realpath socket sqrt strcasecmp strchr strdup strncasecmp strtol strtoul]) +AC_CHECK_FUNCS([bzero floor gethostbyname memset mkdtemp pow realpath socket sqrt strcasecmp strchr strdup strncasecmp strtol strtoul]) # Expat AM_WITH_EXPAT diff --git a/src/download.c b/src/download.c index 827167f9..3063bfa5 100644 --- a/src/download.c +++ b/src/download.c @@ -29,8 +29,8 @@ #include #include #include -#include -#include +#include +#include #include #include "download.h" @@ -53,7 +53,6 @@ char *dirname ( char * dir ) #else -#include /* dirname */ #include @@ -110,15 +109,9 @@ static int download( const char *hostname, const char *uri, const char *fn, Down if ( errno == ENOENT) { char *tmp = g_strdup ( fn ); -#ifdef WINDOWS - mkdir( dirname ( dirname ( tmp ) ) ); - g_free ( tmp ); tmp = g_strdup ( fn ); - mkdir( dirname ( tmp ) ); -#else - mkdir( dirname ( dirname ( tmp ) ), 0777 ); + g_mkdir( dirname ( dirname ( tmp ) ), 0777 ); g_free ( tmp ); tmp = g_strdup ( fn ); - mkdir( dirname ( tmp ), 0777 ); -#endif + g_mkdir( dirname ( tmp ), 0777 ); g_free ( tmp ); } /* create placeholder file */ diff --git a/src/osm-traces.c b/src/osm-traces.c index c56a379a..d1ea9c65 100644 --- a/src/osm-traces.c +++ b/src/osm-traces.c @@ -24,8 +24,6 @@ #include #include -#include -#include #include #include diff --git a/src/thumbnails.c b/src/thumbnails.c index 6d42bd5f..3bc39ce0 100644 --- a/src/thumbnails.c +++ b/src/thumbnails.c @@ -31,15 +31,13 @@ #endif #include -#include -#ifdef HAVE_SYS_TYPES_H -#include -#endif #ifdef HAVE_UNISTD_H #include #endif #include #include +#include +#include #include "viking.h" #include "thumbnails.h" #include "thumbnails_pixbuf.h" @@ -67,7 +65,6 @@ #define HOME_DIR "C:\\VIKING" #define THUMB_DIR "\\THUMBNAILS\\" /* viking maps default viking\maps */ #define THUMB_SUB_DIR "normal\\" -#define mkdir(a,b) mkdir(a) #define realpath(X,Y) _fullpath(Y,X,MAX_PATH) #else @@ -191,12 +188,12 @@ static GdkPixbuf *save_thumbnail(const char *pathname, GdkPixbuf *full) to = g_string_new(HOME_DIR); #ifndef WINDOWS - mkdir(to->str, 0700); + g_mkdir(to->str, 0700); #endif g_string_append(to, THUMB_DIR); - mkdir(to->str, 0700); + g_mkdir(to->str, 0700); g_string_append(to, THUMB_SUB_DIR); - mkdir(to->str, 0700); + g_mkdir(to->str, 0700); g_string_append(to, md5); name_len = to->len + 4; /* Truncate to this length when renaming */ #ifdef WINDOWS diff --git a/src/vikmapslayer.c b/src/vikmapslayer.c index 3deb773e..a1c2f967 100644 --- a/src/vikmapslayer.c +++ b/src/vikmapslayer.c @@ -51,8 +51,6 @@ #ifdef HAVE_UNISTD_H #include #endif -#include -#include #include "mapcache.h" /* only for dialog.h -- ugh */ @@ -300,11 +298,7 @@ static void maps_layer_mkdir_if_default_dir ( VikMapsLayer *vml ) { if ( vml->cache_dir && strcmp ( vml->cache_dir, MAPS_CACHE_DIR ) == 0 && g_file_test ( vml->cache_dir, G_FILE_TEST_EXISTS ) == FALSE ) { -#ifdef WINDOWS - mkdir ( vml->cache_dir ); -#else - mkdir ( vml->cache_dir, 0777 ); -#endif + g_mkdir ( vml->cache_dir, 0777 ); } } diff --git a/src/vikwindow.c b/src/vikwindow.c index 599afb31..75c9577b 100644 --- a/src/vikwindow.c +++ b/src/vikwindow.c @@ -37,16 +37,10 @@ #include #include #include +#include +#include #include #include -#ifdef WINDOWS -/* TODO IMPORTANT: mkdir for windows header? is it called 'mkdir' */ -#define make_dir(dir) mkdir(dir) -#else -#include -#include -#define make_dir(dir) mkdir(dir,0777) -#endif #define VIKING_WINDOW_WIDTH 1000 #define VIKING_WINDOW_HEIGHT 800 @@ -1567,7 +1561,7 @@ static void save_image_dir ( VikWindow *vw, const gchar *fn, guint w, guint h, g g_assert ( vik_viewport_get_coord_mode ( vw->viking_vvp ) == VIK_COORD_UTM ); - make_dir(fn); + g_mkdir(fn,0777); utm_orig = *((const struct UTM *)vik_viewport_get_center ( vw->viking_vvp )); -- 2.39.5