OpenSDE Packages Database (without history before r20070)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

52 lines
1.8 KiB

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