FILE* f = NULL;
int r = 1;
+ DEBUG(pakfire, "Copying %s to %s\n", src, dst);
+
// Allocate reader
reader = archive_read_disk_new();
if (!reader)
// Copy payload
if (archive_entry_filetype(entry) == AE_IFREG) {
f = fopen(src, "r");
- if (!f)
+ if (!f) {
+ r = 1;
goto ERROR;
+ }
while (!feof(f)) {
size_t bytes_read = fread(buffer, 1, sizeof(buffer), f);
// Check if any error occured
if (ferror(f)) {
ERROR(pakfire, "Error reading from file: %m\n");
+ r = 1;
goto ERROR;
}
ssize_t bytes_written = archive_write_data(writer, buffer, bytes_read);
if (bytes_written < 0) {
ERROR(pakfire, "Error writing data: %s\n", archive_error_string(writer));
+ r = 1;
goto ERROR;
}
}