diff options
Diffstat (limited to 'www/screem/files/patch-src_fileops.c')
-rw-r--r-- | www/screem/files/patch-src_fileops.c | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/www/screem/files/patch-src_fileops.c b/www/screem/files/patch-src_fileops.c new file mode 100644 index 000000000000..d2db97291400 --- /dev/null +++ b/www/screem/files/patch-src_fileops.c @@ -0,0 +1,31 @@ +--- src/fileops.c.orig Fri Sep 20 11:27:42 2002 ++++ src/fileops.c Fri Nov 15 03:46:00 2002 +@@ -144,6 +144,9 @@ + result = gnome_vfs_get_file_info( dest, vfsinfo, options ); + + if( result != GNOME_VFS_OK ) { ++ gnome_vfs_file_info_unref( vfsinfo ); ++ vfsinfo = gnome_vfs_file_info_new(); ++ gnome_vfs_get_file_info( source, vfsinfo, options ); + if( ! mkdir_recursive( dest, vfsinfo->permissions ) ) { + gnome_vfs_file_info_unref( vfsinfo ); + return FALSE; +@@ -159,7 +162,7 @@ + gnome_vfs_file_info_unref( vfsinfo ); + + handle = NULL; +- result = gnome_vfs_directory_open( &handle, dest, options ); ++ result = gnome_vfs_directory_open( &handle, source, options ); + + if( result != GNOME_VFS_OK ) { + return FALSE; +@@ -298,6 +301,9 @@ + result = GNOME_VFS_OK; + } + gnome_vfs_file_info_unref( info ); ++ } ++ else if ( result == GNOME_VFS_ERROR_IS_DIRECTORY ) { ++ result = GNOME_VFS_OK; + } + + ret = ( result == GNOME_VFS_OK ); |