switch to g_open()/g_fopen()
Might help with files being left open, perhaps. It's certainly neater. See https://github.com/kleisauke/net-vips/issues/12
This commit is contained in:
parent
68fd9c8de6
commit
d48f80130b
|
@ -580,25 +580,11 @@ vips__open( const char *filename, int flags, ... )
|
||||||
mode = va_arg( ap, int );
|
mode = va_arg( ap, int );
|
||||||
va_end( ap );
|
va_end( ap );
|
||||||
|
|
||||||
|
fd = g_open( filename, flags, mode );
|
||||||
|
|
||||||
#ifdef OS_WIN32
|
#ifdef OS_WIN32
|
||||||
{
|
|
||||||
wchar_t *path16;
|
|
||||||
|
|
||||||
if( !(path16 = (wchar_t *)
|
|
||||||
g_utf8_to_utf16( filename, -1, NULL, NULL, NULL )) ) {
|
|
||||||
errno = EACCES;
|
|
||||||
return( -1 );
|
|
||||||
}
|
|
||||||
|
|
||||||
fd = _wopen( path16, flags, mode );
|
|
||||||
|
|
||||||
if( mode & O_CREAT )
|
if( mode & O_CREAT )
|
||||||
vips__set_create_time( fd );
|
vips__set_create_time( fd );
|
||||||
|
|
||||||
g_free( path16 );
|
|
||||||
}
|
|
||||||
#else /*!OS_WIN32*/
|
|
||||||
fd = open( filename, flags, mode );
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
return( fd );
|
return( fd );
|
||||||
|
@ -617,31 +603,11 @@ vips__fopen( const char *filename, const char *mode )
|
||||||
{
|
{
|
||||||
FILE *fp;
|
FILE *fp;
|
||||||
|
|
||||||
|
fp = g_fopen( filename, mode );
|
||||||
|
|
||||||
#ifdef OS_WIN32
|
#ifdef OS_WIN32
|
||||||
wchar_t *path16, *mode16;
|
|
||||||
|
|
||||||
if( !(path16 = (wchar_t *)
|
|
||||||
g_utf8_to_utf16( filename, -1, NULL, NULL, NULL )) ) {
|
|
||||||
errno = EACCES;
|
|
||||||
return( NULL );
|
|
||||||
}
|
|
||||||
|
|
||||||
if( !(mode16 = (wchar_t *)
|
|
||||||
g_utf8_to_utf16( mode, -1, NULL, NULL, NULL )) ) {
|
|
||||||
g_free( path16 );
|
|
||||||
errno = EACCES;
|
|
||||||
return( NULL );
|
|
||||||
}
|
|
||||||
|
|
||||||
fp = _wfopen( path16, mode16 );
|
|
||||||
|
|
||||||
g_free( path16 );
|
|
||||||
g_free( mode16 );
|
|
||||||
|
|
||||||
if( mode[0] == 'w' )
|
if( mode[0] == 'w' )
|
||||||
vips__set_create_time( _fileno( fp ) );
|
vips__set_create_time( _fileno( fp ) );
|
||||||
#else /*!OS_WIN32*/
|
|
||||||
fp = fopen( filename, mode );
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
return( fp );
|
return( fp );
|
||||||
|
|
Loading…
Reference in New Issue