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

Re: serious bug. Evolution and Microsoft mentality.



On Wed, Jan 09, 2002 at 07:38:43PM -0500, Jeffrey Stedfast wrote:
Oops, copy/paste-o when migrating the patch to the 1-0 code base.

Here is the correct patch for the 1.0.x branch.  Hopefully the Debian
maintainer will apply it?  I am creating an Evolution 1.0-5.1 package
on my system with the patch applied.  I haven't seen so many signal 11's
in aeons.

Index: camel/providers/local/camel-local-folder.c
===================================================================
RCS file: /cvs/gnome/evolution/camel/providers/local/camel-local-folder.c,v
retrieving revision 1.22
diff -u -r1.22 camel-local-folder.c
--- evolution/camel/providers/local/camel-local-folder.c        2001/10/28 05:10:55     1.22
+++ evolution/camel/providers/local/camel-local-folder.c        2002/01/09 21:44:15
@@ -23,8 +23,9 @@
#include <config.h>
#endif

#include <stdlib.h>
+#include <limits.h>
#include <sys/types.h>
#include <dirent.h>
#include <sys/stat.h>
#include <unistd.h>
@@ -173,8 +174,9 @@
	CamelFolder *folder;
	const char *root_dir_path, *name;
	struct stat st;
	int forceindex;
+	char folder_path[4096];

	folder = (CamelFolder *)lf;

	name = strrchr(full_name, '/');
@@ -190,8 +192,16 @@
	lf->base_path = g_strdup(root_dir_path);
	lf->folder_path = g_strdup_printf("%s/%s", root_dir_path, full_name);
	lf->summary_path = g_strdup_printf("%s/%s.ev-summary", root_dir_path, full_name);
	lf->index_path = g_strdup_printf("%s/%s.ibex", root_dir_path, full_name);
+	
+	/* follow any symlinks to the mailbox */
+	  memset(folder_path, 0, sizeof folder_path);
+	  if (lstat (lf->folder_path, &st) != -1 && S_ISLNK (st.st_mode) &&
+	      realpath (lf->folder_path, folder_path) != NULL) {
+	  	g_free (lf->folder_path);
+		lf->folder_path = g_strdup (folder_path);
+	  }
	
	lf->changes = camel_folder_change_info_new();

	/* if we have no index file, force it */

Attachment: pgpA4tDdTBhLV.pgp
Description: PGP signature


Reply to: