Comment 11 for bug 9917

Revision history for this message
In , Bill Allombert (allomber) wrote :

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. <email address hidden>

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;
 }