Bug#279722: libc6: application sometimes crashes, valgrind shows error in gconv_db.c
On Thu, Feb 03, 2005 at 05:36:44PM +0100, Loïc Minier wrote:
> Hi,
>
> This is a followup for Debian bug <http://bugs.debian.org/279722>.
>
> I already tried in the past to build glibc on my system, and this was
> too long a task for my laptop, could someone try swapping the free
> after the __gconv_close_transform() or hand me a build if he can't
> reproduce the bug?
Well I tried the following patch, but that did not fix the bug.
(Though I have to use ls --help for reproducing the bug).
Thanks for investigating this irritating issue!
--
Bill. <ballombe@debian.org>
Imagine a large red swirl here.
--- build-tree/glibc-2.3.2/iconv/gconv_close.c.old 2005-02-15 13:24:35.000000000 +0100
+++ build-tree/glibc-2.3.2/iconv/gconv_close.c 2005-02-15 14:33:08.000000000 +0100
@@ -30,6 +30,7 @@
struct __gconv_step *srunp;
struct __gconv_step_data *drunp;
size_t nsteps;
+ int ret;
/* Free all resources by calling destructor functions and release
the implementations. */
@@ -57,9 +58,10 @@
}
while (!((drunp++)->__flags & __GCONV_IS_LAST));
+ /* Close the participating modules. */
+ ret = __gconv_close_transform (srunp, nsteps);
+
/* Free the data allocated for the descriptor. */
free (cd);
-
- /* Close the participating modules. */
- return __gconv_close_transform (srunp, nsteps);
+ return ret;
}
Reply to: