]> git.ipfire.org Git - thirdparty/libarchive.git/commitdiff
Refactor the test suite's read_open_memory a bit.
authorTim Kientzle <kientzle@gmail.com>
Sun, 20 Nov 2011 07:27:38 +0000 (02:27 -0500)
committerTim Kientzle <kientzle@gmail.com>
Sun, 20 Nov 2011 07:27:38 +0000 (02:27 -0500)
SVN-Revision: 3810

libarchive/test/read_open_memory.c

index 960cf63a0208c5e5dfdefd42b2b7bef1f3d0079e..c77cd5b5d605a5091db42c3b8b0a3c6d9acf0aec 100644 (file)
@@ -90,12 +90,14 @@ read_open_memory_internal(struct archive *a, void *buff,
        mine->copy_buff_size = read_size + mine->copy_buff_offset * 2;
        mine->copy_buff = malloc(mine->copy_buff_size);
        memset(mine->copy_buff, 0xA5, mine->copy_buff_size);
-       if (fullapi)
-               return (archive_read_open2(a, mine, memory_read_open,
-                           memory_read, memory_read_skip, memory_read_close));
-       else
-               return (archive_read_open2(a, mine, NULL,
-                           memory_read, NULL, memory_read_close));
+       if (fullapi) {
+               archive_read_set_open_callback(a, memory_read_open);
+               archive_read_set_skip_callback(a, memory_read_skip);
+       }
+       archive_read_set_read_callback(a, memory_read);
+       archive_read_set_close_callback(a, memory_read_close);
+       archive_read_set_callback_data(a, mine);
+       return archive_read_open1(a);
 }
 
 /*