diff options
-rw-r--r-- | lib/driver/MSWindows/win32.c | 2 | ||||
-rw-r--r-- | lib/udf/udf.c | 9 | ||||
-rw-r--r-- | lib/udf/udf_time.c | 2 |
3 files changed, 8 insertions, 5 deletions
diff --git a/lib/driver/MSWindows/win32.c b/lib/driver/MSWindows/win32.c index 03646f80..603a4c31 100644 --- a/lib/driver/MSWindows/win32.c +++ b/lib/driver/MSWindows/win32.c @@ -357,7 +357,7 @@ free_win32 (void *p_user_data) if( p_env->h_device_handle ) CloseHandle( p_env->h_device_handle ); if( p_env->hASPI ) - FreeLibrary( p_env->hASPI ); + FreeLibrary( (HMODULE)p_env->hASPI ); free (p_env); } diff --git a/lib/udf/udf.c b/lib/udf/udf.c index e612b7c2..bd8cb868 100644 --- a/lib/udf/udf.c +++ b/lib/udf/udf.c @@ -1,5 +1,5 @@ /* - Copyright (C) 2005, 2008, 2010 Rocky Bernstein <rocky@gnu.org> + Copyright (C) 2005, 2008, 2010, 2012 Rocky Bernstein <rocky@gnu.org> This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -20,6 +20,7 @@ say opensolaris. */ #include "udf_private.h" #include <cdio/bytesex.h> +#include "filemode.h" #ifdef HAVE_STRING_H # include <string.h> @@ -53,11 +54,13 @@ udf_get_posix_filemode(const udf_dirent_t *p_udf_dirent) mode_t mode = 0; if (udf_get_file_entry(p_udf_dirent, &udf_fe)) { - uint16_t i_flags; uint32_t i_perms; +#ifdef S_ISUID + uint16_t i_flags; - i_perms = uint32_from_le(udf_fe.permissions); i_flags = uint16_from_le(udf_fe.icb_tag.flags); +#endif + i_perms = uint32_from_le(udf_fe.permissions); if (i_perms & FE_PERM_U_READ) mode |= S_IRUSR; if (i_perms & FE_PERM_U_WRITE) mode |= S_IWUSR; diff --git a/lib/udf/udf_time.c b/lib/udf/udf_time.c index 76f5323e..3d8a9f5f 100644 --- a/lib/udf/udf_time.c +++ b/lib/udf/udf_time.c @@ -103,7 +103,7 @@ static time_t year_seconds[MAX_YEAR_SECONDS]= { /*2038*/ SPY(68,17,0) }; -#ifdef HAVE_TIMEZONE_VAR +#if defined(HAVE_TIMEZONE_VAR) && !defined(_WIN32) extern long timezone; #endif |