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.
		
		
		
		
		
			
		
			
				
					
					
						
							90 lines
						
					
					
						
							3.1 KiB
						
					
					
				
			
		
		
	
	
							90 lines
						
					
					
						
							3.1 KiB
						
					
					
				# --- T2-COPYRIGHT-NOTE-BEGIN --- | 
						|
# This copyright note is auto-generated by ./scripts/Create-CopyPatch. | 
						|
#  | 
						|
# T2 SDE: package/.../recode/recode-3.6.patch | 
						|
# Copyright (C) 2004 - 2006 The T2 SDE 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. | 
						|
# --- T2-COPYRIGHT-NOTE-END --- | 
						|
http://pybliographer.org/help/recode states: | 
						|
 | 
						|
Pybliographer uses GNU Recode in order to convert between different character | 
						|
sets, especially LaTeX and HTML. The latest version of GNU Recode (3.6) | 
						|
contains a bug that makes it unsuitable for Pybliographer (but not for | 
						|
standalone use). This bug is pending since a long time. | 
						|
 | 
						|
--- recode-3.6.orig/src/libiconv.c | 
						|
+++ recode-3.6/src/libiconv.c | 
						|
@@ -1,5 +1,5 @@ | 
						|
 /* Conversion of files between different charsets and surfaces. | 
						|
-   Copyright © 1999, 2000 Free Software Foundation, Inc. | 
						|
+   Copyright © 1999, 2000, 2001 Free Software Foundation, Inc. | 
						|
    Contributed by François Pinard <[email protected]>, 1999, | 
						|
    and Bruno Haible <[email protected]>, 2000. | 
						|
  | 
						|
@@ -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
 | 
						|
 |