Implemented sub-second W32 filesystem interface by new: CaptiveFileInfoObject
[captive.git] / src / client / bug-replay / main.c
index 2c4b5cf..4e6d5c3 100644 (file)
@@ -388,11 +388,13 @@ CaptiveVfsVolumeInfo volume_info;
                        continue;
                        }
                if (!xmlStrcmp(xml_node->name,BAD_CAST "directory_read")) {
-GnomeVFSFileInfo file_info;
+CaptiveFileInfoObject *captive_file_info_object;
 
                        captive_directory_object=CAPTIVE_DIRECTORY_OBJECT(object);
-                       errgnomevfsresult=captive_directory_read(captive_directory_object,&file_info);
+                       errgnomevfsresult=captive_directory_read(captive_directory_object,&captive_file_info_object);
                        g_assert(!strcmp(gnome_vfs_result_to_string(errgnomevfsresult),GET_PROP_STRING("result")));
+                       if (GNOME_VFS_OK==errgnomevfsresult)
+                               g_object_unref(captive_file_info_object);
                        continue;
                        }
                if (!xmlStrcmp(xml_node->name,BAD_CAST "directory_remove")) {
@@ -492,23 +494,26 @@ GnomeVFSFileOffset offset;
                        continue;
                        }
                if (!xmlStrcmp(xml_node->name,BAD_CAST "file_file_info_get")) {
-GnomeVFSFileInfo file_info;
+CaptiveFileInfoObject *captive_file_info_object;
 
                        captive_file_object=CAPTIVE_FILE_OBJECT(object);
-                       errgnomevfsresult=captive_file_file_info_get(captive_file_object,&file_info);
+                       errgnomevfsresult=captive_file_file_info_get(captive_file_object,&captive_file_info_object);
                        g_assert(!strcmp(gnome_vfs_result_to_string(errgnomevfsresult),GET_PROP_STRING("result")));
+                       if (GNOME_VFS_OK==errgnomevfsresult)
+                               g_object_unref(captive_file_info_object);
                        continue;
                        }
                if (!xmlStrcmp(xml_node->name,BAD_CAST "file_file_info_set")) {
-GnomeVFSFileInfo file_info;
+CaptiveFileInfoObject *captive_file_info_object;
 
                        captive_file_object=CAPTIVE_FILE_OBJECT(object);
-                       /* FIXME: We do not have 'file_info' content in the bug file! */
-                       errgnomevfsresult=captive_file_file_info_get(captive_file_object,&file_info);
+                       /* FIXME: We do not have 'captive_file_info_object' content in the bug file! */
+                       errgnomevfsresult=captive_file_file_info_get(captive_file_object,&captive_file_info_object);
                        g_assert(errgnomevfsresult==GNOME_VFS_OK);
-                       errgnomevfsresult=captive_file_file_info_set(captive_file_object,&file_info,
+                       errgnomevfsresult=captive_file_file_info_set(captive_file_object,captive_file_info_object,
                                        GET_PROP_GINT64("mask"));
                        g_assert(!strcmp(gnome_vfs_result_to_string(errgnomevfsresult),GET_PROP_STRING("result")));
+                       g_object_unref(captive_file_info_object);
                        continue;
                        }
                if (!xmlStrcmp(xml_node->name,BAD_CAST "file_truncate")) {