X-Git-Url: http://git.archive.openwrt.org/?p=project%2Fmake_ext4fs.git;a=blobdiff_plain;f=libsparse%2Foutput_file.c;h=a581c457cc001b40edd71cb99318e1a530a4f53a;hp=ba92563dd3da11117c8f8308ba805165289dfdc7;hb=98e3d5c1ceddd4a32b92c1cfafe929fe006fb98c;hpb=fe8f2ce6f493b26c21d7d5fa1a5ffe248945721f diff --git a/libsparse/output_file.c b/libsparse/output_file.c index ba92563..a581c45 100644 --- a/libsparse/output_file.c +++ b/libsparse/output_file.c @@ -699,39 +699,16 @@ int write_fd_chunk(struct output_file *out, unsigned int len, aligned_diff = offset - aligned_offset; buffer_size = len + aligned_diff; -#ifndef USE_MINGW char *data = mmap64(NULL, buffer_size, PROT_READ, MAP_SHARED, fd, aligned_offset); if (data == MAP_FAILED) { return -errno; } ptr = data + aligned_diff; -#else - off64_t pos; - char *data = malloc(len); - if (!data) { - return -errno; - } - pos = lseek64(fd, offset, SEEK_SET); - if (pos < 0) { - free(data); - return -errno; - } - ret = read_all(fd, data, len); - if (ret < 0) { - free(data); - return ret; - } - ptr = data; -#endif ret = out->sparse_ops->write_data_chunk(out, len, ptr); -#ifndef USE_MINGW munmap(data, buffer_size); -#else - free(data); -#endif return ret; }