[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Nmh-workers] Re: 1.1RC4: can't rebuild dtimep.c with modern flex

From: pmaydell
Subject: Re: [Nmh-workers] Re: 1.1RC4: can't rebuild dtimep.c with modern flex
Date: Wed, 02 Nov 2005 13:46:29 +0000

Oliver Kiddle wrote:
>On 26 Oct, address@hidden wrote:
>> I also think we should fix a problem where mhshow can segfault
>> on bogus MIME messages:
>> http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=245932
>The patch looks fine to me. You wrote it, right? Why not post it to the
>list and then if nobody objects, commit it to CVS yourself? Jon or Ken
>can give you CVS access.

I don't mind committing it to CVS; the question is whether you want
to add people to the CVS access list who might commit two or three
fixes and then do nothing for six months. (I don't often have time for
nmh work.) I've appended the patch to this email, anyway.

>Removing the autogenerated dtimep.c would seem sensible to me. Does
>renaming configure.in to configure.ac work as a quick fix to the
>configure bug that you mentioned?

Well, it might. But renaming files in CVS is a pain in the neck, whereas
just adding an AC_PREREQ will have the right effect and means that if
you do try to run autoconf 2.13 on it you get a helpful error message
telling you to use a newer autoconf.

-- PMM

--- /usr/local/src/nmh-1.1-RC4-debpatch.pmm/uip/mhparse.c       2003-09-30 
17:58:43.000000000 +0100
+++ uip/mhparse.c       2005-10-25 01:25:40.000000000 +0100
@@ -259,7 +259,6 @@
     if (!(ct = get_content (fp, file, 1))) {
        if (is_stdin)
            unlink (file);
-       fclose (fp);
        advise (NULL, "unable to decode %s", file);
        return NULL;
@@ -293,6 +292,7 @@
  * toplevel =  0   # we are inside message type or multipart type
  *                 # other than multipart/digest
  * toplevel = -1   # we are inside multipart/digest
+ * NB: on failure we will fclose(in)!
 static CT
@@ -1056,7 +1056,6 @@
            if (!(p = get_content (fp, ct->c_file,
                        ct->c_subtype == MULTI_DIGEST ? -1 : 0))) {
-               fclose (ct->c_fp);
                ct->c_fp = NULL;
                return NOTOK;
@@ -1285,7 +1284,6 @@
                fseek (fp = ct->c_fp, ct->c_begin, SEEK_SET);
                if (!(p = get_content (fp, ct->c_file, 0))) {
-                   fclose (ct->c_fp);
                    ct->c_fp = NULL;
                    return NOTOK;

reply via email to

[Prev in Thread] Current Thread [Next in Thread]