Re: [evolution-patches] fix for bug #71747 (camel)



On Thu, 2005-02-10 at 08:01 +0800, Not Zed wrote:
> 
> well strictly speaking you shouldn't be using that function at all
> anymore.  i seriously wanted to remove it long ago because it is just
> a nasty mess.  there's not enough control over what it does, and it
> isn't saving much code.  and its been the cause of many many bugs.
> 
> but sure it can go in for now, but i think you should consider
> rewriting your code to not need it.  maildir/mbox don't need it for
> example.

nod, sounds reasonable.

committed with the intent of fixing imap4 to both use paths and to not
depend on this function.

Jeff

> 
> On Wed, 2005-02-09 at 15:18 -0500, Jeffrey Stedfast wrote: 
> > http://bugzilla.ximian.com/show_bug.cgi?id=71747
> > 
> > This may or may not be related to the bug about creating folders in
> > IMAP4 with a namespace set.
> > 
> > I know that Michael wants me to change the IMAP4 code to use url paths
> > instead of fragments for the folder names (and I will get to it), but I
> > think this fix is appropriate even so.
> > 
> > Jeff
> > 
> > > > > text/plain attachment (71747.patch), ""
> > ? 71747.patch
> > ? camel-mime-tables.c
> > ? tests/folder/test10
> > ? tests/folder/test11
> > ? tests/message/test4
> > Index: ChangeLog
> > ===================================================================
> > RCS file: /cvs/gnome/evolution-data-server/camel/ChangeLog,v
> > retrieving revision 1.2429
> > diff -u -r1.2429 ChangeLog
> > --- ChangeLog	7 Feb 2005 22:06:57 -0000	1.2429
> > +++ ChangeLog	9 Feb 2005 20:11:24 -0000
> > @@ -1,3 +1,9 @@
> > +2005-02-09  Jeffrey Stedfast  <fejj novell com>
> > +
> > +	* camel-store.c (camel_folder_info_build): Fix the FIXME about
> > +	using fragment instead of path for those urls which use fragment
> > +	instead. Also fixes bug #71747.
> > +
> >  2005-02-07  JP Rosevear  <jpr novell com>
> >  
> >  	* camel-iconv.c: remove dead file
> > Index: camel-store.c
> > ===================================================================
> > RCS file: /cvs/gnome/evolution-data-server/camel/camel-store.c,v
> > retrieving revision 1.160
> > diff -u -r1.160 camel-store.c
> > --- camel-store.c	1 Feb 2005 08:36:44 -0000	1.160
> > +++ camel-store.c	9 Feb 2005 20:11:24 -0000
> > @@ -945,6 +945,7 @@
> >  			} else {
> >  				/* we are missing a folder in the heirarchy so
> >  				   create a fake folder node */
> > +				const char *path;
> >  				CamelURL *url;
> >  				char *sep;
> >  
> > @@ -957,17 +958,21 @@
> >  						pfi->name = g_strdup (pname);
> >  				} else
> >  					pfi->name = g_strdup (pname);
> > -
> > -				/* FIXME: url's with fragments should have the fragment truncated, not path */
> > +				
> >  				url = camel_url_new (fi->uri, NULL);
> > -				sep = strrchr (url->path, separator);
> > +				if (url->fragment)
> > +					path = url->fragment;
> > +				else
> > +					path = url->path + 1;
> > +				
> > +				sep = strrchr (path, separator);
> >  				if (sep)
> >  					*sep = '\0';
> >  				else
> >  					d(g_warning ("huh, no \"%c\" in \"%s\"?", separator, fi->url));
> >  				
> > -				pfi->full_name = g_strdup(url->path+1);
> > -
> > +				pfi->full_name = g_strdup (path);
> > +				
> >  				/* since this is a "fake" folder node, it is not selectable */
> >  				camel_url_set_param (url, "noselect", "yes");
> >  				pfi->uri = camel_url_to_string (url, 0);




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