Fixed some captive_NTSTATUS_to_GnomeVFSResult() error handling cases
authorshort <>
Mon, 24 Mar 2003 03:16:44 +0000 (03:16 +0000)
committershort <>
Mon, 24 Mar 2003 03:16:44 +0000 (03:16 +0000)
src/libcaptive/client/file.c

index e8df7a8..4a8df7b 100644 (file)
@@ -536,13 +536,8 @@ GnomeVFSResult errvfsresult;
                                FileRenameInformation_structp,  /* FileInformation */
                                FileRenameInformation_struct_len,       /* Length */
                                FileRenameInformation); /* FileInformationClass */
-               if (GNOME_VFS_OK!=(errvfsresult=captive_NTSTATUS_to_GnomeVFSResult(err))) {
-                       g_assert_not_reached();
-                       errvfsresult=GNOME_VFS_ERROR_GENERIC;
+               if (GNOME_VFS_OK!=(errvfsresult=captive_NTSTATUS_to_GnomeVFSResult(err)))
                        goto err_free_name_basename;
-                       }
-
-               errvfsresult=GNOME_VFS_OK;
 
 err_free_name_basename:
                g_free(name_basename);
@@ -552,6 +547,7 @@ err:
 
                if (errvfsresult!=GNOME_VFS_OK)
                        return errvfsresult;
+               g_return_val_if_fail(NT_SUCCESS(err),GNOME_VFS_ERROR_GENERIC);
                }
 
        if (mask & (GNOME_VFS_SET_FILE_INFO_PERMISSIONS | GNOME_VFS_SET_FILE_INFO_TIME)) {
@@ -703,12 +699,10 @@ BOOLEAN errboolean;
                        &FileRenameInformation_struct,  /* FileInformation */
                        sizeof(FileRenameInformation_struct),   /* Length */
                        FileRenameInformation); /* FileInformationClass */
-       if (GNOME_VFS_OK!=(errvfsresult=captive_NTSTATUS_to_GnomeVFSResult(err))) {
-               g_assert_not_reached();
-               errvfsresult=GNOME_VFS_ERROR_GENERIC;
-               }
+       if (GNOME_VFS_OK!=(errvfsresult=captive_NTSTATUS_to_GnomeVFSResult(err)))
+               goto err_close_captive_target_directory_object;
+       g_return_val_if_fail(NT_SUCCESS(err),GNOME_VFS_ERROR_GENERIC);
 
-       /* PASSTHRU */
 
 err_close_captive_target_directory_object:
        g_object_unref(captive_target_directory_object);