summaryrefslogtreecommitdiff
path: root/community/packagekit/libarchive.patch
diff options
context:
space:
mode:
Diffstat (limited to 'community/packagekit/libarchive.patch')
-rw-r--r--community/packagekit/libarchive.patch39
1 files changed, 39 insertions, 0 deletions
diff --git a/community/packagekit/libarchive.patch b/community/packagekit/libarchive.patch
new file mode 100644
index 000000000..083a9433a
--- /dev/null
+++ b/community/packagekit/libarchive.patch
@@ -0,0 +1,39 @@
+diff -Nru a/lib/packagekit-glib2/pk-service-pack.c b/lib/packagekit-glib2/pk-service-pack.c
+--- a/lib/packagekit-glib2/pk-service-pack.c 2012-08-17 00:36:38.000000000 +1200
++++ b/lib/packagekit-glib2/pk-service-pack.c 2013-03-01 19:00:08.773738469 +1300
+@@ -207,7 +207,7 @@
+ archive_read_support_format_tar (arch);
+
+ /* open the tar file */
+- r = archive_read_open_file (arch, filename, 10240);
++ r = archive_read_open_filename (arch, filename, 10240);
+ if (r) {
+ g_set_error (error, PK_SERVICE_PACK_ERROR, PK_SERVICE_PACK_ERROR_FAILED_EXTRACTION,
+ "cannot open: %s", archive_error_string (arch));
+@@ -246,7 +246,7 @@
+ /* close the archive */
+ if (arch != NULL) {
+ archive_read_close (arch);
+- archive_read_finish (arch);
++ archive_read_free (arch);
+ }
+
+ /* switch back to PWD */
+@@ -572,7 +572,7 @@
+
+ /* we can only write tar achives */
+ arch = archive_write_new ();
+- archive_write_set_compression_none (arch);
++ archive_write_add_filter_none (arch);
+ archive_write_set_format_ustar (arch);
+ archive_write_open_filename (arch, state->filename);
+
+@@ -596,7 +596,7 @@
+ /* close the archive */
+ if (arch != NULL) {
+ archive_write_close (arch);
+- archive_write_finish (arch);
++ archive_write_free (arch);
+ }
+ return ret;
+ }