rpms/mutt/devel mutt-imapfcc.patch,NONE,1.1 mutt.spec,1.38,1.39

fedora-cvs-commits at redhat.com fedora-cvs-commits at redhat.com
Wed Dec 6 17:13:47 UTC 2006


Author: mlichvar

Update of /cvs/dist/rpms/mutt/devel
In directory cvs.devel.redhat.com:/tmp/cvs-serv10764

Modified Files:
	mutt.spec 
Added Files:
	mutt-imapfcc.patch 
Log Message:
- use correct fcc folder with IMAP (#217469)
- don't require smtpdaemon, gettext
Resolves: #217469


mutt-imapfcc.patch:
 browser.c  |   18 ++++++++----------
 complete.c |   15 +++------------
 hook.c     |    2 +-
 init.c     |    4 ++--
 lib.c      |   11 +++++++++++
 lib.h      |    1 +
 6 files changed, 26 insertions(+), 25 deletions(-)

--- NEW FILE mutt-imapfcc.patch ---
Index: browser.c
===================================================================
RCS file: /home/roessler/cvs/mutt/browser.c,v
retrieving revision 3.6
retrieving revision 3.7
diff -u -r3.6 -r3.7
--- browser.c	11 Dec 2002 11:19:39 -0000	3.6
+++ browser.c	11 Dec 2002 15:20:21 -0000	3.7
@@ -127,7 +127,7 @@
   struct stat st;
   char fullpath[_POSIX_PATH_MAX];
   
-  snprintf (fullpath, sizeof (fullpath), "%s/%s", folder, path);
+  mutt_concat_path (fullpath, folder, path, sizeof (fullpath));
   
   if (stat (fullpath, &st) == 0)
     return (S_ISDIR (st.st_mode));
@@ -398,7 +398,7 @@
     if (!((regexec (Mask.rx, de->d_name, 0, NULL, 0) == 0) ^ Mask.not))
       continue;
 
-    snprintf (buffer, sizeof (buffer), "%s/%s", d, de->d_name);
+    mutt_concat_path (buffer, d, de->d_name, sizeof (buffer));
     if (lstat (buffer, &s) == -1)
       continue;
     
@@ -673,8 +673,7 @@
 	  }
 #endif
 	  else
