Lines Matching refs:archive

58 	FrArchive     *archive;  member
71 dropped_items_data_new (FrArchive *archive, in dropped_items_data_new() argument
84 data->archive = archive; in dropped_items_data_new()
132 FrArchive *archive; member
185 static void fr_archive_init (FrArchive *archive);
294 fr_archive_stoppable (FrArchive *archive, in fr_archive_stoppable() argument
297 g_signal_emit (G_OBJECT (archive), in fr_archive_stoppable()
305 fr_archive_stop (FrArchive *archive) in fr_archive_stop() argument
307 if (archive->process != NULL) { in fr_archive_stop()
308 fr_process_stop (archive->process); in fr_archive_stop()
312 if (! g_cancellable_is_cancelled (archive->priv->cancellable)) in fr_archive_stop()
313 g_cancellable_cancel (archive->priv->cancellable); in fr_archive_stop()
318 fr_archive_action_completed (FrArchive *archive, in fr_archive_action_completed() argument
323 archive->error.type = error_type; in fr_archive_action_completed()
324 archive->error.status = 0; in fr_archive_action_completed()
325 g_clear_error (&archive->error.gerror); in fr_archive_action_completed()
327 archive->error.gerror = g_error_new_literal (fr_error_quark (), in fr_archive_action_completed()
330 g_signal_emit (G_OBJECT (archive), in fr_archive_action_completed()
334 &archive->error); in fr_archive_action_completed()
340 FrArchive *archive) in archive_sticky_only_cb() argument
342 fr_archive_stoppable (archive, FALSE); in archive_sticky_only_cb()
348 fr_archive_init (FrArchive *archive) in fr_archive_init() argument
350 archive->file = NULL; in fr_archive_init()
351 archive->local_copy = NULL; in fr_archive_init()
352 archive->is_remote = FALSE; in fr_archive_init()
353 archive->command = NULL; in fr_archive_init()
354 archive->is_compressed_file = FALSE; in fr_archive_init()
355 archive->can_create_compressed_file = FALSE; in fr_archive_init()
357 archive->priv = g_new0 (FrArchivePrivData, 1); in fr_archive_init()
358 archive->priv->fake_load_func = NULL; in fr_archive_init()
359 archive->priv->fake_load_data = NULL; in fr_archive_init()
361 archive->priv->extraction_destination = NULL; in fr_archive_init()
362 archive->priv->temp_extraction_dir = NULL; in fr_archive_init()
363 archive->priv->cancellable = g_cancellable_new (); in fr_archive_init()
365 archive->process = fr_process_new (); in fr_archive_init()
366 g_signal_connect (G_OBJECT (archive->process), in fr_archive_init()
369 archive); in fr_archive_init()
405 fr_archive_set_uri (FrArchive *archive, in fr_archive_set_uri() argument
408 if ((archive->local_copy != NULL) && archive->is_remote) { in fr_archive_set_uri()
412 g_file_delete (archive->local_copy, NULL, &err); in fr_archive_set_uri()
418 temp_folder = g_file_get_parent (archive->local_copy); in fr_archive_set_uri()
428 if (archive->file != NULL) { in fr_archive_set_uri()
429 g_object_unref (archive->file); in fr_archive_set_uri()
430 archive->file = NULL; in fr_archive_set_uri()
432 if (archive->local_copy != NULL) { in fr_archive_set_uri()
433 g_object_unref (archive->local_copy); in fr_archive_set_uri()
434 archive->local_copy = NULL; in fr_archive_set_uri()
436 archive->content_type = NULL; in fr_archive_set_uri()
441 archive->file = g_file_new_for_uri (uri); in fr_archive_set_uri()
442 archive->is_remote = ! g_file_has_uri_scheme (archive->file, "file"); in fr_archive_set_uri()
443 if (archive->is_remote) in fr_archive_set_uri()
444 archive->local_copy = get_local_copy_for_file (archive->file); in fr_archive_set_uri()
446 archive->local_copy = g_file_dup (archive->file); in fr_archive_set_uri()
451 fr_archive_remove_temp_work_dir (FrArchive *archive) in fr_archive_remove_temp_work_dir() argument
453 if (archive->priv->temp_dir == NULL) in fr_archive_remove_temp_work_dir()
455 remove_local_directory (archive->priv->temp_dir); in fr_archive_remove_temp_work_dir()
456 g_free (archive->priv->temp_dir); in fr_archive_remove_temp_work_dir()
457 archive->priv->temp_dir = NULL; in fr_archive_remove_temp_work_dir()
464 FrArchive *archive; in fr_archive_finalize() local
469 archive = FR_ARCHIVE (object); in fr_archive_finalize()
471 fr_archive_set_uri (archive, NULL); in fr_archive_finalize()
472 fr_archive_remove_temp_work_dir (archive); in fr_archive_finalize()
473 if (archive->command != NULL) in fr_archive_finalize()
474 g_object_unref (archive->command); in fr_archive_finalize()
475 g_object_unref (archive->process); in fr_archive_finalize()
476 if (archive->priv->dropped_items_data != NULL) { in fr_archive_finalize()
477 dropped_items_data_free (archive->priv->dropped_items_data); in fr_archive_finalize()
478 archive->priv->dropped_items_data = NULL; in fr_archive_finalize()
480 g_free (archive->priv->temp_extraction_dir); in fr_archive_finalize()
481 g_free (archive->priv->extraction_destination); in fr_archive_finalize()
482 g_free (archive->priv); in fr_archive_finalize()
613 create_command_from_type (FrArchive *archive, in create_command_from_type() argument
621 archive->command = FR_COMMAND (g_object_new (command_type, in create_command_from_type()
622 "process", archive->process, in create_command_from_type()
626 if (! fr_command_is_capable_of (archive->command, requested_capabilities)) { in create_command_from_type()
627 g_object_unref (archive->command); in create_command_from_type()
628 archive->command = NULL; in create_command_from_type()
629 archive->is_compressed_file = FALSE; in create_command_from_type()
632archive->is_compressed_file = ! fr_command_is_capable_of (archive->command, FR_COMMAND_CAN_ARCHIVE… in create_command_from_type()
634 return (archive->command != NULL); in create_command_from_type()
639 create_command_to_load_archive (FrArchive *archive, in create_command_to_load_archive() argument
662 return create_command_from_type (archive, in create_command_to_load_archive()
670 create_command_to_create_archive (FrArchive *archive, in create_command_to_create_archive() argument
682 return create_command_from_type (archive, in create_command_to_create_archive()
692 FrArchive *archive) in action_started() argument
698 g_signal_emit (G_OBJECT (archive), in action_started()
709 fr_archive_copy_done (FrArchive *archive, in fr_archive_copy_done() argument
720 fr_archive_action_completed (archive, action, error_type, error_details); in fr_archive_copy_done()
730 fr_archive_copy_done (xfer_data->archive, xfer_data->action, error); in copy_to_remote_location_done()
746 g_signal_emit (G_OBJECT (xfer_data->archive), in copy_to_remote_location_progress()
754 copy_to_remote_location (FrArchive *archive, in copy_to_remote_location() argument
760 xfer_data->archive = archive; in copy_to_remote_location()
763 g_copy_file_async (archive->local_copy, in copy_to_remote_location()
764 archive->file, in copy_to_remote_location()
767 archive->priv->cancellable, in copy_to_remote_location()
779 move_here (FrArchive *archive) in move_here() argument
788 content_uri = get_dir_content_if_unique (archive->priv->extraction_destination); in move_here()
794 if (uricmp (parent, archive->priv->extraction_destination) == 0) { in move_here()
797 new_uri = get_alternative_uri_for_uri (archive->priv->extraction_destination); in move_here()
799 source = g_file_new_for_uri (archive->priv->extraction_destination); in move_here()
802 …g_warning ("could not rename %s to %s: %s", archive->priv->extraction_destination, new_uri, error-… in move_here()
808 g_free (archive->priv->extraction_destination); in move_here()
809 archive->priv->extraction_destination = new_uri; in move_here()
813 content_uri = get_dir_content_if_unique (archive->priv->extraction_destination); in move_here()
837 g_free (archive->priv->extraction_destination); in move_here()
838 archive->priv->extraction_destination = new_content_uri; in move_here()
850 FrArchive *archive = user_data; in copy_extracted_files_done() local
852 remove_local_directory (archive->priv->temp_extraction_dir); in copy_extracted_files_done()
853 g_free (archive->priv->temp_extraction_dir); in copy_extracted_files_done()
854 archive->priv->temp_extraction_dir = NULL; in copy_extracted_files_done()
856 fr_archive_action_completed (archive, in copy_extracted_files_done()
861 if ((error == NULL) && (archive->priv->extract_here)) in copy_extracted_files_done()
862 move_here (archive); in copy_extracted_files_done()
864 fr_archive_copy_done (archive, FR_ACTION_EXTRACTING_FILES, error); in copy_extracted_files_done()
877 FrArchive *archive = user_data; in copy_extracted_files_progress() local
879 g_signal_emit (G_OBJECT (archive), in copy_extracted_files_progress()
887 copy_extracted_files_to_destination (FrArchive *archive) in copy_extracted_files_to_destination() argument
889 g_directory_copy_async (archive->priv->temp_extraction_dir, in copy_extracted_files_to_destination()
890 archive->priv->extraction_destination, in copy_extracted_files_to_destination()
893 archive->priv->cancellable, in copy_extracted_files_to_destination()
895 archive, in copy_extracted_files_to_destination()
897 archive); in copy_extracted_files_to_destination()
905 fr_archive_change_name (FrArchive *archive, in fr_archive_change_name() argument
913 parent = g_file_get_parent (archive->file); in fr_archive_change_name()
914 g_object_unref (archive->file); in fr_archive_change_name()
915 archive->file = g_file_get_child (parent, name); in fr_archive_change_name()
918 parent = g_file_get_parent (archive->local_copy); in fr_archive_change_name()
919 g_object_unref (archive->local_copy); in fr_archive_change_name()
920 archive->local_copy = g_file_get_child (parent, name); in fr_archive_change_name()
929 FrArchive *archive) in action_performed() argument
938 if (! g_file_has_uri_scheme (archive->file, "file")) { in action_performed()
939 copy_to_remote_location (archive, action); in action_performed()
947 fr_archive_remove_temp_work_dir (archive); in action_performed()
948 if (archive->priv->continue_adding_dropped_items) { in action_performed()
949 add_dropped_items (archive->priv->dropped_items_data); in action_performed()
952 if (archive->priv->dropped_items_data != NULL) { in action_performed()
953 dropped_items_data_free (archive->priv->dropped_items_data); in action_performed()
954 archive->priv->dropped_items_data = NULL; in action_performed()
958 if (archive->command->multi_volume) in action_performed()
959 fr_archive_change_name (archive, archive->command->filename); in action_performed()
960 if (! g_file_has_uri_scheme (archive->file, "file")) { in action_performed()
961 copy_to_remote_location (archive, action); in action_performed()
969 if (archive->priv->remote_extraction) { in action_performed()
970 copy_extracted_files_to_destination (archive); in action_performed()
973 else if (archive->priv->extract_here) in action_performed()
974 move_here (archive); in action_performed()
981 if ((archive->priv->remote_extraction) && (archive->priv->temp_extraction_dir != NULL)) { in action_performed()
982 remove_local_directory (archive->priv->temp_extraction_dir); in action_performed()
983 g_free (archive->priv->temp_extraction_dir); in action_performed()
984 archive->priv->temp_extraction_dir = NULL; in action_performed()
987 if (archive->priv->extract_here) in action_performed()
988 remove_directory (archive->priv->extraction_destination); in action_performed()
995 if (archive->command->multi_volume) in action_performed()
996 fr_archive_change_name (archive, archive->command->filename); in action_performed()
997 fr_command_update_capabilities (archive->command); in action_performed()
998 if (! fr_command_is_capable_of (archive->command, FR_COMMAND_CAN_WRITE)) in action_performed()
999 archive->read_only = TRUE; in action_performed()
1007 g_signal_emit (G_OBJECT (archive), in action_performed()
1018 FrArchive *archive) in archive_progress_cb() argument
1020 g_signal_emit (G_OBJECT (archive), in archive_progress_cb()
1031 FrArchive *archive) in archive_message_cb() argument
1033 g_signal_emit (G_OBJECT (archive), in archive_message_cb()
1044 FrArchive *archive) in archive_working_archive_cb() argument
1046 g_signal_emit (G_OBJECT (archive), in archive_working_archive_cb()
1055 fr_archive_connect_to_command (FrArchive *archive) in fr_archive_connect_to_command() argument
1057 g_signal_connect (G_OBJECT (archive->command), in fr_archive_connect_to_command()
1060 archive); in fr_archive_connect_to_command()
1061 g_signal_connect (G_OBJECT (archive->command), in fr_archive_connect_to_command()
1064 archive); in fr_archive_connect_to_command()
1065 g_signal_connect (G_OBJECT (archive->command), in fr_archive_connect_to_command()
1068 archive); in fr_archive_connect_to_command()
1069 g_signal_connect (G_OBJECT (archive->command), in fr_archive_connect_to_command()
1072 archive); in fr_archive_connect_to_command()
1073 g_signal_connect (G_OBJECT (archive->command), in fr_archive_connect_to_command()
1076 archive); in fr_archive_connect_to_command()
1081 fr_archive_create (FrArchive *archive, in fr_archive_create() argument
1090 fr_archive_set_uri (archive, uri); in fr_archive_create()
1092 tmp_command = archive->command; in fr_archive_create()
1094 mime_type = get_mime_type_from_filename (archive->local_copy); in fr_archive_create()
1095 if (! create_command_to_create_archive (archive, mime_type)) { in fr_archive_create()
1096 archive->command = tmp_command; in fr_archive_create()
1101 g_signal_handlers_disconnect_by_data (tmp_command, archive); in fr_archive_create()
1105 fr_archive_connect_to_command (archive); in fr_archive_create()
1106 archive->read_only = FALSE; in fr_archive_create()
1113 fr_archive_set_fake_load_func (FrArchive *archive, in fr_archive_set_fake_load_func() argument
1117 archive->priv->fake_load_func = func; in fr_archive_set_fake_load_func()
1118 archive->priv->fake_load_data = data; in fr_archive_set_fake_load_func()
1123 fr_archive_fake_load (FrArchive *archive) in fr_archive_fake_load() argument
1125 if (archive->priv->fake_load_func != NULL) in fr_archive_fake_load()
1126 return (*archive->priv->fake_load_func) (archive, archive->priv->fake_load_data); in fr_archive_fake_load()
1136 load_local_archive (FrArchive *archive, in load_local_archive() argument
1142 if (! g_file_query_exists (archive->file, archive->priv->cancellable)) { in load_local_archive()
1143 fr_archive_action_completed (archive, in load_local_archive()
1150 archive->have_permissions = check_file_permissions (archive->file, W_OK); in load_local_archive()
1151 archive->read_only = ! archive->have_permissions; in load_local_archive()
1153 old_command = archive->command; in load_local_archive()
1155 mime_type = get_mime_type_from_filename (archive->local_copy); in load_local_archive()
1156 if (! create_command_to_load_archive (archive, mime_type)) { in load_local_archive()
1157 mime_type = get_mime_type_from_content (archive->local_copy); in load_local_archive()
1158 if (! create_command_to_load_archive (archive, mime_type)) { in load_local_archive()
1159 mime_type = get_mime_type_from_magic_numbers (archive->local_copy); in load_local_archive()
1160 if (! create_command_to_load_archive (archive, mime_type)) { in load_local_archive()
1161 archive->command = old_command; in load_local_archive()
1162 archive->content_type = mime_type; in load_local_archive()
1163 fr_archive_action_completed (archive, in load_local_archive()
1173 g_signal_handlers_disconnect_by_data (old_command, archive); in load_local_archive()
1177 fr_archive_connect_to_command (archive); in load_local_archive()
1178 archive->content_type = mime_type; in load_local_archive()
1179 if (! fr_command_is_capable_of (archive->command, FR_COMMAND_CAN_WRITE)) in load_local_archive()
1180 archive->read_only = TRUE; in load_local_archive()
1181 fr_archive_stoppable (archive, TRUE); in load_local_archive()
1182 archive->command->fake_load = fr_archive_fake_load (archive); in load_local_archive()
1184 fr_archive_action_completed (archive, in load_local_archive()
1191 fr_process_clear (archive->process); in load_local_archive()
1192 g_object_set (archive->command, in load_local_archive()
1193 "file", archive->local_copy, in load_local_archive()
1196 fr_command_list (archive->command); in load_local_archive()
1207 fr_archive_copy_done (xfer_data->archive, FR_ACTION_LOADING_ARCHIVE, error); in copy_remote_file_done()
1209 load_local_archive (xfer_data->archive, xfer_data->password); in copy_remote_file_done()
1225 g_signal_emit (G_OBJECT (xfer_data->archive), in copy_remote_file_progress()
1244 copy_remote_file (FrArchive *archive, in copy_remote_file() argument
1249 if (! g_file_query_exists (archive->file, archive->priv->cancellable)) { in copy_remote_file()
1253 fr_archive_copy_done (archive, FR_ACTION_LOADING_ARCHIVE, error); in copy_remote_file()
1260 xfer_data->archive = archive; in copy_remote_file()
1261 xfer_data->uri = g_file_get_uri (archive->file); in copy_remote_file()
1265 if (! archive->is_remote) { in copy_remote_file()
1270 g_copy_file_async (archive->file, in copy_remote_file()
1271 archive->local_copy, in copy_remote_file()
1274 archive->priv->cancellable, in copy_remote_file()
1283 fr_archive_load (FrArchive *archive, in fr_archive_load() argument
1287 g_return_val_if_fail (archive != NULL, FALSE); in fr_archive_load()
1289 g_signal_emit (G_OBJECT (archive), in fr_archive_load()
1294 fr_archive_set_uri (archive, uri); in fr_archive_load()
1295 copy_remote_file (archive, password); in fr_archive_load()
1302 fr_archive_load_local (FrArchive *archive, in fr_archive_load_local() argument
1306 g_return_val_if_fail (archive != NULL, FALSE); in fr_archive_load_local()
1308 g_signal_emit (G_OBJECT (archive), in fr_archive_load_local()
1313 fr_archive_set_uri (archive, uri); in fr_archive_load_local()
1314 copy_remote_file (archive, password); in fr_archive_load_local()
1321 fr_archive_reload (FrArchive *archive, in fr_archive_reload() argument
1326 g_return_if_fail (archive != NULL); in fr_archive_reload()
1327 g_return_if_fail (archive->file != NULL); in fr_archive_reload()
1329 fr_archive_stoppable (archive, TRUE); in fr_archive_reload()
1330 archive->command->fake_load = fr_archive_fake_load (archive); in fr_archive_reload()
1332 uri = g_file_get_uri (archive->file); in fr_archive_reload()
1333 fr_archive_load (archive, uri, password); in fr_archive_reload()
1387 find_file_in_archive (FrArchive *archive, in find_file_in_archive() argument
1394 i = find_path_in_file_data_array (archive->command->files, path); in find_file_in_archive()
1396 return (FileData *) g_ptr_array_index (archive->command->files, i); in find_file_in_archive()
1402 static void delete_from_archive (FrArchive *archive, GList *file_list);
1406 newer_files_only (FrArchive *archive, in newer_files_only() argument
1419 fdata = find_file_in_archive (archive, filename); in newer_files_only()
1535 fr_archive_add (FrArchive *archive, in fr_archive_add() argument
1558 if (archive->read_only) in fr_archive_add()
1561 g_object_set (archive->command, in fr_archive_add()
1568 fr_archive_stoppable (archive, TRUE); in fr_archive_add()
1595 if (update && ! archive->command->propAddCanUpdate) { in fr_archive_add()
1599 new_file_list = newer_files_only (archive, tmp_file_list, tmp_base_dir); in fr_archive_add()
1610 archive->process->error.type = FR_PROC_ERROR_NONE; in fr_archive_add()
1611 g_signal_emit_by_name (G_OBJECT (archive->process), in fr_archive_add()
1613 &archive->process->error); in fr_archive_add()
1617archive->command->creating_archive = ! g_file_query_exists (archive->local_copy, archive->priv->ca… in fr_archive_add()
1631 local_copy_parent = g_file_get_parent (archive->local_copy); in fr_archive_add()
1634 archive_filename = g_file_get_path (archive->local_copy); in fr_archive_add()
1637 g_object_set (archive->command, "file", tmp_file, NULL); in fr_archive_add()
1639 if (! archive->command->creating_archive) { in fr_archive_add()
1642 fr_process_begin_command (archive->process, "cp"); in fr_archive_add()
1643 fr_process_add_arg (archive->process, "-f"); in fr_archive_add()
1644 fr_process_add_arg (archive->process, archive_filename); in fr_archive_add()
1645 fr_process_add_arg (archive->process, tmp_archive_filename); in fr_archive_add()
1646 fr_process_end_command (archive->process); in fr_archive_add()
1654 fr_command_uncompress (archive->command); in fr_archive_add()
1663 if ((! update && ! archive->command->propAddCanReplace) in fr_archive_add()
1664 || (update && ! archive->command->propAddCanUpdate)) in fr_archive_add()
1670 if (find_file_in_archive (archive, filename)) in fr_archive_add()
1677 delete_from_archive (archive, del_list); in fr_archive_add()
1678 fr_process_set_ignore_error (archive->process, TRUE); in fr_archive_add()
1685 fr_command_set_n_files (archive->command, g_list_length (new_file_list)); in fr_archive_add()
1687 if (archive->command->propListFromFile in fr_archive_add()
1688 && (archive->command->n_files > LIST_LENGTH_TO_USE_FILE)) in fr_archive_add()
1695 archive->process->error.type = FR_PROC_ERROR_GENERIC; in fr_archive_add()
1696 archive->process->error.status = 0; in fr_archive_add()
1697 archive->process->error.gerror = g_error_copy (error); in fr_archive_add()
1698 g_signal_emit_by_name (G_OBJECT (archive->process), in fr_archive_add()
1700 &archive->process->error); in fr_archive_add()
1705 fr_command_add (archive->command, in fr_archive_add()
1714 fr_process_begin_command (archive->process, "rm"); in fr_archive_add()
1715 fr_process_set_working_dir (archive->process, g_get_tmp_dir()); in fr_archive_add()
1716 fr_process_set_sticky (archive->process, TRUE); in fr_archive_add()
1717 fr_process_add_arg (archive->process, "-rf"); in fr_archive_add()
1718 fr_process_add_arg (archive->process, list_dir); in fr_archive_add()
1719 fr_process_end_command (archive->process); in fr_archive_add()
1736 fr_command_add (archive->command, in fr_archive_add()
1751 fr_command_recompress (archive->command); in fr_archive_add()
1755 fr_process_begin_command (archive->process, "mv"); in fr_archive_add()
1756 fr_process_add_arg (archive->process, "-f"); in fr_archive_add()
1757 fr_process_add_arg (archive->process, tmp_archive_filename); in fr_archive_add()
1758 fr_process_add_arg (archive->process, archive_filename); in fr_archive_add()
1759 fr_process_end_command (archive->process); in fr_archive_add()
1763 fr_process_begin_command (archive->process, "rm"); in fr_archive_add()
1764 fr_process_set_working_dir (archive->process, g_get_tmp_dir()); in fr_archive_add()
1765 fr_process_set_sticky (archive->process, TRUE); in fr_archive_add()
1766 fr_process_add_arg (archive->process, "-rf"); in fr_archive_add()
1767 fr_process_add_arg (archive->process, tmp_archive_dir); in fr_archive_add()
1768 fr_process_end_command (archive->process); in fr_archive_add()
1773 fr_process_begin_command (archive->process, "rm"); in fr_archive_add()
1774 fr_process_set_working_dir (archive->process, g_get_tmp_dir()); in fr_archive_add()
1775 fr_process_set_sticky (archive->process, TRUE); in fr_archive_add()
1776 fr_process_add_arg (archive->process, "-rf"); in fr_archive_add()
1777 fr_process_add_arg (archive->process, tmp_base_dir); in fr_archive_add()
1778 fr_process_end_command (archive->process); in fr_archive_add()
1790 fr_archive_add_local_files (FrArchive *archive, in fr_archive_add_local_files() argument
1800 fr_process_clear (archive->process); in fr_archive_add_local_files()
1801 fr_archive_add (archive, in fr_archive_add_local_files()
1811 fr_process_start (archive->process); in fr_archive_add_local_files()
1821 fr_archive_copy_done (xfer_data->archive, FR_ACTION_COPYING_FILES_FROM_REMOTE, error); in copy_remote_files_done()
1824 fr_archive_add_local_files (xfer_data->archive, in copy_remote_files_done()
1848 g_signal_emit (G_OBJECT (xfer_data->archive), in copy_remote_files_progress()
1856 copy_remote_files (FrArchive *archive, in copy_remote_files() argument
1890 fr_archive_action_completed (archive, in copy_remote_files()
1913 xfer_data->archive = archive; in copy_remote_files()
1924 g_signal_emit (G_OBJECT (archive), in copy_remote_files()
1933 archive->priv->cancellable, in copy_remote_files()
1945 fr_archive_get_temp_work_dir (FrArchive *archive) in fr_archive_get_temp_work_dir() argument
1947 fr_archive_remove_temp_work_dir (archive); in fr_archive_get_temp_work_dir()
1948 archive->priv->temp_dir = get_temp_work_dir (NULL); in fr_archive_get_temp_work_dir()
1949 return archive->priv->temp_dir; in fr_archive_get_temp_work_dir()
1954 fr_archive_add_files (FrArchive *archive, in fr_archive_add_files() argument
1966 fr_archive_add_local_files (archive, in fr_archive_add_files()
1978 copy_remote_files (archive, in fr_archive_add_files()
1987 fr_archive_get_temp_work_dir (archive)); in fr_archive_add_files()
1995 FrArchive *archive; member
2023 FrArchive *archive = aww_data->archive; in add_with_wildcard__step2() local
2026 fr_archive_action_completed (archive, in add_with_wildcard__step2()
2033 fr_archive_action_completed (archive, in add_with_wildcard__step2()
2039 fr_archive_add_files (aww_data->archive, in add_with_wildcard__step2()
2056 fr_archive_add_with_wildcard (FrArchive *archive, in fr_archive_add_with_wildcard() argument
2071 g_return_if_fail (! archive->read_only); in fr_archive_add_with_wildcard()
2074 aww_data->archive = archive; in fr_archive_add_with_wildcard()
2083 g_signal_emit (G_OBJECT (archive), in fr_archive_add_with_wildcard()
2098 archive->priv->cancellable, in fr_archive_add_with_wildcard()
2108 FrArchive *archive; member
2136 FrArchive *archive = ad_data->archive; in add_directory__step2() local
2139 fr_archive_action_completed (archive, in add_directory__step2()
2146 fr_archive_action_completed (archive, in add_directory__step2()
2151 if (archive->command->propAddCanStoreFolders) in add_directory__step2()
2157 fr_archive_add_files (ad_data->archive, in add_directory__step2()
2174 fr_archive_add_directory (FrArchive *archive, in fr_archive_add_directory() argument
2187 g_return_if_fail (! archive->read_only); in fr_archive_add_directory()
2190 ad_data->archive = archive; in fr_archive_add_directory()
2199 g_signal_emit (G_OBJECT (archive), in fr_archive_add_directory()
2207 archive->priv->cancellable, in fr_archive_add_directory()
2214 fr_archive_add_items (FrArchive *archive, in fr_archive_add_items() argument
2227 g_return_if_fail (! archive->read_only); in fr_archive_add_items()
2230 ad_data->archive = archive; in fr_archive_add_items()
2239 g_signal_emit (G_OBJECT (archive), in fr_archive_add_items()
2246 archive->priv->cancellable, in fr_archive_add_items()
2295 FrArchive *archive = data->archive; in add_dropped_items() local
2300 dropped_items_data_free (archive->priv->dropped_items_data); in add_dropped_items()
2301 archive->priv->dropped_items_data = NULL; in add_dropped_items()
2302 fr_archive_action_completed (archive, in add_dropped_items()
2315 fr_archive_add_items (data->archive, in add_dropped_items()
2326 dropped_items_data_free (archive->priv->dropped_items_data); in add_dropped_items()
2327 archive->priv->dropped_items_data = NULL; in add_dropped_items()
2343 archive->priv->continue_adding_dropped_items = TRUE; in add_dropped_items()
2346 fr_archive_add_directory (archive, in add_dropped_items()
2377 fr_archive_add_files (archive, in add_dropped_items()
2396 fr_archive_stoppable (archive, FALSE); in add_dropped_items()
2397archive->command->creating_archive = ! g_file_query_exists (archive->local_copy, archive->priv->ca… in add_dropped_items()
2398 g_object_set (archive->command, in add_dropped_items()
2399 "file", archive->local_copy, in add_dropped_items()
2405 fr_process_clear (archive->process); in add_dropped_items()
2406 fr_command_uncompress (archive->command); in add_dropped_items()
2414 fr_command_add (archive->command, in add_dropped_items()
2423 fr_command_recompress (archive->command); in add_dropped_items()
2424 fr_process_start (archive->process); in add_dropped_items()
2432 fr_archive_add_dropped_items (FrArchive *archive, in fr_archive_add_dropped_items() argument
2445 if (archive->read_only) { in fr_archive_add_dropped_items()
2446 fr_archive_action_completed (archive, in fr_archive_add_dropped_items()
2449 …! archive->have_permissions ? _("You don't have the right permissions.") : _("This archive type ca… in fr_archive_add_dropped_items()
2454 archive_uri = g_file_get_uri (archive->file); in fr_archive_add_dropped_items()
2458 fr_archive_action_completed (archive, in fr_archive_add_dropped_items()
2467 if (archive->priv->dropped_items_data != NULL) in fr_archive_add_dropped_items()
2468 dropped_items_data_free (archive->priv->dropped_items_data); in fr_archive_add_dropped_items()
2469 archive->priv->dropped_items_data = dropped_items_data_new ( in fr_archive_add_dropped_items()
2470 archive, in fr_archive_add_dropped_items()
2479 add_dropped_items (archive->priv->dropped_items_data); in fr_archive_add_dropped_items()
2506 archive_type_has_issues_deleting_non_empty_folders (FrArchive *archive) in archive_type_has_issues_deleting_non_empty_folders() argument
2508 return ! archive->command->propCanDeleteNonEmptyFolders; in archive_type_has_issues_deleting_non_empty_folders()
2513 delete_from_archive (FrArchive *archive, in delete_from_archive() argument
2526 for (i = 0; i < archive->command->files->len; i++) { in delete_from_archive()
2527 FileData *fdata = g_ptr_array_index (archive->command->files, i); in delete_from_archive()
2534 if (archive_type_has_issues_deleting_non_empty_folders (archive)) { in delete_from_archive()
2567 fr_command_set_n_files (archive->command, g_list_length (tmp_file_list)); in delete_from_archive()
2569 if (archive->command->propListFromFile in delete_from_archive()
2570 && (archive->command->n_files > LIST_LENGTH_TO_USE_FILE)) in delete_from_archive()
2576 fr_command_delete (archive->command, in delete_from_archive()
2582 fr_process_begin_command (archive->process, "rm"); in delete_from_archive()
2583 fr_process_set_working_dir (archive->process, g_get_tmp_dir()); in delete_from_archive()
2584 fr_process_set_sticky (archive->process, TRUE); in delete_from_archive()
2585 fr_process_add_arg (archive->process, "-rf"); in delete_from_archive()
2586 fr_process_add_arg (archive->process, list_dir); in delete_from_archive()
2587 fr_process_end_command (archive->process); in delete_from_archive()
2611 fr_command_delete (archive->command, NULL, chunk_list); in delete_from_archive()
2621 fr_archive_remove (FrArchive *archive, in fr_archive_remove() argument
2629 g_return_if_fail (archive != NULL); in fr_archive_remove()
2631 if (archive->read_only) in fr_archive_remove()
2634 fr_archive_stoppable (archive, TRUE); in fr_archive_remove()
2635 archive->command->creating_archive = FALSE; in fr_archive_remove()
2636 g_object_set (archive->command, "compression", compression, NULL); in fr_archive_remove()
2650 local_copy_parent = g_file_get_parent (archive->local_copy); in fr_archive_remove()
2653 archive_filename = g_file_get_path (archive->local_copy); in fr_archive_remove()
2656 g_object_set (archive->command, "file", tmp_file, NULL); in fr_archive_remove()
2658 if (! archive->command->creating_archive) { in fr_archive_remove()
2661 fr_process_begin_command (archive->process, "cp"); in fr_archive_remove()
2662 fr_process_add_arg (archive->process, "-f"); in fr_archive_remove()
2663 fr_process_add_arg (archive->process, archive_filename); in fr_archive_remove()
2664 fr_process_add_arg (archive->process, tmp_archive_filename); in fr_archive_remove()
2665 fr_process_end_command (archive->process); in fr_archive_remove()
2675 fr_command_uncompress (archive->command); in fr_archive_remove()
2676 delete_from_archive (archive, file_list); in fr_archive_remove()
2677 fr_command_recompress (archive->command); in fr_archive_remove()
2681 fr_process_begin_command (archive->process, "mv"); in fr_archive_remove()
2682 fr_process_add_arg (archive->process, "-f"); in fr_archive_remove()
2683 fr_process_add_arg (archive->process, tmp_archive_filename); in fr_archive_remove()
2684 fr_process_add_arg (archive->process, archive_filename); in fr_archive_remove()
2685 fr_process_end_command (archive->process); in fr_archive_remove()
2689 fr_process_begin_command (archive->process, "rm"); in fr_archive_remove()
2690 fr_process_set_working_dir (archive->process, g_get_tmp_dir()); in fr_archive_remove()
2691 fr_process_set_sticky (archive->process, TRUE); in fr_archive_remove()
2692 fr_process_add_arg (archive->process, "-rf"); in fr_archive_remove()
2693 fr_process_add_arg (archive->process, tmp_archive_dir); in fr_archive_remove()
2694 fr_process_end_command (archive->process); in fr_archive_remove()
2706 move_files_to_dir (FrArchive *archive, in move_files_to_dir() argument
2729 fr_process_begin_command (archive->process, "cp"); in move_files_to_dir()
2730 fr_process_add_arg (archive->process, "-R"); in move_files_to_dir()
2732 fr_process_add_arg (archive->process, "-f"); in move_files_to_dir()
2734 fr_process_add_arg (archive->process, "-n"); in move_files_to_dir()
2736 fr_process_add_arg_concat (archive->process, source_dir, filename, NULL); in move_files_to_dir()
2738 fr_process_add_arg_concat (archive->process, source_dir, "/", filename, NULL); in move_files_to_dir()
2739 fr_process_add_arg (archive->process, dest_dir); in move_files_to_dir()
2740 fr_process_end_command (archive->process); in move_files_to_dir()
2757 fr_process_begin_command (archive->process, "mv"); in move_files_to_dir()
2759 fr_process_add_arg (archive->process, "-f"); in move_files_to_dir()
2761 fr_process_add_arg (archive->process, "-n"); in move_files_to_dir()
2766 fr_process_add_arg_concat (archive->process, source_dir, filename, NULL); in move_files_to_dir()
2768 fr_process_add_arg_concat (archive->process, source_dir, "/", filename, NULL); in move_files_to_dir()
2770 fr_process_add_arg (archive->process, dest_dir); in move_files_to_dir()
2771 fr_process_end_command (archive->process); in move_files_to_dir()
2778 move_files_in_chunks (FrArchive *archive, in move_files_in_chunks() argument
2806 move_files_to_dir (archive, chunk_list, temp_dir, dest_dir, overwrite); in move_files_in_chunks()
2813 extract_from_archive (FrArchive *archive, in extract_from_archive() argument
2821 FrCommand *command = archive->command; in extract_from_archive()
2854 fr_process_begin_command (archive->process, "rm"); in extract_from_archive()
2855 fr_process_set_working_dir (archive->process, g_get_tmp_dir()); in extract_from_archive()
2856 fr_process_set_sticky (archive->process, TRUE); in extract_from_archive()
2857 fr_process_add_arg (archive->process, "-rf"); in extract_from_archive()
2858 fr_process_add_arg (archive->process, list_dir); in extract_from_archive()
2859 fr_process_end_command (archive->process); in extract_from_archive()
2988 archive_type_has_issues_extracting_non_empty_folders (FrArchive *archive) in archive_type_has_issues_extracting_non_empty_folders() argument
2992 return ! archive->command->propCanExtractNonEmptyFolders; in archive_type_has_issues_extracting_non_empty_folders()
3044 fr_archive_extract_to_local (FrArchive *archive, in fr_archive_extract_to_local() argument
3061 g_return_if_fail (archive != NULL); in fr_archive_extract_to_local()
3063 fr_archive_stoppable (archive, TRUE); in fr_archive_extract_to_local()
3064 g_object_set (archive->command, "file", archive->local_copy, NULL); in fr_archive_extract_to_local()
3074 && ! (! overwrite && ! archive->command->propExtractCanAvoidOverwrite) in fr_archive_extract_to_local()
3075 && ! (skip_older && ! archive->command->propExtractCanSkipOlder) in fr_archive_extract_to_local()
3076 && ! (junk_paths && ! archive->command->propExtractCanJunkPaths)); in fr_archive_extract_to_local()
3079 if (extract_all && (! all_options_supported || ! archive->command->propCanExtractAll)) { in fr_archive_extract_to_local()
3083 for (i = 0; i < archive->command->files->len; i++) { in fr_archive_extract_to_local()
3084 FileData *fdata = g_ptr_array_index (archive->command->files, i); in fr_archive_extract_to_local()
3091 fr_command_set_n_files (archive->command, archive->command->n_regular_files); in fr_archive_extract_to_local()
3093 fr_command_set_n_files (archive->command, g_list_length (file_list)); in fr_archive_extract_to_local()
3098 if (! extract_all && archive_type_has_issues_extracting_non_empty_folders (archive)) { in fr_archive_extract_to_local()
3109 extract_from_archive (archive, in fr_archive_extract_to_local()
3130 && ! archive->command->propExtractCanJunkPaths))); in fr_archive_extract_to_local()
3136 for (i = 0; i < archive->command->files->len; i++) { in fr_archive_extract_to_local()
3137 FileData *fdata = g_ptr_array_index (archive->command->files, i); in fr_archive_extract_to_local()
3151 fdata = find_file_in_archive (archive, archive_list_filename); in fr_archive_extract_to_local()
3156 if (archive_type_has_issues_extracting_non_empty_folders (archive) in fr_archive_extract_to_local()
3178 if (! archive->command->propExtractCanSkipOlder in fr_archive_extract_to_local()
3184 if (! archive->command->propExtractCanAvoidOverwrite in fr_archive_extract_to_local()
3205 extract_from_archive (archive, in fr_archive_extract_to_local()
3214 …GList *tmp_list = compute_list_base_path (base_dir, filtered, junk_paths, archive->command->propEx… in fr_archive_extract_to_local()
3219 move_files_in_chunks (archive, in fr_archive_extract_to_local()
3227 fr_process_begin_command (archive->process, "rm"); in fr_archive_extract_to_local()
3228 fr_process_add_arg (archive->process, "-rf"); in fr_archive_extract_to_local()
3229 fr_process_add_arg (archive->process, temp_dir); in fr_archive_extract_to_local()
3230 fr_process_end_command (archive->process); in fr_archive_extract_to_local()
3235 extract_from_archive (archive, in fr_archive_extract_to_local()
3251 fr_archive_extract (FrArchive *archive, in fr_archive_extract() argument
3260 g_free (archive->priv->extraction_destination); in fr_archive_extract()
3261 archive->priv->extraction_destination = g_strdup (destination); in fr_archive_extract()
3263 g_free (archive->priv->temp_extraction_dir); in fr_archive_extract()
3264 archive->priv->temp_extraction_dir = NULL; in fr_archive_extract()
3266 archive->priv->remote_extraction = ! uri_is_local (destination); in fr_archive_extract()
3267 if (archive->priv->remote_extraction) { in fr_archive_extract()
3268 archive->priv->temp_extraction_dir = get_temp_work_dir (NULL); in fr_archive_extract()
3269 fr_archive_extract_to_local (archive, in fr_archive_extract()
3271 archive->priv->temp_extraction_dir, in fr_archive_extract()
3282 fr_archive_extract_to_local (archive, in fr_archive_extract()
3371 fr_archive_extract_here (FrArchive *archive, in fr_archive_extract_here() argument
3380 destination = get_extract_here_destination (archive->file, &error); in fr_archive_extract_here()
3382 fr_archive_action_completed (archive, in fr_archive_extract_here()
3390 archive->priv->extract_here = TRUE; in fr_archive_extract_here()
3391 fr_archive_extract (archive, in fr_archive_extract_here()
3407 fr_archive_get_last_extraction_destination (FrArchive *archive) in fr_archive_get_last_extraction_destination() argument
3409 return archive->priv->extraction_destination; in fr_archive_get_last_extraction_destination()
3414 fr_archive_test (FrArchive *archive, in fr_archive_test() argument
3417 fr_archive_stoppable (archive, TRUE); in fr_archive_test()
3419 g_object_set (archive->command, in fr_archive_test()
3420 "file", archive->local_copy, in fr_archive_test()
3423 fr_process_clear (archive->process); in fr_archive_test()
3424 fr_command_set_n_files (archive->command, 0); in fr_archive_test()
3425 fr_command_test (archive->command); in fr_archive_test()
3426 fr_process_start (archive->process); in fr_archive_test()