source: patches/glibc-2.4-iconv_fix-1.patch@ 64eda1b

clfs-1.2 clfs-2.1 clfs-3.0.0-systemd clfs-3.0.0-sysvinit systemd sysvinit
Last change on this file since 64eda1b was 49174f3, checked in by Jim Gifford <clfs@…>, 18 years ago

r3970@server (orig r1786): jciccone | 2006-06-19 10:15:25 -0700
Added a missing , in the kernel package size.

  • Property mode set to 100644
File size: 2.6 KB
RevLine 
[49174f3]1Submitted By: Joe Ciccone <jciccone@gmail.com>
2Date: 2006-06-19
3Initial Package Version: 2.4
4Upstream Status: In CVS
5Origin: https://bugzilla.samba.org/show_bug.cgi?id=3678
6Description: Fixes a problem that showed up in samba. It would fail to
7 start with the following error.
8
9smbd: gconv_db.c:232: __gconv_release_step: Assertion `step->__end_fct ==
10((void *)0)' failed.
11
12diff -Naur glibc-2.4.orig/iconv/gconv_db.c glibc-2.4/iconv/gconv_db.c
13--- glibc-2.4.orig/iconv/gconv_db.c 2005-12-19 02:25:25.000000000 -0500
14+++ glibc-2.4/iconv/gconv_db.c 2006-06-19 11:42:00.000000000 -0400
15@@ -1,5 +1,5 @@
16 /* Provide access to the collection of available transformation modules.
17- Copyright (C) 1997-2003, 2004, 2005 Free Software Foundation, Inc.
18+ Copyright (C) 1997-2003, 2004, 2005, 2006 Free Software Foundation, Inc.
19 This file is part of the GNU C Library.
20 Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997.
21
22@@ -227,7 +227,7 @@
23 step->__shlib_handle = NULL;
24 #endif
25 }
26- else
27+ else if (step->__shlib_handle == NULL)
28 /* Builtin modules should not have end functions. */
29 assert (step->__end_fct == NULL);
30 }
31diff -Naur glibc-2.4.orig/iconvdata/Makefile glibc-2.4/iconvdata/Makefile
32--- glibc-2.4.orig/iconvdata/Makefile 2005-11-16 03:15:54.000000000 -0500
33+++ glibc-2.4/iconvdata/Makefile 2006-06-19 11:38:42.000000000 -0400
34@@ -65,7 +65,8 @@
35 include ../Makeconfig
36
37 ifeq (yes,$(build-shared))
38-tests = bug-iconv1 bug-iconv2 tst-loading tst-e2big tst-iconv4 bug-iconv4
39+tests = bug-iconv1 bug-iconv2 tst-loading tst-e2big tst-iconv4 bug-iconv4 \
40+ tst-iconv6
41 ifeq ($(have-thread-library),yes)
42 tests += bug-iconv3
43 endif
44diff -Naur glibc-2.4.orig/iconvdata/tst-iconv6.c glibc-2.4/iconvdata/tst-iconv6.c
45--- glibc-2.4.orig/iconvdata/tst-iconv6.c 1969-12-31 19:00:00.000000000 -0500
46+++ glibc-2.4/iconvdata/tst-iconv6.c 2006-06-19 11:38:42.000000000 -0400
47@@ -0,0 +1,35 @@
48+/* BZ #2569 */
49+
50+#include <iconv.h>
51+#include <stdio.h>
52+
53+static int
54+do_test (void)
55+{
56+ iconv_t cd0 = iconv_open ("ISO-8859-7", "UTF-16LE");
57+ if (cd0 == (iconv_t) -1)
58+ {
59+ puts ("first iconv_open failed");
60+ return 1;
61+ }
62+ iconv_t cd1 = iconv_open ("ISO-8859-7", "UTF-16LE");
63+ if (cd1 == (iconv_t) -1)
64+ {
65+ puts ("second iconv_open failed");
66+ return 1;
67+ }
68+ if (iconv_close (cd0) != 0)
69+ {
70+ puts ("first iconv_close failed");
71+ return 1;
72+ }
73+ if (iconv_close (cd1) != 0)
74+ {
75+ puts ("second iconv_close failed");
76+ return 1;
77+ }
78+ return 0;
79+}
80+
81+#define TEST_FUNCTION do_test ()
82+#include "../test-skeleton.c"
Note: See TracBrowser for help on using the repository browser.