-	    snprintf (buf, sizeof (buf), "%s/%s", LastDir, 
-		      state.entry[menu->current].name);
+	    mutt_concat_path (buf, LastDir, state.entry[menu->current].name, sizeof (buf));
 
 	  if ((mx_get_magic (buf) <= 0)
 #ifdef USE_IMAP
@@ -736,7 +735,7 @@
 	    else
 	    {
 	      char tmp[_POSIX_PATH_MAX];
-	      snprintf (tmp, sizeof (tmp), "%s/%s", LastDir, state.entry[menu->current].name);
+	      mutt_concat_path (tmp, LastDir, state.entry[menu->current].name, sizeof (tmp));
 	      strfcpy (LastDir, tmp, sizeof (LastDir));
 	    }
 
@@ -784,7 +783,7 @@
           strfcpy (f, state.entry[menu->current].name, flen);
 #endif
 	else
-	  snprintf (f, flen, "%s/%s", LastDir, state.entry[menu->current].name);
+	  mutt_concat_path (f, LastDir, state.entry[menu->current].name, flen);
 
 	/* Fall through to OP_EXIT */
 
@@ -805,7 +804,7 @@
 	      char full[_POSIX_PATH_MAX];
 	      if (ff.tagged)
 	      {
-		snprintf (full, sizeof (full), "%s/%s", LastDir, ff.name);
+		mutt_concat_path (full, LastDir, ff.name, sizeof (full));
 		mutt_expand_path (full, sizeof (full));
 		tfiles[j++] = safe_strdup (full);
 	      }
@@ -1151,9 +1150,8 @@
 	{
 	  BODY *b;
 	  char buf[_POSIX_PATH_MAX];
-
-	  snprintf (buf, sizeof (buf), "%s/%s", LastDir,
-		    state.entry[menu->current].name);
+	  
+	  mutt_concat_path (buf, LastDir, state.entry[menu->current].name, sizeof (buf));
 	  b = mutt_make_file_attach (buf);
 	  if (b != NULL)
 	  {
Index: complete.c
===================================================================
RCS file: /home/roessler/cvs/mutt/complete.c,v
retrieving revision 3.1
retrieving revision 3.2
diff -u -r3.1 -r3.2
--- complete.c	11 Dec 2002 11:19:39 -0000	3.1
+++ complete.c	11 Dec 2002 15:20:21 -0000	3.2
@@ -54,17 +54,8 @@
       p = NONULL (Spoolfile);
     else
       p = NONULL (Maildir);
-    if (s[1])
-    {
-      /* don't append '/' if Maildir/Spoolfile is imap://host/ only */
-      if (mx_is_imap (NONULL (p)) && p[strlen (p)-1] == '/')
-        snprintf (imap_path, sizeof (imap_path), "%s%s", p, s+1);
-      else
-        snprintf (imap_path, sizeof (imap_path), "%s/%s", NONULL (p),
-          s+1);
-    }
-    else
-      strfcpy (imap_path, NONULL(p), sizeof(imap_path));
+
+    mutt_concat_path (imap_path, p, s+1, sizeof (imap_path));
   }
   else
     strfcpy (imap_path, s, sizeof(imap_path));
@@ -85,7 +76,7 @@
     {
       char buf[_POSIX_PATH_MAX];
       *p++ = 0;
-      snprintf (buf, sizeof (buf), "%s/%s", exp_dirpart, s+1);
+      mutt_concat_path (buf, exp_dirpart, s + 1, sizeof (buf));
       strfcpy (exp_dirpart, buf, sizeof (exp_dirpart));
       snprintf (buf, sizeof (buf), "%s%s/", dirpart, s+1);
       strfcpy (dirpart, buf, sizeof (dirpart));
Index: hook.c
===================================================================
RCS file: /home/roessler/cvs/mutt/hook.c,v
retrieving revision 3.5
retrieving revision 3.6
diff -u -r3.5 -r3.6
--- hook.c	10 Dec 2002 20:56:47 -0000	3.5
+++ hook.c	11 Dec 2002 15:20:21 -0000	3.6
@@ -411,7 +411,7 @@
     {
       adr = env->to ? env->to : (env->cc ? env->cc : env->bcc);
       mutt_safe_path (buf, sizeof (buf), adr);
-      snprintf (path, pathlen, "%s/%s", NONULL (Maildir), buf);
+      mutt_concat_path (path, NONULL(Maildir), buf, pathlen);
       if (!option (OPTFORCENAME) && mx_access (path, W_OK) != 0)
 	strfcpy (path, NONULL (Outbox), pathlen);
     }
Index: init.c
===================================================================
RCS file: /home/roessler/cvs/mutt/init.c,v
retrieving revision 3.9
retrieving revision 3.10
diff -u -r3.9 -r3.10
--- init.c	10 Dec 2002 20:56:47 -0000	3.9
+++ init.c	11 Dec 2002 15:20:21 -0000	3.10
@@ -1841,9 +1841,9 @@
   else
   {
 #ifdef HOMESPOOL
-    snprintf (buffer, sizeof (buffer), "%s/%s", NONULL(Homedir), MAILPATH);
+    mutt_concat_path (buffer, NONULL (Homedir), MAILPATH, sizeof (buffer));
 #else
-    snprintf (buffer, sizeof (buffer), "%s/%s", MAILPATH, NONULL(Username));
+    mutt_concat_path (buffer, MAILPATH, NONULL(Username), sizeof (buffer));
 #endif
     Spoolfile = safe_strdup (buffer);
   }
Index: lib.c
===================================================================
RCS file: /home/roessler/cvs/mutt/lib.c,v
retrieving revision 3.4
retrieving revision 3.6
diff -u -r3.4 -r3.6
--- lib.c	11 Dec 2002 11:19:40 -0000	3.4
+++ lib.c	13 Dec 2002 15:53:36 -0000	3.6
@@ -622,3 +622,14 @@
   for (p = s + mutt_strlen (s) - 1 ; p >= s && ISSPACE (*p) ; p--)
     *p = 0;
 }
+
+char *mutt_concat_path (char *d, const char *dir, const char *fname, size_t l)
+{
+  const char *fmt = "%s/%s";
+  
+  if (!*fname || (*dir && dir[strlen(dir)-1] == '/'))
+    fmt = "%s%s";
+  
+  snprintf (d, l, fmt, dir, fname);
+  return d;
+}
Index: lib.h
===================================================================
RCS file: /home/roessler/cvs/mutt/lib.h,v
retrieving revision 3.5
retrieving revision 3.6
diff -u -r3.5 -r3.6
--- lib.h	11 Dec 2002 11:19:40 -0000	3.5
+++ lib.h	11 Dec 2002 15:20:21 -0000	3.6
@@ -109,6 +109,7 @@
 
 FILE *safe_fopen (const char *, const char *);
 
+char *mutt_concat_path (char *, const char *, const char *, size_t);
 char *mutt_read_line (char *, size_t *, FILE *, int *);
 char *mutt_skip_whitespace (char *);
 char *mutt_strlower (char *);


Index: mutt.spec
===================================================================
RCS file: /cvs/dist/rpms/mutt/devel/mutt.spec,v
retrieving revision 1.38
retrieving revision 1.39
diff -u -r1.38 -r1.39
--- mutt.spec	31 Oct 2006 15:22:23 -0000	1.38
+++ mutt.spec	6 Dec 2006 17:13:45 -0000	1.39
@@ -2,7 +2,7 @@
 Name: mutt
 %define uversion 0.9
 Version: 1.4.2.2
-Release: 4%{?dist}
+Release: 5%{?dist}
 Epoch: 5
 License: GPL
 Group: Applications/Internet
@@ -26,8 +26,9 @@
 Patch22: mutt-1.4-manual.patch
 Patch23: mutt-1.4-saslauth.patch
 Patch24: mutt-safeopen.patch
+Patch25: mutt-imapfcc.patch
 Url: http://www.mutt.org/
-Requires: smtpdaemon, webclient, mailcap, gettext
+Requires: /usr/sbin/sendmail webclient mailcap
 Obsoletes: urlview
 Provides: urlview
 Buildroot: %{_tmppath}/%{name}-%{version}-%{release}-root
@@ -70,6 +71,7 @@
 %patch22 -p1 -b .manual
 %patch23 -p1 -b .saslauth
 %patch24 -p0 -b .safeopen
+%patch25 -p0 -b .imapfcc
 
 install -m644 %{SOURCE1} mutt_ldap_query
 
@@ -154,6 +156,10 @@
 %{_mandir}/man5/muttrc.*
 
 %changelog
+* Wed Dec 06 2006 Miroslav Lichvar <mlichvar at redhat.com> 5:1.4.2.2-5
+- use correct fcc folder with IMAP (#217469)
+- don't require smtpdaemon, gettext
+
 * Tue Oct 31 2006 Miroslav Lichvar <mlichvar at redhat.com> 5:1.4.2.2-4
 - fix POP authentication with latest cyrus-sasl (#212816)
 




More information about the fedora-cvs-commits mailing list