SOURCES: recode-debian-11.patch (NEW) - few fixes from debian.

pluto pluto at pld-linux.org
Mon Feb 13 09:39:04 CET 2006


Author: pluto                        Date: Mon Feb 13 08:39:03 2006 GMT
Module: SOURCES                       Tag: HEAD
---- Log message:
- few fixes from debian.

---- Files affected:
SOURCES:
   recode-debian-11.patch (NONE -> 1.1)  (NEW)

---- Diffs:

================================================================
Index: SOURCES/recode-debian-11.patch
diff -u /dev/null SOURCES/recode-debian-11.patch:1.1
--- /dev/null	Mon Feb 13 09:39:03 2006
+++ SOURCES/recode-debian-11.patch	Mon Feb 13 09:38:58 2006
@@ -0,0 +1,49 @@
+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)
================================================================


More information about the pld-cvs-commit mailing list