|
|
# --- SDE-COPYRIGHT-NOTE-BEGIN --- # This copyright note is auto-generated by ./scripts/Create-CopyPatch. # # Filename: package/.../librsync/02-4gb.patch # Copyright (C) 2011 The OpenSDE Project # # More information can be found in the files COPYING and README. # # This patch file is dual-licensed. It is available under the license the # patched project is licensed under, as long as it is an OpenSource license # as defined at http://www.opensource.org/ (e.g. BSD, X11) or under the terms # of the GNU General Public License as published by the Free Software # Foundation; either version 2 of the License, or (at your option) any later # version. # --- SDE-COPYRIGHT-NOTE-END ---
Author: n/a Description: Fixes problem when transfering >4GB from a 32bit to 64bit host (Closes: #355178).
diff -Naurp librsync.orig/mdfour.h librsync/mdfour.h
--- librsync.orig/mdfour.h 2008-06-21 14:50:55.000000000 +0200
+++ librsync/mdfour.h 2008-06-24 10:26:49.000000000 +0200
@@ -24,7 +24,7 @@
#include "types.h" struct rs_mdfour { - int A, B, C, D;
+ unsigned int A, B, C, D;
#if HAVE_UINT64 uint64_t totalN; #else diff -Naurp librsync.orig/patch.c librsync/patch.c
--- librsync.orig/patch.c 2008-06-21 14:50:55.000000000 +0200
+++ librsync/patch.c 2008-06-24 10:26:49.000000000 +0200
@@ -214,12 +214,12 @@ static rs_result rs_patch_s_copying(rs_j
void *buf, *ptr; rs_buffers_t *buffs = job->stream; - len = job->basis_len;
-
/* copy only as much as will fit in the output buffer, so that we * don't have to block or store the input. */ - if (len > buffs->avail_out)
+ if (job->basis_len > buffs->avail_out)
len = buffs->avail_out; + else
+ len = job->basis_len;
if (!len) return RS_BLOCKED;
|