|
Line
Link Here
|
| 0 |
-- recode-3.6.orig/src/libiconv.c |
0 |
++ recode-3.6/src/libiconv.c |
|
Lines 1-5
Link Here
|
| 1 |
/* Conversion of files between different charsets and surfaces. |
1 |
/* Conversion of files between different charsets and surfaces. |
| 2 |
Copyright © 1999, 2000 Free Software Foundation, Inc. |
2 |
Copyright © 1999, 2000, 2001 Free Software Foundation, Inc. |
| 3 |
Contributed by François Pinard <pinard@iro.umontreal.ca>, 1999, |
3 |
Contributed by François Pinard <pinard@iro.umontreal.ca>, 1999, |
| 4 |
and Bruno Haible <haible@clisp.cons.org>, 2000. |
4 |
and Bruno Haible <haible@clisp.cons.org>, 2000. |
| 5 |
|
5 |
|
|
Lines 195-206
Link Here
|
| 195 |
memcpy() doesn't do here, because the regions might overlap. |
195 |
memcpy() doesn't do here, because the regions might overlap. |
| 196 |
memmove() isn't worth it, because we rarely have to move more |
196 |
memmove() isn't worth it, because we rarely have to move more |
| 197 |
than 12 bytes. */ |
197 |
than 12 bytes. */ |
| 198 |
if (input > input_buffer && input_left > 0) |
198 |
cursor = input_buffer; |
|
|
199 |
if (input_left > 0) |
| 199 |
{ |
200 |
{ |
| 200 |
cursor = input_buffer; |
201 |
if (input > input_buffer) |
| 201 |
do |
202 |
{ |
| 202 |
*cursor++ = *input++; |
203 |
do |
| 203 |
while (--input_left > 0); |
204 |
*cursor++ = *input++; |
|
|
205 |
while (--input_left > 0); |
| 206 |
} |
| 207 |
else |
| 208 |
cursor += input_left; |
| 204 |
} |
209 |
} |
| 205 |
} |
210 |
} |
| 206 |
|
211 |
|
| 207 |
-- recode-3.6.orig/src/request.c |
212 |
++ recode-3.6/src/request.c |
|
Lines 1073-1079
Link Here
|
| 1073 |
if (task->output.cursor + 4 >= task->output.limit) |
1073 |
if (task->output.cursor + 4 >= task->output.limit) |
| 1074 |
{ |
1074 |
{ |
| 1075 |
RECODE_OUTER outer = task->request->outer; |
1075 |
RECODE_OUTER outer = task->request->outer; |
| 1076 |
size_t old_size = task->output.limit - task->output.buffer; |
1076 |
size_t old_size = task->output.cursor - task->output.buffer; |
| 1077 |
size_t new_size = task->output.cursor + 4 - task->output.buffer; |
1077 |
size_t new_size = task->output.cursor + 4 - task->output.buffer; |
| 1078 |
|
1078 |
|
| 1079 |
/* FIXME: Rethink about how the error should be reported. */ |
1079 |
/* FIXME: Rethink about how the error should be reported. */ |
| 1080 |
-- recode-3.6.orig/src/task.c |
1080 |
++ recode-3.6/src/task.c |
|
Lines 1198-1203
Link Here
|
| 1198 |
else |
1198 |
else |
| 1199 |
success = transform_mere_copy (subtask); |
1199 |
success = transform_mere_copy (subtask); |
| 1200 |
|
1200 |
|
|
|
1201 |
task->output = subtask->output; |
| 1202 |
|
| 1201 |
if (subtask->input.name && *subtask->input.name) |
1203 |
if (subtask->input.name && *subtask->input.name) |
| 1202 |
fclose (subtask->input.file); |
1204 |
fclose (subtask->input.file); |
| 1203 |
if (subtask->output.name && *subtask->output.name) |
1205 |
if (subtask->output.name && *subtask->output.name) |
| 1204 |
-- recode-3.6.orig/src/hash.h |
1206 |
++ recode-3.6/src/hash.h |
|
Lines 21-26
Link Here
|
| 21 |
/* Make sure USE_OBSTACK is defined to 1 if you want the allocator to use |
21 |
/* Make sure USE_OBSTACK is defined to 1 if you want the allocator to use |
| 22 |
obstacks instead of malloc, and recompile `hash.c' with same setting. */ |
22 |
obstacks instead of malloc, and recompile `hash.c' with same setting. */ |
| 23 |
|
23 |
|
|
|
24 |
#define hash_lookup recode_hash_lookup |
| 25 |
#define hash_delete recode_hash_delete |
| 26 |
#define hash_free recode_hash_free |
| 27 |
#define hash_insert recode_hash_insert |
| 28 |
|
| 24 |
#ifndef PARAMS |
29 |
#ifndef PARAMS |
| 25 |
# if PROTOTYPES || __STDC__ |
30 |
# if PROTOTYPES || __STDC__ |
| 26 |
# define PARAMS(Args) Args |
31 |
# define PARAMS(Args) Args |