]> git.llucax.com Git - software/mutt-debian.git/blob - debian/patches/upstream/538128-mh-folder-access.patch
05927bf233f1add6063756f05e3e6942df6e376e
[software/mutt-debian.git] / debian / patches / upstream / 538128-mh-folder-access.patch
1 this fixes a problem with new mail detection on MH folder, for a 
2 more detailed history see mutt bugs #3308 and #3312 and debian
3 bug 538128
4
5 --- a/mh.c
6 +++ b/mh.c
7 @@ -140,22 +140,17 @@
8  
9  #endif
10  
11 -static int mh_read_token (char *t, int *first, int *last)
12 +static void mh_read_token (char *t, int *first, int *last)
13  {
14    char *p;
15    if ((p = strchr (t, '-')))
16    {
17      *p++ = '\0';
18 -    if (mutt_atoi (t, first) < 0 || mutt_atoi (t, last) < 0)
19 -      return -1;
20 +    *first = atoi (t);
21 +    *last = atoi (p);
22    }
23    else
24 -  {
25 -    if (mutt_atoi (t, first) < 0)
26 -      return -1;
27 -    *last = *first;
28 -  }
29 -  return 0;
30 +    *first = *last = atoi (t);
31  }
32  
33  static int mh_read_sequences (struct mh_sequences *mhs, const char *path)
34 @@ -167,7 +162,7 @@
35    size_t sz = 0;
36  
37    short f;
38 -  int first, last, rc;
39 +  int first, last, rc = 0;
40  
41    char pathname[_POSIX_PATH_MAX];
42    snprintf (pathname, sizeof (pathname), "%s/.mh_sequences", path);
43 @@ -191,12 +186,7 @@
44  
45      while ((t = strtok (NULL, " \t:")))
46      {
47 -      if (mh_read_token (t, &first, &last) < 0)
48 -      {
49 -       mhs_free_sequences (mhs);
50 -       rc = -1;
51 -       goto out;
52 -      }
53 +      mh_read_token (t, &first, &last);
54        for (; first <= last; first++)
55         mhs_set (mhs, first, f);
56      }
57 @@ -207,7 +197,7 @@
58  out:
59    FREE (&buff);
60    safe_fclose (&fp);
61 -  return 0;
62 +  return rc;
63  }
64  
65  static inline mode_t mh_umask (CONTEXT* ctx)
66 @@ -1155,7 +1145,7 @@
67  
68    if (ctx->magic == M_MH)
69    {
70 -    if (mh_read_sequences (&mhs, ctx->path) >= 0)
71 +    if (mh_read_sequences (&mhs, ctx->path) < 0)
72        return -1;
73      mh_update_maildir (md, &mhs);
74      mhs_free_sequences (&mhs);