update to 3.7.6
This commit is contained in:
parent
0e49b8c1cb
commit
5d4b55a4e7
Binary file not shown.
BIN
recode-3.7.6.tar.gz
Normal file
BIN
recode-3.7.6.tar.gz
Normal file
Binary file not shown.
@ -1,22 +0,0 @@
|
|||||||
--- recode-3.6.orig/configure.in 2001-01-03 16:50:54.000000000 +0100
|
|
||||||
+++ recode-3.6/configure.in 2012-07-23 14:15:28.000000000 +0200
|
|
||||||
@@ -15,7 +15,7 @@
|
|
||||||
AM_PROG_LIBTOOL
|
|
||||||
|
|
||||||
AC_ISC_POSIX
|
|
||||||
-AM_C_PROTOTYPES
|
|
||||||
+dnl AM_C_PROTOTYPES
|
|
||||||
AC_C_CONST
|
|
||||||
AC_C_INLINE
|
|
||||||
ad_AC_PROG_FLEX
|
|
||||||
--- recode-3.6.orig/src/Makefile.am 2000-12-06 17:36:12.000000000 +0100
|
|
||||||
+++ recode-3.6/src/Makefile.am 2012-07-23 14:47:07.000000000 +0200
|
|
||||||
@@ -17,7 +17,7 @@
|
|
||||||
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
|
|
||||||
# 02111-1307, USA.
|
|
||||||
|
|
||||||
-AUTOMAKE_OPTIONS = gnits ansi2knr
|
|
||||||
+AUTOMAKE_OPTIONS = gnits
|
|
||||||
bin_PROGRAMS = recode
|
|
||||||
lib_LTLIBRARIES = librecode.la
|
|
||||||
man_MANS = recode.1
|
|
||||||
@ -1,11 +0,0 @@
|
|||||||
--- a/src/recodext.h.orig 2008-01-16 13:15:39.000000000 +0100
|
|
||||||
+++ b/src/recodext.h 2008-01-16 13:16:47.000000000 +0100
|
|
||||||
@@ -218,7 +218,7 @@
|
|
||||||
enum recode_symbol_type type : 3;
|
|
||||||
|
|
||||||
/* Non zero if this one should be ignored. */
|
|
||||||
- bool ignore : 2;
|
|
||||||
+ bool ignore : 1;
|
|
||||||
};
|
|
||||||
|
|
||||||
struct recode_surface_list
|
|
||||||
@ -1,16 +0,0 @@
|
|||||||
--- recode-3.6-orig/m4/flex.m4 2000-06-28 16:39:06.000000000 +0200
|
|
||||||
+++ recode-3.6/m4/flex.m4 2010-07-07 12:23:49.000000000 +0200
|
|
||||||
@@ -8,11 +8,8 @@
|
|
||||||
dnl Look for flex or missing, then run AC_PROG_LEX and AC_DECL_YYTEXT
|
|
||||||
AC_DEFUN(ad_AC_PROG_FLEX,
|
|
||||||
[AC_CHECK_PROGS(LEX, flex, missing)
|
|
||||||
-if test "$LEX" = missing; then
|
|
||||||
+AS_IF([test "$LEX" = missing], [
|
|
||||||
LEX="\$(top_srcdir)/$ac_aux_dir/missing flex"
|
|
||||||
LEX_OUTPUT_ROOT=lex.yy
|
|
||||||
AC_SUBST(LEX_OUTPUT_ROOT)dnl
|
|
||||||
-else
|
|
||||||
- AC_PROG_LEX
|
|
||||||
- AC_DECL_YYTEXT
|
|
||||||
-fi])
|
|
||||||
+])])
|
|
||||||
@ -1,12 +0,0 @@
|
|||||||
diff -up recode-3.6/src/names.c.printf recode-3.6/src/names.c
|
|
||||||
--- recode-3.6/src/names.c.printf 2000-12-06 20:41:29.000000000 +0100
|
|
||||||
+++ recode-3.6/src/names.c 2013-12-18 12:48:42.578052395 +0100
|
|
||||||
@@ -892,7 +892,7 @@ list_concise_charset (RECODE_OUTER outer
|
|
||||||
if (ucs2 >= 0)
|
|
||||||
printf (format, code);
|
|
||||||
else if (mnemonic || counter2 != 112)
|
|
||||||
- printf (blanks);
|
|
||||||
+ printf ("%s", blanks);
|
|
||||||
|
|
||||||
if (mnemonic)
|
|
||||||
printf (counter2 == 112 ? " %s\n" : " %-3s", mnemonic);
|
|
||||||
@ -1,51 +0,0 @@
|
|||||||
diff -u -r recode-3.6.orig/src/common.h recode-3.6/src/common.h
|
|
||||||
--- recode-3.6.orig/src/common.h 2000-06-28 20:40:15.000000000 +0200
|
|
||||||
+++ recode-3.6/src/common.h 2017-10-03 13:52:09.904644383 +0200
|
|
||||||
@@ -56,13 +56,14 @@
|
|
||||||
# define RETSIGTYPE void
|
|
||||||
#endif
|
|
||||||
|
|
||||||
-#if DIFF_HASH
|
|
||||||
-# ifdef HAVE_LIMITS_H
|
|
||||||
-# include <limits.h>
|
|
||||||
-# endif
|
|
||||||
-# ifndef CHAR_BIT
|
|
||||||
-# define CHAR_BIT 8
|
|
||||||
-# endif
|
|
||||||
+#ifdef HAVE_LIMITS_H
|
|
||||||
+# include <limits.h>
|
|
||||||
+#endif
|
|
||||||
+#ifndef CHAR_BIT
|
|
||||||
+# define CHAR_BIT 8
|
|
||||||
+#endif
|
|
||||||
+#ifndef PATH_MAX
|
|
||||||
+# define PATH_MAX 4096
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Some systems do not define EXIT_*, even with STDC_HEADERS. */
|
|
||||||
diff -u -r recode-3.6.orig/src/main.c recode-3.6/src/main.c
|
|
||||||
--- recode-3.6.orig/src/main.c 2000-12-06 20:44:59.000000000 +0100
|
|
||||||
+++ recode-3.6/src/main.c 2017-10-03 14:32:51.274017940 +0200
|
|
||||||
@@ -847,7 +847,7 @@
|
|
||||||
for (; optind < argc; optind++)
|
|
||||||
{
|
|
||||||
const char *input_name;
|
|
||||||
- char output_name[200]; /* FIXME: dangerous limit */
|
|
||||||
+ char output_name[PATH_MAX];
|
|
||||||
FILE *file;
|
|
||||||
struct stat file_stat;
|
|
||||||
struct utimbuf file_utime;
|
|
||||||
@@ -871,7 +871,12 @@
|
|
||||||
|
|
||||||
/* FIXME: Scott Schwartz <schwartz@bio.cse.psu.edu> writes:
|
|
||||||
"There's no reason to think that that name is unique." */
|
|
||||||
-
|
|
||||||
+ // To avoid overflows, the size of the array pointed by destination (output_name)
|
|
||||||
+ // shall be long enough to contain the same C string as source
|
|
||||||
+ // (including the terminating null character).
|
|
||||||
+ if (strlen(input_name) >= PATH_MAX) {
|
|
||||||
+ error (EXIT_FAILURE, 0, "input_name reach the PATH_MAX limit");
|
|
||||||
+ }
|
|
||||||
strcpy (output_name, input_name);
|
|
||||||
#if DOSWIN_OR_OS2
|
|
||||||
for (cursor = output_name + strlen (output_name);
|
|
||||||
68
recode.patch
68
recode.patch
@ -1,68 +0,0 @@
|
|||||||
--- 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 <pinard@iro.umontreal.ca>, 1999,
|
|
||||||
and Bruno Haible <haible@clisp.cons.org>, 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
|
|
||||||
28
recode.spec
28
recode.spec
@ -1,21 +1,12 @@
|
|||||||
Name: recode
|
Name: recode
|
||||||
Version: 3.6
|
Version: 3.7.6
|
||||||
Release: 50
|
Release: 1
|
||||||
Summary: Converter between charsets and surfaces
|
Summary: Converter between charsets and surfaces
|
||||||
|
|
||||||
|
|
||||||
License: GPLv2 and LGPLv2.1
|
License: GPLv2 and LGPLv2.1
|
||||||
URL: https://www.gnu.org/software/recode/
|
URL: https://www.gnu.org/software/recode/
|
||||||
Source0: https://github.com/rrthomas/recode/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz
|
Source0: https://github.com/rrthomas/recode/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz
|
||||||
|
BuildRequires: libtool texinfo autoconf automake coreutils gcc gettext-devel
|
||||||
Patch0: recode.patch
|
BuildRequires: help2man make python3-Cython python3-devel >= 3.7.5
|
||||||
Patch1: recode-bool-bitfield.patch
|
|
||||||
Patch2: recode-flex-m4.patch
|
|
||||||
Patch3: recode-automake.patch
|
|
||||||
Patch4: recode-format-security.patch
|
|
||||||
Patch5: recode-longfilename.patch
|
|
||||||
|
|
||||||
BuildRequires: libtool texinfo
|
|
||||||
Requires: info
|
Requires: info
|
||||||
|
|
||||||
%description
|
%description
|
||||||
@ -50,8 +41,6 @@ Man pages and other related documents for %{name}.
|
|||||||
%autosetup -n %{name}-%{version} -p1
|
%autosetup -n %{name}-%{version} -p1
|
||||||
|
|
||||||
%build
|
%build
|
||||||
rm m4/libtool.m4
|
|
||||||
rm acinclude.m4
|
|
||||||
autoreconf -vif
|
autoreconf -vif
|
||||||
%configure
|
%configure
|
||||||
make %{?_smp_mflags}
|
make %{?_smp_mflags}
|
||||||
@ -80,6 +69,7 @@ fi
|
|||||||
%files -f %{name}.lang
|
%files -f %{name}.lang
|
||||||
%license COPYING*
|
%license COPYING*
|
||||||
%{_bindir}/recode
|
%{_bindir}/recode
|
||||||
|
%{_infodir}/recode*
|
||||||
%{_libdir}/librecode.so.*
|
%{_libdir}/librecode.so.*
|
||||||
|
|
||||||
%files devel
|
%files devel
|
||||||
@ -88,12 +78,18 @@ fi
|
|||||||
%{_libdir}/librecode.*a
|
%{_libdir}/librecode.*a
|
||||||
|
|
||||||
%files help
|
%files help
|
||||||
%doc ABOUT-NLS AUTHORS BACKLOG ChangeLog INSTALL NEWS README THANKS TODO
|
%doc ABOUT-NLS AUTHORS ChangeLog INSTALL NEWS README THANKS TODO
|
||||||
%{_infodir}/*.info.gz
|
%{_infodir}/*.info.gz
|
||||||
%exclude %{_infodir}/dir*
|
%exclude %{_infodir}/dir*
|
||||||
%{_mandir}/man1/*.1.gz
|
%{_mandir}/man1/*.1.gz
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Tue Jul 28 2020 shixuantong <shixuantong@huawei.com> - 3.7.6-1
|
||||||
|
- Type:NA
|
||||||
|
- ID:NA
|
||||||
|
- SUG:NA
|
||||||
|
- DESC:updato to 3.7.6-1
|
||||||
|
|
||||||
* Sat Jan 11 2020 zhangguangzhi<zhangguangzhi3@huawei.com> - 3.6-50
|
* Sat Jan 11 2020 zhangguangzhi<zhangguangzhi3@huawei.com> - 3.6-50
|
||||||
- Type:bugfix
|
- Type:bugfix
|
||||||
- ID:NA
|
- ID:NA
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user