summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2005-09-25 11:38:54 +0000
committerMike Frysinger <vapier@gentoo.org>2005-09-25 11:38:54 +0000
commit03b5b38b7562dffdb3af63727d70c8112fca3441 (patch)
treea7ffcba88d85374e3274fd8e308dcb13354cb9f2 /app-text/recode/files
parentVersion bump to fix #35919. (diff)
downloadgentoo-2-03b5b38b7562dffdb3af63727d70c8112fca3441.tar.gz
gentoo-2-03b5b38b7562dffdb3af63727d70c8112fca3441.tar.bz2
gentoo-2-03b5b38b7562dffdb3af63727d70c8112fca3441.zip
Just rip out the useful chunks from the Debian patchset so we dont have to screw around with autotools.
(Portage version: 2.0.52-r1 http://www.bash.org/?136501 )
Diffstat (limited to 'app-text/recode/files')
-rw-r--r--app-text/recode/files/digest-recode-3.6-r21
-rw-r--r--app-text/recode/files/recode-3.6-debian-11.patch63
2 files changed, 63 insertions, 1 deletions
diff --git a/app-text/recode/files/digest-recode-3.6-r2 b/app-text/recode/files/digest-recode-3.6-r2
index 5116a646b78e..06fe5e4c39ed 100644
--- a/app-text/recode/files/digest-recode-3.6-r2
+++ b/app-text/recode/files/digest-recode-3.6-r2
@@ -1,2 +1 @@
MD5 be3f40ad2e93dae5cd5f628264bf1877 recode-3.6.tar.gz 1751886
-MD5 222967f4647e3f9a636d97ffa769e2f3 recode_3.6-11.diff.gz 263880
diff --git a/app-text/recode/files/recode-3.6-debian-11.patch b/app-text/recode/files/recode-3.6-debian-11.patch
new file mode 100644
index 000000000000..d13c2206ae7b
--- /dev/null
+++ b/app-text/recode/files/recode-3.6-debian-11.patch
@@ -0,0 +1,63 @@
+Ripped from Debian patchset 3.6-11
+
+--- recode-3.6.orig/src/libiconv.c
++++ recode-3.6/src/libiconv.c
+@@ -195,12 +195,17 @@
+ memcpy() doesn't do here, because the regions might overlap.
+ memmove() isn't worth it, because we rarely have to move more
+ than 12 bytes. */
+- if (input > input_buffer && input_left > 0)
++ cursor = input_buffer;
++ if (input_left > 0)
+ {
+- cursor = input_buffer;
+- do
+- *cursor++ = *input++;
+- while (--input_left > 0);
++ if (input > input_buffer)
++ {
++ do
++ *cursor++ = *input++;
++ while (--input_left > 0);
++ }
++ else
++ cursor += input_left;
+ }
+ }
+
+--- recode-3.6.orig/src/request.c
++++ recode-3.6/src/request.c
+@@ -1073,7 +1073,7 @@
+ if (task->output.cursor + 4 >= task->output.limit)
+ {
+ RECODE_OUTER outer = task->request->outer;
+- size_t old_size = task->output.limit - task->output.buffer;
++ size_t old_size = task->output.cursor - task->output.buffer;
+ size_t new_size = task->output.cursor + 4 - task->output.buffer;
+
+ /* FIXME: Rethink about how the error should be reported. */
+--- recode-3.6.orig/src/task.c
++++ recode-3.6/src/task.c
+@@ -1198,6 +1198,8 @@
+ else
+ success = transform_mere_copy (subtask);
+
++ task->output = subtask->output;
++
+ if (subtask->input.name && *subtask->input.name)
+ fclose (subtask->input.file);
+ if (subtask->output.name && *subtask->output.name)
+--- recode-3.6.orig/src/hash.h
++++ recode-3.6/src/hash.h
+@@ -21,6 +21,11 @@
+ /* Make sure USE_OBSTACK is defined to 1 if you want the allocator to use
+ obstacks instead of malloc, and recompile `hash.c' with same setting. */
+
++#define hash_lookup recode_hash_lookup
++#define hash_delete recode_hash_delete
++#define hash_free recode_hash_free
++#define hash_insert recode_hash_insert
++
+ #ifndef PARAMS
+ # if PROTOTYPES || __STDC__
+ # define PARAMS(Args) Args