commit 4592257b28ea636c931bae851320e8e611113f4ecae5417bb99d4b53c9e86a52 Author: OBS User unknown Date: Tue Jan 9 16:58:05 2007 +0000 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/evolution-data-server?expand=0&rev=1 diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/167566-camel-groupwise-summary.patch b/167566-camel-groupwise-summary.patch new file mode 100644 index 0000000..30ef5ed --- /dev/null +++ b/167566-camel-groupwise-summary.patch @@ -0,0 +1,29 @@ +Index: camel/providers/groupwise/camel-groupwise-summary.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/groupwise/camel-groupwise-summary.c,v +retrieving revision 1.10 +retrieving revision 1.11 +diff -u -p -r1.10 -r1.11 +--- camel/providers/groupwise/camel-groupwise-summary.c 9 Nov 2005 14:23:44 -0000 1.10 ++++ camel/providers/groupwise/camel-groupwise-summary.c 20 Apr 2006 07:47:21 -0000 1.11 +@@ -330,15 +330,17 @@ groupwise_summary_clear (CamelFolderSumm + CamelFolderChangeInfo *changes; + CamelMessageInfo *info; + int i, count; ++ const char *uid; + + changes = camel_folder_change_info_new (); + count = camel_folder_summary_count (summary); + for (i = 0; i < count; i++) { + if (!(info = camel_folder_summary_index (summary, i))) + continue; +- +- camel_folder_change_info_remove_uid (changes, camel_message_info_uid (info)); +- camel_folder_summary_remove(summary, info); ++ ++ uid = camel_message_info_uid (info); ++ camel_folder_change_info_remove_uid (changes, uid); ++ camel_folder_summary_remove_uid (summary, uid); + camel_message_info_free(info); + } + diff --git a/167640-camel-groupwise-store.patch b/167640-camel-groupwise-store.patch new file mode 100644 index 0000000..567d67b --- /dev/null +++ b/167640-camel-groupwise-store.patch @@ -0,0 +1,16 @@ +Index: camel/providers/groupwise/camel-groupwise-store.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/groupwise/camel-groupwise-store.c,v +retrieving revision 1.99 +diff -u -p -r1.99 camel-groupwise-store.c +--- camel/providers/groupwise/camel-groupwise-store.c 6 Apr 2006 05:57:40 -0000 1.99 ++++ camel/providers/groupwise/camel-groupwise-store.c 20 Apr 2006 09:05:34 -0000 +@@ -224,7 +224,7 @@ groupwise_auth_loop (CamelService *servi + } + if (!E_IS_GW_CONNECTION(priv->cnc)) { + errbuf = g_strdup_printf (_("Unable to authenticate " +- "to GroupWise server.")); ++ "to GroupWise server. ")); + + camel_exception_clear (ex); + } else diff --git a/backend-timeout-fix.patch b/backend-timeout-fix.patch new file mode 100644 index 0000000..21ad8f8 --- /dev/null +++ b/backend-timeout-fix.patch @@ -0,0 +1,79 @@ +Index: servers/exchange/lib/e2k-context.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/servers/exchange/lib/e2k-context.c,v +retrieving revision 1.6 +diff -u -p -r1.6 e2k-context.c +--- servers/exchange/lib/e2k-context.c 13 Dec 2005 03:54:28 -0000 1.6 ++++ servers/exchange/lib/e2k-context.c 24 Feb 2006 21:58:51 -0000 +@@ -110,6 +110,9 @@ struct _E2kContextPrivate { + #define E2K_CONTEXT_MIN_BATCH_SIZE 25 + #define E2K_CONTEXT_MAX_BATCH_SIZE 100 + ++/* For soup sync session timeout */ ++#define E2K_SOUP_SESSION_TIMEOUT 30 ++ + #ifdef E2K_DEBUG + char *e2k_debug; + int e2k_debug_level; +@@ -357,6 +360,7 @@ e2k_context_set_auth (E2kContext *ctx, c + const char *domain, const char *authmech, + const char *password) + { ++ guint timeout = E2K_SOUP_SESSION_TIMEOUT; + + g_return_if_fail (E2K_IS_CONTEXT (ctx)); + +@@ -381,8 +385,15 @@ e2k_context_set_auth (E2kContext *ctx, c + if (ctx->priv->async_session) + g_object_unref (ctx->priv->async_session); + ++ /* Set a default timeout value of 30 seconds. ++ FIXME: Make timeout configurable ++ */ ++ if (g_getenv ("SOUP_SESSION_TIMEOUT")) ++ timeout = atoi (g_getenv ("SOUP_SESSION_TIMEOUT")); ++ + ctx->priv->session = soup_session_sync_new_with_options ( + SOUP_SESSION_USE_NTLM, !authmech || !strcmp (authmech, "NTLM"), ++ SOUP_SESSION_TIMEOUT, timeout, + NULL); + g_signal_connect (ctx->priv->session, "authenticate", + G_CALLBACK (session_authenticate), ctx); +Index: groupwise/e-gw-connection.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/servers/groupwise/e-gw-connection.c,v +retrieving revision 1.138 +diff -u -p -r1.138 e-gw-connection.c +--- servers/groupwise/e-gw-connection.c 23 Jan 2006 11:07:49 -0000 1.138 ++++ servers/groupwise/e-gw-connection.c 24 Feb 2006 21:58:51 -0000 +@@ -34,6 +34,8 @@ + #include "e-gw-message.h" + #include "e-gw-filter.h" + ++/* For soup sync session timeout */ ++#define GW_SOUP_SESSION_TIMEOUT 30 + + static GObjectClass *parent_class = NULL; + static GHashTable *loaded_connections_permissions = NULL; +@@ -355,13 +357,20 @@ static void + e_gw_connection_init (EGwConnection *cnc, EGwConnectionClass *klass) + { + EGwConnectionPrivate *priv; ++ guint timeout = GW_SOUP_SESSION_TIMEOUT; + + /* allocate internal structure */ + priv = g_new0 (EGwConnectionPrivate, 1); + cnc->priv = priv; + ++ /* Set a default timeout value of 30 seconds. ++ FIXME: Make timeout configurable ++ */ ++ if (g_getenv ("SOUP_SESSION_TIMEOUT")) ++ timeout = atoi (g_getenv ("SOUP_SESSION_TIMEOUT")); ++ + /* create the SoupSession for this connection */ +- priv->soup_session = soup_session_sync_new (); ++ priv->soup_session = soup_session_sync_new_with_options (SOUP_SESSION_TIMEOUT, timeout, NULL); + priv->reauth_mutex = g_mutex_new (); + priv->categories_by_id = NULL; + priv->categories_by_name = NULL; diff --git a/beagle-meta-summary.patch b/beagle-meta-summary.patch new file mode 100644 index 0000000..ac4da69 --- /dev/null +++ b/beagle-meta-summary.patch @@ -0,0 +1,559 @@ +Index: camel/camel-file-utils.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/camel-file-utils.c,v +retrieving revision 1.16 +diff -u -p -r1.16 camel-file-utils.c +--- camel/camel-file-utils.c 10 Jan 2006 07:56:46 -0000 1.16 ++++ camel/camel-file-utils.c 12 Mar 2006 20:49:46 -0000 +@@ -316,6 +316,72 @@ camel_file_util_decode_string (FILE *in, + return 0; + } + ++/** ++ * camel_file_util_encode_fixed_string: ++ * @out: file to output to ++ * @str: value to output ++ * @len: total-len of str to store ++ * ++ * Encode a normal string and save it in the output file. ++ * Unlike @camel_file_util_encode_string, it pads the ++ * @str with "NULL" bytes, if @len is > strlen(str) ++ * ++ * Return value: 0 on success, -1 on error. ++ **/ ++int ++camel_file_util_encode_fixed_string (FILE *out, const char *str, size_t len) ++{ ++ char buf[len]; ++ ++ /* Don't allow empty strings to be written */ ++ if (len < 1) ++ return -1; ++ ++ /* Max size is 64K */ ++ if (len > 65536) ++ len = 65536; ++ ++ memset(buf, 0x00, len); ++ g_strlcpy(buf, str, len); ++ ++ if (fwrite (buf, len, 1, out) == len) ++ return 0; ++ ++ return -1; ++} ++ ++ ++/** ++ * camel_file_util_decode_fixed_string: ++ * @in: file to read from ++ * @str: pointer to a variable to store the value in ++ * @len: total-len to decode. ++ * ++ * Decode a normal string from the input file. ++ * ++ * Return value: 0 on success, -1 on error. ++ **/ ++int ++camel_file_util_decode_fixed_string (FILE *in, char **str, size_t len) ++{ ++ register char *ret; ++ ++ if (len > 65536) { ++ *str = NULL; ++ return -1; ++ } ++ ++ ret = g_malloc (len+1); ++ if (len > 0 && fread (ret, len, 1, in) != 1) { ++ g_free (ret); ++ *str = NULL; ++ return -1; ++ } ++ ++ ret[len] = 0; ++ *str = ret; ++ return 0; ++} + + /** + * camel_file_util_safe_filename: +Index: camel/camel-file-utils.h +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/camel-file-utils.h,v +retrieving revision 1.11 +diff -u -p -r1.11 camel-file-utils.h +--- camel/camel-file-utils.h 10 Jan 2006 07:56:46 -0000 1.11 ++++ camel/camel-file-utils.h 12 Mar 2006 20:49:46 -0000 +@@ -54,6 +54,9 @@ int camel_file_util_encode_size_t (FILE + int camel_file_util_decode_size_t (FILE *in, size_t *); + int camel_file_util_encode_string (FILE *out, const char *); + int camel_file_util_decode_string (FILE *in, char **); ++int camel_file_util_encode_fixed_string (FILE *out, const char *str, size_t len); ++int camel_file_util_decode_fixed_string (FILE *in, char **str, size_t len); ++ + + char *camel_file_util_safe_filename (const char *name); + +Index: camel/camel-folder-summary.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/camel-folder-summary.c,v +retrieving revision 1.147 +diff -u -p -r1.147 camel-folder-summary.c +--- camel/camel-folder-summary.c 2 Feb 2006 05:38:25 -0000 1.147 ++++ camel/camel-folder-summary.c 12 Mar 2006 20:49:47 -0000 +@@ -78,6 +78,8 @@ extern int strdup_count, malloc_count, f + + #define _PRIVATE(o) (((CamelFolderSummary *)(o))->priv) + ++#define META_SUMMARY_SUFFIX_LEN 5 /* strlen("-meta") */ ++ + /* trivial lists, just because ... */ + struct _node { + struct _node *next; +@@ -88,12 +90,15 @@ static int my_list_size(struct _node **l + + static int summary_header_load(CamelFolderSummary *, FILE *); + static int summary_header_save(CamelFolderSummary *, FILE *); ++static int summary_meta_header_load(CamelFolderSummary *, FILE *); ++static int summary_meta_header_save(CamelFolderSummary *, FILE *); + + static CamelMessageInfo * message_info_new_from_header(CamelFolderSummary *, struct _camel_header_raw *); + static CamelMessageInfo * message_info_new_from_parser(CamelFolderSummary *, CamelMimeParser *); + static CamelMessageInfo * message_info_new_from_message(CamelFolderSummary *s, CamelMimeMessage *msg); + static CamelMessageInfo * message_info_load(CamelFolderSummary *, FILE *); + static int message_info_save(CamelFolderSummary *, FILE *, CamelMessageInfo *); ++static int meta_message_info_save(CamelFolderSummary *s, FILE *out_meta, FILE *out, CamelMessageInfo *info); + static void message_info_free(CamelFolderSummary *, CamelMessageInfo *); + + static CamelMessageContentInfo * content_info_new_from_header(CamelFolderSummary *, struct _camel_header_raw *); +@@ -146,6 +151,13 @@ camel_folder_summary_init (CamelFolderSu + p->filter_lock = g_mutex_new(); + p->alloc_lock = g_mutex_new(); + p->ref_lock = g_mutex_new(); ++ ++ s->meta_summary = g_malloc0(sizeof(CamelFolderMetaSummary)); ++ ++ /* Default is 20, any implementor having UIDs that has length ++ exceeding 20, has to override this value ++ */ ++ s->meta_summary->uid_len = 20; + } + + static void free_o_name(void *key, void *value, void *data) +@@ -193,6 +205,10 @@ camel_folder_summary_finalize (CamelObje + camel_object_unref((CamelObject *)p->filter_stream); + if (p->index) + camel_object_unref((CamelObject *)p->index); ++ ++ /* Freeing memory occupied by meta-summary-header */ ++ g_free(s->meta_summary->path); ++ g_free(s->meta_summary); + + g_mutex_free(p->summary_lock); + g_mutex_free(p->io_lock); +@@ -256,6 +272,9 @@ camel_folder_summary_set_filename(CamelF + g_free(s->summary_path); + s->summary_path = g_strdup(name); + ++ g_free(s->meta_summary->path); ++ s->meta_summary->path = g_strconcat(name, "-meta", NULL); ++ + CAMEL_SUMMARY_UNLOCK(s, summary_lock); + } + +@@ -544,7 +563,8 @@ camel_folder_summary_load(CamelFolderSum + int i; + CamelMessageInfo *mi; + +- if (s->summary_path == NULL) ++ if (s->summary_path == NULL || ++ s->meta_summary->path == NULL) + return 0; + + in = g_fopen(s->summary_path, "rb"); +@@ -630,14 +650,17 @@ int + camel_folder_summary_save(CamelFolderSummary *s) + { + FILE *out; +- int fd, i; ++ FILE *out_meta; ++ int fd, i, fd_meta; + guint32 count; + CamelMessageInfo *mi; + char *path; ++ char *path_meta; + + g_assert(s->message_info_size >= sizeof(CamelMessageInfoBase)); + +- if (s->summary_path == NULL ++ if (s->summary_path == NULL ++ || s->meta_summary->path == NULL + || (s->flags & CAMEL_SUMMARY_DIRTY) == 0) + return 0; + +@@ -655,32 +678,65 @@ camel_folder_summary_save(CamelFolderSum + return -1; + } + ++ /* Meta summary code */ ++ /* This meta summary will be used by beagle in order to ++ quickly pass through the actual summary file, which ++ is quite time consuming otherwise. ++ */ ++ /* FIXME: Merge meta-summary and summary */ ++ path_meta = alloca(strlen(s->meta_summary->path)+4); ++ sprintf(path_meta, "%s~", s->meta_summary->path); ++ fd_meta = g_open(path_meta, O_RDWR|O_CREAT|O_TRUNC|O_BINARY, 0600); ++ if (fd_meta == -1) ++ return -1; ++ out_meta = fdopen(fd_meta, "wb"); ++ if (out_meta == NULL) { ++ i = errno; ++ g_unlink(path); ++ g_unlink(path_meta); ++ close(fd); ++ close(fd_meta); ++ errno = i; ++ return -1; ++ } ++ + io(printf("saving header\n")); + + CAMEL_SUMMARY_LOCK(s, io_lock); + + if (((CamelFolderSummaryClass *)(CAMEL_OBJECT_GET_CLASS(s)))->summary_header_save(s, out) == -1) + goto exception; +- ++ ++ if (summary_meta_header_save(s, out_meta) == -1) ++ goto exception; ++ + /* now write out each message ... */ + /* we check ferorr when done for i/o errors */ + count = s->messages->len; + for (i = 0; i < count; i++) { + mi = s->messages->pdata[i]; +- if (((CamelFolderSummaryClass *)(CAMEL_OBJECT_GET_CLASS (s)))->message_info_save (s, out, mi) == -1) ++ if (((CamelFolderSummaryClass *)(CAMEL_OBJECT_GET_CLASS (s)))->meta_message_info_save (s, out_meta, out, mi) == -1) + goto exception; + ++ if (((CamelFolderSummaryClass *)(CAMEL_OBJECT_GET_CLASS (s)))->message_info_save (s, out, mi) == -1) ++ goto exception; ++ + if (s->build_content) { + if (perform_content_info_save (s, out, ((CamelMessageInfoBase *)mi)->content) == -1) + goto exception; + } + } + ++ /* FIXME: Can't we use the above "fd" variables, instead of fileno()? */ + if (fflush (out) != 0 || fsync (fileno (out)) == -1) + goto exception; + ++ if (fflush (out_meta) != 0 || fsync (fileno (out_meta)) == -1) ++ goto exception; ++ + fclose (out); +- ++ fclose (out_meta); ++ + CAMEL_SUMMARY_UNLOCK(s, io_lock); + + #ifdef G_OS_WIN32 +@@ -692,6 +748,13 @@ camel_folder_summary_save(CamelFolderSum + errno = i; + return -1; + } ++ ++ if (g_rename(path_meta, s->meta_summary->path) == -1) { ++ i = errno; ++ g_unlink(path_meta); ++ errno = i; ++ return -1; ++ } + + s->flags &= ~CAMEL_SUMMARY_DIRTY; + return 0; +@@ -701,10 +764,12 @@ camel_folder_summary_save(CamelFolderSum + i = errno; + + fclose (out); ++ fclose (out_meta); + + CAMEL_SUMMARY_UNLOCK(s, io_lock); + + g_unlink (path); ++ g_unlink (path_meta); + errno = i; + + return -1; +@@ -725,20 +790,30 @@ int + camel_folder_summary_header_load(CamelFolderSummary *s) + { + FILE *in; ++ FILE *in_meta; + int ret; + +- if (s->summary_path == NULL) ++ if (s->summary_path == NULL || ++ s->meta_summary->path == NULL) + return 0; + + in = g_fopen(s->summary_path, "rb"); + if (in == NULL) + return -1; + ++ in_meta = g_fopen(s->meta_summary->path, "rb"); ++ if (in_meta == NULL) { ++ fclose(in); ++ return -1; ++ } ++ + CAMEL_SUMMARY_LOCK(s, io_lock); + ret = ((CamelFolderSummaryClass *)(CAMEL_OBJECT_GET_CLASS(s)))->summary_header_load(s, in); ++ ret = summary_meta_header_load(s, in_meta); + CAMEL_SUMMARY_UNLOCK(s, io_lock); + + fclose(in); ++ fclose(in_meta); + s->flags &= ~CAMEL_SUMMARY_DIRTY; + return ret; + } +@@ -1086,6 +1161,7 @@ camel_folder_summary_clear(CamelFolderSu + g_hash_table_destroy(s->messages_uid); + s->messages_uid = g_hash_table_new(g_str_hash, g_str_equal); + s->flags |= CAMEL_SUMMARY_DIRTY; ++ s->meta_summary->msg_expunged = TRUE; + CAMEL_SUMMARY_UNLOCK(s, summary_lock); + } + +@@ -1104,8 +1180,9 @@ camel_folder_summary_remove(CamelFolderS + g_hash_table_remove(s->messages_uid, camel_message_info_uid(info)); + g_ptr_array_remove(s->messages, info); + s->flags |= CAMEL_SUMMARY_DIRTY; ++ s->meta_summary->msg_expunged = TRUE; + CAMEL_SUMMARY_UNLOCK(s, summary_lock); +- ++ + camel_message_info_free(info); + } + +@@ -1390,8 +1467,30 @@ my_list_size(struct _node **list) + } + + static int ++summary_meta_header_load(CamelFolderSummary *s, FILE *in) ++{ ++ if (!s->meta_summary->path) ++ return -1; ++ ++ fseek(in, 0, SEEK_SET); ++ ++ io(printf("Loading meta-header\n")); ++ ++ if (camel_file_util_decode_uint32(in, &s->meta_summary->major) == -1 ++ || camel_file_util_decode_uint32(in, &s->meta_summary->minor) == -1 ++ || camel_file_util_decode_uint32(in, &s->meta_summary->uid_len) == -1) { ++ return -1; ++ } ++ ++ return 0; ++} ++ ++static int + summary_header_load(CamelFolderSummary *s, FILE *in) + { ++ if (!s->summary_path) ++ return -1; ++ + fseek(in, 0, SEEK_SET); + + io(printf("Loading header\n")); +@@ -1471,6 +1570,25 @@ summary_header_save(CamelFolderSummary * + return camel_file_util_encode_fixed_int32(out, junk); + } + ++static int ++summary_meta_header_save(CamelFolderSummary *s, FILE *out_meta) ++{ ++ fseek(out_meta, 0, SEEK_SET); ++ ++ /* Save meta-summary header */ ++ if (s->meta_summary->msg_expunged) { ++ s->meta_summary->msg_expunged = FALSE; ++ camel_file_util_encode_uint32(out_meta, ++s->meta_summary->major); ++ camel_file_util_encode_uint32(out_meta, (s->meta_summary->minor=0)); ++ } else { ++ camel_file_util_encode_uint32(out_meta, s->meta_summary->major); ++ camel_file_util_encode_uint32(out_meta, ++s->meta_summary->minor); ++ } ++ camel_file_util_encode_uint32(out_meta, s->meta_summary->uid_len); ++ ++ return ferror(out_meta); ++} ++ + /* are these even useful for anything??? */ + static CamelMessageInfo * + message_info_new_from_parser(CamelFolderSummary *s, CamelMimeParser *mp) +@@ -1774,6 +1892,25 @@ error: + } + + static int ++meta_message_info_save(CamelFolderSummary *s, FILE *out_meta, FILE *out, CamelMessageInfo *info) ++{ ++ time_t timestamp; ++ off_t offset; ++ CamelMessageInfoBase *mi = (CamelMessageInfoBase *)info; ++ ++ time (×tamp); ++ offset = ftell (out); ++ /* FIXME: errno check after ftell */ ++ ++ camel_file_util_encode_time_t(out_meta, timestamp); ++ camel_file_util_encode_fixed_string(out_meta, camel_message_info_uid(mi), s->meta_summary->uid_len); ++ camel_file_util_encode_uint32(out_meta, mi->flags); ++ camel_file_util_encode_off_t(out_meta, offset); ++ ++ return ferror(out); ++} ++ ++static int + message_info_save(CamelFolderSummary *s, FILE *out, CamelMessageInfo *info) + { + guint32 count; +@@ -3115,6 +3252,7 @@ camel_folder_summary_class_init (CamelFo + klass->message_info_new_from_message = message_info_new_from_message; + klass->message_info_load = message_info_load; + klass->message_info_save = message_info_save; ++ klass->meta_message_info_save = meta_message_info_save; + klass->message_info_free = message_info_free; + klass->message_info_clone = message_info_clone; + +Index: camel/camel-folder-summary.h +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/camel-folder-summary.h,v +retrieving revision 1.86 +diff -u -p -r1.86 camel-folder-summary.h +--- camel/camel-folder-summary.h 31 Aug 2005 04:21:56 -0000 1.86 ++++ camel/camel-folder-summary.h 12 Mar 2006 20:49:47 -0000 +@@ -46,6 +46,8 @@ typedef struct _CamelFolderSummaryClass + typedef struct _CamelMessageInfo CamelMessageInfo; + typedef struct _CamelMessageInfoBase CamelMessageInfoBase; + ++typedef struct _CamelFolderMetaSummary CamelFolderMetaSummary; ++ + /* A tree of message content info structures + describe the content structure of the message (if it has any) */ + struct _CamelMessageContentInfo { +@@ -224,6 +226,7 @@ struct _CamelFolderSummary { + GHashTable *messages_uid; /* CamelMessageInfo's by uid */ + + struct _CamelFolder *folder; /* parent folder, for events */ ++ struct _CamelFolderMetaSummary *meta_summary; /* Meta summary */ + }; + + struct _CamelFolderSummaryClass { +@@ -238,7 +241,8 @@ struct _CamelFolderSummaryClass { + CamelMessageInfo * (*message_info_new_from_parser)(CamelFolderSummary *, CamelMimeParser *); + CamelMessageInfo * (*message_info_new_from_message)(CamelFolderSummary *, CamelMimeMessage *); + CamelMessageInfo * (*message_info_load)(CamelFolderSummary *, FILE *); +- int (*message_info_save)(CamelFolderSummary *, FILE *, CamelMessageInfo *); ++ int (*message_info_save)(CamelFolderSummary *, FILE *, CamelMessageInfo *); ++ int (*meta_message_info_save)(CamelFolderSummary *, FILE *, FILE *, CamelMessageInfo *); + + void (*message_info_free)(CamelFolderSummary *, CamelMessageInfo *); + CamelMessageInfo * (*message_info_clone)(CamelFolderSummary *, const CamelMessageInfo *); +@@ -272,6 +276,15 @@ struct _CamelFolderSummaryClass { + gboolean (*info_set_user_flag)(CamelMessageInfo *mi, const char *id, gboolean state); + gboolean (*info_set_user_tag)(CamelMessageInfo *mi, const char *id, const char *val); + gboolean (*info_set_flags)(CamelMessageInfo *mi, guint32 mask, guint32 set); ++}; ++ ++/* Meta-summary info */ ++struct _CamelFolderMetaSummary { ++ guint32 major; /* Major version of meta-summary */ ++ guint32 minor; /* Minor version of meta-summary */ ++ guint32 uid_len; /* Length of UID (for implementors to use) */ ++ gboolean msg_expunged; /* Whether any message is expunged or not */ ++ char *path; /* Path to meta-summary-file */ + }; + + CamelType camel_folder_summary_get_type (void); +Index: camel/providers/groupwise/camel-groupwise-summary.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/groupwise/camel-groupwise-summary.c,v +retrieving revision 1.10 +diff -u -p -r1.10 camel-groupwise-summary.c +--- camel/providers/groupwise/camel-groupwise-summary.c 9 Nov 2005 14:23:44 -0000 1.10 ++++ camel/providers/groupwise/camel-groupwise-summary.c 12 Mar 2006 20:49:47 -0000 +@@ -122,6 +122,9 @@ camel_groupwise_summary_init (CamelGroup + /* subclasses need to set the right instance data sizes */ + s->message_info_size = sizeof(CamelGroupwiseMessageInfo); + s->content_info_size = sizeof(CamelGroupwiseMessageContentInfo); ++ ++ /* Meta-summary - Overriding UID len */ ++ s->meta_summary->uid_len = 2048; + } + + +Index: camel/providers/local/camel-mbox-summary.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/local/camel-mbox-summary.c,v +retrieving revision 1.56 +diff -u -p -r1.56 camel-mbox-summary.c +--- camel/providers/local/camel-mbox-summary.c 8 Dec 2005 11:28:47 -0000 1.56 ++++ camel/providers/local/camel-mbox-summary.c 12 Mar 2006 20:49:47 -0000 +@@ -54,6 +54,7 @@ static CamelMessageInfo * message_info_n + static CamelMessageInfo * message_info_new_from_parser(CamelFolderSummary *, CamelMimeParser *); + static CamelMessageInfo * message_info_load (CamelFolderSummary *, FILE *); + static int message_info_save (CamelFolderSummary *, FILE *, CamelMessageInfo *); ++static int meta_message_info_save(CamelFolderSummary *s, FILE *out_meta, FILE *out, CamelMessageInfo *mi); + /*static void message_info_free (CamelFolderSummary *, CamelMessageInfo *);*/ + + static char *mbox_summary_encode_x_evolution (CamelLocalSummary *cls, const CamelLocalMessageInfo *mi); +@@ -153,6 +154,7 @@ camel_mbox_summary_class_init(CamelMboxS + sklass->message_info_new_from_parser = message_info_new_from_parser; + sklass->message_info_load = message_info_load; + sklass->message_info_save = message_info_save; ++ sklass->meta_message_info_save = meta_message_info_save; + /*sklass->message_info_free = message_info_free;*/ + + sklass->info_set_user_flag = mbox_info_set_user_flag; +@@ -378,6 +380,20 @@ message_info_load(CamelFolderSummary *s, + error: + camel_message_info_free(mi); + return NULL; ++} ++ ++static int ++meta_message_info_save(CamelFolderSummary *s, FILE *out_meta, FILE *out, CamelMessageInfo *mi) ++{ ++ CamelMboxMessageInfo *mbi = (CamelMboxMessageInfo *)mi; ++ ++ io(printf("saving mbox message info\n")); ++ ++ if (((CamelFolderSummaryClass *)camel_mbox_summary_parent)->meta_message_info_save(s, out_meta, out, mi) == -1 ++ || camel_file_util_encode_off_t(out_meta, mbi->frompos) == -1) ++ return -1; ++ ++ return 0; + } + + static int +Index: camel/providers/local/camel-mbox-store.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/local/camel-mbox-store.c,v +retrieving revision 1.44 +diff -u -p -r1.44 camel-mbox-store.c +--- camel/providers/local/camel-mbox-store.c 10 Jan 2006 07:56:48 -0000 1.44 ++++ camel/providers/local/camel-mbox-store.c 13 Mar 2006 13:33:37 -0000 +@@ -99,7 +99,7 @@ camel_mbox_store_get_type(void) + } + + static char *extensions[] = { +- ".msf", ".ev-summary", ".ibex.index", ".ibex.index.data", ".cmeta", ".lock" ++ ".msf", ".ev-summary", ".ibex.index", ".ibex.index.data", ".cmeta", ".lock", ".ev-summary-meta" + }; + + static gboolean diff --git a/bgo-272307-evolution-clobbers-mail-address.patch b/bgo-272307-evolution-clobbers-mail-address.patch new file mode 100644 index 0000000..2e2ef7e --- /dev/null +++ b/bgo-272307-evolution-clobbers-mail-address.patch @@ -0,0 +1,38 @@ +Index: camel/camel-mime-utils.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/camel-mime-utils.c,v +retrieving revision 1.235 +diff -u -p -r1.235 camel-mime-utils.c +--- camel/camel-mime-utils.c 23 Jan 2006 09:57:55 -0000 1.235 ++++ camel/camel-mime-utils.c 2 Mar 2006 10:14:36 -0000 +@@ -2247,7 +2247,7 @@ camel_content_type_unref(CamelContentTyp + g_free(ct->type); + g_free(ct->subtype); + g_free(ct); +- ct= NULL; ++ ct = NULL; + } else { + ct->refcount--; + } +@@ -2449,7 +2449,7 @@ header_decode_mailbox(const char **in, c + } + } + pre = header_decode_word (&inptr); +- header_decode_lwsp(&inptr); ++ /*header_decode_lwsp(&inptr);*/ + } else { + w(g_warning("broken address? %s", *in)); + } +@@ -2508,10 +2508,10 @@ header_decode_mailbox(const char **in, c + g_string_truncate(name, 0); + g_string_append(name, text); + } +- } else { ++ }/* else { + g_string_append(name, text?text:addr->str); + g_string_truncate(addr, 0); +- } ++ }*/ + g_free(text); + + /* or maybe that we've added up a bunch of broken bits to make an encoded word */ diff --git a/bgo-310433-eds-deny-rename-stdfolders.diff b/bgo-310433-eds-deny-rename-stdfolders.diff new file mode 100644 index 0000000..ddb8f12 --- /dev/null +++ b/bgo-310433-eds-deny-rename-stdfolders.diff @@ -0,0 +1,16 @@ +Index: servers/exchange/storage/exchange-hierarchy-webdav.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/servers/exchange/storage/exchange-hierarchy-webdav.c,v +retrieving revision 1.11 +diff -u -p -r1.11 exchange-hierarchy-webdav.c +--- servers/exchange/storage/exchange-hierarchy-webdav.c 25 Feb 2006 06:09:14 -0000 1.11 ++++ servers/exchange/storage/exchange-hierarchy-webdav.c 6 Apr 2006 13:50:35 -0000 +@@ -421,7 +421,7 @@ xfer_folder (ExchangeHierarchy *hier, EF + * update folder size in case of rename. + */ + +- source_folder_name = strrchr (physical_uri + 1, '/'); ++ source_folder_name = strrchr (physical_uri, '/') + 1; + source_parent = g_strndup (physical_uri, + source_folder_name - physical_uri); + if (!strcmp (e_folder_get_physical_uri (dest_parent), source_parent)) { diff --git a/bgo-315976-INBOX-not-shown-when-override-namespace.patch b/bgo-315976-INBOX-not-shown-when-override-namespace.patch new file mode 100644 index 0000000..c58b5f1 --- /dev/null +++ b/bgo-315976-INBOX-not-shown-when-override-namespace.patch @@ -0,0 +1,100 @@ +Index: camel/providers/imap/camel-imap-store.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/imap/camel-imap-store.c,v +retrieving revision 1.340.2.3 +diff -u -r1.340.2.3 camel/providers/imap/camel-imap-store.c +--- camel/providers/imap/camel-imap-store.c 24 Apr 2006 15:18:25 -0000 1.340.2.3 ++++ camel/providers/imap/camel-imap-store.c 1 May 2006 21:14:40 -0000 +@@ -280,7 +280,7 @@ + imap_store->parameters = 0; + if (camel_url_get_param (url, "use_lsub")) + imap_store->parameters |= IMAP_PARAM_SUBSCRIPTIONS; +- if (camel_url_get_param (url, "namespace")) { ++ if (camel_url_get_param (url, "override_namespace") && camel_url_get_param (url, "namespace")) { + imap_store->parameters |= IMAP_PARAM_OVERRIDE_NAMESPACE; + g_free(imap_store->namespace); + imap_store->namespace = g_strdup (camel_url_get_param (url, "namespace")); +@@ -2618,7 +2618,10 @@ + + if (store->namespace && store->namespace[0]) { + char *pattern; +- ++ ++ get_folders_sync(store, "INBOX", &m->ex); ++ if (camel_exception_is_set(&m->ex)) ++ goto done; + get_folders_sync(store, store->namespace, &m->ex); + if (camel_exception_is_set(&m->ex)) + goto done; +@@ -2697,6 +2700,10 @@ + + if (top[0] == 0) { + if (imap_store->namespace && imap_store->namespace[0]) { ++ get_folders_sync(imap_store, "INBOX", ex); ++ if (camel_exception_is_set(ex)) ++ goto fail; ++ + i = strlen(imap_store->namespace)-1; + pattern = g_alloca(i+5); + strcpy(pattern, imap_store->namespace); +@@ -2711,7 +2718,7 @@ + } + } else { + char *name; +- ++ + name = camel_imap_store_summary_full_from_path(imap_store->summary, top); + if (name == NULL) + name = camel_imap_store_summary_path_to_full(imap_store->summary, top, imap_store->dir_sep); +@@ -2748,6 +2755,7 @@ + guint32 flags, CamelException *ex) + { + CamelImapStore *imap_store = CAMEL_IMAP_STORE (store); ++ gboolean include_inbox = FALSE; + CamelFolderInfo *fi; + GPtrArray *folders; + char *pattern, *name; +@@ -2760,12 +2768,14 @@ + + folders = g_ptr_array_new (); + +- if (top == NULL) ++ if (top == NULL || top[0] == '\0') { ++ include_inbox = TRUE; + top = ""; ++ } + + /* get starting point */ + if (top[0] == 0) { +- if (imap_store->namespace) { ++ if (imap_store->namespace && imap_store->namespace[0]) { + name = g_strdup(imap_store->summary->namespace->full_name); + top = imap_store->summary->namespace->path; + } else +@@ -2789,9 +2799,10 @@ + + if (si == NULL) + continue; +- ++ + if ((!strcmp(name, camel_imap_store_info_full_name(imap_store->summary, si)) +- || imap_match_pattern(imap_store->dir_sep, pattern, camel_imap_store_info_full_name(imap_store->summary, si))) ++ || imap_match_pattern(imap_store->dir_sep, pattern, camel_imap_store_info_full_name(imap_store->summary, si)) ++ || (include_inbox && !g_ascii_strcasecmp (camel_imap_store_info_full_name(imap_store->summary, si), "INBOX"))) + && ((imap_store->parameters & IMAP_PARAM_SUBSCRIPTIONS) == 0 + || (flags & CAMEL_STORE_FOLDER_INFO_SUBSCRIBED) == 0 + || (si->flags & CAMEL_STORE_INFO_FOLDER_SUBSCRIBED))) { +@@ -2804,11 +2815,11 @@ + it. See create folder */ + if (fi->flags & CAMEL_FOLDER_NOINFERIORS) + fi->flags = (fi->flags & ~CAMEL_FOLDER_NOINFERIORS) | CAMEL_FOLDER_NOCHILDREN; +- ++ + /* blah, this gets lost somewhere, i can't be bothered finding out why */ + if (!g_ascii_strcasecmp(fi->full_name, "inbox")) + fi->flags = (fi->flags & ~CAMEL_FOLDER_TYPE_MASK) | CAMEL_FOLDER_TYPE_INBOX; +- ++ + if (si->flags & CAMEL_FOLDER_NOSELECT) { + CamelURL *url = camel_url_new(fi->uri, NULL); + diff --git a/bgo-321797.patch b/bgo-321797.patch new file mode 100644 index 0000000..20d9e50 --- /dev/null +++ b/bgo-321797.patch @@ -0,0 +1,104 @@ +Index: camel/providers/imap/camel-imap-store.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/imap/camel-imap-store.c,v +retrieving revision 1.340.2.2 +diff -u -r1.340.2.2 camel-imap-store.c +--- camel/providers/imap/camel-imap-store.c 20 Apr 2006 21:12:15 -0000 1.340.2.2 ++++ camel/providers/imap/camel-imap-store.c 21 Apr 2006 18:56:51 -0000 +@@ -978,16 +978,11 @@ + camel_exception_clear (ex); + ai = camel_getaddrinfo(service->url->host, port, &hints, ex); + } ++ + if (ai == NULL) + return FALSE; + +- if (!(ret = connect_to_server (service, ai, mode, ex)) && mode == MODE_SSL) { +- camel_exception_clear (ex); +- ret = connect_to_server (service, ai, MODE_TLS, ex); +- } else if (!ret && mode == MODE_TLS) { +- camel_exception_clear (ex); +- ret = connect_to_server (service, ai, MODE_CLEAR, ex); +- } ++ ret = connect_to_server (service, ai, mode, ex); + + camel_freeaddrinfo (ai); + +Index: camel/providers/imap4/camel-imap4-store.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/imap4/camel-imap4-store.c,v +retrieving revision 1.56.2.3 +diff -u -r1.56.2.3 camel-imap4-store.c +--- camel/providers/imap4/camel-imap4-store.c 21 Apr 2006 15:42:20 -0000 1.56.2.3 ++++ camel/providers/imap4/camel-imap4-store.c 21 Apr 2006 18:56:51 -0000 +@@ -383,16 +383,11 @@ + camel_exception_clear (ex); + ai = camel_getaddrinfo (service->url->host, port, &hints, ex); + } ++ + if (ai == NULL) + return FALSE; + +- if (!(ret = connect_to_server (engine, ai, mode, ex)) && mode == MODE_SSL) { +- camel_exception_clear (ex); +- ret = connect_to_server (engine, ai, MODE_TLS, ex); +- } else if (!ret && mode == MODE_TLS) { +- camel_exception_clear (ex); +- ret = connect_to_server (engine, ai, MODE_CLEAR, ex); +- } ++ ret = connect_to_server (engine, ai, mode, ex); + + camel_freeaddrinfo (ai); + +Index: camel/providers/pop3/camel-pop3-store.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/pop3/camel-pop3-store.c,v +retrieving revision 1.124 +diff -u -r1.124 camel-pop3-store.c +--- camel/providers/pop3/camel-pop3-store.c 31 Aug 2005 04:26:04 -0000 1.124 ++++ camel/providers/pop3/camel-pop3-store.c 21 Apr 2006 18:56:51 -0000 +@@ -324,16 +324,11 @@ + camel_exception_clear (ex); + ai = camel_getaddrinfo(service->url->host, port, &hints, ex); + } ++ + if (ai == NULL) + return FALSE; + +- if (!(ret = connect_to_server (service, ai, mode, ex)) && mode == MODE_SSL) { +- camel_exception_clear (ex); +- ret = connect_to_server (service, ai, MODE_TLS, ex); +- } else if (!ret && mode == MODE_TLS) { +- camel_exception_clear (ex); +- ret = connect_to_server (service, ai, MODE_CLEAR, ex); +- } ++ ret = connect_to_server (service, ai, mode, ex); + + camel_freeaddrinfo (ai); + +Index: camel/providers/smtp/camel-smtp-transport.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/smtp/camel-smtp-transport.c,v +retrieving revision 1.169.6.2 +diff -u -r1.169.6.2 camel-smtp-transport.c +--- camel/providers/smtp/camel-smtp-transport.c 18 Apr 2006 20:59:29 -0000 1.169.6.2 ++++ camel/providers/smtp/camel-smtp-transport.c 21 Apr 2006 18:56:51 -0000 +@@ -431,16 +431,11 @@ + camel_exception_clear (ex); + ai = camel_getaddrinfo(service->url->host, port, &hints, ex); + } ++ + if (ai == NULL) + return FALSE; + +- if (!(ret = connect_to_server (service, ai, mode, ex)) && mode == MODE_SSL) { +- camel_exception_clear (ex); +- ret = connect_to_server (service, ai, MODE_TLS, ex); +- } else if (!ret && mode == MODE_TLS) { +- camel_exception_clear (ex); +- ret = connect_to_server (service, ai, MODE_CLEAR, ex); +- } ++ ret = connect_to_server (service, ai, mode, ex); + + camel_freeaddrinfo (ai); + diff --git a/bgo-323275-eds-crash-at-startup.patch b/bgo-323275-eds-crash-at-startup.patch new file mode 100644 index 0000000..018f1f5 --- /dev/null +++ b/bgo-323275-eds-crash-at-startup.patch @@ -0,0 +1,13 @@ +--- calendar/libedata-cal/e-cal-backend-cache.c.orig 2006-01-19 09:41:58.000000000 +0100 ++++ calendar/libedata-cal/e-cal-backend-cache.c 2006-03-23 15:24:54.421930564 +0100 +@@ -235,7 +235,9 @@ e_cal_backend_cache_get_type (void) + 0, + (GInstanceInitFunc) e_cal_backend_cache_init, + }; +- type = g_type_register_static (E_TYPE_FILE_CACHE, "ECalBackendCache", &info, 0); ++ /* Check if the type is already registered */ ++ if (!(type = g_type_from_name ("ECalBackendCache"))) ++ type = g_type_register_static (E_TYPE_FILE_CACHE, "ECalBackendCache", &info, 0); + } + g_static_mutex_unlock (®istering); + diff --git a/bgo-329371-eds-fix-full-username-email-format.patch b/bgo-329371-eds-fix-full-username-email-format.patch new file mode 100644 index 0000000..4f9ea50 --- /dev/null +++ b/bgo-329371-eds-fix-full-username-email-format.patch @@ -0,0 +1,144 @@ +Index: servers/exchange/lib/e2k-uri.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/servers/exchange/lib/e2k-uri.c,v +retrieving revision 1.5 +diff -u -p -r1.5 e2k-uri.c +--- servers/exchange/lib/e2k-uri.c 27 Jan 2006 14:16:06 -0000 1.5 ++++ servers/exchange/lib/e2k-uri.c 18 Apr 2006 10:00:10 -0000 +@@ -109,14 +109,6 @@ e2k_uri_new (const char *uri_string) + *backslash = '\0'; + uri->user = g_strdup (backslash + 1); + } +- else { +- /* if backslash is not there check for @ */ +- user_at = strchr (uri->user, '@'); +- if (user_at) { +- *user_at = '\0'; +- uri->domain = g_strdup (user_at + 1); +- } +- } + } else + uri->user = uri->passwd = uri->domain = NULL; + +Index: servers/exchange/lib/e2k-validate.h +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/servers/exchange/lib/e2k-validate.h,v +retrieving revision 1.3 +diff -u -p -r1.3 e2k-validate.h +--- servers/exchange/lib/e2k-validate.h 1 Jul 2005 05:43:21 -0000 1.3 ++++ servers/exchange/lib/e2k-validate.h 18 Apr 2006 10:00:47 -0000 +@@ -36,7 +36,7 @@ typedef enum { + E2K_AUTOCONFIG_FAILED + } E2kAutoconfigResult; + +-gboolean e2k_validate_user (const char *owa_url, char *user, ExchangeParams *exchange_params, gboolean *remember_password, E2kAutoconfigResult *result); ++gboolean e2k_validate_user (const char *owa_url, char **user, ExchangeParams *exchange_params, gboolean *remember_password, E2kAutoconfigResult *result); + + + #ifdef __cplusplus +Index: servers/exchange/lib/e2k-autoconfig.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/servers/exchange/lib/e2k-autoconfig.c,v +retrieving revision 1.14 +diff -u -p -r1.14 e2k-autoconfig.c +--- servers/exchange/lib/e2k-autoconfig.c 6 Mar 2006 06:00:25 -0000 1.14 ++++ servers/exchange/lib/e2k-autoconfig.c 18 Apr 2006 10:02:36 -0000 +@@ -1002,6 +1002,7 @@ set_account_uri_string (E2kAutoconfig *a + g_string_append (uri, ";mailbox="); + e2k_uri_append_encoded (uri, mailbox, FALSE, ";?"); + } ++ printf ("set account uri string: mailbox = %s \n", mailbox); + g_string_append (uri, ";owa_path=/"); + e2k_uri_append_encoded (uri, path, FALSE, ";?"); + g_free (path); +@@ -1505,6 +1506,7 @@ validate (const char *owa_url, char *use + *mailbox++ = '\0'; + + exchange_params->mailbox = g_strdup (mailbox); ++ printf ("validate: mailbox = %s \n", exchange_params->mailbox); + exchange_params->owa_path = g_strdup_printf ("%s%s", "/", path); + g_free (path); + exchange_params->host = g_strdup (ac->pf_server); +@@ -1619,14 +1621,20 @@ validate (const char *owa_url, char *use + } + + gboolean +-e2k_validate_user (const char *owa_url, char *user, ++e2k_validate_user (const char *owa_url, char **user, + ExchangeParams *exchange_params, gboolean *remember_password, + E2kAutoconfigResult *result) + { + gboolean valid = FALSE, remember=FALSE; + char *key, *password, *prompt; ++ char *username; ++ gchar **usernames; ++ int try = 0; + +- key = g_strdup_printf ("%s//%s@%s/", "exchange:", user, owa_url); /* FIXME */ ++try_auth_again: ++ username = g_strdup (*user); ++ ++ key = g_strdup_printf ("%s//%s@%s/", "exchange:", username, owa_url); /* FIXME */ + password = e_passwords_get_password ("Exchange", key); + if (password) { + /* This can be the case, where user presses authenticate button and +@@ -1636,7 +1644,7 @@ e2k_validate_user (const char *owa_url, + e_passwords_forget_password ("Exchange", key); + } + +- prompt = g_strdup_printf (_("Enter password for %s"), user); ++ prompt = g_strdup_printf (_("Enter password for %s"), username); + password = e_passwords_ask_password (_("Enter password"), + "Exchange", key, prompt, + E_PASSWORDS_REMEMBER_FOREVER|E_PASSWORDS_SECRET, +@@ -1644,10 +1652,11 @@ e2k_validate_user (const char *owa_url, + g_free (prompt); + if (!password) { + g_free (key); ++ g_free (username); + return valid; + } + +- valid = validate (owa_url, user, password, exchange_params, result); ++ valid = validate (owa_url, username, password, exchange_params, result); + if (valid) { + /* generate the proper key once the host name + * is read and remember password temporarily, +@@ -1659,18 +1668,35 @@ e2k_validate_user (const char *owa_url, + g_free (key); + if (exchange_params->is_ntlm) + key = g_strdup_printf ("exchange://%s;auth=NTLM@%s/", +- user, exchange_params->host); ++ username, exchange_params->host); + else +- key = g_strdup_printf ("exchange://%s@%s/", user, exchange_params->host); ++ key = g_strdup_printf ("exchange://%s@%s/", username, exchange_params->host); + e_passwords_add_password (key, password); + e_passwords_remember_password ("Exchange", key); + } + else { ++ if (try == 0) { ++ /* Check for name as e-mail id and try once again ++ * extracing username from e-mail id. ++ */ ++ usernames = g_strsplit (*user, "@", 2); ++ if (usernames && usernames[0] && usernames[1]) { ++ username = g_strdup (usernames[0]); ++ g_strfreev (usernames); ++ try ++; ++ memset(*user, 0, strlen(*user)); ++ g_free (*user); ++ *user = g_strdup (username); ++ g_free (username); ++ goto try_auth_again; ++ } ++ } + /* if validation failed*/ + e_passwords_forget_password ("Exchange", key); + } + + g_free (key); + g_free (password); ++ g_free (username); + return valid; + } diff --git a/bgo-331146-eds-crash-at-startup.patch b/bgo-331146-eds-crash-at-startup.patch new file mode 100644 index 0000000..7ecda61 --- /dev/null +++ b/bgo-331146-eds-crash-at-startup.patch @@ -0,0 +1,40 @@ +--- calendar/backends/file/e-cal-backend-file.c.orig 2006-02-28 13:16:32.000000000 +0100 ++++ calendar/backends/file/e-cal-backend-file.c 2006-03-23 15:15:18.582703795 +0100 +@@ -399,13 +399,17 @@ check_dup_uid (ECalBackendFile *cbfile, + { + ECalBackendFilePrivate *priv; + ECalBackendFileObject *obj_data; +- const char *uid; ++ const char *uid = NULL; + char *new_uid; + + priv = cbfile->priv; + + e_cal_component_get_uid (comp, &uid); +- ++ if (!uid) { ++ g_warning ("Checking for duplicate uid, the component does not have a valid UID skipping it\n"); ++ return; ++ } ++ + obj_data = g_hash_table_lookup (priv->comp_uid_hash, uid); + if (!obj_data) + return; /* Everything is fine */ +@@ -447,11 +451,16 @@ add_component (ECalBackendFile *cbfile, + { + ECalBackendFilePrivate *priv; + ECalBackendFileObject *obj_data; +- const char *uid; ++ const char *uid = NULL; + + priv = cbfile->priv; + + e_cal_component_get_uid (comp, &uid); ++ if (!uid) { ++ g_warning ("The component does not have a valid UID skipping it\n"); ++ return; ++ } ++ + obj_data = g_hash_table_lookup (priv->comp_uid_hash, uid); + if (e_cal_component_is_instance (comp)) { + const char *rid; diff --git a/bgo-334000-unexpected-dialog-creating-appt.patch b/bgo-334000-unexpected-dialog-creating-appt.patch new file mode 100644 index 0000000..d851de5 --- /dev/null +++ b/bgo-334000-unexpected-dialog-creating-appt.patch @@ -0,0 +1,12 @@ +--- calendar/libedata-cal/e-cal-backend.c.orig 2006-03-04 10:57:00.000000000 +0100 ++++ calendar/libedata-cal/e-cal-backend.c 2006-03-23 15:34:00.889158434 +0100 +@@ -1319,7 +1319,8 @@ e_cal_backend_notify_object_removed (ECa + if (object == NULL) { + /* if object == NULL, it means the object has been completely + removed from the backend */ +- e_data_cal_view_notify_objects_removed_1 (query, id); ++ if (e_data_cal_view_object_matches (query, old_object)) ++ e_data_cal_view_notify_objects_removed_1 (query, id); + } else + match_query_and_notify (query, old_object, object); + diff --git a/bgo-334807-eds-crasher.patch b/bgo-334807-eds-crasher.patch new file mode 100644 index 0000000..0f34a7f --- /dev/null +++ b/bgo-334807-eds-crasher.patch @@ -0,0 +1,12 @@ +--- libedataserver/e-source-group.c.orig 2005-12-08 08:59:00.000000000 +0100 ++++ libedataserver/e-source-group.c 2006-03-23 15:19:38.363378094 +0100 +@@ -216,6 +216,9 @@ e_source_group_new_from_xmldoc (xmlDocPt + goto done; + + new = g_object_new (e_source_group_get_type (), NULL); ++ if (!new) ++ goto done; ++ + new->priv->uid = g_strdup (uid); + + e_source_group_set_name (new, name); diff --git a/bgo-369168-buffer-overrun.patch b/bgo-369168-buffer-overrun.patch new file mode 100644 index 0000000..f6e0f2f --- /dev/null +++ b/bgo-369168-buffer-overrun.patch @@ -0,0 +1,15 @@ +--- camel/camel-mime-filter-crlf.c 2005-08-31 06:21:56.000000000 +0200 ++++ camel/camel-mime-filter-crlf.c.new 2006-11-06 07:40:33.000000000 +0100 +@@ -97,7 +97,11 @@ filter (CamelMimeFilter *f, char *in, si + *outptr++ = *inptr++; + } + } else { +- camel_mime_filter_set_size (f, len, FALSE); ++ /* Output can "grow" by one byte if crlf->saw_cr was set as ++ * a carry-over from the previous invocation. This will happen ++ * in practice, as the input is processed in arbitrarily-sized ++ * blocks. */ ++ camel_mime_filter_set_size (f, len+1, FALSE); + + outptr = f->outbuf; + while (inptr < inend) { diff --git a/bnc-137357-newly-configured-gw-dont-work.patch b/bnc-137357-newly-configured-gw-dont-work.patch new file mode 100644 index 0000000..9ada1ca --- /dev/null +++ b/bnc-137357-newly-configured-gw-dont-work.patch @@ -0,0 +1,89 @@ +Index: camel/providers/groupwise/camel-groupwise-store.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/groupwise/camel-groupwise-store.c,v +retrieving revision 1.94 +diff -u -p -r1.94 camel-groupwise-store.c +--- camel/providers/groupwise/camel-groupwise-store.c 13 Mar 2006 06:31:04 -0000 1.94 ++++ camel/providers/groupwise/camel-groupwise-store.c 13 Mar 2006 09:42:28 -0000 +@@ -169,9 +169,9 @@ groupwise_compare_folder_name (gconstpoi + static gboolean + groupwise_auth_loop (CamelService *service, CamelException *ex) + { +- CamelGroupwiseStore *groupwise_store = CAMEL_GROUPWISE_STORE (service); + CamelSession *session = camel_service_get_session (service); + CamelStore *store = CAMEL_STORE (service); ++ CamelGroupwiseStore *groupwise_store = CAMEL_GROUPWISE_STORE (store); + CamelGroupwiseStorePrivate *priv = groupwise_store->priv; + char *errbuf = NULL; + gboolean authenticated = FALSE; +@@ -183,6 +183,7 @@ groupwise_auth_loop (CamelService *servi + else + uri = g_strconcat ("http://", priv->server_name, ":", priv->port, "/soap", NULL); + service->url->passwd = NULL; ++ + + while (!authenticated) { + if (errbuf) { +@@ -192,6 +193,7 @@ groupwise_auth_loop (CamelService *servi + service->url->passwd = NULL; + } + ++ + if (!service->url->passwd && !(store->flags & CAMEL_STORE_PROXY)) { + char *prompt; + +@@ -268,10 +270,9 @@ groupwise_connect (CamelService *service + d("in groupwise store connect\n"); + + /* if (((CamelOfflineStore *) store)->state == CAMEL_OFFLINE_STORE_NETWORK_UNAVAIL || +- (service->status == CAMEL_SERVICE_DISCONNECTED)) ++ (service->status == CAMEL_SERVICE_DISCONNECTED)) + return FALSE; */ +- +- if (((CamelOfflineStore *) store)->state == CAMEL_OFFLINE_STORE_NETWORK_UNAVAIL) ++ if (service->status == CAMEL_SERVICE_DISCONNECTED) + return FALSE; + + if (!priv) { +@@ -293,7 +294,9 @@ groupwise_connect (CamelService *service + return FALSE; + } + ++ + service->status = CAMEL_SERVICE_CONNECTED; ++ ((CamelOfflineStore *) store)->state = CAMEL_OFFLINE_STORE_NETWORK_AVAIL; + + if (!e_gw_connection_get_version (priv->cnc)) { + camel_session_alert_user(session, +@@ -1110,6 +1113,7 @@ groupwise_get_folder_info (CamelStore *s + if (top && groupwise_is_system_folder (top)) + return groupwise_build_folder_info (groupwise_store, NULL, top ); + ++ + /* + * Thanks to Michael, for his cached folders implementation in IMAP + * is used as is here. +@@ -1141,6 +1145,12 @@ groupwise_get_folder_info (CamelStore *s + + CAMEL_SERVICE_LOCK (store, connect_lock); + if ((groupwise_store->list_loaded == FALSE) && check_for_connection((CamelService *)store, ex)) { ++ if (!priv->cnc) { ++ if (groupwise_connect ((CamelService *)store, ex)) { ++ g_warning ("Could connect!!!\n"); ++ } else ++ g_warning ("Could not connect..failure connecting\n"); ++ } + if (camel_groupwise_store_connected ((CamelGroupwiseStore *)store, ex)) { + groupwise_store->list_loaded = TRUE; + groupwise_folders_sync (groupwise_store, ex); +@@ -1416,8 +1426,9 @@ gboolean + camel_groupwise_store_connected (CamelGroupwiseStore *store, CamelException *ex) + { + if (((CamelOfflineStore *) store)->state == CAMEL_OFFLINE_STORE_NETWORK_AVAIL +- && camel_service_connect ((CamelService *)store, ex)) ++ && camel_service_connect ((CamelService *)store, ex)) { + return TRUE; ++ } + /*Not online, so return FALSE*/ + return FALSE; + } diff --git a/bnc-138047-password-passphrase-msg-inconsistency.patch b/bnc-138047-password-passphrase-msg-inconsistency.patch new file mode 100644 index 0000000..a6b3e7c --- /dev/null +++ b/bnc-138047-password-passphrase-msg-inconsistency.patch @@ -0,0 +1,73 @@ +Index: camel/camel-gpg-context.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/camel-gpg-context.c,v +retrieving revision 1.77 +diff -u -p -r1.77 camel-gpg-context.c +--- camel/camel-gpg-context.c 2 Feb 2006 08:37:46 -0000 1.77 ++++ camel/camel-gpg-context.c 16 Mar 2006 05:04:39 -0000 +@@ -811,7 +811,7 @@ gpg_ctx_parse_status (struct _GpgCtx *gp + "user: \"%s\""), name); + } + +- if ((passwd = camel_session_get_password (gpg->session, NULL, NULL, prompt, gpg->need_id, CAMEL_SESSION_PASSWORD_SECRET, ex)) && !gpg->utf8) { ++ if ((passwd = camel_session_get_password (gpg->session, NULL, NULL, prompt, gpg->need_id, CAMEL_SESSION_PASSWORD_SECRET|CAMEL_SESSION_PASSPHRASE, ex)) && !gpg->utf8) { + char *opasswd = passwd; + + if ((passwd = g_locale_to_utf8 (passwd, -1, &nread, &nwritten, NULL))) { +Index: camel/camel-session.h +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/camel-session.h,v +retrieving revision 1.53 +diff -u -p -r1.53 camel-session.h +--- camel/camel-session.h 22 Dec 2005 01:48:30 -0000 1.53 ++++ camel/camel-session.h 16 Mar 2006 05:04:39 -0000 +@@ -56,6 +56,7 @@ enum { + CAMEL_SESSION_PASSWORD_REPROMPT = 1 << 0, + CAMEL_SESSION_PASSWORD_SECRET = 1 << 2, + CAMEL_SESSION_PASSWORD_STATIC = 1 << 3, ++ CAMEL_SESSION_PASSPHRASE = 1 << 4, + }; + + struct _CamelSession +Index: libedataserverui/e-passwords.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/libedataserverui/e-passwords.c,v +retrieving revision 1.31 +diff -u -p -r1.31 e-passwords.c +--- libedataserverui/e-passwords.c 24 Feb 2006 21:00:47 -0000 1.31 ++++ libedataserverui/e-passwords.c 16 Mar 2006 05:04:42 -0000 +@@ -467,9 +739,16 @@ ep_ask_password(EPassMsg *msg) + /* static password, shouldn't be remembered between sessions, + but will be remembered within the session beyond our control */ + if (type != E_PASSWORDS_REMEMBER_NEVER) { +- msg->check = gtk_check_button_new_with_mnemonic(type == E_PASSWORDS_REMEMBER_FOREVER +- ? _("_Remember this password") +- : _("_Remember this password for the remainder of this session")); ++ if (msg->flags & E_PASSWORDS_PASSPHRASE) { ++ msg->check = gtk_check_button_new_with_mnemonic(type == E_PASSWORDS_REMEMBER_FOREVER ++ ? _("_Remember this passphrase") ++ : _("_Remember this passphrase for the remainder of this session")); ++ } else { ++ msg->check = gtk_check_button_new_with_mnemonic(type == E_PASSWORDS_REMEMBER_FOREVER ++ ? _("_Remember this password") ++ : _("_Remember this password for the remainder of this session")); ++ ++ } + gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (msg->check), *msg->remember); + gtk_box_pack_start (GTK_BOX (vbox), msg->check, TRUE, FALSE, 3); + if ((msg->flags & E_PASSWORDS_DISABLE_REMEMBER)) +Index: libedataserverui/e-passwords.h +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/libedataserverui/e-passwords.h,v +retrieving revision 1.12 +diff -u -p -r1.12 e-passwords.h +--- libedataserverui/e-passwords.h 31 Aug 2005 04:26:10 -0000 1.12 ++++ libedataserverui/e-passwords.h 16 Mar 2006 05:04:42 -0000 +@@ -58,6 +58,7 @@ typedef enum { + E_PASSWORDS_REPROMPT = 1<<9, + E_PASSWORDS_ONLINE = 1<<10, /* only ask if we're online */ + E_PASSWORDS_DISABLE_REMEMBER = 1<<11, /* disable the 'remember password' checkbox */ ++ E_PASSWORDS_PASSPHRASE = 1<<12, /* We are asking a passphrase */ + } EPasswordsRememberType; + + char * e_passwords_ask_password (const char *title, diff --git a/bnc-152062-evolution-wont-show-attachment.patch b/bnc-152062-evolution-wont-show-attachment.patch new file mode 100644 index 0000000..03a088f --- /dev/null +++ b/bnc-152062-evolution-wont-show-attachment.patch @@ -0,0 +1,217 @@ +Index: camel/providers/groupwise/camel-groupwise-folder.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/groupwise/camel-groupwise-folder.c,v +retrieving revision 1.119 +diff -u -p -r1.119 camel-groupwise-folder.c +--- camel/providers/groupwise/camel-groupwise-folder.c 15 Mar 2006 08:45:26 -0000 1.119 ++++ camel/providers/groupwise/camel-groupwise-folder.c 16 Mar 2006 11:29:35 -0000 +@@ -49,6 +49,8 @@ + #include + #include + ++#include ++ + #include + #include + #include +@@ -58,6 +60,7 @@ + #define REMOVE_JUNK_ENTRY -1 + #define JUNK_FOLDER "Junk Mail" + #define READ_CURSOR_MAX_IDS 500 ++#define MAX_ATTACHMENT_SIZE 1*1024*1024 /*In bytes*/ + + static CamelOfflineFolderClass *parent_class = NULL; + +@@ -1455,7 +1458,7 @@ groupwise_folder_item_to_msg( CamelFolde + const char *uid = NULL; + gboolean is_text_html = FALSE; + gboolean is_text_html_embed = FALSE; +- ++ gboolean is_base64_encoded = FALSE; + + uid = e_gw_item_get_id(item); + cnc = cnc_lookup (priv); +@@ -1541,6 +1544,7 @@ groupwise_folder_item_to_msg( CamelFolde + int len = 0; + CamelMimePart *part; + EGwItem *temp_item; ++ is_base64_encoded = FALSE; + + if (attach->contentid && (is_text_html_embed != TRUE)) + is_text_html_embed = TRUE; +@@ -1568,9 +1572,36 @@ groupwise_folder_item_to_msg( CamelFolde + } + g_object_unref (temp_item); + } else { +- status = e_gw_connection_get_attachment (cnc, +- attach->id, 0, -1, +- (const char **)&attachment, &len); ++ g_print ("%d:%d\n", attach->size, MAX_ATTACHMENT_SIZE); ++ if (attach->size > MAX_ATTACHMENT_SIZE) { ++ long count = 0; ++ int i, t_len=0, offset=0, t_offset=0; ++ char *t_attach = NULL; ++ GString *gstr = g_string_new (NULL); ++ ++ count = (attach->size)/(1024*1024); ++ count++; ++ len = 0; ++ for (i = 0; iid, t_offset, MAX_ATTACHMENT_SIZE, ++ (const char **)&t_attach, &t_len, &offset); ++ if (status == E_GW_CONNECTION_STATUS_OK) { ++ gstr = g_string_append (gstr, t_attach); ++ t_offset = offset; ++ g_free (t_attach); ++ t_attach = NULL; ++ t_len = 0; ++ } ++ } ++ attachment = soup_base64_decode (gstr->str, &len); ++ g_string_free (gstr, TRUE); ++ is_base64_encoded = FALSE; ++ } else { ++ status = e_gw_connection_get_attachment (cnc, ++ attach->id, 0, -1, ++ (const char **)&attachment, &len); ++ } + if (status != E_GW_CONNECTION_STATUS_OK) { + g_warning ("Could not get attachment\n"); + continue; +@@ -1613,6 +1644,8 @@ groupwise_folder_item_to_msg( CamelFolde + + //camel_mime_part_set_filename(part, g_strdup(attach->name)); + if (attach->contentType) { ++ if (is_base64_encoded) ++ camel_mime_part_set_encoding (part, CAMEL_TRANSFER_ENCODING_BASE64); + camel_mime_part_set_content(part, attachment, len, attach->contentType); + camel_content_type_set_param (((CamelDataWrapper *) part)->mime_type, "name", attach->name); + } else +@@ -1872,15 +1905,16 @@ groupwise_transfer_messages_to (CamelFol + if (status == E_GW_CONNECTION_STATUS_OK) { + if (delete_originals) + camel_folder_delete_message(source, uids->pdata[index]); +- /* Refresh the destination folder, if its not refreshed already */ +- if (gw_store->current_folder != destination || +- camel_folder_summary_count (destination->summary) == count) +- camel_folder_refresh_info (destination, ex); + } else { + g_warning ("Warning!! Could not move item : %s\n", (char *)uids->pdata[index]); + } + index ++; + } ++ /* Refresh the destination folder, if its not refreshed already */ ++ if (gw_store->current_folder != destination || ++ camel_folder_summary_count (destination->summary) == count) ++ camel_folder_refresh_info (destination, ex); ++ + camel_folder_summary_touch (source->summary); + camel_folder_summary_touch (destination->summary); + +Index: servers/groupwise/e-gw-connection.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/servers/groupwise/e-gw-connection.c,v +retrieving revision 1.139 +diff -u -p -r1.139 e-gw-connection.c +--- servers/groupwise/e-gw-connection.c 15 Mar 2006 06:08:24 -0000 1.139 ++++ servers/groupwise/e-gw-connection.c 17 Mar 2006 05:22:38 -0000 +@@ -148,6 +148,7 @@ e_gw_connection_parse_response_status (S + case 53530: return E_GW_CONNECTION_STATUS_OTHER; + /* FIXME: 58652 should be changed with an enum.*/ + case 58652: return 58652; ++ case 59922: return 59922; /*Very big attachment, get in chunks*/ + /* FIXME: map all error codes */ + } + +@@ -2571,6 +2572,75 @@ e_gw_connection_get_attachment (EGwConne + return E_GW_CONNECTION_STATUS_OK; + } + ++/* ++ * ++ */ ++EGwConnectionStatus ++e_gw_connection_get_attachment_base64 (EGwConnection *cnc, const char *id, int offset, int length, const char **attachment, int *attach_length, int *offset_r) ++{ ++ ++ SoupSoapMessage *msg; ++ SoupSoapResponse *response; ++ EGwConnectionStatus status; ++ SoupSoapParameter *param ; ++ char *buffer = NULL, *buf_length = NULL, *o_return = NULL; ++ ++ g_return_val_if_fail (E_IS_GW_CONNECTION (cnc), E_GW_CONNECTION_STATUS_INVALID_OBJECT); ++ ++ /* build the SOAP message */ ++ msg = e_gw_message_new_with_header (cnc->priv->uri, cnc->priv->session_id, "getAttachmentRequest"); ++ if (!msg) { ++ g_warning (G_STRLOC ": Could not build SOAP message"); ++ return E_GW_CONNECTION_STATUS_UNKNOWN; ++ } ++ ++ ++ e_gw_message_write_string_parameter (msg, "id", NULL, id); ++ e_gw_message_write_int_parameter (msg, "offset", NULL, offset); ++ e_gw_message_write_int_parameter (msg, "length", NULL, length); ++ ++ e_gw_message_write_footer (msg); ++ ++ /* send message to server */ ++ response = e_gw_connection_send_message (cnc, msg); ++ if (!response) { ++ g_object_unref (msg); ++ return E_GW_CONNECTION_STATUS_NO_RESPONSE; ++ } ++ ++ status = e_gw_connection_parse_response_status (response); ++ if (status != E_GW_CONNECTION_STATUS_OK) { ++ if (status == E_GW_CONNECTION_STATUS_INVALID_CONNECTION) ++ reauthenticate (cnc); ++ g_object_unref (response); ++ g_object_unref (msg); ++ return status; ++ } ++ ++ ++ param = soup_soap_response_get_first_parameter_by_name (response, "part") ; ++ if (param) { ++ buf_length = soup_soap_parameter_get_property (param, "length") ; ++ o_return = soup_soap_parameter_get_property (param, "offset") ; ++ buffer = soup_soap_parameter_get_string_value (param) ; ++ } ++ ++ if (buffer && buf_length) { ++ int len = atoi (buf_length) ; ++ *attachment = g_strdup (buffer); ++ *attach_length = len; ++ *offset_r = atoi (o_return); ++ } ++ ++ /* free memory */ ++ g_free (buffer) ; ++ g_free (buf_length) ; ++ g_free (o_return); ++ g_object_unref (response); ++ g_object_unref (msg); ++ ++ return E_GW_CONNECTION_STATUS_OK; ++} + + EGwConnectionStatus + e_gw_connection_add_item (EGwConnection *cnc, const char *container, const char *id) +Index: servers/groupwise/e-gw-connection.h +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/servers/groupwise/e-gw-connection.h,v +retrieving revision 1.68 +diff -u -p -r1.68 e-gw-connection.h +--- servers/groupwise/e-gw-connection.h 31 Aug 2005 04:26:07 -0000 1.68 ++++ servers/groupwise/e-gw-connection.h 17 Mar 2006 05:22:38 -0000 +@@ -144,6 +144,7 @@ EGwConnectionStatus e_gw_connection_get_ + EGwConnectionStatus e_gw_connection_create_folder(EGwConnection *cnc, const char *parent_name,const char *folder_name, char **container_id) ; + EGwConnectionStatus + e_gw_connection_get_attachment (EGwConnection *cnc, const char *id, int offset, int length, const char **attachment, int *attach_length) ; ++EGwConnectionStatus e_gw_connection_get_attachment_base64 (EGwConnection *cnc, const char *id, int offset, int length, const char **attachment, int *attach_length, int *offset_r); + EGwConnectionStatus e_gw_connection_add_item (EGwConnection *cnc, const char *container, const char *id) ; + EGwConnectionStatus e_gw_connection_add_items (EGwConnection *cnc, const char *container, GList *item_ids) ; + EGwConnectionStatus e_gw_connection_move_item (EGwConnection *cnc, const char *id, const char *dest_container_id, const char *from_container_id); diff --git a/bnc-152070-eds-crash.patch b/bnc-152070-eds-crash.patch new file mode 100644 index 0000000..bf79e06 --- /dev/null +++ b/bnc-152070-eds-crash.patch @@ -0,0 +1,19 @@ +Index: addressbook/backends/groupwise/e-book-backend-groupwise.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/addressbook/backends/groupwise/e-book-backend-groupwise.c,v +retrieving revision 1.74 +diff -u -p -r1.74 e-book-backend-groupwise.c +--- addressbook/backends/groupwise/e-book-backend-groupwise.c 10 Apr 2006 11:02:36 -0000 1.74 ++++ addressbook/backends/groupwise/e-book-backend-groupwise.c 16 Apr 2006 07:30:20 -0000 +@@ -2334,6 +2334,11 @@ find_book_view (EBookBackendGroupwise *e + return NULL; + EIterator *iter = e_list_get_iterator (views); + EDataBookView *rv = NULL; ++ ++ if (!iter) { ++ g_object_unref (views); ++ return NULL; ++ } + + if (e_iterator_is_valid (iter)) { + /* just always use the first book view */ diff --git a/bnc-152355-mails-doesnt-show-gw.patch b/bnc-152355-mails-doesnt-show-gw.patch new file mode 100644 index 0000000..7fb0779 --- /dev/null +++ b/bnc-152355-mails-doesnt-show-gw.patch @@ -0,0 +1,154 @@ +Index: camel/providers/groupwise/camel-groupwise-folder.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/groupwise/camel-groupwise-folder.c,v +retrieving revision 1.117 +diff -u -p -r1.117 camel-groupwise-folder.c +--- camel/providers/groupwise/camel-groupwise-folder.c 11 Mar 2006 12:27:42 -0000 1.117 ++++ camel/providers/groupwise/camel-groupwise-folder.c 13 Mar 2006 06:27:53 -0000 +@@ -881,7 +881,8 @@ groupwise_refresh_info(CamelFolder *fold + /* We probably could not get the messages the first time. (get_folder) failed???! + * so do a get_folder again. And hope that it works + */ +- gw_store_reload_folder ((CamelStore *)gw_store, folder->name, 0, ex); ++ g_print("Reloading folder...something wrong with the summary....\n"); ++ gw_store_reload_folder (gw_store, folder, 0, ex); + } + } + +Index: camel-groupwise-store.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/groupwise/camel-groupwise-store.c,v +retrieving revision 1.93 +diff -u -p -r1.93 camel-groupwise-store.c +--- camel/providers/groupwise/camel-groupwise-store.c 11 Mar 2006 09:52:29 -0000 1.93 ++++ camel/providers/groupwise/camel-groupwise-store.c 13 Mar 2006 06:27:54 -0000 +@@ -674,8 +674,112 @@ groupwise_get_folder (CamelStore *store, + } + + void +-gw_store_reload_folder (CamelStore *store, const char *folder_name, guint32 flags, CamelException *ex) ++gw_store_reload_folder (CamelGroupwiseStore *gw_store, CamelFolder *folder, guint32 flags, CamelException *ex) + { ++ CamelGroupwiseStorePrivate *priv = gw_store->priv; ++ CamelGroupwiseSummary *summary; ++ char *container_id, *folder_dir, *storage_path; ++ EGwConnectionStatus status; ++ GList *list = NULL; ++ gboolean done = FALSE; ++ const char *position = E_GW_CURSOR_POSITION_END; ++ int count = 0, cursor, summary_count = 0; ++ CamelStoreInfo *si = NULL; ++ guint total; ++ ++ camel_exception_clear (ex); ++ ++ CAMEL_SERVICE_LOCK (gw_store, connect_lock); ++ ++ if (!camel_groupwise_store_connected (gw_store, ex)) { ++ CAMEL_SERVICE_UNLOCK (gw_store, connect_lock); ++ return; ++ } ++ ++ if (!E_IS_GW_CONNECTION( priv->cnc)) { ++ if (!groupwise_connect (CAMEL_SERVICE((CamelStore*)gw_store), ex)) { ++ camel_exception_set (ex, CAMEL_EXCEPTION_SERVICE_CANT_AUTHENTICATE, _("Authentication failed")); ++ CAMEL_SERVICE_UNLOCK (gw_store, connect_lock); ++ return; ++ } ++ } ++ ++ container_id = g_strdup (g_hash_table_lookup (priv->name_hash, folder->full_name)); ++ ++ si = camel_store_summary_path ((CamelStoreSummary *)gw_store->summary, folder->name); ++ if (si) { ++ total = si->total; ++ camel_store_summary_info_free ((CamelStoreSummary *)(gw_store)->summary, si); ++ } ++ ++ summary = (CamelGroupwiseSummary *) folder->summary; ++ camel_folder_summary_clear (folder->summary); ++ camel_folder_summary_save (folder->summary); ++ ++ summary_count = camel_folder_summary_count (folder->summary); ++ if(!summary_count || !summary->time_string) { ++ d(g_print ("\n\n** %s **: Summary missing???? Reloading summary....\n\n", folder->name);) ++ ++ status = e_gw_connection_create_cursor (priv->cnc, container_id, ++ "peek id recipient attachments distribution subject status options priority startDate created delivered size", ++ NULL, ++ &cursor); ++ if (status != E_GW_CONNECTION_STATUS_OK) { ++ CAMEL_SERVICE_UNLOCK (gw_store, connect_lock); ++ g_free (container_id); ++ return; ++ } ++ ++ camel_operation_start (NULL, _("Fetching summary information for new messages in %s"), folder->name); ++ ++ while (!done) { ++ status = e_gw_connection_read_cursor (priv->cnc, container_id, ++ cursor, FALSE, ++ CURSOR_ITEM_LIMIT, position, &list); ++ if (status != E_GW_CONNECTION_STATUS_OK) { ++ CAMEL_SERVICE_UNLOCK (gw_store, connect_lock); ++ e_gw_connection_destroy_cursor (priv->cnc, container_id, cursor); ++ camel_folder_summary_clear (folder->summary); ++ camel_folder_summary_save (folder->summary); ++ camel_exception_set (ex, CAMEL_EXCEPTION_SERVICE_INVALID, _("Authentication failed")); ++ camel_operation_end (NULL); ++ camel_object_unref (folder); ++ g_free (container_id); ++ return; ++ } ++ ++ count += g_list_length (list); ++ ++ if (total > 0) ++ camel_operation_progress (NULL, (100*count)/total); ++ gw_update_summary (folder, list, ex); ++ ++ if (!list) ++ done = TRUE; ++ g_list_foreach (list, (GFunc)g_object_unref, NULL); ++ g_list_free (list); ++ list = NULL; ++ position = E_GW_CURSOR_POSITION_CURRENT; ++ } ++ ++ e_gw_connection_destroy_cursor (priv->cnc, container_id, cursor); ++ ++ camel_operation_end (NULL); ++ } ++ ++ if (done) { ++ if (summary->time_string) ++ g_free (summary->time_string); ++ summary->time_string = g_strdup (e_gw_connection_get_server_time (priv->cnc)); ++ } ++ ++ camel_folder_summary_save (folder->summary); ++ ++ gw_store->current_folder = folder; ++ ++ g_free (container_id); ++ CAMEL_SERVICE_UNLOCK (gw_store, connect_lock); ++ return; + } + + CamelFolderInfo * +Index: camel/providers/groupwise/camel-groupwise-store.h +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/groupwise/camel-groupwise-store.h,v +retrieving revision 1.12 +diff -u -p -r1.12 camel-groupwise-store.h +--- camel/providers/groupwise/camel-groupwise-store.h 11 Mar 2006 09:52:29 -0000 1.12 ++++ camel/providers/groupwise/camel-groupwise-store.h 13 Mar 2006 06:27:54 -0000 +@@ -82,7 +82,7 @@ char *storage_path_lookup (CamelGroupwis + const char *groupwise_base_url_lookup (CamelGroupwiseStorePrivate *priv); + CamelFolderInfo * create_junk_folder (CamelStore *store); + gboolean camel_groupwise_store_connected (CamelGroupwiseStore *store, CamelException *ex); +-void gw_store_reload_folder (CamelStore *store, const char *folder_name, guint32 flags, CamelException *ex); ++void gw_store_reload_folder (CamelGroupwiseStore *store, CamelFolder *folder, guint32 flags, CamelException *ex); + + #ifdef __cplusplus + } diff --git a/bnc-153522-evo-doesnt-update-msg-status-workaround.patch b/bnc-153522-evo-doesnt-update-msg-status-workaround.patch new file mode 100644 index 0000000..14544b0 --- /dev/null +++ b/bnc-153522-evo-doesnt-update-msg-status-workaround.patch @@ -0,0 +1,120 @@ +Index: camel/providers/groupwise/camel-groupwise-folder.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/groupwise/camel-groupwise-folder.c,v +retrieving revision 1.120 +diff -u -p -r1.120 camel-groupwise-folder.c +--- camel/providers/groupwise/camel-groupwise-folder.c 17 Mar 2006 05:42:00 -0000 1.120 ++++ camel/providers/groupwise/camel-groupwise-folder.c 20 Mar 2006 08:12:51 -0000 +@@ -1006,7 +1006,7 @@ groupwise_refresh_folder(CamelFolder *fo + if (gw_store->current_folder != folder) { + gw_store->current_folder = folder; + } +- ++ + if (list) { + gw_update_cache (folder, list, ex, FALSE); + } +@@ -1051,6 +1051,7 @@ void + gw_update_cache (CamelFolder *folder, GList *list, CamelException *ex, gboolean uid_flag) + { + CamelGroupwiseMessageInfo *mi = NULL; ++ CamelMessageInfo *pmi = NULL; + CamelGroupwiseStore *gw_store = CAMEL_GROUPWISE_STORE (folder->parent_store); + CamelGroupwiseFolder *gw_folder = CAMEL_GROUPWISE_FOLDER(folder); + CamelGroupwiseStorePrivate *priv = gw_store->priv; +@@ -1105,13 +1105,6 @@ gw_update_cache (CamelFolder *folder, GL + id = (char *) item_list->data; + + camel_operation_progress (NULL, (100*i)/total_items); +- cache_stream = camel_data_cache_get (gw_folder->cache, "cache", id, ex); +- if (cache_stream) { +- camel_object_unref (cache_stream); +- cache_stream = NULL; +- i++; +- continue; +- } + + status = e_gw_connection_get_item (cnc, container_id, id, "peek default distribution recipient message attachments subject notification created recipientStatus status size", &item); + if (status != E_GW_CONNECTION_STATUS_OK) { +@@ -1121,9 +1114,16 @@ gw_update_cache (CamelFolder *folder, GL + + /************************ First populate summary *************************/ + mi = NULL; +- mi = (CamelGroupwiseMessageInfo *)camel_folder_summary_uid (folder->summary, id); +- if (mi) { ++ pmi = NULL; ++ pmi = camel_folder_summary_uid (folder->summary, id); ++ if (pmi) { + exists = TRUE; ++ camel_message_info_ref (pmi); ++ mi = (CamelGroupwiseMessageInfo *)camel_message_info_clone(pmi); ++ /* ++ pmi->summary = folder->summary; ++ mi->info.summary = folder->summary; ++ */ + } + + if (!exists) { +@@ -1223,18 +1223,26 @@ gw_update_cache (CamelFolder *folder, GL + mi->info.date_sent = mi->info.date_received = actual_time; + } + } ++#if 0 + + if (exists) + g_free(mi->info.uid); + mi->info.uid = g_strdup(e_gw_item_get_id(item)); +- if (!exists) ++#endif ++ if (!exists) { ++ mi->info.uid = g_strdup (e_gw_item_get_id(item)); + mi->info.size = e_gw_item_get_mail_size (item); +- if (!exists) + mi->info.subject = camel_pstring_strdup(e_gw_item_get_subject(item)); ++ } + + if (exists) { +- camel_folder_change_info_change_uid (changes, e_gw_item_get_id (item)); +- camel_message_info_free (&mi->info); ++ /* ++ camel_folder_change_info_change_uid (changes, mi->info.uid); ++ camel_message_info_free (&mi->info);*/ ++ camel_folder_summary_remove(folder->summary, pmi); ++ camel_folder_summary_add (folder->summary,(CamelMessageInfo *)mi); ++ camel_folder_change_info_add_uid (changes, mi->info.uid); ++ camel_message_info_free (pmi); + } else { + camel_folder_summary_add (folder->summary,(CamelMessageInfo *)mi); + camel_folder_change_info_add_uid (changes, mi->info.uid); +@@ -1248,11 +1256,11 @@ gw_update_cache (CamelFolder *folder, GL + if (!strcmp (folder->full_name, "Sent Items")) + exists = FALSE; + /******************** Begine Caching ************************/ +- mail_msg = groupwise_folder_item_to_msg (folder, item, ex); +- if (mail_msg) +- camel_medium_set_header (CAMEL_MEDIUM (mail_msg), "X-Evolution-Source", groupwise_base_url_lookup (priv)); + /* add to cache if its a new message*/ + if (!exists) { ++ mail_msg = groupwise_folder_item_to_msg (folder, item, ex); ++ if (mail_msg) ++ camel_medium_set_header (CAMEL_MEDIUM (mail_msg), "X-Evolution-Source", groupwise_base_url_lookup (priv)); + CAMEL_GROUPWISE_FOLDER_LOCK (folder, cache_lock); + if ((cache_stream = camel_data_cache_add (gw_folder->cache, "cache", id, NULL))) { + if (camel_data_wrapper_write_to_stream ((CamelDataWrapper *) mail_msg, cache_stream) == -1 || camel_stream_flush (cache_stream) == -1) +@@ -1678,7 +1686,7 @@ static void + gw_update_all_items (CamelFolder *folder, GList *item_list, CamelException *ex) + { + CamelGroupwiseFolder *gw_folder = CAMEL_GROUPWISE_FOLDER (folder); +- GPtrArray *summary = camel_folder_get_summary (folder); ++ GPtrArray *summary = NULL; + int index = 0; + GList *temp; + CamelFolderChangeInfo *changes = NULL; +@@ -1687,6 +1695,7 @@ gw_update_all_items (CamelFolder *folder + + item_list = g_list_reverse (item_list); + ++ summary = camel_folder_get_summary (folder); + /*item_ids : List of ids from the summary*/ + while (index < summary->len) { + info = g_ptr_array_index (summary, index); diff --git a/bnc-153522-evolution-doesnt-update-message-status.patch b/bnc-153522-evolution-doesnt-update-message-status.patch new file mode 100644 index 0000000..60c87fc --- /dev/null +++ b/bnc-153522-evolution-doesnt-update-message-status.patch @@ -0,0 +1,16 @@ +Index: servers/groupwise/e-gw-connection.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/servers/groupwise/e-gw-connection.c,v +retrieving revision 1.138 +diff -u -p -r1.138 e-gw-connection.c +--- servers/groupwise/e-gw-connection.c 23 Jan 2006 11:07:49 -0000 1.138 ++++ servers/groupwise/e-gw-connection.c 15 Mar 2006 05:48:03 -0000 +@@ -2390,7 +2390,7 @@ EGwConnectionStatus e_gw_connection_get_ + g_object_unref (msg); + return E_GW_CONNECTION_STATUS_INVALID_RESPONSE; + } +- if (start_date && *start_date && !strcmp (message_list, "New")) { ++ if (start_date && *start_date && (((!strcmp (message_list, "New")) || (!strcmp (message_list, "Modified"))))) { + subparam = soup_soap_response_get_first_parameter_by_name (response, "startDate"); + if (subparam) { + char *date; diff --git a/bnc-156584-evo-wont-shutdown.patch b/bnc-156584-evo-wont-shutdown.patch new file mode 100644 index 0000000..7824636 --- /dev/null +++ b/bnc-156584-evo-wont-shutdown.patch @@ -0,0 +1,167 @@ +Index: camel/providers/groupwise/camel-groupwise-folder.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/groupwise/camel-groupwise-folder.c,v +retrieving revision 1.116 +diff -u -p -r1.116 camel-groupwise-folder.c +--- camel/providers/groupwise/camel-groupwise-folder.c 11 Mar 2006 09:52:29 -0000 1.116 ++++ camel/providers/groupwise/camel-groupwise-folder.c 11 Mar 2006 12:25:51 -0000 +@@ -81,7 +81,7 @@ static void groupwise_transfer_messages_ + static int gw_getv (CamelObject *object, CamelException *ex, CamelArgGetV *args); + void convert_to_calendar (EGwItem *item, char **str, int *len); + static void convert_to_task (EGwItem *item, char **str, int *len); +-static void gw_update_all_items ( CamelFolder *folder, GSList *item_list, CamelException *ex); ++static void gw_update_all_items ( CamelFolder *folder, GList *item_list, CamelException *ex); + static void groupwise_populate_details_from_item (CamelMimeMessage *msg, EGwItem *item); + static void groupwise_populate_msg_body_from_item (EGwConnection *cnc, CamelMultipart *multipart, EGwItem *item, char *body); + static void groupwise_msg_set_recipient_list (CamelMimeMessage *msg, EGwItem *item); +@@ -586,7 +586,7 @@ groupwise_sync (CamelFolder *folder, gbo + CamelGroupwiseStorePrivate *priv = gw_store->priv; + CamelMessageInfo *info = NULL; + CamelGroupwiseMessageInfo *gw_info; +- GList *read_items = NULL, *deleted_items = NULL; ++ GList *read_items = NULL; + flags_diff_t diff; + const char *container_id; + EGwConnectionStatus status; +@@ -761,7 +761,7 @@ update_update (CamelSession *session, Ca + EGwConnectionStatus status; + CamelException *ex = NULL; + +- GList *item_list; ++ GList *item_list, *items_full_list = NULL, *last_element=NULL; + int cursor = 0; + const char *position = E_GW_CURSOR_POSITION_END; + gboolean done; +@@ -787,16 +787,48 @@ update_update (CamelSession *session, Ca + if (!item_list || g_list_length (item_list) == 0) + done = TRUE; + else { +- for (;item_list; item_list = g_list_next (item_list)) { +- m->slist = g_slist_prepend (m->slist, (char *)item_list->data); ++ ++ /* item_list is prepended to items_full_list and not the other way ++ because when we have a large number of items say 50000, ++ for each iteration there will be more elements in items_full_list ++ and less elements in item_list */ ++ ++ last_element = g_list_last (item_list); ++ if (items_full_list) { ++ last_element->next = items_full_list; ++ items_full_list->prev = item_list; + } ++ items_full_list = item_list; + } +- g_list_free (item_list); + position = E_GW_CURSOR_POSITION_CURRENT; + } + e_gw_connection_destroy_cursor (m->cnc, m->container_id, cursor); + +- gw_update_all_items (m->folder, m->slist, ex); ++ /* Take out only the first part in the list until the @ since it is guaranteed ++ to be unique only until that symbol */ ++ ++ if (items_full_list) { ++ int i; ++ item_list = items_full_list; ++ ++ while (item_list->next) { ++ i = 0; ++ while (((const char *)item_list->data)[i++]!='@'); ++ ((char *)item_list->data)[i-1] = '\0'; ++ item_list = item_list->next; ++ } ++ ++ i = 0; ++ while (((const char *)item_list->data)[i++]!='@'); ++ ((char *)item_list->data)[i-1] = '\0'; ++ } ++ ++ gw_update_all_items (m->folder, items_full_list, ex); ++ ++ if (items_full_list) { ++ g_list_foreach (items_full_list, (GFunc)g_free, NULL); ++ g_list_free (items_full_list); ++ } + } + + static void +@@ -1594,55 +1626,45 @@ groupwise_folder_item_to_msg( CamelFolde + return msg; + } + +-static gint +-string_cmp(gconstpointer a, gconstpointer b) +-{ +- int ret; +- char **tmp1, **tmp2; +- +- tmp1 = g_strsplit ((const char *)a, "@", -1); +- tmp2 = g_strsplit ((const char *)b, "@", -1); +- ret = strcmp (tmp1[0], tmp2[0]); +- g_strfreev (tmp1); +- g_strfreev (tmp2); +- return ret; +-} +- + static void +-gw_update_all_items ( CamelFolder *folder, GSList *item_list, CamelException *ex) ++gw_update_all_items (CamelFolder *folder, GList *item_list, CamelException *ex) + { + CamelGroupwiseFolder *gw_folder = CAMEL_GROUPWISE_FOLDER (folder); + GPtrArray *summary = camel_folder_get_summary (folder); +- int index = 0; +- GSList *item_ids = NULL, *l = NULL; ++ int index = 0, i; ++ GList *temp; ++ char *uid; + CamelFolderChangeInfo *changes = NULL; +- ++ CamelMessageInfo *info; + changes = camel_folder_change_info_new (); ++ + /*item_ids : List of ids from the summary*/ + while (index < summary->len) { +- CamelMessageInfo *info = g_ptr_array_index (summary, index); +- item_ids = g_slist_append (item_ids, info->uid); +- index ++; +- } +- l = item_ids; +- +- /*item_list : List of ids from the server*/ +- for (; item_ids != NULL ; item_ids = g_slist_next (item_ids)) { +- GSList *temp = NULL; ++ info = g_ptr_array_index (summary, index); ++ temp = NULL; ++ i = 0; ++ uid = g_strdup (info->uid); ++ ++ while (((const char *)uid)[i++]!='@'); ++ ((char *)uid)[i-1] = '\0'; + +- temp = g_slist_find_custom (item_list, (const char *)item_ids->data, (GCompareFunc) string_cmp); ++ temp = g_list_find_custom (item_list, (const char*)uid, (GCompareFunc) strcmp); ++ g_free (uid); ++ + if (!temp) { + CAMEL_GROUPWISE_FOLDER_LOCK (folder, cache_lock); +- camel_folder_summary_remove_uid (folder->summary, (const char *)item_ids->data); +- camel_data_cache_remove(gw_folder->cache, "cache", (const char *)item_ids->data, ex); +- camel_folder_change_info_remove_uid(changes, (const char *)item_ids->data); ++ camel_folder_summary_remove_uid (folder->summary, info->uid); ++ camel_data_cache_remove (gw_folder->cache, "cache", info->uid, ex); ++ camel_folder_change_info_remove_uid (changes, info->uid); + CAMEL_GROUPWISE_FOLDER_UNLOCK (folder, cache_lock); +- } ++ } else ++ item_list = g_list_remove(item_list, temp); ++ ++ index ++; + } +- camel_object_trigger_event (folder, "folder_changed", changes); + ++ camel_object_trigger_event (folder, "folder_changed", changes); + camel_folder_free_summary (folder, summary); +- g_slist_free (l); + } + + static void diff --git a/bnc-156823-newly-configured-gw-dont-work.patch b/bnc-156823-newly-configured-gw-dont-work.patch new file mode 100644 index 0000000..db4de6d --- /dev/null +++ b/bnc-156823-newly-configured-gw-dont-work.patch @@ -0,0 +1,110 @@ +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/groupwise/camel-groupwise-store.c,v +retrieving revision 1.91 +retrieving revision 1.92 +diff -u -r1.91 -r1.92 +--- camel/providers/groupwise/camel-groupwise-store.c 2006/01/31 06:55:50 1.91 ++++ camel/providers/groupwise/camel-groupwise-store.c 2006/03/09 12:58:56 1.92 +@@ -1305,11 +1305,7 @@ + if (((CamelOfflineStore *) store)->state == CAMEL_OFFLINE_STORE_NETWORK_AVAIL + && camel_service_connect ((CamelService *)store, ex)) + return TRUE; +- +- if (!camel_exception_is_set (ex)) +- camel_exception_set (ex, CAMEL_EXCEPTION_SERVICE_UNAVAILABLE, +- _("You must be working online to complete this operation")); +- ++ /*Not online, so return FALSE*/ + return FALSE; + } + +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/groupwise/camel-groupwise-folder.c,v +retrieving revision 1.115 +retrieving revision 1.116 +diff -u -r1.115 -r1.116 +--- camel/providers/groupwise/camel-groupwise-folder.c 2006/03/09 10:54:43 1.115 ++++ camel/providers/groupwise/camel-groupwise-folder.c 2006/03/11 09:52:29 1.116 +@@ -849,7 +849,7 @@ + /* We probably could not get the messages the first time. (get_folder) failed???! + * so do a get_folder again. And hope that it works + */ +- camel_store_get_folder ((CamelStore *)gw_store, folder->name, 0, ex); ++ gw_store_reload_folder ((CamelStore *)gw_store, folder->name, 0, ex); + } + } + +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/groupwise/camel-groupwise-store.c,v +retrieving revision 1.92 +retrieving revision 1.93 +diff -u -r1.92 -r1.93 +--- camel/providers/groupwise/camel-groupwise-store.c 2006/03/09 12:58:56 1.92 ++++ camel/providers/groupwise/camel-groupwise-store.c 2006/03/11 09:52:29 1.93 +@@ -267,8 +267,11 @@ + + d("in groupwise store connect\n"); + +- if (((CamelOfflineStore *) store)->state == CAMEL_OFFLINE_STORE_NETWORK_UNAVAIL || ++/* if (((CamelOfflineStore *) store)->state == CAMEL_OFFLINE_STORE_NETWORK_UNAVAIL || + (service->status == CAMEL_SERVICE_DISCONNECTED)) ++ return FALSE; */ ++ ++ if (((CamelOfflineStore *) store)->state == CAMEL_OFFLINE_STORE_NETWORK_UNAVAIL) + return FALSE; + + if (!priv) { +@@ -592,10 +595,10 @@ + return NULL; + } + g_free (folder_dir); +- ++ + si = camel_store_summary_path ((CamelStoreSummary *)gw_store->summary, folder_name); + if (si) { +- camel_object_get (folder, NULL, CAMEL_FOLDER_TOTAL, &total, NULL); ++ total = si->total; + camel_store_summary_info_free ((CamelStoreSummary *)(gw_store)->summary, si); + } + +@@ -670,6 +673,11 @@ + return folder; + } + ++void ++gw_store_reload_folder (CamelStore *store, const char *folder_name, guint32 flags, CamelException *ex) ++{ ++} ++ + CamelFolderInfo * + convert_to_folder_info (CamelGroupwiseStore *store, EGwContainer *container, const char *url, CamelException *ex) + { +@@ -754,10 +762,11 @@ + if (e_gw_container_get_is_shared_by_me (container)) + fi->flags |= CAMEL_FOLDER_SHARED_BY_ME; + +- if (type == E_GW_CONTAINER_TYPE_INBOX) { ++ /*if (type == E_GW_CONTAINER_TYPE_INBOX) { + fi->total = -1; + fi->unread = -1; +- } else if (type == E_GW_CONTAINER_TYPE_TRASH) { ++ } else if (type == E_GW_CONTAINER_TYPE_TRASH) {*/ ++ if (type == E_GW_CONTAINER_TYPE_TRASH) { + fi->total = e_gw_container_get_total_count (container); + fi->unread = 0; + }else { +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/groupwise/camel-groupwise-store.h,v +retrieving revision 1.11 +retrieving revision 1.12 +diff -u -r1.11 -r1.12 +--- camel/providers/groupwise/camel-groupwise-store.h 2005/09/18 18:21:10 1.11 ++++ camel/providers/groupwise/camel-groupwise-store.h 2006/03/11 09:52:29 1.12 +@@ -82,6 +82,7 @@ + const char *groupwise_base_url_lookup (CamelGroupwiseStorePrivate *priv); + CamelFolderInfo * create_junk_folder (CamelStore *store); + gboolean camel_groupwise_store_connected (CamelGroupwiseStore *store, CamelException *ex); ++void gw_store_reload_folder (CamelStore *store, const char *folder_name, guint32 flags, CamelException *ex); + + #ifdef __cplusplus + } diff --git a/bnc-157323-messages-deleted-from-gw-remain-in-evo.patch b/bnc-157323-messages-deleted-from-gw-remain-in-evo.patch new file mode 100644 index 0000000..09884a6 --- /dev/null +++ b/bnc-157323-messages-deleted-from-gw-remain-in-evo.patch @@ -0,0 +1,195 @@ +Index: camel/providers/groupwise/camel-groupwise-folder.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/groupwise/camel-groupwise-folder.c,v +retrieving revision 1.118 +diff -u -p -r1.118 camel-groupwise-folder.c +--- camel/providers/groupwise/camel-groupwise-folder.c 13 Mar 2006 06:31:04 -0000 1.118 ++++ camel/providers/groupwise/camel-groupwise-folder.c 15 Mar 2006 08:44:51 -0000 +@@ -85,7 +85,7 @@ static void gw_update_all_items ( CamelF + static void groupwise_populate_details_from_item (CamelMimeMessage *msg, EGwItem *item); + static void groupwise_populate_msg_body_from_item (EGwConnection *cnc, CamelMultipart *multipart, EGwItem *item, char *body); + static void groupwise_msg_set_recipient_list (CamelMimeMessage *msg, EGwItem *item); +-static void gw_update_cache ( CamelFolder *folder, GList *item_list,CamelException *ex); ++static void gw_update_cache ( CamelFolder *folder, GList *item_list, CamelException *ex, gboolean uid_flag); + static CamelMimeMessage *groupwise_folder_item_to_msg ( CamelFolder *folder, EGwItem *item, CamelException *ex ); + + +@@ -796,7 +796,7 @@ update_update (CamelSession *session, Ca + last_element = g_list_last (item_list); + if (items_full_list) { + last_element->next = items_full_list; +- items_full_list->prev = item_list; ++ items_full_list->prev = last_element; + } + items_full_list = item_list; + } +@@ -807,7 +807,7 @@ update_update (CamelSession *session, Ca + /* Take out only the first part in the list until the @ since it is guaranteed + to be unique only until that symbol */ + +- if (items_full_list) { ++ /*if (items_full_list) { + int i; + item_list = items_full_list; + +@@ -821,14 +821,10 @@ update_update (CamelSession *session, Ca + i = 0; + while (((const char *)item_list->data)[i++]!='@'); + ((char *)item_list->data)[i-1] = '\0'; +- } ++ }*/ + ++ g_print ("\nNumber of items in the folder: %d \n", g_list_length(items_full_list)); + gw_update_all_items (m->folder, items_full_list, ex); +- +- if (items_full_list) { +- g_list_foreach (items_full_list, (GFunc)g_free, NULL); +- g_list_free (items_full_list); +- } + } + + static void +@@ -947,6 +943,8 @@ groupwise_refresh_folder(CamelFolder *fo + + time_string = g_strdup (((CamelGroupwiseSummary *) folder->summary)->time_string); + t_str = g_strdup (time_string); ++ ++#if 0 + /*Get the New Items*/ + status = e_gw_connection_get_quick_messages (cnc, container_id, + "peek id", +@@ -973,17 +971,29 @@ groupwise_refresh_folder(CamelFolder *fo + slist = NULL; + + t_str = g_strdup (time_string); +- ++#endif ++ + /*Get those items which have been modifed*/ ++ + status = e_gw_connection_get_quick_messages (cnc, container_id, + "peek id", + &t_str, "Modified", NULL, NULL, -1, &slist); +- g_free (t_str), t_str = NULL; ++ + if (status != E_GW_CONNECTION_STATUS_OK) { + camel_exception_set (ex, CAMEL_EXCEPTION_SERVICE_INVALID, _("Authentication failed")); + goto end3; + } + ++ /* The storing of time-stamp to summary code below should be commented if the ++ above commented code is uncommented */ ++ ++ if (summary->time_string) ++ g_free (summary->time_string); ++ ++ summary->time_string = g_strdup (t_str); ++ ++ g_free (t_str), t_str = NULL; ++ + for ( sl = slist ; sl != NULL; sl = sl->next) + list = g_list_append (list, sl->data); + +@@ -995,7 +1005,7 @@ groupwise_refresh_folder(CamelFolder *fo + } + + if (list) { +- gw_update_cache (folder, list, ex); ++ gw_update_cache (folder, list, ex, FALSE); + } + + +@@ -1035,7 +1045,7 @@ end1: + } + + void +-gw_update_cache ( CamelFolder *folder, GList *list, CamelException *ex) ++gw_update_cache (CamelFolder *folder, GList *list, CamelException *ex, gboolean uid_flag) + { + CamelGroupwiseMessageInfo *mi = NULL; + CamelGroupwiseStore *gw_store = CAMEL_GROUPWISE_STORE (folder->parent_store); +@@ -1072,7 +1082,7 @@ gw_update_cache ( CamelFolder *folder, G + camel_operation_start (NULL, _("Fetching summary information for new messages in %s"), folder->name); + + for ( ; item_list != NULL ; item_list = g_list_next (item_list) ) { +- EGwItem *temp_item = (EGwItem *)item_list->data; ++ EGwItem *temp_item ; + EGwItem *item; + EGwItemType type = E_GW_ITEM_TYPE_UNKNOWN; + EGwItemOrganizer *org; +@@ -1084,7 +1094,12 @@ gw_update_cache ( CamelFolder *folder, G + CamelMimeMessage *mail_msg = NULL; + + exists = FALSE; +- id = e_gw_item_get_id (temp_item); ++ ++ if (uid_flag == FALSE) { ++ temp_item = (EGwItem *)item_list->data; ++ id = e_gw_item_get_id (temp_item); ++ } else ++ id = (char *) item_list->data; + + camel_operation_progress (NULL, (100*i)/total_items); + cache_stream = camel_data_cache_get (gw_folder->cache, "cache", id, ex); +@@ -1632,39 +1647,48 @@ gw_update_all_items (CamelFolder *folder + { + CamelGroupwiseFolder *gw_folder = CAMEL_GROUPWISE_FOLDER (folder); + GPtrArray *summary = camel_folder_get_summary (folder); +- int index = 0, i; ++ int index = 0; + GList *temp; +- char *uid; + CamelFolderChangeInfo *changes = NULL; + CamelMessageInfo *info; + changes = camel_folder_change_info_new (); + ++ item_list = g_list_reverse (item_list); ++ + /*item_ids : List of ids from the summary*/ + while (index < summary->len) { + info = g_ptr_array_index (summary, index); + temp = NULL; +- i = 0; +- uid = g_strdup (info->uid); + +- while (((const char *)uid)[i++]!='@'); +- ((char *)uid)[i-1] = '\0'; ++ if (item_list) { ++ temp = g_list_find_custom (item_list, (const char *)info->uid, (GCompareFunc) strcmp); ++ } + +- temp = g_list_find_custom (item_list, (const char*)uid, (GCompareFunc) strcmp); +- g_free (uid); +- + if (!temp) { + CAMEL_GROUPWISE_FOLDER_LOCK (folder, cache_lock); + camel_folder_summary_remove_uid (folder->summary, info->uid); + camel_data_cache_remove (gw_folder->cache, "cache", info->uid, ex); + camel_folder_change_info_remove_uid (changes, info->uid); + CAMEL_GROUPWISE_FOLDER_UNLOCK (folder, cache_lock); +- } else +- item_list = g_list_remove(item_list, temp); +- ++ } else { ++ item_list = g_list_delete_link (item_list, temp); ++ } + index ++; + } +- ++ + camel_object_trigger_event (folder, "folder_changed", changes); ++ ++ if (item_list) { ++ CamelGroupwiseStore *gw_store = CAMEL_GROUPWISE_STORE (folder->parent_store); ++ ++ CAMEL_SERVICE_LOCK (gw_store, connect_lock); ++ gw_update_cache (folder, item_list, ex, TRUE); ++ CAMEL_SERVICE_UNLOCK (gw_store, connect_lock); ++ ++ g_list_foreach (item_list, (GFunc)g_free, NULL); ++ g_list_free (item_list); ++ } ++ + camel_folder_free_summary (folder, summary); + } + diff --git a/bnc-158093-sent-folder-have-to-not-from.patch b/bnc-158093-sent-folder-have-to-not-from.patch new file mode 100644 index 0000000..2b82415 --- /dev/null +++ b/bnc-158093-sent-folder-have-to-not-from.patch @@ -0,0 +1,18 @@ +--- camel/providers/groupwise/camel-groupwise-store.c.orig 2006-03-20 16:30:38.488752753 +0100 ++++ camel/providers/groupwise/camel-groupwise-store.c 2006-03-20 16:38:37.082768906 +0100 +@@ -462,6 +462,15 @@ groupwise_build_folder_info(CamelGroupwi + else + name++; + ++ if (!strcmp (folder_name, "Sent Items")) ++ fi->flags |= CAMEL_FOLDER_TYPE_SENT; ++ else if (!strcmp (folder_name, "Mailbox")) ++ fi->flags |= CAMEL_FOLDER_TYPE_INBOX; ++ else if (!strcmp (folder_name, "Trash")) ++ fi->flags |= CAMEL_FOLDER_TYPE_TRASH; ++ else if (!strcmp (folder_name, "Junk Mail")) ++ fi->flags |= CAMEL_FOLDER_TYPE_JUNK; ++ + fi->name = g_strdup(name); + return fi; + } diff --git a/bnc-158107-no-notification-canceled-mtgs.patch b/bnc-158107-no-notification-canceled-mtgs.patch new file mode 100644 index 0000000..9140a92 --- /dev/null +++ b/bnc-158107-no-notification-canceled-mtgs.patch @@ -0,0 +1,286 @@ +Index: calendar/backends/groupwise/e-cal-backend-groupwise.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/calendar/backends/groupwise/e-cal-backend-groupwise.c,v +retrieving revision 1.173 +diff -u -p -r1.173 e-cal-backend-groupwise.c +--- calendar/backends/groupwise/e-cal-backend-groupwise.c 23 Jan 2006 11:09:58 -0000 1.173 ++++ calendar/backends/groupwise/e-cal-backend-groupwise.c 24 Mar 2006 14:42:22 -0000 +@@ -79,6 +79,8 @@ static void e_cal_backend_groupwise_fina + static void sanitize_component (ECalBackendSync *backend, ECalComponent *comp, char *server_uid); + static ECalBackendSyncStatus + e_cal_backend_groupwise_add_timezone (ECalBackendSync *backend, EDataCal *cal, const char *tzobj); ++static const char * get_gw_item_id (icalcomponent *icalcomp); ++static void get_retract_data (ECalComponent *comp, const char **retract_comment, gboolean *all_instances); + + #define PARENT_TYPE E_TYPE_CAL_BACKEND_SYNC + static ECalBackendClass *parent_class = NULL; +@@ -219,6 +221,7 @@ populate_cache (ECalBackendGroupwise *cb + + return E_GW_CONNECTION_STATUS_OK; + } ++ + static gboolean + compare_prefix (gconstpointer a, gconstpointer b) + { +@@ -467,7 +470,6 @@ get_deltas (gpointer handle) + needs_to_get = TRUE; + } else { + cache_keys = g_slist_delete_link (cache_keys, remove); +- g_message ("******** found \n"); + } + + g_free (real_key); +@@ -476,7 +478,6 @@ get_deltas (gpointer handle) + for (l = cache_keys; l ; l = g_slist_next (l)) { + /* assumes rid is null - which works for now */ + ECalComponent *comp = NULL; +- GSList *comp_list = NULL; + ECalComponentVType vtype; + + comp = e_cal_backend_cache_get_component (cache, (const char *) l->data, NULL); +@@ -1632,10 +1633,9 @@ e_cal_backend_groupwise_internal_get_tim + icaltimezone *zone; + + zone = icaltimezone_get_builtin_timezone_from_tzid (tzid); +- + if (!zone) + return icaltimezone_get_utc_timezone(); +- ++ + return zone; + } + +@@ -1791,6 +1791,44 @@ e_cal_backend_groupwise_create_object (E + return GNOME_Evolution_Calendar_Success; + } + ++static void ++get_retract_data (ECalComponent *comp, const char **retract_comment, gboolean *all_instances) ++{ ++ icalcomponent *icalcomp = NULL; ++ icalproperty *icalprop = NULL; ++ gboolean is_instance = FALSE; ++ const char *x_ret = NULL, *x_recur = NULL; ++ ++ is_instance = e_cal_component_is_instance (comp); ++ icalcomp = e_cal_component_get_icalcomponent (comp); ++ icalprop = icalcomponent_get_first_property (icalcomp, ICAL_X_PROPERTY); ++ while (icalprop) { ++ const char *x_name; ++ ++ x_name = icalproperty_get_x_name (icalprop); ++ /* This property will be set only if the user is an organizer */ ++ if (!strcmp (x_name, "X-EVOLUTION-RETRACT-COMMENT")) { ++ x_ret = icalproperty_get_x (icalprop); ++ if (!strcmp (x_ret, "0")) { ++ *retract_comment = NULL; ++ } else ++ *retract_comment = x_ret; ++ } ++ ++ if (is_instance && !strcmp (x_name, "X-EVOLUTION-RECUR-MOD")) { ++ x_recur = icalproperty_get_x (icalprop); ++ if (!strcmp (x_recur, "All")) ++ *all_instances = TRUE; ++ else ++ *all_instances = FALSE; ++ } ++ ++ if (x_ret && (!is_instance || x_recur)) ++ break; ++ icalprop = icalcomponent_get_next_property (icalcomp, ICAL_X_PROPERTY); ++ } ++} ++ + static ECalBackendSyncStatus + e_cal_backend_groupwise_modify_object (ECalBackendSync *backend, EDataCal *cal, const char *calobj, + CalObjModType mod, char **old_object, char **new_object) +@@ -1838,7 +1876,7 @@ e_cal_backend_groupwise_modify_object (E + if (e_cal_component_has_attendees (comp) && + e_cal_backend_groupwise_utils_check_delegate (comp, e_gw_connection_get_user_email (priv->cnc))) { + const char *id = NULL, *recur_key = NULL; +- ++ + item = e_gw_item_new_for_delegate_from_cal (cbgw, comp); + + if (mod == CALOBJ_MOD_ALL && e_cal_component_is_instance (comp)) { +@@ -1848,21 +1886,19 @@ e_cal_backend_groupwise_modify_object (E + } + + status = e_gw_connection_delegate_request (priv->cnc, item, id, NULL, NULL, recur_key); +- ++ + if (status == E_GW_CONNECTION_STATUS_INVALID_CONNECTION) +- status = e_gw_connection_delegate_request (priv->cnc, item, id, NULL, NULL, recur_key); +- +- if (status != E_GW_CONNECTION_STATUS_OK) { +- g_object_unref (comp); +- g_object_unref (cache_comp); +- return GNOME_Evolution_Calendar_OtherError; +- } +- +- ++ status = e_gw_connection_delegate_request (priv->cnc, item, id, NULL, NULL, recur_key); ++ if (status != E_GW_CONNECTION_STATUS_OK) { ++ g_object_unref (comp); ++ g_object_unref (cache_comp); ++ return GNOME_Evolution_Calendar_OtherError; ++ } ++ + e_cal_backend_cache_put_component (priv->cache, comp); + *new_object = e_cal_component_get_as_string (comp); + break; +- } ++ } + + item = e_gw_item_new_from_cal_component (priv->container_id, cbgw, comp); + cache_item = e_gw_item_new_from_cal_component (priv->container_id, cbgw, cache_comp); +@@ -2359,40 +2395,91 @@ e_cal_backend_groupwise_receive_objects + static ECalBackendSyncStatus + send_object (ECalBackendGroupwise *cbgw, EDataCal *cal, icalcomponent *icalcomp, icalproperty_method method) + { +- ECalComponent *comp, *found_comp; ++ ECalComponent *comp, *found_comp = NULL; + ECalBackendGroupwisePrivate *priv; +- ECalBackendSyncStatus status = GNOME_Evolution_Calendar_Success; +- char *uid, *comp_str; ++ ECalBackendSyncStatus status = GNOME_Evolution_Calendar_OtherError; ++ const char *uid = NULL, *rid = NULL; + + priv = cbgw->priv; + + comp = e_cal_component_new (); + e_cal_component_set_icalcomponent (comp, icalcomponent_new_clone (icalcomp)); ++ rid = e_cal_component_get_recurid_as_string (comp); + + e_cal_component_get_uid (comp, (const char **) &uid); +- found_comp = e_cal_backend_cache_get_component (priv->cache, uid, NULL); ++ found_comp = e_cal_backend_cache_get_component (priv->cache, uid, rid); ++ ++ if (!found_comp) { ++ g_object_unref (comp); ++ return GNOME_Evolution_Calendar_ObjectNotFound; ++ } ++ + + switch (priv->mode) { + case CAL_MODE_ANY : + case CAL_MODE_REMOTE : +- if (found_comp) { +- char *comp_str; +- status = e_cal_backend_groupwise_modify_object (E_CAL_BACKEND_SYNC (cbgw), cal, comp_str, +- CALOBJ_MOD_THIS, &comp_str, NULL); +- g_free (comp_str); +- } else +- status = e_cal_backend_groupwise_create_object (E_CAL_BACKEND_SYNC (cbgw), cal, &comp_str, NULL); ++ if (method == ICAL_METHOD_CANCEL) { ++ const char *retract_comment = NULL; ++ gboolean all_instances = FALSE; ++ const char *id = NULL; ++ ++ get_retract_data (comp, &retract_comment, &all_instances); ++ id = get_gw_item_id (icalcomp); ++ status = e_gw_connection_retract_request (priv->cnc, id, retract_comment, ++ all_instances, FALSE); ++ ++ if (status == E_GW_CONNECTION_STATUS_INVALID_CONNECTION) ++ status = e_gw_connection_retract_request (priv->cnc, id, retract_comment, ++ all_instances, FALSE); ++ if (status == E_GW_CONNECTION_STATUS_OK) { ++ ECalComponentId *id = NULL; ++ ++ if (all_instances) { ++ char *old_object = NULL; ++ GSList *l, *comp_list = e_cal_backend_cache_get_components_by_uid (priv->cache, uid); ++ for (l = comp_list; l; l = l->next) { ++ ECalComponent *comp = E_CAL_COMPONENT (l->data); ++ ECalComponentId *id = e_cal_component_get_id (comp); ++ char *object = e_cal_component_get_as_string (comp); ++ ++ if (e_cal_backend_cache_remove_component (priv->cache, id->uid, ++ id->rid)) ++ e_cal_backend_notify_object_removed (E_CAL_BACKEND (cbgw), id, object, NULL); ++ ++ e_cal_component_free_id (id); ++ g_free (object); ++ g_object_unref (comp); ++ } ++ ++ g_slist_free (comp_list); ++ g_free (old_object); ++ } else { ++ id = e_cal_component_get_id (comp); ++ icalcomp = e_cal_component_get_icalcomponent (comp); ++ char * object = e_cal_component_get_as_string (comp); ++ ++ if (e_cal_backend_cache_remove_component (priv->cache, id->uid, ++ id->rid)) { ++ e_cal_backend_notify_object_removed (E_CAL_BACKEND (cbgw), id, ++ object, NULL); ++ } + ++ g_free (object); ++ e_cal_component_free_id (id); ++ } ++ } ++ } + break; + case CAL_MODE_LOCAL : + /* in offline mode, we just update the cache */ +- e_cal_backend_cache_put_component (priv->cache, comp); ++ status = GNOME_Evolution_Calendar_RepositoryOffline; + break; + default: + break; + } + + g_object_unref (comp); ++ g_object_unref (found_comp); + + return status; + } +@@ -2446,12 +2533,16 @@ e_cal_backend_groupwise_send_objects (EC + + comp = e_cal_component_new (); + +- if (e_cal_component_set_icalcomponent (comp, icalcomp)) { ++ if (e_cal_component_set_icalcomponent (comp, icalcomponent_new_clone (icalcomp))) { + GSList *attendee_list = NULL, *tmp; + e_cal_component_get_attendee_list (comp, &attendee_list); + /* convert this into GList */ +- for (tmp = attendee_list; tmp; tmp = g_slist_next (tmp)) +- *users = g_list_append (*users, tmp); ++ for (tmp = attendee_list; tmp; tmp = g_slist_next (tmp)) { ++ const char *attendee = tmp->data; ++ ++ if (attendee) ++ *users = g_list_append (*users, g_strdup (attendee)); ++ } + + g_object_unref (comp); + } +Index: servers/groupwise/e-gw-connection.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/servers/groupwise/e-gw-connection.c,v +retrieving revision 1.141 +diff -u -p -r1.141 e-gw-connection.c +--- servers/groupwise/e-gw-connection.c 23 Mar 2006 10:08:37 -0000 1.141 ++++ servers/groupwise/e-gw-connection.c 3 Apr 2006 08:41:02 -0000 +@@ -1463,7 +1463,16 @@ e_gw_connection_retract_request (EGwConn + soup_soap_message_start_element (msg, "items", NULL, NULL); + e_gw_message_write_string_parameter (msg, "item", NULL, id); + soup_soap_message_end_element (msg); +- /* comment, FALSE, FALSE to be filled in later. */ ++ ++ if (retract_all) ++ e_gw_message_write_string_parameter (msg, "retractingAllInstances", NULL, "1"); ++ ++ if (comment) ++ e_gw_message_write_string_parameter (msg, "comment", NULL, comment); ++ ++ if (resend) ++ e_gw_message_write_string_parameter (msg, "retractCausedByResend", NULL, "1"); ++ + e_gw_message_write_footer (msg); + + response = e_gw_connection_send_message (cnc, msg); diff --git a/bnc-158112-send-receive-dlg-takes-time.patch b/bnc-158112-send-receive-dlg-takes-time.patch new file mode 100644 index 0000000..73b8e4d --- /dev/null +++ b/bnc-158112-send-receive-dlg-takes-time.patch @@ -0,0 +1,82 @@ +--- camel/providers/groupwise/camel-groupwise-folder.c.orig 2006-03-23 16:21:05.882346341 +0100 ++++ camel/providers/groupwise/camel-groupwise-folder.c 2006-03-23 16:21:53.346929567 +0100 +@@ -902,6 +902,7 @@ groupwise_refresh_folder(CamelFolder *fo + char *container_id = NULL; + char *time_string = NULL, *t_str = NULL; + struct _folder_update_msg *msg; ++ gboolean check_all = FALSE; + + if (((CamelOfflineStore *) gw_store)->state == CAMEL_OFFLINE_STORE_NETWORK_UNAVAIL) { + g_warning ("In offline mode. Cannot refresh!!!\n"); +@@ -947,7 +948,7 @@ groupwise_refresh_folder(CamelFolder *fo + time_string = g_strdup (((CamelGroupwiseSummary *) folder->summary)->time_string); + t_str = g_strdup (time_string); + +-#if 0 ++ + /*Get the New Items*/ + status = e_gw_connection_get_quick_messages (cnc, container_id, + "peek id", +@@ -963,18 +964,23 @@ groupwise_refresh_folder(CamelFolder *fo + */ + if (summary->time_string) + g_free (summary->time_string); ++ ++ + summary->time_string = g_strdup (t_str); + g_free (t_str); + t_str = NULL; + ++ /* + for ( sl = slist ; sl != NULL; sl = sl->next) +- list = g_list_append (list, sl->data); ++ list = g_list_append (list, sl->data);*/ + ++ if (slist && g_slist_length(slist) != 0) ++ check_all = TRUE; ++ + g_slist_free (slist); + slist = NULL; + + t_str = g_strdup (time_string); +-#endif + + /*Get those items which have been modifed*/ + +@@ -989,15 +995,16 @@ groupwise_refresh_folder(CamelFolder *fo + + /* The storing of time-stamp to summary code below should be commented if the + above commented code is uncommented */ +- if (summary->time_string) ++ ++/* if (summary->time_string) + g_free (summary->time_string); + + summary->time_string = g_strdup (t_str); + +- g_free (t_str), t_str = NULL; ++ g_free (t_str), t_str = NULL;*/ + + for ( sl = slist ; sl != NULL; sl = sl->next) +- list = g_list_append (list, sl->data); ++ list = g_list_prepend (list, sl->data); + + g_slist_free (slist); + slist = NULL; +@@ -1021,6 +1028,7 @@ groupwise_refresh_folder(CamelFolder *fo + * this folder, and update the summary. + */ + /*create a new session thread for the update all operation*/ ++ if (check_all) { + msg = camel_session_thread_msg_new (session, &update_ops, sizeof(*msg)); + msg->cnc = cnc; + msg->t_str = g_strdup (time_string); +@@ -1030,7 +1038,7 @@ groupwise_refresh_folder(CamelFolder *fo + camel_folder_freeze (folder); + camel_session_thread_queue (session, &msg->msg, 0); + /*thread creation and queueing done*/ +- ++ } + + end3: + g_list_foreach (list, (GFunc) g_object_unref, NULL); diff --git a/bnc-159934-eds-CPU-spikes.patch b/bnc-159934-eds-CPU-spikes.patch new file mode 100644 index 0000000..5a9e733 --- /dev/null +++ b/bnc-159934-eds-CPU-spikes.patch @@ -0,0 +1,1608 @@ +--- ../temp/evolution-data-server/evolution-data-server-1.6.0/addressbook/backends/groupwise/e-book-backend-groupwise.c 2006-04-19 19:11:23.000000000 +0530 ++++ addressbook/backends/groupwise/e-book-backend-groupwise.c 2006-04-19 13:13:06.000000000 +0530 +@@ -22,13 +22,16 @@ + */ + + #include +- ++#include ++#include + #include + #include + #include + #include + #include + #include ++#include ++#include "db.h" + + #include + #include +@@ -36,12 +39,13 @@ + + #include "libedataserver/e-sexp.h" + #include "libedataserver/e-data-server-util.h" ++#include "libedataserver/e-db3-utils.h" + #include "libedataserver/e-url.h" + #include "libebook/e-contact.h" + #include "libedata-book/e-book-backend-sexp.h" + #include "libedata-book/e-data-book.h" + #include "libedata-book/e-data-book-view.h" +-#include "libedata-book/e-book-backend-cache.h" ++#include "libedata-book/e-book-backend-db-cache.h" + #include "libedata-book/e-book-backend-summary.h" + #include "e-book-backend-groupwise.h" + +@@ -68,15 +72,21 @@ struct _EBookBackendGroupwisePrivate { + char *use_ssl; + int mode; + int cache_timeout; +- EBookBackendCache *cache; + EBookBackendSummary *summary; + GMutex *update_mutex; ++ DB *file_db; ++ DB_ENV *env; + /* for future use */ + void *reserved1; + void *reserved2; +- void *reserved3; + }; + ++static GStaticMutex global_env_lock = G_STATIC_MUTEX_INIT; ++static struct { ++ int ref_count; ++ DB_ENV *env; ++} global_env; ++ + #define ELEMENT_TYPE_SIMPLE 0x01 + #define ELEMENT_TYPE_COMPLEX 0x02 /* fields which require explicit functions to set values into EContact and EGwItem */ + #define SUMMARY_FLUSH_TIMEOUT 5000 +@@ -919,7 +929,7 @@ set_organization_in_gw_item (EGwItem *it + e_contact_set (contact, E_CONTACT_FULL_NAME, organization_name); + /* book uri is always set outside fill_contact_from_gw_item() */ + e_contact_set (contact, E_CONTACT_BOOK_URI, egwb->priv->original_uri); +- e_book_backend_cache_add_contact (egwb->priv->cache, contact); ++ e_book_backend_db_cache_add_contact (egwb->priv->file_db, contact); + e_book_backend_summary_add_contact (egwb->priv->summary, contact); + g_object_unref (contact); + } +@@ -1159,7 +1169,7 @@ e_book_backend_groupwise_create_contact + if (status == E_GW_CONNECTION_STATUS_OK && id) { + e_contact_set (contact, E_CONTACT_UID, id); + g_free (id); +- e_book_backend_cache_add_contact (egwb->priv->cache, contact); ++ e_book_backend_db_cache_add_contact (egwb->priv->file_db, contact); + e_book_backend_summary_add_contact (egwb->priv->summary, contact); + e_data_book_respond_create(book, opid, GNOME_Evolution_Addressbook_Success, contact); + +@@ -1210,7 +1220,7 @@ e_book_backend_groupwise_remove_contacts + id = (char*) id_list->data; + e_gw_connection_remove_item (ebgw->priv->cnc, ebgw->priv->container_id, id); + deleted_ids = g_list_append (deleted_ids, id); +- e_book_backend_cache_remove_contact (ebgw->priv->cache, id); ++ e_book_backend_db_cache_remove_contact (ebgw->priv->file_db, id); + e_book_backend_summary_remove_contact (ebgw->priv->summary, id); + } + e_data_book_respond_remove_contacts (book, opid, +@@ -1345,9 +1355,9 @@ e_book_backend_groupwise_modify_contact + status = e_gw_connection_modify_item (egwb->priv->cnc, id, new_item); + if (status == E_GW_CONNECTION_STATUS_OK) { + e_data_book_respond_modify (book, opid, GNOME_Evolution_Addressbook_Success, contact); +- e_book_backend_cache_remove_contact (egwb->priv->cache, id); ++ e_book_backend_db_cache_remove_contact (egwb->priv->file_db, id); + e_book_backend_summary_remove_contact (egwb->priv->summary, id); +- e_book_backend_cache_add_contact (egwb->priv->cache, contact); ++ e_book_backend_db_cache_add_contact (egwb->priv->file_db, contact); + e_book_backend_summary_add_contact (egwb->priv->summary, contact); + } + else +@@ -1381,7 +1391,7 @@ e_book_backend_groupwise_get_contact (EB + switch (gwb->priv->mode) { + + case GNOME_Evolution_Addressbook_MODE_LOCAL : +- contact = e_book_backend_cache_get_contact (gwb->priv->cache, id); ++ contact = e_book_backend_db_cache_get_contact (gwb->priv->file_db, id); + vcard = e_vcard_to_string (E_VCARD (contact), EVC_FORMAT_VCARD_30); + if (contact) { + e_data_book_respond_get_contact(book, opid, GNOME_Evolution_Addressbook_Success, vcard); +@@ -1836,14 +1846,14 @@ e_book_backend_groupwise_get_contact_lis + char *uid = g_ptr_array_index (ids, i); + + EContact *contact = +- e_book_backend_cache_get_contact (egwb->priv->cache, uid); ++ e_book_backend_db_cache_get_contact (egwb->priv->file_db, uid); + contacts = g_list_append (contacts, contact); + g_object_unref (contact); + } + g_ptr_array_free (ids, TRUE); + } + else +- contacts = e_book_backend_cache_get_contacts (egwb->priv->cache, query); ++ contacts = e_book_backend_db_cache_get_contacts (egwb->priv->file_db, query); + + temp = contacts; + for (; contacts != NULL; contacts = g_list_next(contacts)) { +@@ -1882,7 +1892,7 @@ e_book_backend_groupwise_get_contact_lis + int i; + for (i = 0; i < ids->len; i ++) { + char *uid = g_ptr_array_index (ids, i); +- contact = e_book_backend_cache_get_contact (egwb->priv->cache, uid); ++ contact = e_book_backend_db_cache_get_contact (egwb->priv->file_db, uid); + vcard_list = g_list_append (vcard_list, + e_vcard_to_string (E_VCARD (contact), + EVC_FORMAT_VCARD_30)); +@@ -1893,7 +1903,7 @@ e_book_backend_groupwise_get_contact_lis + } + } + else { +- ids = e_book_backend_cache_search (egwb->priv->cache, query); ++ ids = e_book_backend_db_cache_search (egwb->priv->file_db, query); + } + + if (ids->len > 0) { +@@ -2001,7 +2011,7 @@ get_closure (EDataBookView *book_view) + } + + static void +-get_contacts_from_cache (EBookBackendGroupwisePrivate *priv, ++get_contacts_from_cache (EBookBackendGroupwise *ebgw, + const char *query, + GPtrArray *ids, + EDataBookView *book_view, +@@ -2023,9 +2033,11 @@ get_contacts_from_cache (EBookBackendGro + break; + + EContact *contact = +- e_book_backend_cache_get_contact (priv->cache, uid); +- e_data_book_view_notify_update (book_view, contact); +- g_object_unref (contact); ++ e_book_backend_db_cache_get_contact (ebgw->priv->file_db, uid); ++ if (contact) { ++ e_data_book_view_notify_update (book_view, contact); ++ g_object_unref (contact); ++ } + } + if (!stopped) + e_data_book_view_notify_complete (book_view, +@@ -2067,7 +2079,7 @@ book_view_thread (gpointer data) + switch (gwb->priv->mode) { + + case GNOME_Evolution_Addressbook_MODE_LOCAL : +- if (!gwb->priv->cache) { ++ if (!gwb->priv->file_db) { + e_data_book_view_notify_complete (book_view, GNOME_Evolution_Addressbook_Success); + return NULL; + } +@@ -2078,7 +2090,7 @@ book_view_thread (gpointer data) + printf ("reading the uids from summary \n"); + ids = e_book_backend_summary_search (gwb->priv->summary, query); + if (ids && ids->len > 0) { +- get_contacts_from_cache (gwb->priv, query, ids, book_view, closure); ++ get_contacts_from_cache (gwb, query, ids, book_view, closure); + g_ptr_array_free (ids, TRUE); + } + bonobo_object_unref (book_view); +@@ -2088,7 +2100,7 @@ book_view_thread (gpointer data) + /* fall back to cache */ + if (enable_debug) + printf ("summary not found, reading the uids from cache\n"); +- contacts = e_book_backend_cache_get_contacts (gwb->priv->cache, query); ++ contacts = e_book_backend_db_cache_get_contacts (gwb->priv->file_db, query); + temp_list = contacts; + for (; contacts != NULL; contacts = g_list_next(contacts)) { + g_mutex_lock (closure->mutex); +@@ -2170,7 +2182,7 @@ book_view_thread (gpointer data) + if (!is_auto_completion) + e_data_book_view_notify_status_message (book_view, + _("Searching...")); +- get_contacts_from_cache (gwb->priv, query, ids, book_view, closure); ++ get_contacts_from_cache (gwb, query, ids, book_view, closure); + g_ptr_array_free (ids, TRUE); + bonobo_object_unref (book_view); + if (enable_debug) { +@@ -2330,11 +2342,11 @@ static EDataBookView * + find_book_view (EBookBackendGroupwise *ebgw) + { + EList *views = e_book_backend_get_book_views (E_BOOK_BACKEND (ebgw)); +- if (!views) +- return NULL; ++ if (!views) ++ return NULL; + EIterator *iter = e_list_get_iterator (views); + EDataBookView *rv = NULL; +- ++ + if (!iter) { + g_object_unref (views); + return NULL; +@@ -2353,35 +2365,110 @@ find_book_view (EBookBackendGroupwise *e + return rv; + } + ++static void ++get_sequence_from_cache (DB *db, ++ gdouble *cache_first_sequence, ++ gdouble *cache_last_sequence, ++ gdouble *cache_last_po_rebuild_time) ++{ ++ DBT uid_dbt, vcard_dbt; ++ int db_error; ++ ++ string_to_dbt ("firstSequence", &uid_dbt); ++ memset (&vcard_dbt, 0, sizeof(vcard_dbt)); ++ vcard_dbt.flags = DB_DBT_MALLOC; ++ ++ db_error = db->get (db, NULL, &uid_dbt, &vcard_dbt, 0); ++ if (db_error != 0) { ++ g_warning ("db->get failed with %d", db_error); ++ } ++ else { ++ *cache_first_sequence = strtod (g_strdup (vcard_dbt.data), NULL); ++ g_free (vcard_dbt.data); ++ } ++ ++ string_to_dbt ("lastSequence", &uid_dbt); ++ memset (&vcard_dbt, 0, sizeof(vcard_dbt)); ++ vcard_dbt.flags = DB_DBT_MALLOC; ++ ++ db_error = db->get (db, NULL, &uid_dbt, &vcard_dbt, 0); ++ if (db_error != 0) { ++ g_warning ("db->get failed with %d", db_error); ++ } ++ else { ++ *cache_last_sequence = strtod (g_strdup (vcard_dbt.data), NULL); ++ g_free (vcard_dbt.data); ++ } ++ ++ string_to_dbt ("lastTimePORebuild", &uid_dbt); ++ memset (&vcard_dbt, 0, sizeof(vcard_dbt)); ++ vcard_dbt.flags = DB_DBT_MALLOC; ++ ++ db_error = db->get (db, NULL, &uid_dbt, &vcard_dbt, 0); ++ if (db_error != 0) { ++ g_warning ("db->get failed with %d", db_error); ++ } ++ else { ++ *cache_last_po_rebuild_time = strtod (g_strdup (vcard_dbt.data), NULL); ++ g_free (vcard_dbt.data); ++ } ++ ++ if (enable_debug) { ++ printf("Read sequences from cache\n"); ++ printf("firstSequence:%lf, lastSequence:%lf, lastPoRebuildTime:%lf\n", *cache_first_sequence, *cache_last_sequence, *cache_last_po_rebuild_time); ++ } ++ ++} + static void +-add_sequence_to_cache (EBookBackendCache *cache, +- gdouble first_sequence, +- gdouble last_sequence, +- gdouble last_po_rebuild_time) ++add_sequence_to_cache (DB *db, ++ gdouble first_sequence, ++ gdouble last_sequence, ++ gdouble last_po_rebuild_time) + { + gchar *tmp; ++ DBT uid_dbt, vcard_dbt; ++ int db_error; ++ ++ if (enable_debug) { ++ printf("Adding sequences to cache\n"); ++ printf("firstSequence:%lf, lastSequence:%lf, lastPoRebuildTime:%lf\n", first_sequence, last_sequence, last_po_rebuild_time); ++ } ++ ++ string_to_dbt ("firstSequence",&uid_dbt ); ++ tmp = g_strdup_printf("%lf", first_sequence); ++ string_to_dbt (tmp, &vcard_dbt); ++ ++ db_error = db->put (db, NULL, &uid_dbt, &vcard_dbt, 0); + +- /* This is the system address book. Let try add the sequence to maintain deltas */ +- tmp = g_strdup_printf("%lf", first_sequence); +- if (!e_file_cache_get_object (E_FILE_CACHE(cache), "firstSequence")) +- e_file_cache_add_object (E_FILE_CACHE(cache), "firstSequence", tmp); +- else +- e_file_cache_replace_object (E_FILE_CACHE(cache), "firstSequence", tmp); + g_free (tmp); + +- tmp = g_strdup_printf("%lf", last_sequence); +- if (!e_file_cache_get_object (E_FILE_CACHE(cache), "lastSequence")) +- e_file_cache_add_object (E_FILE_CACHE(cache), "lastSequence", tmp); +- else +- e_file_cache_replace_object (E_FILE_CACHE(cache), "lastSequence", tmp); ++ if (db_error != 0) { ++ g_warning ("db->put failed with %d", db_error); ++ } ++ ++ string_to_dbt ("lastSequence",&uid_dbt ); ++ tmp = g_strdup_printf("%lf", last_sequence); ++ string_to_dbt (tmp, &vcard_dbt); ++ ++ db_error = db->put (db, NULL, &uid_dbt, &vcard_dbt, 0); ++ + g_free (tmp); ++ ++ if (db_error != 0) { ++ g_warning ("db->put failed with %d", db_error); ++ } + +- tmp = g_strdup_printf("%lf", last_po_rebuild_time); +- if (!e_file_cache_get_object (E_FILE_CACHE(cache), "lastTimePORebuild")) +- e_file_cache_add_object (E_FILE_CACHE(cache), "lastTimePORebuild", tmp); +- else +- e_file_cache_replace_object (E_FILE_CACHE(cache), "lastTimePORebuild", tmp); ++ string_to_dbt ("lastTimePORebuild",&uid_dbt ); ++ tmp = g_strdup_printf("%lf", last_po_rebuild_time); ++ string_to_dbt (tmp, &vcard_dbt); ++ ++ db_error = db->put (db, NULL, &uid_dbt, &vcard_dbt, 0); ++ + g_free (tmp); ++ ++ if (db_error != 0) { ++ g_warning ("db->put failed with %d", db_error); ++ } + } + + #define CURSOR_ITEM_LIMIT 100 +@@ -2446,10 +2533,9 @@ build_cache (EBookBackendGroupwise *ebgw + GTimeVal tstart, tend; + unsigned long diff; + +- if(!ebgw) +- return FALSE; ++ if(!ebgw) ++ return FALSE; + +- printf("build cache\n"); + if (enable_debug) { + g_get_current_time(&start); + printf("Building the cache for %s \n", ebgw->priv->book_name); +@@ -2467,14 +2553,13 @@ build_cache (EBookBackendGroupwise *ebgw + if (book_view) { + closure = get_closure (book_view); + bonobo_object_ref (book_view); +- if (closure) { +- g_mutex_lock (closure->mutex); +- g_cond_signal (closure->cond); +- g_mutex_unlock (closure->mutex); +- } ++ if (closure) { ++ g_mutex_lock (closure->mutex); ++ g_cond_signal (closure->cond); ++ g_mutex_unlock (closure->mutex); ++ } + } + +- e_file_cache_freeze_changes (E_FILE_CACHE (priv->cache)); + while (!done) { + + if (enable_debug) +@@ -2496,7 +2581,7 @@ build_cache (EBookBackendGroupwise *ebgw + fill_contact_from_gw_item (contact, E_GW_ITEM (l->data), + ebgw->priv->categories_by_id); + e_contact_set (contact, E_CONTACT_BOOK_URI, priv->original_uri); +- e_book_backend_cache_add_contact (ebgw->priv->cache, contact); ++ e_book_backend_db_cache_add_contact (ebgw->priv->file_db, contact); + e_book_backend_summary_add_contact (ebgw->priv->summary, contact); + + /* Since we get contacts incrementally, 100 at a time, we can not +@@ -2516,7 +2601,7 @@ build_cache (EBookBackendGroupwise *ebgw + + } + if (!gw_items) { +- e_book_backend_cache_set_populated (priv->cache); ++ e_book_backend_db_cache_set_populated (ebgw->priv->file_db); + done = TRUE; + priv->is_cache_ready=TRUE; + priv->is_summary_ready = TRUE; +@@ -2526,7 +2611,8 @@ build_cache (EBookBackendGroupwise *ebgw + gw_items = NULL; + position = E_GW_CURSOR_POSITION_CURRENT; + } +- e_file_cache_thaw_changes (E_FILE_CACHE (priv->cache)); ++ ++ ebgw->priv->file_db->sync(ebgw->priv->file_db, 0); + + if (book_view) { + e_data_book_view_notify_complete (book_view, +@@ -2547,7 +2633,7 @@ build_cache (EBookBackendGroupwise *ebgw + } + + static void +-build_summary (EBookBackendGroupwisePrivate *priv) ++build_summary (EBookBackendGroupwise *ebgw) + { + gchar *query_string; + GList *contacts, *temp_list = NULL; +@@ -2557,7 +2643,7 @@ build_summary (EBookBackendGroupwisePriv + if (enable_debug) { + g_get_current_time(&start); + printf ("summary file not found or not up-to-date, building summary for %s\n", +- priv->book_name); ++ ebgw->priv->book_name); + } + + /* build summary from cache */ +@@ -2565,23 +2651,23 @@ build_summary (EBookBackendGroupwisePriv + " (beginswith \"full_name\" \"\") " + " (beginswith \"email\" \"\") " + " (beginswith \"nickname\" \"\"))"); +- contacts = e_book_backend_cache_get_contacts (priv->cache, query_string); ++ contacts = e_book_backend_db_cache_get_contacts (ebgw->priv->file_db, query_string); + g_free (query_string); + temp_list = contacts; + for (; contacts != NULL; contacts = g_list_next(contacts)) { +- e_book_backend_summary_add_contact (priv->summary, contacts->data); ++ e_book_backend_summary_add_contact (ebgw->priv->summary, contacts->data); + g_object_unref (contacts->data); + } + if (temp_list) + g_list_free (temp_list); +- priv->is_summary_ready = TRUE; ++ ebgw->priv->is_summary_ready = TRUE; + + if (enable_debug) { + g_get_current_time(&end); + diff = end.tv_sec * 1000 + end.tv_usec/1000; + diff -= start.tv_sec * 1000 + start.tv_usec/1000; + printf("building summary for %s took %ld.%03ld seconds \n", +- priv->book_name, diff / 1000, diff % 1000); ++ ebgw->priv->book_name, diff / 1000, diff % 1000); + } + } + +@@ -2602,10 +2688,9 @@ update_cache (EBookBackendGroupwise *ebg + GTimeVal start, end; + unsigned long diff; + +- if (!ebgw) +- return FALSE; ++ if (!ebgw) ++ return FALSE; + +- printf("Inside update cache\n"); + if (enable_debug) { + g_get_current_time(&start); + printf("updating cache for %s\n", ebgw->priv->book_name); +@@ -2615,14 +2700,14 @@ update_cache (EBookBackendGroupwise *ebg + if (book_view) { + closure = get_closure (book_view); + bonobo_object_ref (book_view); +- if (closure) { +- g_mutex_lock (closure->mutex); +- g_cond_signal (closure->cond); +- g_mutex_unlock (closure->mutex); +- } ++ if (closure) { ++ g_mutex_lock (closure->mutex); ++ g_cond_signal (closure->cond); ++ g_mutex_unlock (closure->mutex); ++ } + } + +- cache_file_name = e_file_cache_get_filename (E_FILE_CACHE(ebgw->priv->cache)); ++ cache_file_name = e_book_backend_db_cache_get_filename(ebgw->priv->file_db); + g_stat (cache_file_name, &buf); + mod_time = buf.st_mtime; + tm = gmtime (&mod_time); +@@ -2631,7 +2716,7 @@ update_cache (EBookBackendGroupwise *ebg + if (e_book_backend_summary_load (ebgw->priv->summary) == FALSE || + e_book_backend_summary_is_up_to_date (ebgw->priv->summary, mod_time) == FALSE) { + /* build summary */ +- build_summary (ebgw->priv); ++ build_summary (ebgw); + } + + filter = e_gw_filter_new (); +@@ -2647,7 +2732,6 @@ update_cache (EBookBackendGroupwise *ebg + return FALSE; + } + +- e_file_cache_freeze_changes (E_FILE_CACHE (ebgw->priv->cache)); + for (; gw_items != NULL; gw_items = g_list_next(gw_items)) { + const char *id; + +@@ -2665,13 +2749,12 @@ update_cache (EBookBackendGroupwise *ebg + g_free (status_msg); + } + +- if (e_book_backend_cache_check_contact (ebgw->priv->cache, id)) { +- e_book_backend_cache_remove_contact (ebgw->priv->cache, id); +- e_book_backend_cache_add_contact (ebgw->priv->cache, contact); ++ if (e_book_backend_db_cache_check_contact (ebgw->priv->file_db, id)) { ++ e_book_backend_db_cache_add_contact (ebgw->priv->file_db, contact); + e_book_backend_summary_remove_contact (ebgw->priv->summary, id); + e_book_backend_summary_add_contact (ebgw->priv->summary, contact); + } else { +- e_book_backend_cache_add_contact (ebgw->priv->cache, contact); ++ e_book_backend_db_cache_add_contact (ebgw->priv->file_db, contact); + e_book_backend_summary_add_contact (ebgw->priv->summary, contact); + } + +@@ -2681,7 +2764,9 @@ update_cache (EBookBackendGroupwise *ebg + + ebgw->priv->is_cache_ready = TRUE; + ebgw->priv->is_summary_ready = TRUE; +- e_file_cache_thaw_changes (E_FILE_CACHE (ebgw->priv->cache)); ++ ++ ebgw->priv->file_db->sync(ebgw->priv->file_db, 0); ++ + if (book_view) { + e_data_book_view_notify_complete (book_view, + GNOME_Evolution_Addressbook_Success); +@@ -2704,23 +2789,22 @@ static gboolean + update_address_book_deltas (EBookBackendGroupwise *ebgw) + { + int status, contact_num = 0; +- gdouble server_first_sequence = -1, server_last_sequence = -1, server_last_po_rebuild_time = -1; +- gdouble cache_last_sequence = -1, cache_last_po_rebuild_time = -1; +- const char *cache_obj; +- char *tmp, *count, *sequence, *status_msg; ++ gdouble server_first_sequence = -1, server_last_sequence = -1, server_last_po_rebuild_time = -1; ++ gdouble cache_first_sequence = -1, cache_last_sequence = -1, cache_last_po_rebuild_time = -1; ++ char *count, *sequence, *status_msg; ++ gboolean sync_required = FALSE; + GList *add_list = NULL, *delete_list = NULL; + EContact *contact; + EDataBookView *book_view; + GroupwiseBackendSearchClosure *closure; + +- if (!ebgw) +- return FALSE; ++ if (!ebgw) ++ return FALSE; + + EBookBackendGroupwisePrivate *priv = ebgw->priv; +- EBookBackendCache *cache = priv->cache; +- +- g_mutex_lock (priv->update_mutex); + ++ g_mutex_lock (priv->update_mutex); ++ + if (enable_debug) + printf("\nupdating GroupWise system address book cache \n"); + +@@ -2733,7 +2817,7 @@ update_address_book_deltas (EBookBackend + if (status != E_GW_CONNECTION_STATUS_OK) { + if (enable_debug) + printf("No connection with the server \n"); +- g_mutex_unlock(priv->update_mutex); ++ g_mutex_unlock (priv->update_mutex); + return FALSE; + } + +@@ -2743,18 +2827,12 @@ update_address_book_deltas (EBookBackend + if (enable_debug) + printf ("sequence is reset, rebuilding cache...\n"); + build_cache (ebgw); +- g_mutex_unlock(priv->update_mutex); ++ g_mutex_unlock (priv->update_mutex); + return TRUE; + } + +- /* Read the last sequence and last poa rebuild time from cache */ +- cache_obj = e_file_cache_get_object (E_FILE_CACHE (cache), "lastSequence"); +- if (cache_obj) +- cache_last_sequence = strtod (cache_obj, NULL); +- +- cache_obj = e_file_cache_get_object (E_FILE_CACHE (cache), "lastTimePORebuild"); +- if (cache_obj) +- cache_last_po_rebuild_time = strtod (cache_obj, NULL); ++ /* Read the last sequence and last poa rebuild time from cache */ ++ get_sequence_from_cache(priv->file_db, &cache_first_sequence, &cache_last_sequence, &cache_last_po_rebuild_time); + + /* check whether the all the sequences are available and also whether the PO is rebuilt */ + if (server_first_sequence > cache_last_sequence || cache_last_sequence == -1 || +@@ -2763,9 +2841,9 @@ update_address_book_deltas (EBookBackend + if (enable_debug) + printf ("either the sequences missing or PO is rebuilt...rebuilding the cache\n"); + build_cache (ebgw); +- add_sequence_to_cache (cache, server_first_sequence, ++ add_sequence_to_cache (priv->file_db, server_first_sequence, + server_last_sequence, server_last_po_rebuild_time); +- g_mutex_unlock(priv->update_mutex); ++ ebgw->priv->file_db->sync (ebgw->priv->file_db, 0); + return TRUE; + } + +@@ -2782,32 +2860,34 @@ update_address_book_deltas (EBookBackend + if (book_view) { + closure = get_closure (book_view); + bonobo_object_ref (book_view); +- if (closure){ +- g_mutex_lock (closure->mutex); +- g_cond_signal (closure->cond); +- g_mutex_unlock (closure->mutex); +- } ++ if (closure){ ++ g_mutex_lock (closure->mutex); ++ g_cond_signal (closure->cond); ++ g_mutex_unlock (closure->mutex); ++ } + } + + /* update the cache */ +- sequence = g_strdup_printf ("%lf", cache_last_sequence +1); ++ sequence = g_strdup_printf ("%lf", cache_last_sequence +1); + count = g_strdup_printf ("%d", CURSOR_ITEM_LIMIT); + + /* load summary file */ +- cache_file_name = e_file_cache_get_filename (E_FILE_CACHE(ebgw->priv->cache)); ++ cache_file_name = e_book_backend_db_cache_get_filename(ebgw->priv->file_db); + g_stat (cache_file_name, &buf); + mod_time = buf.st_mtime; + if (e_book_backend_summary_load (ebgw->priv->summary) == FALSE || + e_book_backend_summary_is_up_to_date (ebgw->priv->summary, mod_time) == FALSE) { + /* build summary */ +- build_summary (ebgw->priv); ++ build_summary (ebgw); + } + + if (cache_last_sequence != server_last_sequence) { +- e_file_cache_freeze_changes (E_FILE_CACHE (cache)); + + while (cache_last_sequence < server_last_sequence) { +- printf("Calling get_items_delta\n"); ++ if (enable_debug) { ++ printf("cache_last_sequence:%lf, server_last_sequence:%lf\n", cache_last_sequence, server_last_sequence); ++ printf("Calling get_items_delta\n"); ++ } + e_gw_connection_get_items_delta (priv->cnc, + ebgw->priv->container_id, + "name email sync", count, +@@ -2819,9 +2899,10 @@ update_address_book_deltas (EBookBackend + printf("sequence differs but no changes found !!!\n"); + break; + } ++ sync_required = TRUE; + if (enable_debug) { +- printf("add_list size:%d\n", g_list_length(add_list)); +- printf("delete_list size:%d\n", g_list_length(delete_list)); ++ printf("add_list size:%d\n", g_list_length(add_list)); ++ printf("delete_list size:%d\n", g_list_length(delete_list)); + } + + for (; delete_list != NULL; delete_list = g_list_next(delete_list)) { +@@ -2839,7 +2920,7 @@ update_address_book_deltas (EBookBackend + priv->original_uri); + id = e_contact_get_const (contact, E_CONTACT_UID); + +- if (e_book_backend_cache_check_contact (ebgw->priv->cache, id)) { ++ if (e_book_backend_db_cache_check_contact (ebgw->priv->file_db, id)) { + contact_num++; + + if (book_view) { +@@ -2848,7 +2929,7 @@ update_address_book_deltas (EBookBackend + book_view_notify_status (book_view, status_msg); + g_free (status_msg); + } +- e_book_backend_cache_remove_contact (ebgw->priv->cache, id); ++ e_book_backend_db_cache_remove_contact (ebgw->priv->file_db, id); + e_book_backend_summary_remove_contact (ebgw->priv->summary, id); + } + g_object_unref(contact); +@@ -2863,6 +2944,9 @@ update_address_book_deltas (EBookBackend + fill_contact_from_gw_item (contact, + E_GW_ITEM (add_list->data), + ebgw->priv->categories_by_id); ++ ++ if (enable_debug) ++ printf("contact email:%s, contact name:%s\n", (char *)e_contact_get(contact, E_CONTACT_EMAIL_1),(char *) e_contact_get(contact, E_CONTACT_GIVEN_NAME)); + e_contact_set (contact, + E_CONTACT_BOOK_URI, + priv->original_uri); +@@ -2875,41 +2959,32 @@ update_address_book_deltas (EBookBackend + book_view_notify_status (book_view, status_msg); + g_free (status_msg); + } +- if (e_book_backend_cache_check_contact (ebgw->priv->cache, id)) { +- e_book_backend_cache_remove_contact (ebgw->priv->cache, id); ++ if (e_book_backend_db_cache_check_contact (ebgw->priv->file_db, id)) { ++ if (enable_debug) ++ printf("contact already there\n"); + e_book_backend_summary_remove_contact (ebgw->priv->summary, id); +- e_book_backend_cache_add_contact (ebgw->priv->cache, contact); ++ e_book_backend_db_cache_add_contact (ebgw->priv->file_db, contact); + e_book_backend_summary_add_contact (ebgw->priv->summary, contact); + } else { +- e_book_backend_cache_add_contact (ebgw->priv->cache, contact); ++ if (enable_debug) ++ printf("contact not there\n"); ++ e_book_backend_db_cache_add_contact (ebgw->priv->file_db, contact); + e_book_backend_summary_add_contact (ebgw->priv->summary, contact); + } + + g_object_unref(contact); + g_object_unref (add_list->data); + } +- + cache_last_sequence += contact_num; + } + + /* cache is updated, now adding the sequence information to the cache */ + +- tmp = g_strdup_printf("%lf", server_first_sequence); +- e_file_cache_replace_object (E_FILE_CACHE(cache), "firstSequence", tmp); +- g_free (tmp); +- +- tmp = g_strdup_printf("%lf", server_last_sequence); +- e_file_cache_replace_object (E_FILE_CACHE(cache), "lastSequence", tmp); +- g_free (tmp); +- +- tmp = g_strdup_printf("%lf", server_last_po_rebuild_time); +- e_file_cache_replace_object (E_FILE_CACHE(cache), "lastTimePORebuild", tmp); +- g_free (tmp); ++ add_sequence_to_cache (priv->file_db, server_first_sequence, ++ server_last_sequence, server_last_po_rebuild_time); + + g_list_free (add_list); + g_list_free (delete_list); +- +- e_file_cache_thaw_changes (E_FILE_CACHE (cache)); + } + + g_free (sequence); +@@ -2917,6 +2992,10 @@ update_address_book_deltas (EBookBackend + ebgw->priv->is_cache_ready = TRUE; + ebgw->priv->is_summary_ready = TRUE; + ++ if (sync_required) ++ ebgw->priv->file_db->sync(ebgw->priv->file_db, 0); ++ ++ + if (book_view) { + e_data_book_view_notify_complete (book_view, + GNOME_Evolution_Addressbook_Success); +@@ -2975,7 +3054,8 @@ e_book_backend_groupwise_authenticate_us + const char *cache_refresh_interval_set; + int cache_refresh_interval = CACHE_REFRESH_INTERVAL; + +- printf ("authenticate user ............\n"); ++ if (enable_debug) ++ printf ("authenticate user ............\n"); + ebgw = E_BOOK_BACKEND_GROUPWISE (backend); + priv = ebgw->priv; + +@@ -2996,7 +3076,7 @@ e_book_backend_groupwise_authenticate_us + case GNOME_Evolution_Addressbook_MODE_REMOTE: + + if (priv->cnc) { /*we have already authenticated to server */ +- printf("already authenticated\n"); ++ printf("already authenticated\n"); + e_data_book_respond_authenticate_user (book, opid, GNOME_Evolution_Addressbook_Success); + return; + } +@@ -3014,8 +3094,9 @@ e_book_backend_groupwise_authenticate_us + + id = NULL; + is_writable = FALSE; +- if(priv->book_name) +- printf("book_name:%s\n", priv->book_name); ++ if (enable_debug) ++ if(priv->book_name) ++ printf("book_name:%s\n", priv->book_name); + status = e_gw_connection_get_address_book_id (priv->cnc, priv->book_name, &id, &is_writable); + if (status == E_GW_CONNECTION_STATUS_INVALID_CONNECTION) + status = e_gw_connection_get_address_book_id (priv->cnc, priv->book_name, &id, &is_writable); +@@ -3051,24 +3132,29 @@ e_book_backend_groupwise_authenticate_us + priv->summary = e_book_backend_summary_new (priv->summary_file_name, + SUMMARY_FLUSH_TIMEOUT); + +- if (e_book_backend_cache_is_populated (priv->cache)) { +- printf("cache is populated\n"); +- if (priv->is_writable){ +- printf("is writable\n"); +- printf("creating update_cache thread\n"); ++ if (e_book_backend_db_cache_is_populated (ebgw->priv->file_db)) { ++ if (enable_debug) ++ printf("cache is populated\n"); ++ if (priv->is_writable){ ++ if (enable_debug) { ++ printf("is writable\n"); ++ printf("creating update_cache thread\n"); ++ } + g_thread_create ((GThreadFunc) update_cache, ebgw, FALSE, NULL); +- } ++ } + else if (priv->marked_for_offline) { +- printf("marked for offline\n"); ++ if (enable_debug) ++ printf("marked for offline\n"); + GThread *t; +- printf("creating update_address_book_deltas thread\n"); ++ if (enable_debug) ++ printf("creating update_address_book_deltas thread\n"); + + t = g_thread_create ((GThreadFunc) update_address_book_deltas, ebgw, TRUE, NULL); + + /* spawn a thread to update the system address book cache + * at given intervals + */ +- cache_refresh_interval_set = g_getenv ("BOOK_CACHE_REFRESH_INTERVAL"); ++ cache_refresh_interval_set = g_getenv ("BOOK_CACHE_REFRESH_INTERVAL"); + if (cache_refresh_interval_set) { + cache_refresh_interval = g_ascii_strtod (cache_refresh_interval_set, + NULL); /* use this */ +@@ -3086,16 +3172,20 @@ e_book_backend_groupwise_authenticate_us + } + else if (priv->is_writable) { /* for personal books we always cache */ + /* Personal address book and frequent contacts */ +- printf("else if is _writable"); +- printf("build_cahe thread"); ++ if (enable_debug) { ++ printf("else if is _writable"); ++ printf("build_cahe thread"); ++ } + g_thread_create ((GThreadFunc) build_cache, ebgw, FALSE, NULL); + } + else if(priv->marked_for_offline) { +- printf("else if marked_for_offline\n"); ++ if (enable_debug) ++ printf("else if marked_for_offline\n"); + GThread *t; + /* System address book */ + /* cache is not populated and book is not writable and marked for offline usage */ +- printf("creating update_address_book_deltas thread\n"); ++ if (enable_debug) ++ printf("creating update_address_book_deltas thread\n"); + t = g_thread_create ((GThreadFunc) update_address_book_deltas, ebgw, TRUE, NULL); + g_thread_join (t); + /* set the cache refresh time */ +@@ -3164,6 +3254,12 @@ e_book_backend_groupwise_cancel_operatio + return GNOME_Evolution_Addressbook_CouldNotCancel; + } + ++static void ++file_errcall (const char *buf1, char *buf2) ++{ ++ g_warning ("libdb error: %s", buf2); ++} ++ + static GNOME_Evolution_Addressbook_CallStatus + e_book_backend_groupwise_load_source (EBookBackend *backend, + ESource *source, +@@ -3171,10 +3267,14 @@ e_book_backend_groupwise_load_source (EB + { + EBookBackendGroupwise *ebgw; + EBookBackendGroupwisePrivate *priv; ++ char *dirname, *filename; + char *book_name; + char *uri; + char **tokens; + const char *port; ++ int db_error; ++ DB *db; ++ DB_ENV *env; + EUri *parsed_uri; + int i; + const char *use_ssl; +@@ -3240,7 +3340,7 @@ e_book_backend_groupwise_load_source (EB + } + + if (priv->mode == GNOME_Evolution_Addressbook_MODE_LOCAL) +- if (!e_book_backend_cache_exists (priv->original_uri)) { ++ if (!e_book_backend_db_cache_exists (priv->original_uri)) { + g_free (uri); + e_uri_free (parsed_uri); + return GNOME_Evolution_Addressbook_OfflineUnavailable; +@@ -3249,15 +3349,117 @@ e_book_backend_groupwise_load_source (EB + g_free (priv->summary_file_name); + priv->summary_file_name = g_build_filename (g_get_home_dir(), ".evolution/addressbook" , uri, priv->book_name, NULL); + priv->summary_file_name = g_strconcat (ebgw->priv->summary_file_name, ".summary", NULL); ++ ++ dirname = g_build_filename (g_get_home_dir(), ".evolution/cache/addressbook", uri, priv->book_name, NULL); ++ filename = g_build_filename (dirname, "cache.db", NULL); ++ ++ db_error = e_db3_utils_maybe_recover (filename); ++ if (db_error !=0) { ++ g_warning ("db recovery failed with %d", db_error); ++ g_free (dirname); ++ g_free (filename); ++ return GNOME_Evolution_Addressbook_OtherError; ++ } ++ ++ g_static_mutex_lock(&global_env_lock); ++ if (global_env.ref_count > 0) { ++ env = global_env.env; ++ global_env.ref_count++; ++ } ++ else { ++ db_error = db_env_create (&env, 0); ++ if (db_error != 0) { ++ g_warning ("db_env_create failed with %d", db_error); ++ g_static_mutex_unlock (&global_env_lock); ++ g_free (dirname); ++ g_free (filename); ++ return GNOME_Evolution_Addressbook_OtherError; ++ } ++ ++ db_error = env->open (env, NULL, DB_CREATE | DB_INIT_MPOOL | DB_PRIVATE | DB_THREAD, 0); ++ if (db_error != 0) { ++ env->close(env, 0); ++ g_warning ("db_env_open failed with %d", db_error); ++ g_static_mutex_unlock(&global_env_lock); ++ g_free(dirname); ++ g_free(filename); ++ return GNOME_Evolution_Addressbook_OtherError; ++ } ++ ++ env->set_errcall (env, file_errcall); ++ ++ global_env.env = env; ++ global_env.ref_count = 1; ++ } ++ g_static_mutex_unlock(&global_env_lock); ++ ++ ebgw->priv->env = env; ++ ++ db_error = db_create (&db, env, 0); ++ if (db_error != 0) { ++ g_warning ("db_create failed with %d", db_error); ++ g_free(dirname); ++ g_free(filename); ++ return GNOME_Evolution_Addressbook_OtherError; ++ } ++ ++ db_error = db->open (db, NULL, filename, NULL, DB_HASH, DB_THREAD, 0666); ++ ++ if (db_error == DB_OLD_VERSION) { ++ db_error = e_db3_utils_upgrade_format (filename); ++ ++ if (db_error != 0) { ++ g_warning ("db format upgrade failed with %d", db_error); ++ g_free(filename); ++ g_free(dirname); ++ return GNOME_Evolution_Addressbook_OtherError; ++ } ++ ++ db_error = db->open (db, NULL, filename, NULL, DB_HASH, DB_THREAD, 0666); ++ } ++ ++ ebgw->priv->file_db = db; ++ ++ if (db_error != 0) { ++ int rv; ++ ++ /* the databade didn't exist, so we create the ++ directory then the .db */ ++ rv = e_util_mkdir_hier (dirname, 0777); ++ if (rv == -1 && errno != EEXIST) { ++ g_warning ("failed to make directory %s: %s", dirname, strerror (errno)); ++ g_free (dirname); ++ g_free (filename); ++ if (errno == EACCES || errno == EPERM) ++ return GNOME_Evolution_Addressbook_PermissionDenied; ++ else ++ return GNOME_Evolution_Addressbook_OtherError; ++ } ++ ++ db_error = db->open (db, NULL, filename, NULL, DB_HASH, DB_CREATE | DB_THREAD, 0666); ++ if (db_error != 0) { ++ g_warning ("db->open (...DB_CREATE...) failed with %d", db_error); ++ } ++ ++ } ++ ++ if (db_error != 0) { ++ ebgw->priv->file_db = NULL; ++ g_free(filename); ++ g_free(dirname); ++ return GNOME_Evolution_Addressbook_OtherError; ++ } + ++ e_book_backend_db_cache_set_filename (ebgw->priv->file_db, filename); ++ g_free(filename); ++ g_free(dirname); + g_free (uri); + e_uri_free (parsed_uri); + +- priv->cache = e_book_backend_cache_new (priv->original_uri); +- if (enable_debug) { ++ /*if (enable_debug) { + printf ("summary file name = %s\ncache file name = %s \n", + priv->summary_file_name, e_file_cache_get_filename (E_FILE_CACHE(priv->cache))); +- } ++ }*/ + + return GNOME_Evolution_Addressbook_Success; + } +@@ -3286,7 +3488,7 @@ e_book_backend_groupwise_remove (EBookBa + e_data_book_respond_remove (book, opid, GNOME_Evolution_Addressbook_Success); + else + e_data_book_respond_remove (book, opid, GNOME_Evolution_Addressbook_OtherError); +- g_unlink (e_file_cache_get_filename (E_FILE_CACHE (ebgw->priv->cache))); ++ g_unlink (e_book_backend_db_cache_get_filename(ebgw->priv->file_db)); + } + + static char * +@@ -3380,6 +3582,16 @@ e_book_backend_groupwise_dispose (GObjec + bgw = E_BOOK_BACKEND_GROUPWISE (object); + + if (bgw->priv) { ++ if (bgw->priv->file_db) ++ bgw->priv->file_db->close (bgw->priv->file_db, 0); ++ ++ g_static_mutex_lock(&global_env_lock); ++ global_env.ref_count--; ++ if (global_env.ref_count == 0) { ++ global_env.env->close (global_env.env, 0); ++ global_env.env = NULL; ++ } ++ g_static_mutex_unlock(&global_env_lock); + if (bgw->priv->uri) { + g_free (bgw->priv->uri); + bgw->priv->uri = NULL; +@@ -3406,9 +3618,6 @@ e_book_backend_groupwise_dispose (GObjec + g_free (bgw->priv->summary_file_name); + bgw->priv->summary_file_name = NULL; + } +- if (bgw->priv->cache) { +- g_object_unref (bgw->priv->cache); +- } + if (bgw->priv->summary) { + e_book_backend_summary_save(bgw->priv->summary); + g_object_unref (bgw->priv->summary); +@@ -3422,7 +3631,7 @@ e_book_backend_groupwise_dispose (GObjec + bgw->priv->cache_timeout = 0; + } + if (bgw->priv->update_mutex) +- g_mutex_free(bgw->priv->update_mutex); ++ g_mutex_free (bgw->priv->update_mutex); + + g_free (bgw->priv); + bgw->priv = NULL; +@@ -3477,14 +3686,12 @@ e_book_backend_groupwise_init (EBookBack + priv->is_summary_ready = FALSE; + priv->marked_for_offline = FALSE; + priv->use_ssl = NULL; +- priv->cache=NULL; +- priv->cnc = NULL; ++ priv->cnc = NULL; + priv->original_uri = NULL; + priv->cache_timeout = 0; + priv->update_mutex = g_mutex_new(); + priv->reserved1 = NULL; + priv->reserved2 = NULL; +- priv->reserved3 = NULL; + backend->priv = priv; + + if (g_getenv ("GROUPWISE_DEBUG")) { +Index: addressbook/backends/groupwise/Makefile.am +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/addressbook/backends/groupwise/Makefile.am,v +retrieving revision 1.9 +diff -u -p -r1.9 Makefile.am +--- addressbook/backends/groupwise/Makefile.am 22 Jun 2005 12:34:21 -0000 1.9 ++++ addressbook/backends/groupwise/Makefile.am 11 Apr 2006 05:14:12 -0000 +@@ -5,6 +5,7 @@ INCLUDES = \ + -I$(top_srcdir)/addressbook \ + -I$(top_builddir)/addressbook \ + -I$(top_srcdir)/servers/groupwise \ ++ -I$(top_srcdir)/libdb/dist \ + $(EVOLUTION_ADDRESSBOOK_CFLAGS) \ + $(SOUP_CFLAGS) + extension_LTLIBRARIES = libebookbackendgroupwise.la +@@ -19,6 +20,7 @@ libebookbackendgroupwise_la_LIBADD = + $(top_builddir)/addressbook/libebook/libebook-1.2.la \ + $(top_builddir)/addressbook/libedata-book/libedata-book-1.2.la \ + $(top_builddir)/libedataserver/libedataserver-1.2.la \ ++ $(top_builddir)/libdb/dist/libdb-4.1.la \ + $(EVOLUTION_ADDRESSBOOK_LIBS) \ + $(SOUP_LIBS) + +--- /dev/null 2006-04-11 14:30:05.384262500 +0530 ++++ addressbook/libedata-book/e-book-backend-db-cache.c 2006-04-05 20:04:23.000000000 +0530 +@@ -0,0 +1,416 @@ ++/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ ++/* A class to cache address book conents on local file system ++ * ++ * Copyright (C) 2004 Novell, Inc. ++ * ++ * Authors: Devashish Sharma ++ * ++ * This program is free software; you can redistribute it and/or ++ * modify it under the terms of version 2 of the GNU Lesser General Public ++ * License as published by the Free Software Foundation. ++ * ++ * This program is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU Lesser General Public License for more details. ++ * ++ * You should have received a copy of the GNU Lesser General Public License ++ * along with this program; if not, write to the Free Software ++ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. ++ */ ++ ++#ifdef HAVE_CONFIG_H ++#include ++#endif ++ ++#include ++#include "e-book-backend-db-cache.h" ++#include "e-book-backend.h" ++#include "e-book-backend-sexp.h" ++ ++void ++string_to_dbt(const char *str, DBT *dbt) ++{ ++ memset(dbt, 0, sizeof(dbt)); ++ dbt->data = (void *)str; ++ dbt->size = strlen(str) + 1; ++ dbt->flags = DB_DBT_USERMEM; ++} ++ ++static char * ++get_filename_from_uri (const char *uri) ++{ ++ char *mangled_uri, *filename; ++ int i; ++ ++ /* mangle the URI to not contain invalid characters */ ++ mangled_uri = g_strdup (uri); ++ for (i = 0; i < strlen (mangled_uri); i++) { ++ switch (mangled_uri[i]) { ++ case ':' : ++ case '/' : ++ mangled_uri[i] = '_'; ++ } ++ } ++ ++ /* generate the file name */ ++ filename = g_build_filename (g_get_home_dir (), ".evolution/cache/addressbook", ++ mangled_uri, "cache.db", NULL); ++ ++ /* free memory */ ++ g_free (mangled_uri); ++ ++ return filename; ++} ++ ++/** ++ * e_book_backend_db_cache_set_filename: ++ * @db: DB Handle ++ * @filename: filename to be set ++ * ++ * Set the filename for db cacahe file. ++ **/ ++ ++void ++e_book_backend_db_cache_set_filename(DB *db, const char *filename) ++{ ++ DBT uid_dbt, vcard_dbt; ++ int db_error; ++ ++ string_to_dbt ("filename", &uid_dbt); ++ string_to_dbt (filename, &vcard_dbt); ++ ++ db_error = db->put (db, NULL, &uid_dbt, &vcard_dbt, 0); ++ if (db_error != 0) { ++ g_warning ("db->put failed with %d", db_error); ++ } ++ ++} ++ ++/** ++ * e_book_backend_db_cache_get_filename: ++ * @db: DB Handle ++ * ++ * Get the filename for db cacahe file. ++ **/ ++ ++char * ++e_book_backend_db_cache_get_filename(DB *db) ++{ ++ DBT uid_dbt, vcard_dbt; ++ int db_error; ++ char *filename; ++ ++ string_to_dbt ("filename", &uid_dbt); ++ memset (&vcard_dbt, 0 , sizeof(vcard_dbt)); ++ vcard_dbt.flags = DB_DBT_MALLOC; ++ ++ db_error = db->get (db, NULL, &uid_dbt, &vcard_dbt, 0); ++ if (db_error != 0) { ++ g_warning ("db-get (db, NULL, &uid_dbt, &vcard_dbt,0); ++ if (db_error != 0) { ++ g_warning ("db->get failed with %d", db_error); ++ return NULL; ++ } ++ ++ vcard_str = g_strdup (vcard_dbt.data); ++ g_free (vcard_dbt.data); ++ ++ return e_contact_new_from_vcard (vcard_str); ++} ++ ++/** ++ * e_book_backend_db_cache_add_contact: ++ * @db: DB Handle ++ * @contact: an #EContact ++ * ++ * Adds @contact to @cache. ++ * ++ * Return value: %TRUE if the contact was cached successfully, %FALSE otherwise. ++ **/ ++gboolean ++e_book_backend_db_cache_add_contact (DB *db, ++ EContact *contact) ++{ ++ DBT uid_dbt, vcard_dbt; ++ int db_error; ++ char *vcard_str; ++ const char *uid; ++ ++ uid = e_contact_get_const (contact, E_CONTACT_UID); ++ if (!uid) { ++ printf ("no uid\n"); ++ printf("name:%s, email:%s\n", e_contact_get (contact, E_CONTACT_GIVEN_NAME), e_contact_get (contact, E_CONTACT_EMAIL_1)); ++ return NULL; ++ } ++ string_to_dbt (uid, &uid_dbt); ++ ++ vcard_str = e_vcard_to_string (E_VCARD(contact), EVC_FORMAT_VCARD_30); ++ string_to_dbt (vcard_str, &vcard_dbt); ++ ++ //db_error = db->del (db, NULL, &uid_dbt, 0); ++ db_error = db->put (db, NULL, &uid_dbt, &vcard_dbt, 0); ++ ++ g_free (vcard_str); ++ ++ if (db_error != 0) { ++ g_warning ("db->put failed with %d", db_error); ++ return FALSE; ++ } ++ else ++ return TRUE; ++} ++ ++/** ++ * e_book_backend_db_cache_remove_contact: ++ * @db: DB Handle ++ * @uid: a unique contact ID ++ * ++ * Removes the contact identified by @uid from @cache. ++ * ++ * Return value: %TRUE if the contact was found and removed, %FALSE otherwise. ++ **/ ++gboolean ++e_book_backend_db_cache_remove_contact (DB *db, ++ const char *uid) ++ ++{ ++ DBT uid_dbt; ++ int db_error; ++ ++ g_return_val_if_fail (uid != NULL, FALSE); ++ ++ string_to_dbt (uid, &uid_dbt); ++ db_error = db->del (db, NULL, &uid_dbt, 0); ++ ++ if (db_error != 0) { ++ g_warning ("db->del failed with %d", db_error); ++ return FALSE; ++ } ++ else ++ return TRUE; ++ ++} ++ ++/** ++ * e_book_backend_db_cache_check_contact: ++ * @db: DB Handle ++ * @uid: a unique contact ID ++ * ++ * Checks if the contact identified by @uid exists in @cache. ++ * ++ * Return value: %TRUE if the cache contains the contact, %FALSE otherwise. ++ **/ ++gboolean ++e_book_backend_db_cache_check_contact (DB *db, const char *uid) ++{ ++ DBT uid_dbt, vcard_dbt; ++ int db_error; ++ ++ g_return_val_if_fail (uid != NULL, FALSE); ++ ++ string_to_dbt (uid, &uid_dbt); ++ memset (&vcard_dbt, 0 , sizeof(vcard_dbt)); ++ vcard_dbt.flags = DB_DBT_MALLOC; ++ ++ db_error = db->get (db, NULL, &uid_dbt, &vcard_dbt,0); ++ if (db_error != 0) ++ return FALSE; ++ else { ++ free (vcard_dbt.data); ++ return TRUE; ++ } ++} ++ ++/** ++ * e_book_backend_db_cache_get_contacts: ++ * @db: DB Handle ++ * @query: an s-expression ++ * ++ * Returns a list of #EContact elements from @cache matching @query. ++ * When done with the list, the caller must unref the contacts and ++ * free the list. ++ * ++ * Return value: A #GList of pointers to #EContact. ++ **/ ++GList * ++e_book_backend_db_cache_get_contacts (DB *db, const char *query) ++{ ++ DBC *dbc; ++ DBT uid_dbt, vcard_dbt; ++ int db_error; ++ GList *list = NULL; ++ EBookBackendSExp *sexp = NULL; ++ EContact *contact; ++ ++ if (query) { ++ sexp = e_book_backend_sexp_new (query); ++ if (!sexp) ++ return NULL; ++ } ++ ++ db_error = db->cursor (db, NULL, &dbc, 0); ++ if (db_error != 0) { ++ g_warning ("db->cursor failed with %d", db_error); ++ return NULL; ++ } ++ ++ memset(&vcard_dbt, 0 , sizeof(vcard_dbt)); ++ memset(&uid_dbt, 0, sizeof(uid_dbt)); ++ db_error = dbc->c_get(dbc, &uid_dbt, &vcard_dbt, DB_FIRST); ++ ++ while(db_error == 0) { ++ if (vcard_dbt.data && !strncmp (vcard_dbt.data, "BEGIN:VCARD", 11)) ++ if (e_book_backend_sexp_match_vcard(sexp, vcard_dbt.data)) { ++ contact = e_contact_new_from_vcard (vcard_dbt.data); ++ list = g_list_append (list, contact); ++ } ++ db_error = dbc->c_get (dbc, &uid_dbt, &vcard_dbt, DB_NEXT); ++ } ++ ++ db_error = dbc->c_close (dbc); ++ if(db_error != 0) ++ g_warning ("db->c_close failed with %d", db_error); ++ ++ if (sexp) ++ g_object_unref (sexp); ++ ++ return list; ++} ++ ++/** ++ * e_book_backend_db_cache_search: ++ * @backend: an #EBookBackend ++ * @query: an s-expression ++ * ++ * Returns an array of pointers to unique contact ID strings for contacts ++ * in @cache matching @query. When done with the array, the caller must ++ * free the ID strings and the array. ++ * ++ * Return value: A #GPtrArray of pointers to contact ID strings. ++ **/ ++GPtrArray * ++e_book_backend_db_cache_search (DB *db, const char *query) ++{ ++ GList *matching_contacts, *temp; ++ GPtrArray *ptr_array; ++ ++ matching_contacts = e_book_backend_db_cache_get_contacts (db, query); ++ ptr_array = g_ptr_array_new (); ++ ++ temp = matching_contacts; ++ for (; matching_contacts != NULL; matching_contacts = g_list_next (matching_contacts)) { ++ g_ptr_array_add (ptr_array, e_contact_get (matching_contacts->data, E_CONTACT_UID)); ++ g_object_unref (matching_contacts->data); ++ } ++ g_list_free (temp); ++ ++ return ptr_array; ++} ++ ++/** ++ * e_book_backend_db_cache_exists: ++ * @uri: URI for the cache ++ * ++ * Checks if an #EBookBackendCache exists at @uri. ++ * ++ * Return value: %TRUE if cache exists, %FALSE if not. ++ **/ ++gboolean ++e_book_backend_db_cache_exists (const char *uri) ++{ ++ char *file_name; ++ gboolean exists = FALSE; ++ file_name = get_filename_from_uri (uri); ++ ++ if (file_name && g_file_test (file_name, G_FILE_TEST_EXISTS)) { ++ exists = TRUE; ++ g_free (file_name); ++ } ++ ++ return exists; ++} ++ ++/** ++ * e_book_backend_db_cache_set_populated: ++ * @backend: an #EBookBackend ++ * ++ * Flags @cache as being populated - that is, it is up-to-date on the ++ * contents of the book it's caching. ++ **/ ++void ++e_book_backend_db_cache_set_populated (DB *db) ++{ ++ DBT uid_dbt, vcard_dbt; ++ int db_error; ++ ++ string_to_dbt ("populated", &uid_dbt); ++ string_to_dbt ("TRUE", &vcard_dbt); ++ db_error = db->put (db, NULL, &uid_dbt, &vcard_dbt, 0); ++ if (db_error != 0) { ++ g_warning ("db->put failed with %d", db_error); ++ } ++ ++} ++ ++/** ++ * e_book_backend_cache_is_populated: ++ * @db: DB Handle ++ * ++ * Checks if @cache is populated. ++ * ++ * Return value: %TRUE if @cache is populated, %FALSE otherwise. ++ **/ ++gboolean ++e_book_backend_db_cache_is_populated (DB *db) ++{ ++ DBT uid_dbt, vcard_dbt; ++ int db_error; ++ ++ string_to_dbt ("populated", &uid_dbt); ++ memset(&vcard_dbt, 0, sizeof(vcard_dbt)); ++ vcard_dbt.flags = DB_DBT_MALLOC; ++ ++ db_error = db->get (db, NULL, &uid_dbt, &vcard_dbt, 0); ++ if (db_error != 0){ ++ return FALSE; ++ } ++ else { ++ free(vcard_dbt.data); ++ return TRUE; ++ } ++} +--- /dev/null 2006-04-11 14:30:05.384262500 +0530 ++++ addressbook/libedata-book/e-book-backend-db-cache.h 2006-04-11 10:49:48.000000000 +0530 +@@ -0,0 +1,49 @@ ++/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ ++/* ++ * ++ * Copyright (C) 2004 Novell, Inc. ++ * ++ * Authors: Devashish Sharma ++ * ++ * This program is free software; you can redistribute it and/or ++ * modify it under the terms of version 2 of the GNU Lesser General Public ++ * License as published by the Free Software Foundation. ++ * ++ * This program is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU Lesser General Public License for more details. ++ * ++ * You should have received a copy of the GNU Lesser General Public License ++ * along with this program; if not, write to the Free Software ++ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. ++ */ ++ ++#ifndef E_BOOK_BACKEND_DB_CACHE_H ++#define E_BOOK_BACKEND_DB_CACHE_H ++ ++#include ++#include "db.h" ++ ++EContact* e_book_backend_db_cache_get_contact (DB *db, const char *uid); ++void string_to_dbt(const char *str, DBT *dbt); ++char *e_book_backend_db_cache_get_filename(DB *db); ++void e_book_backend_db_cache_set_filename(DB *db, const char *filename); ++gboolean e_book_backend_db_cache_add_contact (DB *db, ++ EContact *contact); ++gboolean e_book_backend_db_cache_remove_contact (DB *db, ++ const char *uid); ++gboolean e_book_backend_db_cache_check_contact (DB *db, const char *uid); ++GList* e_book_backend_db_cache_get_contacts (DB *db, const char *query); ++gboolean e_book_backend_db_cache_exists (const char *uri); ++void e_book_backend_db_cache_set_populated (DB *db); ++gboolean e_book_backend_db_cache_is_populated (DB *db); ++GPtrArray* e_book_backend_db_cache_search (DB *db, const char *query); ++ ++ ++ ++ ++G_END_DECLS ++ ++#endif ++ +Index: addressbook/libedata-book/Makefile.am +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/addressbook/libedata-book/Makefile.am,v +retrieving revision 1.14 +diff -u -p -r1.14 Makefile.am +--- addressbook/libedata-book/Makefile.am 22 Jun 2005 12:34:23 -0000 1.14 ++++ addressbook/libedata-book/Makefile.am 11 Apr 2006 05:22:41 -0000 +@@ -4,6 +4,7 @@ INCLUDES = \ + -I$(top_builddir) \ + -I$(top_srcdir)/addressbook \ + -I$(top_builddir)/addressbook \ ++ -I$(top_srcdir)/libdb/dist \ + $(EVOLUTION_ADDRESSBOOK_CFLAGS) + + # The corba stubs and skels +@@ -38,6 +39,7 @@ libedata_book_1_2_la_SOURCES = \ + e-book-backend-sexp.c \ + e-book-backend-summary.c \ + e-book-backend-cache.c \ ++ e-book-backend-db-cache.c \ + e-book-backend-sync.c \ + e-book-backend.c \ + e-data-book-factory.c \ +@@ -48,7 +50,8 @@ libedata_book_1_2_la_SOURCES = \ + libedata_book_1_2_la_LIBADD = \ + $(EVOLUTION_ADDRESSBOOK_LIBS) \ + $(top_builddir)/addressbook/libebook/libebook-1.2.la \ +- $(top_builddir)/libedataserver/libedataserver-1.2.la ++ $(top_builddir)/libedataserver/libedataserver-1.2.la \ ++ $(top_builddir)/libdb/dist/libdb-4.1.la + + libedata_book_1_2_la_LDFLAGS = \ + -version-info $(LIBEDATABOOK_CURRENT):$(LIBEDATABOOK_REVISION):$(LIBEDATABOOK_AGE) $(NO_UNDEFINED) +@@ -66,7 +69,8 @@ libedata_bookinclude_HEADERS = \ + e-data-book-types.h \ + e-data-book-view.h \ + e-data-book.h \ +- e-book-backend-cache.h ++ e-book-backend-cache.h \ ++ e-book-backend-db-cache.h + + %-$(API_VERSION).pc: %.pc + cp $< $@ diff --git a/bnc-160147-cant-delete-created-calendar-accounts.patch b/bnc-160147-cant-delete-created-calendar-accounts.patch new file mode 100644 index 0000000..033b304 --- /dev/null +++ b/bnc-160147-cant-delete-created-calendar-accounts.patch @@ -0,0 +1,18 @@ +Index: calendar/backends/caldav/e-cal-backend-caldav.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/calendar/backends/caldav/e-cal-backend-caldav.c,v +retrieving revision 1.5 +diff -u -p -r1.5 e-cal-backend-caldav.c +--- calendar/backends/caldav/e-cal-backend-caldav.c 9 Feb 2006 06:12:05 -0000 1.5 ++++ calendar/backends/caldav/e-cal-backend-caldav.c 23 Mar 2006 19:55:51 -0000 +@@ -1491,6 +1491,10 @@ caldav_remove (ECalBackendSync *backend, + priv = E_CAL_BACKEND_CALDAV_GET_PRIVATE (cbdav); + + g_mutex_lock (priv->lock); ++ ++ if (priv->loaded != TRUE) ++ return GNOME_Evolution_Calendar_Success; ++ + status = check_state (cbdav, &online); + + if (status != GNOME_Evolution_Calendar_Success) { diff --git a/bnc-160915-evolution-crash-clickng-goto-cal-view.patch b/bnc-160915-evolution-crash-clickng-goto-cal-view.patch new file mode 100644 index 0000000..4523cc5 --- /dev/null +++ b/bnc-160915-evolution-crash-clickng-goto-cal-view.patch @@ -0,0 +1,16 @@ +Index: calendar/libecal/e-cal.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/calendar/libecal/e-cal.c,v +retrieving revision 1.125 +diff -u -p -r1.125 e-cal.c +--- calendar/libecal/e-cal.c 4 Mar 2006 10:29:07 -0000 1.125 ++++ calendar/libecal/e-cal.c 11 Apr 2006 13:29:57 -0000 +@@ -3528,7 +3528,7 @@ process_detached_instances (GList *insta + ci->end = cid->end; + + processed = TRUE; +- } else { ++ } else if (instance_recur_id.datetime.value && recur_id.datetime.value){ + cmp = icaltime_compare (*instance_recur_id.datetime.value, + *recur_id.datetime.value); + if ((recur_id.type == E_CAL_COMPONENT_RANGE_THISPRIOR && cmp <= 0) || diff --git a/bnc-161000-junk-mail-dont-work.patch b/bnc-161000-junk-mail-dont-work.patch new file mode 100644 index 0000000..feddb74 --- /dev/null +++ b/bnc-161000-junk-mail-dont-work.patch @@ -0,0 +1,71 @@ +Index: camel/providers/groupwise/camel-groupwise-folder.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/groupwise/camel-groupwise-folder.c,v +retrieving revision 1.126 +diff -u -p -r1.126 camel-groupwise-folder.c +--- camel/providers/groupwise/camel-groupwise-folder.c 3 Apr 2006 06:36:11 -0000 1.126 ++++ camel/providers/groupwise/camel-groupwise-folder.c 3 Apr 2006 06:42:45 -0000 +@@ -491,7 +491,8 @@ update_junk_list (CamelStore *store, Cam + goto error; + + email = g_strsplit_set (from, "<>", -1); +- if (!email[1]) ++ ++ if (!email || !email[1]) + goto error; + + if (flag == ADD_JUNK_ENTRY) +@@ -617,6 +618,7 @@ groupwise_sync (CamelFolder *folder, gbo + + if ((flags & CAMEL_MESSAGE_JUNK) && !(flags & CAMEL_GW_MESSAGE_JUNK)) /*marked a message junk*/ + move_to_junk (folder, info, ex); ++ + else if ((flags & CAMEL_MESSAGE_JUNK) && (flags & CAMEL_GW_MESSAGE_JUNK)) /*message was marked as junk, now unjunk*/ + move_to_mailbox (folder, info, ex); + +@@ -1171,12 +1173,17 @@ gw_update_cache (CamelFolder *folder, GL + + org = e_gw_item_get_organizer (item); + if (org) { +- if (exists) +- camel_pstring_free(mi->info.from); +- if (org->display_name && org->display_name[0]) +- mi->info.from = camel_pstring_strdup (org->display_name); +- else if (org->email && org->email[0]) +- mi->info.from = camel_pstring_strdup (org->email); ++ GString *str; ++ str = g_string_new (""); ++ if (org->display_name && org->display_name[0]) ++ str = g_string_append (str, org->display_name); ++ if (org->email && org->email[0]) { ++ g_string_append (str, "<"); ++ str = g_string_append (str, org->email); ++ g_string_append (str, ">"); ++ } ++ mi->info.from = camel_pstring_strdup (str->str); ++ g_string_free (str, TRUE); + } + g_string_truncate (str, 0); + recp_list = e_gw_item_get_recipient_list (item); +@@ -1369,10 +1376,17 @@ gw_update_summary ( CamelFolder *folder, + + org = e_gw_item_get_organizer (item); + if (org) { +- if (org->display_name && org->display_name[0]) +- mi->info.from = camel_pstring_strdup (org->display_name); +- else if (org->email && org->email[0]) +- mi->info.from = camel_pstring_strdup (org->email); ++ GString *str; ++ str = g_string_new (""); ++ if (org->display_name && org->display_name[0]) ++ str = g_string_append (str, org->display_name); ++ if (org->email && org->email[0]) { ++ g_string_append (str, "<"); ++ str = g_string_append (str, org->email); ++ g_string_append (str, ">"); ++ } ++ mi->info.from = camel_pstring_strdup (str->str); ++ g_string_free (str, TRUE); + } + g_string_truncate (str, 0); + recp_list = e_gw_item_get_recipient_list (item); diff --git a/bnc-161290-eds-crashed-forwarding-mail.patch b/bnc-161290-eds-crashed-forwarding-mail.patch new file mode 100644 index 0000000..8ebaa11 --- /dev/null +++ b/bnc-161290-eds-crashed-forwarding-mail.patch @@ -0,0 +1,82 @@ +Index: addressbook/backends/groupwise/e-book-backend-groupwise.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/addressbook/backends/groupwise/e-book-backend-groupwise.c,v +retrieving revision 1.73 +diff -u -p -r1.73 e-book-backend-groupwise.c +--- addressbook/backends/groupwise/e-book-backend-groupwise.c 23 Mar 2006 10:55:47 -0000 1.73 ++++ addressbook/backends/groupwise/e-book-backend-groupwise.c 3 Apr 2006 13:18:36 -0000 +@@ -70,11 +70,11 @@ struct _EBookBackendGroupwisePrivate { + int cache_timeout; + EBookBackendCache *cache; + EBookBackendSummary *summary; ++ GMutex *update_mutex; + /* for future use */ + void *reserved1; + void *reserved2; + void *reserved3; +- void *reserved4; + }; + + #define ELEMENT_TYPE_SIMPLE 0x01 +@@ -2711,6 +2711,8 @@ update_address_book_deltas (EBookBackend + + EBookBackendGroupwisePrivate *priv = ebgw->priv; + EBookBackendCache *cache = priv->cache; ++ ++ g_mutex_lock (priv->update_mutex); + + if (enable_debug) + printf("\nupdating GroupWise system address book cache \n"); +@@ -2724,6 +2726,7 @@ update_address_book_deltas (EBookBackend + if (status != E_GW_CONNECTION_STATUS_OK) { + if (enable_debug) + printf("No connection with the server \n"); ++ g_mutex_unlock(priv->update_mutex); + return FALSE; + } + +@@ -2733,6 +2736,7 @@ update_address_book_deltas (EBookBackend + if (enable_debug) + printf ("sequence is reset, rebuilding cache...\n"); + build_cache (ebgw); ++ g_mutex_unlock(priv->update_mutex); + return TRUE; + } + +@@ -2754,6 +2758,7 @@ update_address_book_deltas (EBookBackend + build_cache (ebgw); + add_sequence_to_cache (cache, server_first_sequence, + server_last_sequence, server_last_po_rebuild_time); ++ g_mutex_unlock(priv->update_mutex); + return TRUE; + } + +@@ -2926,6 +2931,7 @@ update_address_book_deltas (EBookBackend + printf("updating GroupWise system address book cache took %ld.%03ld seconds for %d changes\n", + diff / 1000, diff % 1000, contact_num); + } ++ g_mutex_unlock(priv->update_mutex); + + return TRUE; + } +@@ -3427,6 +3433,8 @@ e_book_backend_groupwise_dispose (GObjec + g_source_remove (bgw->priv->cache_timeout); + bgw->priv->cache_timeout = 0; + } ++ if (bgw->priv->update_mutex) ++ g_mutex_free(bgw->priv->update_mutex); + + g_free (bgw->priv); + bgw->priv = NULL; +@@ -3485,10 +3493,10 @@ e_book_backend_groupwise_init (EBookBack + priv->cnc = NULL; + priv->original_uri = NULL; + priv->cache_timeout = 0; ++ priv->update_mutex = g_mutex_new(); + priv->reserved1 = NULL; + priv->reserved2 = NULL; + priv->reserved3 = NULL; +- priv->reserved4 = NULL; + backend->priv = priv; + + if (g_getenv ("GROUPWISE_DEBUG")) { diff --git a/bnc-162005-e-d-s-crash-deleting-recur-appt.patch b/bnc-162005-e-d-s-crash-deleting-recur-appt.patch new file mode 100644 index 0000000..489857f --- /dev/null +++ b/bnc-162005-e-d-s-crash-deleting-recur-appt.patch @@ -0,0 +1,41 @@ +Index: calendar/backends/groupwise/e-cal-backend-groupwise.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/calendar/backends/groupwise/e-cal-backend-groupwise.c,v +retrieving revision 1.174 +diff -u -p -r1.174 e-cal-backend-groupwise.c +--- calendar/backends/groupwise/e-cal-backend-groupwise.c 3 Apr 2006 08:36:44 -0000 1.174 ++++ calendar/backends/groupwise/e-cal-backend-groupwise.c 5 Apr 2006 06:17:11 -0000 +@@ -1839,7 +1839,7 @@ e_cal_backend_groupwise_modify_object (E + ECalComponent *comp, *cache_comp = NULL; + EGwConnectionStatus status; + EGwItem *item, *cache_item; +- const char *uid = NULL; ++ const char *uid = NULL, *rid = NULL; + + *old_object = NULL; + cbgw = E_CAL_BACKEND_GROUPWISE (backend); +@@ -1861,13 +1861,14 @@ e_cal_backend_groupwise_modify_object (E + comp = e_cal_component_new (); + e_cal_component_set_icalcomponent (comp, icalcomp); + e_cal_component_get_uid (comp, &uid); ++ rid = e_cal_component_get_recurid_as_string (comp); + + /* check if the object exists */ + switch (priv->mode) { + case CAL_MODE_ANY : + case CAL_MODE_REMOTE : + /* when online, send the item to the server */ +- cache_comp = e_cal_backend_cache_get_component (priv->cache, uid, NULL); ++ cache_comp = e_cal_backend_cache_get_component (priv->cache, uid, rid); + if (!cache_comp) { + g_message ("CRITICAL : Could not find the object in cache"); + return GNOME_Evolution_Calendar_ObjectNotFound; +@@ -2070,7 +2071,7 @@ e_cal_backend_groupwise_remove_object (E + + e_cal_backend_cache_remove_component (priv->cache, id->uid, + id->rid); +- if (!g_str_equal (id->rid, rid)) ++ if (!id->rid || !g_str_equal (id->rid, rid)) + e_cal_backend_notify_object_removed (E_CAL_BACKEND (cbgw), id, e_cal_component_get_as_string (comp), NULL); + e_cal_component_free_id (id); + diff --git a/bnc-163664-eds-crashes-on-invalid-utf8-contacts.patch b/bnc-163664-eds-crashes-on-invalid-utf8-contacts.patch new file mode 100644 index 0000000..f6a496b --- /dev/null +++ b/bnc-163664-eds-crashes-on-invalid-utf8-contacts.patch @@ -0,0 +1,70 @@ +--- addressbook/libebook/e-vcard.c.orig 2006-04-04 20:53:02.000000000 -0500 ++++ addressbook/libebook/e-vcard.c 2006-04-04 20:56:55.000000000 -0500 +@@ -541,6 +541,45 @@ read_attribute (char **p) + return NULL; + } + ++/* Stolen from glib/glib/gconvert.c */ ++static gchar * ++make_valid_utf8 (const gchar *name) ++{ ++ GString *string; ++ const gchar *remainder, *invalid; ++ gint remaining_bytes, valid_bytes; ++ ++ string = NULL; ++ remainder = name; ++ remaining_bytes = strlen (name); ++ ++ while (remaining_bytes != 0) ++ { ++ if (g_utf8_validate (remainder, remaining_bytes, &invalid)) ++ break; ++ valid_bytes = invalid - remainder; ++ ++ if (string == NULL) ++ string = g_string_sized_new (remaining_bytes); ++ ++ g_string_append_len (string, remainder, valid_bytes); ++ /* append U+FFFD REPLACEMENT CHARACTER */ ++ g_string_append (string, "\357\277\275"); ++ ++ remaining_bytes -= valid_bytes + 1; ++ remainder = invalid + 1; ++ } ++ ++ if (string == NULL) ++ return g_strdup (name); ++ ++ g_string_append (string, remainder); ++ ++ g_assert (g_utf8_validate (string->str, -1, NULL)); ++ ++ return g_string_free (string, FALSE); ++} ++ + /* we try to be as forgiving as we possibly can here - this isn't a + * validator. Almost nothing is considered a fatal error. We always + * try to return *something*. +@@ -548,17 +587,12 @@ read_attribute (char **p) + static void + parse (EVCard *evc, const char *str) + { +- char *buf = g_strdup (str); +- char *p, *end; ++ char *buf; ++ char *p; + EVCardAttribute *attr; + +- /* first validate the string is valid utf8 */ +- if (!g_utf8_validate (buf, -1, (const char **)&end)) { +- /* if the string isn't valid, we parse as much as we can from it */ +- g_warning ("invalid utf8 passed to EVCard. Limping along."); +- *end = '\0'; +- } +- ++ buf = make_valid_utf8 (str); ++ + buf = fold_lines (buf); + + d(printf ("BEFORE FOLDING:\n")); diff --git a/bnc-163982-system-hang-with-126-error-popups.patch b/bnc-163982-system-hang-with-126-error-popups.patch new file mode 100644 index 0000000..fe27a78 --- /dev/null +++ b/bnc-163982-system-hang-with-126-error-popups.patch @@ -0,0 +1,39 @@ +Index: calendar/backends/file/e-cal-backend-file.c +================================================================================ +--- calendar/backends/file/e-cal-backend-file.c ++++ calendar/backends/file/e-cal-backend-file.c +@@ -129,6 +129,7 @@ + GnomeVFSFileSize out; + gchar *tmp, *backup_uristr; + char *buf; ++ char *error = NULL; + ECalBackendFile *cbfile = user_data; + + priv = cbfile->priv; +@@ -201,12 +202,14 @@ + g_mutex_unlock (priv->idle_save_mutex); + e_cal_backend_notify_error (E_CAL_BACKEND (cbfile), + _("Cannot save calendar data: Malformed URI.")); +- return TRUE; ++ return FALSE; + + error: + g_mutex_unlock (priv->idle_save_mutex); +- e_cal_backend_notify_error (E_CAL_BACKEND (cbfile), gnome_vfs_result_to_string (result)); +- return TRUE; ++ error = g_strconcat (_("Can't save calendar data: "), gnome_vfs_result_to_string (result), NULL); ++ e_cal_backend_notify_error (E_CAL_BACKEND (cbfile), error); ++ g_free (error); ++ return FALSE; + } + + static void +@@ -520,8 +523,6 @@ + g_assert (icalcomp != NULL); + + icalcomponent_add_component (priv->icalcomp, icalcomp); +- +- save (cbfile); + } + } + diff --git a/bnc-164140-eds-crash-evolution--offline.patch b/bnc-164140-eds-crash-evolution--offline.patch new file mode 100644 index 0000000..dfecbb5 --- /dev/null +++ b/bnc-164140-eds-crash-evolution--offline.patch @@ -0,0 +1,26 @@ +Index: addressbook/backends/file/e-book-backend-file.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/addressbook/backends/file/e-book-backend-file.c,v +retrieving revision 1.41 +diff -u -p -r1.41 e-book-backend-file.c +--- addressbook/backends/file/e-book-backend-file.c 16 Jan 2006 16:36:14 -0000 1.41 ++++ addressbook/backends/file/e-book-backend-file.c 11 Apr 2006 11:25:19 -0000 +@@ -516,6 +516,8 @@ book_view_thread (gpointer data) + { + EDataBookView *book_view = data; + FileBackendSearchClosure *closure = get_closure (book_view); ++ if (!closure) ++ return; + EBookBackendFile *bf = closure->bf; + const char *query; + DB *db; +@@ -652,6 +654,9 @@ e_book_backend_file_stop_book_view (EBoo + { + FileBackendSearchClosure *closure = get_closure (book_view); + gboolean need_join = FALSE; ++ ++ if (!closure) ++ return; + + d(printf ("stopping query\n")); + g_mutex_lock (closure->mutex); diff --git a/bnc-164323-random-mark-unread-updated.patch b/bnc-164323-random-mark-unread-updated.patch new file mode 100644 index 0000000..562c376 --- /dev/null +++ b/bnc-164323-random-mark-unread-updated.patch @@ -0,0 +1,31 @@ +Index: camel/providers/groupwise/camel-groupwise-folder.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/groupwise/camel-groupwise-folder.c,v +retrieving revision 1.129 +diff -u -p -r1.129 camel-groupwise-folder.c +--- camel/providers/groupwise/camel-groupwise-folder.c 17 Apr 2006 10:26:16 -0000 1.129 ++++ camel/providers/groupwise/camel-groupwise-folder.c 18 Apr 2006 15:14:40 -0000 +@@ -586,11 +586,7 @@ groupwise_sync (CamelFolder *folder, gbo + EGwConnectionStatus status; + EGwConnection *cnc; + int count, i; +- +- /* Sync-up the (un)read changes before getting updates, +- so that the getFolderList will reflect the most recent changes too */ +- groupwise_sync (folder, FALSE, ex); +- ++ + if (((CamelOfflineStore *) gw_store)->state == CAMEL_OFFLINE_STORE_NETWORK_UNAVAIL || + ((CamelService *)gw_store)->status == CAMEL_SERVICE_DISCONNECTED) { + groupwise_sync_summary (folder, ex); +@@ -896,6 +892,10 @@ groupwise_refresh_folder(CamelFolder *fo + char *time_string = NULL, *t_str = NULL; + struct _folder_update_msg *msg; + gboolean check_all = FALSE; ++ ++ /* Sync-up the (un)read changes before getting updates, ++ so that the getFolderList will reflect the most recent changes too */ ++ groupwise_sync (folder, FALSE, ex); + + if (((CamelOfflineStore *) gw_store)->state == CAMEL_OFFLINE_STORE_NETWORK_UNAVAIL) { + g_warning ("In offline mode. Cannot refresh!!!\n"); diff --git a/bnc-164323-random-mark-unread.patch b/bnc-164323-random-mark-unread.patch new file mode 100644 index 0000000..10f2659 --- /dev/null +++ b/bnc-164323-random-mark-unread.patch @@ -0,0 +1,19 @@ +Index: camel/providers/groupwise/camel-groupwise-folder.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/groupwise/camel-groupwise-folder.c,v +retrieving revision 1.128 +retrieving revision 1.129 +diff -u -r1.128 -r1.129 +--- camel/providers/groupwise/camel-groupwise-folder.c 2006/04/06 09:43:14 1.128 ++++ camel/providers/groupwise/camel-groupwise-folder.c 2006/04/17 10:26:16 1.129 +@@ -587,6 +587,10 @@ + EGwConnection *cnc; + int count, i; + ++ /* Sync-up the (un)read changes before getting updates, ++ so that the getFolderList will reflect the most recent changes too */ ++ groupwise_sync (folder, FALSE, ex); ++ + if (((CamelOfflineStore *) gw_store)->state == CAMEL_OFFLINE_STORE_NETWORK_UNAVAIL || + ((CamelService *)gw_store)->status == CAMEL_SERVICE_DISCONNECTED) { + groupwise_sync_summary (folder, ex); diff --git a/bnc-164367-gw-attachments-appts-throw-error.patch b/bnc-164367-gw-attachments-appts-throw-error.patch new file mode 100644 index 0000000..7a5bf15 --- /dev/null +++ b/bnc-164367-gw-attachments-appts-throw-error.patch @@ -0,0 +1,19 @@ +Index: calendar/backends/groupwise/e-cal-backend-groupwise-utils.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/calendar/backends/groupwise/e-cal-backend-groupwise-utils.c,v +retrieving revision 1.73 +diff -u -p -r1.73 e-cal-backend-groupwise-utils.c +--- calendar/backends/groupwise/e-cal-backend-groupwise-utils.c 9 Dec 2005 11:21:49 -0000 1.73 ++++ calendar/backends/groupwise/e-cal-backend-groupwise-utils.c 11 Apr 2006 09:12:09 -0000 +@@ -300,9 +300,10 @@ e_cal_backend_groupwise_set_attachments_ + /* FIXME the member does not follow the naming convention. + * Should be fixed in e-gw-item*/ + attach_item->contentType = g_strdup (gnome_vfs_get_mime_type (attach_filename_full)); +- g_free (attach_filename_full); + + attach_item->name = g_strdup (filename + strlen(uid) + 1); ++ g_free (attach_filename_full); ++ + /* do a base64 encoding so it can be embedded in a soap + * message */ + encoded_data = soup_base64_encode (file_contents, file_len); diff --git a/bnc-164676-eds-stuck-tight-loop.patch b/bnc-164676-eds-stuck-tight-loop.patch new file mode 100644 index 0000000..55fc825 --- /dev/null +++ b/bnc-164676-eds-stuck-tight-loop.patch @@ -0,0 +1,107 @@ +--- addressbook/backends/groupwise/e-book-backend-groupwise.c.orig 2006-04-16 20:19:03.086611569 +0200 ++++ addressbook/backends/groupwise/e-book-backend-groupwise.c 2006-04-16 20:24:43.271873993 +0200 +@@ -2814,8 +2814,41 @@ update_address_book_deltas (EBookBackend + printf("sequence differs but no changes found !!!\n"); + break; + } +- printf("add_list size:%d\n", g_list_length(add_list)); +- printf("delete_list size:%d\n", g_list_length(delete_list)); ++ if (enable_debug) { ++ printf("add_list size:%d\n", g_list_length(add_list)); ++ printf("delete_list size:%d\n", g_list_length(delete_list)); ++ } ++ ++ for (; delete_list != NULL; delete_list = g_list_next(delete_list)) { ++ const char *id; ++ ++ /* deleted from the server */ ++ contact = e_contact_new (); ++ fill_contact_from_gw_item (contact, ++ E_GW_ITEM (delete_list->data), ++ ebgw->priv->categories_by_id); ++ if (enable_debug) ++ printf("contact email:%s, contact name:%s\n", (char *) e_contact_get(contact, E_CONTACT_EMAIL_1), (char *) e_contact_get(contact, E_CONTACT_GIVEN_NAME)); ++ e_contact_set (contact, ++ E_CONTACT_BOOK_URI, ++ priv->original_uri); ++ id = e_contact_get_const (contact, E_CONTACT_UID); ++ ++ if (e_book_backend_cache_check_contact (ebgw->priv->cache, id)) { ++ contact_num++; ++ ++ if (book_view) { ++ status_msg = g_strdup_printf (_("Updating contacts cache (%d)... "), ++ contact_num); ++ book_view_notify_status (book_view, status_msg); ++ g_free (status_msg); ++ } ++ e_book_backend_cache_remove_contact (ebgw->priv->cache, id); ++ e_book_backend_summary_remove_contact (ebgw->priv->summary, id); ++ } ++ g_object_unref(contact); ++ g_object_unref (delete_list->data); ++ } + + for (; add_list != NULL; add_list = g_list_next(add_list)) { + const char *id; +@@ -2851,34 +2884,6 @@ update_address_book_deltas (EBookBackend + g_object_unref (add_list->data); + } + +- for (; delete_list != NULL; delete_list = g_list_next(delete_list)) { +- const char *id; +- +- /* deleted from the server */ +- contact = e_contact_new (); +- fill_contact_from_gw_item (contact, +- E_GW_ITEM (delete_list->data), +- ebgw->priv->categories_by_id); +- e_contact_set (contact, +- E_CONTACT_BOOK_URI, +- priv->original_uri); +- id = e_contact_get_const (contact, E_CONTACT_UID); +- +- if (e_book_backend_cache_check_contact (ebgw->priv->cache, id)) { +- contact_num++; +- +- if (book_view) { +- status_msg = g_strdup_printf (_("Updating contacts cache (%d)... "), +- contact_num); +- book_view_notify_status (book_view, status_msg); +- g_free (status_msg); +- } +- e_book_backend_cache_remove_contact (ebgw->priv->cache, id); +- e_book_backend_summary_remove_contact (ebgw->priv->summary, id); +- } +- g_object_unref(contact); +- g_object_unref (delete_list->data); +- } + cache_last_sequence += contact_num; + } + +--- servers/groupwise/e-gw-connection.c.orig 2006-04-16 20:19:30.383515263 +0200 ++++ servers/groupwise/e-gw-connection.c 2006-04-16 20:19:40.699856797 +0200 +@@ -764,7 +764,7 @@ e_gw_connection_get_items_delta (EGwConn + SoupSoapMessage *msg; + SoupSoapResponse *response; + EGwConnectionStatus status; +- SoupSoapParameter *param, *subparam; ++ SoupSoapParameter *param, *subparam, *subsubparam; + + g_return_val_if_fail (E_IS_GW_CONNECTION (cnc), E_GW_CONNECTION_STATUS_INVALID_OBJECT); + +@@ -819,11 +819,11 @@ e_gw_connection_get_items_delta (EGwConn + + item = e_gw_item_new_from_soap_parameter (cnc->priv->user_email, container, subparam); + +- subparam = soup_soap_parameter_get_first_child_by_name(subparam, "sync"); +- if (subparam) { ++ subsubparam = soup_soap_parameter_get_first_child_by_name(subparam, "sync"); ++ if (subsubparam) { + char *value; + +- value = soup_soap_parameter_get_string_value (subparam); ++ value = soup_soap_parameter_get_string_value (subsubparam); + if (!strcmp (value, "add") || !strcmp (value, "update")) { + *add_list = g_list_append (*add_list, item); + } else if (!strcmp (value, "delete")) { diff --git a/bnc-165714-eds-delegate-multiple-events.diff b/bnc-165714-eds-delegate-multiple-events.diff new file mode 100644 index 0000000..59b3f6a --- /dev/null +++ b/bnc-165714-eds-delegate-multiple-events.diff @@ -0,0 +1,33 @@ +Index: calendar/backends/groupwise/e-cal-backend-groupwise.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/calendar/backends/groupwise/e-cal-backend-groupwise.c,v +retrieving revision 1.173.2.1 +diff -u -p -r1.173.2.1 e-cal-backend-groupwise.c +--- calendar/backends/groupwise/e-cal-backend-groupwise.c 6 Apr 2006 08:18:28 -0000 1.173.2.1 ++++ calendar/backends/groupwise/e-cal-backend-groupwise.c 21 Apr 2006 06:23:23 -0000 +@@ -1814,12 +1814,11 @@ e_cal_backend_groupwise_modify_object (E + in_offline (cbgw); + return GNOME_Evolution_Calendar_RepositoryOffline; + } +- ++ + /* check the component for validity */ + icalcomp = icalparser_parse_string (calobj); + if (!icalcomp) + return GNOME_Evolution_Calendar_InvalidObject; +- + comp = e_cal_component_new (); + e_cal_component_set_icalcomponent (comp, icalcomp); + e_cal_component_get_uid (comp, &uid); +@@ -1844,9 +1843,8 @@ e_cal_backend_groupwise_modify_object (E + + if (mod == CALOBJ_MOD_ALL && e_cal_component_is_instance (comp)) { + recur_key = uid; +- } else { +- id = e_gw_item_get_id (item); +- } ++ } ++ id = e_gw_item_get_id (item); + + status = e_gw_connection_delegate_request (priv->cnc, item, id, NULL, NULL, recur_key); + diff --git a/bnc-167330-default-GW-alarms.patch b/bnc-167330-default-GW-alarms.patch new file mode 100644 index 0000000..db96581 --- /dev/null +++ b/bnc-167330-default-GW-alarms.patch @@ -0,0 +1,128 @@ +Index: calendar/ChangeLog +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/calendar/ChangeLog,v +retrieving revision 1.568.2.16 +diff -u -p -r1.568.2.16 ChangeLog +--- calendar/ChangeLog 14 Jun 2006 11:02:55 -0000 1.568.2.16 ++++ calendar/ChangeLog 17 Jul 2006 06:05:27 -0000 +@@ -1,3 +1,12 @@ ++2006-07-17 Harish Krishnaswamy ++ ++ * backends/groupwise/e-cal-backend-groupwise-utils.c: ++ (set_default_alarms), (e_gw_item_to_cal_component): ++ * backends/groupwise/e-cal-backend-groupwise-utils.h: ++ Apply default alarm client preference to GW events if ++ the event does not already have one. Fixes Bug ++ #167330 on bugzilla.novell.com. ++ + 2006-06-14 Wang Xin + + Fixes #344253 +Index: calendar/backends/groupwise/e-cal-backend-groupwise-utils.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/calendar/backends/groupwise/e-cal-backend-groupwise-utils.c,v +retrieving revision 1.73 +diff -u -p -r1.73 e-cal-backend-groupwise-utils.c +--- calendar/backends/groupwise/e-cal-backend-groupwise-utils.c 9 Dec 2005 11:21:49 -0000 1.73 ++++ calendar/backends/groupwise/e-cal-backend-groupwise-utils.c 17 Jul 2006 06:05:27 -0000 +@@ -803,6 +803,67 @@ set_attachments_to_cal_component (EGwIte + + } + ++static void ++set_default_alarms (ECalComponent *comp) ++{ ++ ++ GConfClient *gconf = gconf_client_get_default (); ++ ++ if (gconf_client_get_bool (gconf, CALENDAR_CONFIG_DEFAULT_REMINDER, NULL)) { ++ ++ ECalComponentAlarm *acomp; ++ int interval; ++ char * units; ++ enum { ++ DAYS, ++ HOURS, ++ MINUTES ++ } duration; ++ ECalComponentAlarmTrigger trigger; ++ ++ interval = gconf_client_get_int (gconf, CALENDAR_CONFIG_DEFAULT_REMINDER_INTERVAL, NULL); ++ units = gconf_client_get_string (gconf, CALENDAR_CONFIG_DEFAULT_REMINDER_UNITS, NULL); ++ g_object_unref (gconf); ++ ++ if (units && !strcmp (units, "days")) ++ duration = DAYS; ++ else if (units && !strcmp (units, "hours")) ++ duration = HOURS; ++ else ++ duration = MINUTES; ++ g_free (units); ++ acomp = e_cal_component_alarm_new (); ++ ++ e_cal_component_alarm_set_action (acomp, E_CAL_COMPONENT_ALARM_DISPLAY); ++ ++ trigger.type = E_CAL_COMPONENT_ALARM_TRIGGER_RELATIVE_START; ++ memset (&trigger.u.rel_duration, 0, sizeof (trigger.u.rel_duration)); ++ ++ trigger.u.rel_duration.is_neg = TRUE; ++ ++ switch (duration) { ++ case MINUTES: ++ trigger.u.rel_duration.minutes = interval; ++ break; ++ case HOURS: ++ trigger.u.rel_duration.hours = interval; ++ break; ++ case DAYS: ++ trigger.u.rel_duration.days = interval; ++ break; ++ default: ++ e_cal_component_alarm_free (acomp); ++ return; ++ } ++ ++ e_cal_component_alarm_set_trigger (acomp, trigger); ++ e_cal_component_add_alarm (comp, acomp); ++ ++ e_cal_component_alarm_free (acomp); ++ } ++} ++ ++ + ECalComponent * + e_gw_item_to_cal_component (EGwItem *item, ECalBackendGroupwise *cbgw) + { +@@ -1111,9 +1172,9 @@ e_gw_item_to_cal_component (EGwItem *ite + trigger.u.rel_duration = icaldurationtype_from_int (alarm_duration); + e_cal_component_alarm_set_trigger (alarm, trigger); + e_cal_component_add_alarm (comp, alarm); +- } + +- ++ } else ++ set_default_alarms (comp); + + break; + case E_GW_ITEM_TYPE_TASK : +Index: calendar/backends/groupwise/e-cal-backend-groupwise-utils.h +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/calendar/backends/groupwise/e-cal-backend-groupwise-utils.h,v +retrieving revision 1.18 +diff -u -p -r1.18 e-cal-backend-groupwise-utils.h +--- calendar/backends/groupwise/e-cal-backend-groupwise-utils.h 11 Oct 2005 07:56:18 -0000 1.18 ++++ calendar/backends/groupwise/e-cal-backend-groupwise-utils.h 17 Jul 2006 06:05:27 -0000 +@@ -33,6 +33,13 @@ G_BEGIN_DECLS + #define GW_EVENT_TYPE_ID "@4:" + #define GW_TODO_TYPE_ID "@3:" + ++ ++/* Default reminder */ ++#define CALENDAR_CONFIG_PREFIX "/apps/evolution/calendar" ++#define CALENDAR_CONFIG_DEFAULT_REMINDER CALENDAR_CONFIG_PREFIX "/other/use_default_reminder" ++#define CALENDAR_CONFIG_DEFAULT_REMINDER_INTERVAL CALENDAR_CONFIG_PREFIX "/other/default_reminder_interval" ++#define CALENDAR_CONFIG_DEFAULT_REMINDER_UNITS CALENDAR_CONFIG_PREFIX "/other/default_reminder_units" ++ + /* + * Items management + */ diff --git a/bnc-167638.patch b/bnc-167638.patch new file mode 100644 index 0000000..b82454a --- /dev/null +++ b/bnc-167638.patch @@ -0,0 +1,95 @@ +Index: camel/camel.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/camel.c,v +retrieving revision 1.56 +diff -u -r1.56 camel/camel.c +--- camel/camel.c 6 Dec 2005 04:21:56 -0000 1.56 ++++ camel/camel.c 20 Apr 2006 21:12:40 -0000 +@@ -44,6 +44,8 @@ + + static int initialised = FALSE; + ++int camel_application_is_exiting = FALSE; ++ + static void + camel_shutdown (void) + { +Index: camel/providers/imap/camel-imap-folder.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/imap/camel-imap-folder.c,v +retrieving revision 1.358 +diff -u -r1.358 camel/camel-imap-folder.c +--- camel/providers/imap/camel-imap-folder.c 10 Jan 2006 07:56:47 -0000 1.358 ++++ camel/providers/imap/camel-imap-folder.c 20 Apr 2006 21:12:40 -0000 +@@ -607,6 +607,7 @@ + { + CamelImapFolder *imap_folder = CAMEL_IMAP_FOLDER (folder); + CamelImapStore *store = CAMEL_IMAP_STORE (folder->parent_store); ++ extern int camel_application_is_exiting; + struct { + char *uid; + guint32 flags; +@@ -619,7 +620,10 @@ + GArray *removed; + gboolean ok; + CamelFolderChangeInfo *changes = NULL; +- ++ ++ if (camel_application_is_exiting) ++ return; ++ + CAMEL_SERVICE_ASSERT_LOCKED (store, connect_lock); + imap_folder->need_rescan = FALSE; + +@@ -2617,6 +2621,7 @@ + GArray *expunged, CamelException *ex) + { + CamelImapFolder *imap_folder = CAMEL_IMAP_FOLDER (folder); ++ extern int camel_application_is_exiting; + CamelFolderChangeInfo *changes; + CamelMessageInfo *info; + int len; +@@ -2646,7 +2651,7 @@ + } + + len = camel_folder_summary_count (folder->summary); +- if (exists > len) ++ if (exists > len && !camel_application_is_exiting) + imap_update_summary (folder, exists, changes, ex); + + if (camel_folder_change_info_changed (changes)) +Index: camel/providers/groupwise/camel-groupwise-folder.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/groupwise/camel-groupwise-folder.c,v +retrieving revision 1.130 +diff -u -p -r1.130 camel-groupwise-folder.c +--- camel/providers/groupwise/camel-groupwise-folder.c 18 Apr 2006 15:15:30 -0000 1.130 ++++ camel/providers/groupwise/camel-groupwise-folder.c 21 Apr 2006 11:18:22 -0000 +@@ -59,7 +59,7 @@ + #define ADD_JUNK_ENTRY 1 + #define REMOVE_JUNK_ENTRY -1 + #define JUNK_FOLDER "Junk Mail" +-#define READ_CURSOR_MAX_IDS 500 ++#define READ_CURSOR_MAX_IDS 50 + #define MAX_ATTACHMENT_SIZE 1*1024*1024 /*In bytes*/ + + static CamelOfflineFolderClass *parent_class = NULL; +@@ -749,6 +749,9 @@ struct _folder_update_msg { + static void + update_update (CamelSession *session, CamelSessionThreadMsg *msg) + { ++ ++ extern int camel_application_is_exiting; ++ + struct _folder_update_msg *m = (struct _folder_update_msg *)msg; + EGwConnectionStatus status; + CamelException *ex = NULL; +@@ -767,7 +770,7 @@ update_update (CamelSession *session, Ca + done = FALSE; + m->slist = NULL; + +- while (!done) { ++ while (!done && !camel_application_is_exiting) { + item_list = NULL; + status = e_gw_connection_get_all_mail_uids (m->cnc, m->container_id, cursor, FALSE, READ_CURSOR_MAX_IDS, position, &item_list); + if (status != E_GW_CONNECTION_STATUS_OK) { diff --git a/bnc-169034-eds-pub-folder-download.diff b/bnc-169034-eds-pub-folder-download.diff new file mode 100644 index 0000000..46bbd38 --- /dev/null +++ b/bnc-169034-eds-pub-folder-download.diff @@ -0,0 +1,31 @@ +Index: servers/exchange/storage/exchange-account.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/servers/exchange/storage/exchange-account.c,v +retrieving revision 1.31 +diff -u -p -r1.31 exchange-account.c +--- servers/exchange/storage/exchange-account.c 20 Apr 2006 13:04:12 -0000 1.31 ++++ servers/exchange/storage/exchange-account.c 2 May 2006 11:22:10 -0000 +@@ -1272,7 +1272,7 @@ setup_account_hierarchies (ExchangeAccou + account->priv->identity_name, + account->priv->identity_email, + account->priv->source_uri, +- FALSE); ++ TRUE); + setup_hierarchy (account, hier); + g_free (phys_uri_prefix); + +Index: servers/exchange/storage/exchange-hierarchy-favorites.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/servers/exchange/storage/exchange-hierarchy-favorites.c,v +retrieving revision 1.7 +diff -u -p -r1.7 exchange-hierarchy-favorites.c +--- servers/exchange/storage/exchange-hierarchy-favorites.c 6 Feb 2006 08:01:53 -0000 1.7 ++++ servers/exchange/storage/exchange-hierarchy-favorites.c 2 May 2006 11:27:16 -0000 +@@ -336,6 +336,6 @@ exchange_hierarchy_favorites_new (Exchan + public_uri, + owner_name, owner_email, + source_uri, +- FALSE); ++ TRUE); + return hier; + } diff --git a/bnc-169997-eds-infinite-loop.diff b/bnc-169997-eds-infinite-loop.diff new file mode 100644 index 0000000..a0d8b47 --- /dev/null +++ b/bnc-169997-eds-infinite-loop.diff @@ -0,0 +1,29 @@ +--- addressbook/backends/groupwise/e-book-backend-groupwise.c.orig 2006-05-11 12:21:57.361493158 +0200 ++++ addressbook/backends/groupwise/e-book-backend-groupwise.c 2006-05-11 12:15:45.055028496 +0200 +@@ -2883,7 +2883,6 @@ update_address_book_deltas (EBookBackend + + if (cache_last_sequence != server_last_sequence) { + +- while (cache_last_sequence < server_last_sequence) { + if (enable_debug) { + printf("cache_last_sequence:%lf, server_last_sequence:%lf\n", cache_last_sequence, server_last_sequence); + printf("Calling get_items_delta\n"); +@@ -2897,7 +2896,8 @@ update_address_book_deltas (EBookBackend + if (add_list == NULL && delete_list == NULL) { + if (enable_debug) + printf("sequence differs but no changes found !!!\n"); +- break; ++ g_mutex_unlock (priv->update_mutex); ++ return TRUE; + } + sync_required = TRUE; + if (enable_debug) { +@@ -2976,7 +2976,7 @@ update_address_book_deltas (EBookBackend + g_object_unref (add_list->data); + } + cache_last_sequence += contact_num; +- } ++ + + /* cache is updated, now adding the sequence information to the cache */ + diff --git a/bnc-170052-eds-crash.patch b/bnc-170052-eds-crash.patch new file mode 100644 index 0000000..3c7d89c --- /dev/null +++ b/bnc-170052-eds-crash.patch @@ -0,0 +1,184 @@ +--- addressbook/backends/groupwise/e-book-backend-groupwise.c 2006-06-09 15:05:45.000000000 +0530 ++++ addressbook/backends/groupwise/e-book-backend-groupwise-new.c 2006-06-09 14:35:19.000000000 +0530 +@@ -73,12 +73,12 @@ struct _EBookBackendGroupwisePrivate { + int mode; + int cache_timeout; + EBookBackendSummary *summary; ++ GMutex *update_cache_mutex; + GMutex *update_mutex; + DB *file_db; + DB_ENV *env; + /* for future use */ + void *reserved1; +- void *reserved2; + }; + + static GStaticMutex global_env_lock = G_STATIC_MUTEX_INIT; +@@ -1170,6 +1170,7 @@ e_book_backend_groupwise_create_contact + e_contact_set (contact, E_CONTACT_UID, id); + g_free (id); + e_book_backend_db_cache_add_contact (egwb->priv->file_db, contact); ++ egwb->priv->file_db->sync(egwb->priv->file_db, 0); + e_book_backend_summary_add_contact (egwb->priv->summary, contact); + e_data_book_respond_create(book, opid, GNOME_Evolution_Addressbook_Success, contact); + +@@ -1223,6 +1224,7 @@ e_book_backend_groupwise_remove_contacts + e_book_backend_db_cache_remove_contact (ebgw->priv->file_db, id); + e_book_backend_summary_remove_contact (ebgw->priv->summary, id); + } ++ ebgw->priv->file_db->sync(ebgw->priv->file_db, 0); + e_data_book_respond_remove_contacts (book, opid, + GNOME_Evolution_Addressbook_Success, deleted_ids); + return; +@@ -1358,6 +1360,7 @@ e_book_backend_groupwise_modify_contact + e_book_backend_db_cache_remove_contact (egwb->priv->file_db, id); + e_book_backend_summary_remove_contact (egwb->priv->summary, id); + e_book_backend_db_cache_add_contact (egwb->priv->file_db, contact); ++ egwb->priv->file_db->sync(egwb->priv->file_db, 0); + e_book_backend_summary_add_contact (egwb->priv->summary, contact); + } + else +@@ -2691,6 +2694,8 @@ update_cache (EBookBackendGroupwise *ebg + if (!ebgw) + return FALSE; + ++ g_mutex_lock (ebgw->priv->update_cache_mutex); ++ + if (enable_debug) { + g_get_current_time(&start); + printf("updating cache for %s\n", ebgw->priv->book_name); +@@ -2729,6 +2734,7 @@ update_cache (EBookBackendGroupwise *ebg + bonobo_object_unref (book_view); + if (enable_debug) + printf("No connection with the server \n"); ++ g_mutex_unlock (ebgw->priv->update_cache_mutex); + return FALSE; + } + +@@ -2738,6 +2744,7 @@ update_cache (EBookBackendGroupwise *ebg + contact = e_contact_new (); + fill_contact_from_gw_item (contact, E_GW_ITEM (gw_items->data), + ebgw->priv->categories_by_id); ++ + e_contact_set (contact, E_CONTACT_BOOK_URI, ebgw->priv->original_uri); + id = e_contact_get_const (contact, E_CONTACT_UID); + +@@ -2782,6 +2789,7 @@ update_cache (EBookBackendGroupwise *ebg + printf("updating the cache for %s complated in %ld.%03ld seconds for %d contacts\n", + ebgw->priv->book_name, diff / 1000, diff % 1000, contact_num); + } ++ g_mutex_unlock (ebgw->priv->update_cache_mutex); + return FALSE; + } + +@@ -2797,6 +2805,7 @@ update_address_book_deltas (EBookBackend + EContact *contact; + EDataBookView *book_view; + GroupwiseBackendSearchClosure *closure; ++ EGwItem *item; + + if (!ebgw) + return FALSE; +@@ -2827,6 +2836,9 @@ update_address_book_deltas (EBookBackend + if (enable_debug) + printf ("sequence is reset, rebuilding cache...\n"); + build_cache (ebgw); ++ add_sequence_to_cache (priv->file_db, server_first_sequence, ++ server_last_sequence, server_last_po_rebuild_time); ++ ebgw->priv->file_db->sync (ebgw->priv->file_db, 0); + g_mutex_unlock (priv->update_mutex); + return TRUE; + } +@@ -2844,6 +2856,7 @@ update_address_book_deltas (EBookBackend + add_sequence_to_cache (priv->file_db, server_first_sequence, + server_last_sequence, server_last_po_rebuild_time); + ebgw->priv->file_db->sync (ebgw->priv->file_db, 0); ++ g_mutex_unlock (priv->update_mutex); + return TRUE; + } + +@@ -2896,6 +2909,8 @@ update_address_book_deltas (EBookBackend + if (add_list == NULL && delete_list == NULL) { + if (enable_debug) + printf("sequence differs but no changes found !!!\n"); ++ add_sequence_to_cache (priv->file_db, server_first_sequence, ++ server_last_sequence, server_last_po_rebuild_time); + g_mutex_unlock (priv->update_mutex); + return TRUE; + } +@@ -2945,6 +2960,20 @@ update_address_book_deltas (EBookBackend + E_GW_ITEM (add_list->data), + ebgw->priv->categories_by_id); + ++ /* When a distribution list is modified the server sends me a delete and add response. ++ But it doesnt send me the members, so i have to explicitly request the server for the members of the distribution list */ ++ ++ if (e_contact_get (contact, E_CONTACT_IS_LIST)) { ++ if(enable_debug) ++ printf ("Contact List modified fetching the members of the contact list\n"); ++ ++ status = e_gw_connection_get_item (ebgw->priv->cnc, ebgw->priv->container_id, e_contact_get (contact, E_CONTACT_UID), "name email default members", &item); ++ g_object_unref (contact); ++ contact = e_contact_new (); ++ fill_contact_from_gw_item (contact, item, ebgw->priv->categories_by_id); ++ g_object_unref (item); ++ } ++ + if (enable_debug) + printf("contact email:%s, contact name:%s\n", (char *)e_contact_get(contact, E_CONTACT_EMAIL_1),(char *) e_contact_get(contact, E_CONTACT_GIVEN_NAME)); + e_contact_set (contact, +@@ -2977,7 +3006,6 @@ update_address_book_deltas (EBookBackend + } + cache_last_sequence += contact_num; + +- + /* cache is updated, now adding the sequence information to the cache */ + + add_sequence_to_cache (priv->file_db, server_first_sequence, +@@ -3054,11 +3082,15 @@ e_book_backend_groupwise_authenticate_us + const char *cache_refresh_interval_set; + int cache_refresh_interval = CACHE_REFRESH_INTERVAL; + +- if (enable_debug) +- printf ("authenticate user ............\n"); + ebgw = E_BOOK_BACKEND_GROUPWISE (backend); + priv = ebgw->priv; + ++ if (enable_debug) { ++ printf ("authenticate user ............\n"); ++ if(priv->book_name) ++ printf("book_name:%s\n", priv->book_name); ++ } ++ + + switch (ebgw->priv->mode) { + case GNOME_Evolution_Addressbook_MODE_LOCAL: +@@ -3094,9 +3126,6 @@ e_book_backend_groupwise_authenticate_us + + id = NULL; + is_writable = FALSE; +- if (enable_debug) +- if(priv->book_name) +- printf("book_name:%s\n", priv->book_name); + status = e_gw_connection_get_address_book_id (priv->cnc, priv->book_name, &id, &is_writable); + if (status == E_GW_CONNECTION_STATUS_INVALID_CONNECTION) + status = e_gw_connection_get_address_book_id (priv->cnc, priv->book_name, &id, &is_writable); +@@ -3632,6 +3661,8 @@ e_book_backend_groupwise_dispose (GObjec + } + if (bgw->priv->update_mutex) + g_mutex_free (bgw->priv->update_mutex); ++ if (bgw->priv->update_cache_mutex) ++ g_mutex_free (bgw->priv->update_cache_mutex); + + g_free (bgw->priv); + bgw->priv = NULL; +@@ -3690,8 +3721,8 @@ e_book_backend_groupwise_init (EBookBack + priv->original_uri = NULL; + priv->cache_timeout = 0; + priv->update_mutex = g_mutex_new(); ++ priv->update_cache_mutex = g_mutex_new (); + priv->reserved1 = NULL; +- priv->reserved2 = NULL; + backend->priv = priv; + + if (g_getenv ("GROUPWISE_DEBUG")) { diff --git a/bnc-173454.patch b/bnc-173454.patch new file mode 100644 index 0000000..834414e --- /dev/null +++ b/bnc-173454.patch @@ -0,0 +1,437 @@ +Index: camel/providers/groupwise/camel-groupwise-folder.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/groupwise/camel-groupwise-folder.c,v +retrieving revision 1.114.2.11 +diff -u -r1.114.2.11 camel/providers/groupwise/camel-groupwise-folder.c +--- camel/providers/groupwise/camel-groupwise-folder.c 24 Apr 2006 09:59:12 -0000 1.114.2.11 ++++ camel/providers/groupwise/camel-groupwise-folder.c 15 May 2006 18:01:10 -0000 +@@ -1777,7 +1777,6 @@ + CamelGroupwiseStore *gw_store= CAMEL_GROUPWISE_STORE(folder->parent_store); + CamelGroupwiseStorePrivate *priv = gw_store->priv; + CamelOfflineStore *offline = (CamelOfflineStore *) folder->parent_store; +- CamelAddress *recipients; + EGwConnectionStatus status; + EGwConnection *cnc; + EGwItem *item; +@@ -1804,14 +1803,8 @@ + CAMEL_SERVICE_LOCK (folder->parent_store, connect_lock); + /*Get the container id*/ + container_id = camel_groupwise_store_container_id_lookup (gw_store, folder->full_name) ; +- +- /* FIXME Separate To/CC/BCC? */ +- recipients = CAMEL_ADDRESS (camel_internet_address_new ()); +- camel_address_cat (recipients, CAMEL_ADDRESS (camel_mime_message_get_recipients (message, CAMEL_RECIPIENT_TYPE_TO))); +- camel_address_cat (recipients, CAMEL_ADDRESS (camel_mime_message_get_recipients (message, CAMEL_RECIPIENT_TYPE_CC))); +- camel_address_cat (recipients, CAMEL_ADDRESS (camel_mime_message_get_recipients (message, CAMEL_RECIPIENT_TYPE_BCC))); +- +- item = camel_groupwise_util_item_from_message (cnc, message, CAMEL_ADDRESS (message->from), recipients); ++ ++ item = camel_groupwise_util_item_from_message (cnc, message, CAMEL_ADDRESS (message->from)); + /*Set the source*/ + if (!strcmp (folder->name, RECEIVED)) + e_gw_item_set_source (item, "received"); +Index: camel/providers/groupwise/camel-groupwise-transport.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/groupwise/camel-groupwise-transport.c,v +retrieving revision 1.27 +diff -u -r1.27 camel/providers/groupwise/camel-groupwise-transport.c +--- camel/providers/groupwise/camel-groupwise-transport.c 23 Jan 2006 10:37:24 -0000 1.27 ++++ camel/providers/groupwise/camel-groupwise-transport.c 15 May 2006 18:01:10 -0000 +@@ -180,7 +180,7 @@ + } + + +- item = camel_groupwise_util_item_from_message (cnc, message, from, recipients); ++ item = camel_groupwise_util_item_from_message (cnc, message, from); + + reply_request = (char *)camel_medium_get_header (CAMEL_MEDIUM (message), "In-Reply-To"); + if (reply_request) { +Index: camel/providers/groupwise/camel-groupwise-utils.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/groupwise/camel-groupwise-utils.c,v +retrieving revision 1.29.2.1 +diff -u -r1.29.2.1 camel/providers/groupwise/camel-groupwise-utils.c +--- camel/providers/groupwise/camel-groupwise-utils.c 21 Mar 2006 10:41:51 -0000 1.29.2.1 ++++ camel/providers/groupwise/camel-groupwise-utils.c 15 May 2006 18:01:10 -0000 +@@ -35,6 +35,8 @@ + #include "camel/camel-multipart.h" + #include "camel/camel-service.h" + #include "camel/camel-stream-mem.h" ++#include "camel/camel-stream-filter.h" ++#include "camel/camel-mime-filter-charset.h" + + #include "camel-groupwise-utils.h" + +@@ -261,7 +263,7 @@ + return 0; + } + +-GSList * ++static GSList * + add_recipients(GSList *recipient_list, CamelAddress *recipients, int recipient_type) + { + int total_add,i; +@@ -278,42 +280,31 @@ + recipient->display_name = g_strdup (name); + recipient->type = recipient_type; + recipient->status = E_GW_ITEM_STAT_NONE; +- recipient_list= g_slist_append (recipient_list, recipient); ++ recipient_list = g_slist_prepend (recipient_list, recipient); + } + } + return recipient_list; + } + + static void +-send_as_attachment (EGwConnection *cnc, EGwItem *item, CamelStreamMem *content, char *buffer, CamelContentType *type, CamelDataWrapper *dw, const char *filename, const char *encoding, const char *cid, GSList **attach_list) ++send_as_attachment (EGwConnection *cnc, EGwItem *item, CamelStreamMem *content, CamelContentType *type, CamelDataWrapper *dw, const char *filename, const char *cid, GSList **attach_list) + { + EGwItemLinkInfo *info = NULL; + EGwConnectionStatus status; + EGwItemAttachment *attachment; + EGwItem *temp_item; +- +- int len; +- len = content->buffer->len; +- ++ + attachment = g_new0 (EGwItemAttachment, 1); +- attachment->contentType = g_strdup_printf ("%s/%s", type->type, type->subtype); +- +- if (cid) { +- gchar **t; +- //strip_lt_gt ((char **)&cid, 2, 3); +- t = g_strsplit_set (cid,"<>",-1); +- if (!t[1]) +- attachment->contentid = g_strdup (cid); +- else +- attachment->contentid = g_strdup (t[1]); +- g_strfreev (t); +- } +- ++ attachment->contentType = camel_content_type_simple (type); ++ ++ if (cid) ++ attachment->contentid = camel_header_contentid_decode (cid); ++ + if (filename) { +- if (!strcmp (attachment->contentType, "application/pgp-signature")) { ++ if (camel_content_type_is (type, "application", "pgp-signature")) { + char *temp_str; + int temp_len; +- temp_str = soup_base64_encode (buffer, len); ++ temp_str = soup_base64_encode (content->buffer->data, content->buffer->len); + temp_len = strlen (temp_str); + attachment->data = g_strdup (temp_str); + attachment->size = temp_len; +@@ -321,23 +312,16 @@ + temp_str = NULL; + temp_len = 0; + } else { +- if (strlen(encoding) > 0) { +- attachment->data = g_malloc0 (content->buffer->len+1); +- attachment->data = memcpy (attachment->data, +- content->buffer->data, +- content->buffer->len); +- attachment->size = content->buffer->len; +- } else { +- attachment->data = soup_base64_encode(content->buffer->data, content->buffer->len); +- attachment->size = strlen (attachment->data); +- } ++ attachment->data = soup_base64_encode(content->buffer->data, content->buffer->len); ++ attachment->size = strlen (attachment->data); + } + } else { + char *temp_str; + int temp_len; + if (!strcmp (attachment->contentType, "multipart/digest")) { ++ /* FIXME? */ + } else { +- temp_str = soup_base64_encode (buffer, len); ++ temp_str = soup_base64_encode (content->buffer->data, content->buffer->len); + temp_len = strlen (temp_str); + attachment->data = g_strdup (temp_str); + attachment->size = temp_len; +@@ -347,28 +331,30 @@ + } + } + +- if (!strcmp (attachment->contentType, "text/html") || !(strcmp (attachment->contentType, "multipart/alternative"))) { ++ if (camel_content_type_is (type, "text", "html") || camel_content_type_is (type, "multipart", "alternative")) { + if (!filename) + filename = "text.htm"; +- if (!(strcmp (attachment->contentType, "multipart/alternative"))) { ++ if (camel_content_type_is (type, "multipart", "alternative")) { ++ /* FIXME: this just feels so wrong... */ + g_free (attachment->contentType); + attachment->contentType = g_strdup ("text/html"); + } + } + + attachment->name = g_strdup (filename ? filename : ""); +- if (!g_ascii_strncasecmp (attachment->contentType, RFC_822, strlen (RFC_822))) { +- char *temp_id = NULL, *id = NULL; +- temp_id = (char *)camel_medium_get_header (CAMEL_MEDIUM ((CamelMimeMessage *)dw), "Message-Id"); +- int len = strlen (temp_id); +- +- id = (char *)g_malloc0 (len-1); +- id = memcpy(id, temp_id+2, len-3); +- +- status = e_gw_connection_forward_item (cnc, id, NULL, TRUE, &temp_item); +- if (status != E_GW_CONNECTION_STATUS_OK) ++ if (camel_content_type_is (type, "message", "rfc822")) { ++ const char *message_id; ++ char *msgid; ++ ++ message_id = camel_medium_get_header (CAMEL_MEDIUM (dw), "Message-Id"); ++ msgid = camel_header_msgid_decode (message_id); ++ ++ status = e_gw_connection_forward_item (cnc, msgid, NULL, TRUE, &temp_item); ++ g_free (msgid); ++ ++ if (status != E_GW_CONNECTION_STATUS_OK) { + g_warning ("Could not send a forwardRequest...continuing without!!\n"); +- else { ++ } else { + GSList *attach_list = e_gw_item_get_attach_id_list (temp_item); + EGwItemAttachment *temp_attach = (EGwItemAttachment *)attach_list->data; + attachment->id = g_strdup (temp_attach->id); +@@ -383,41 +369,36 @@ + info = e_gw_item_get_link_info (temp_item); + e_gw_item_set_link_info (item, info); + } +- //attachment->id = g_strdup (id); +- g_free (id); + } + + *attach_list = g_slist_append (*attach_list, attachment); + } + + EGwItem * +-camel_groupwise_util_item_from_message (EGwConnection *cnc, CamelMimeMessage *message, CamelAddress *from, CamelAddress *recipients) ++camel_groupwise_util_item_from_message (EGwConnection *cnc, CamelMimeMessage *message, CamelAddress *from) + { + EGwItem *item; + EGwItemOrganizer *org = g_new0 (EGwItemOrganizer, 1); +- + const char *display_name = NULL, *email = NULL; + char *send_options = NULL; + CamelMultipart *mp; +- GSList *recipient_list = NULL, *attach_list = NULL; ++ GSList *recipient_list = NULL, *attach_list = NULL; ++ CamelAddress *recipients; + + /*Egroupwise item*/ + item = e_gw_item_new_empty (); + + /*populate recipient list*/ +- camel_address_remove(recipients,-1); +- camel_address_cat (recipients, CAMEL_ADDRESS (camel_mime_message_get_recipients (message, CAMEL_RECIPIENT_TYPE_TO))); ++ recipients = CAMEL_ADDRESS (camel_mime_message_get_recipients (message, CAMEL_RECIPIENT_TYPE_TO)); + recipient_list=add_recipients(recipient_list,recipients,E_GW_ITEM_RECIPIENT_TO); +- +- camel_address_remove(recipients,-1); +- camel_address_cat (recipients, CAMEL_ADDRESS (camel_mime_message_get_recipients (message, CAMEL_RECIPIENT_TYPE_CC))); ++ ++ recipients = CAMEL_ADDRESS (camel_mime_message_get_recipients (message, CAMEL_RECIPIENT_TYPE_CC)); + recipient_list=add_recipients(recipient_list,recipients,E_GW_ITEM_RECIPIENT_CC); + +- camel_address_remove(recipients,-1); +- camel_address_cat (recipients, CAMEL_ADDRESS (camel_mime_message_get_recipients (message, CAMEL_RECIPIENT_TYPE_BCC))); ++ recipients = CAMEL_ADDRESS (camel_mime_message_get_recipients (message, CAMEL_RECIPIENT_TYPE_BCC)); + recipient_list=add_recipients(recipient_list,recipients,E_GW_ITEM_RECIPIENT_BC); +- +- ++ recipient_list = g_slist_reverse (recipient_list); ++ + /** Get the mime parts from CamelMimemessge **/ + mp = (CamelMultipart *)camel_medium_get_content_object (CAMEL_MEDIUM (message)); + if(!mp) { +@@ -434,25 +415,43 @@ + CamelStreamMem *content = (CamelStreamMem *)camel_stream_mem_new (); + CamelDataWrapper *dw = NULL; + CamelContentType *type; +- char *buffer = NULL; +- char *content_type = NULL; +- ++ + dw = camel_medium_get_content_object (CAMEL_MEDIUM (message)); + type = camel_mime_part_get_content_type((CamelMimePart *)message); +- content_type = g_strdup_printf ("%s/%s", type->type, type->subtype); +- camel_data_wrapper_write_to_stream(dw, (CamelStream *)content); +- buffer = g_malloc0 (content->buffer->len+1); +- buffer = memcpy (buffer, content->buffer->data, content->buffer->len); + +- if (!strcmp(content_type, "text/plain")) { +- e_gw_item_set_content_type (item, content_type); +- e_gw_item_set_message (item, buffer); ++ if (camel_content_type_is (type, "text", "plain")) { ++ CamelStream *filtered_stream; ++ CamelMimeFilter *filter; ++ const char *charset; ++ char *content_type; ++ ++ content_type = camel_content_type_simple (type); ++ e_gw_item_set_content_type (item, content_type); ++ g_free (content_type); ++ ++ charset = camel_content_type_param (type, "charset"); ++ if (charset && g_ascii_strcasecmp (charset, "US-ASCII") && g_ascii_strcasecmp (charset, "UTF-8")) { ++ filter = camel_mime_filter_charset_new_convert (charset, "UTF-8"); ++ filtered_stream = camel_stream_filter_new_with_stream ((CamelStream *) content); ++ camel_stream_filter_add ((CamelStreamFilter *) filtered_stream, filter); ++ camel_object_unref (filter); ++ } else { ++ /* US-ASCII or UTF-8 */ ++ filtered_stream = (CamelStream *) content; ++ camel_object_ref (content); ++ } ++ ++ camel_data_wrapper_decode_to_stream (dw, filtered_stream); ++ camel_stream_flush (filtered_stream); ++ camel_object_unref (filtered_stream); ++ ++ camel_stream_write ((CamelStream *) content, "", 1); ++ e_gw_item_set_message (item, content->buffer->data); + } else { +- send_as_attachment (cnc, item, content, buffer, type, dw, NULL, "", NULL, &attach_list); ++ camel_data_wrapper_decode_to_stream (dw, (CamelStream *) content); ++ send_as_attachment (cnc, item, content, type, dw, NULL, NULL, &attach_list); + } +- +- g_free (buffer); +- g_free (content_type); ++ + camel_object_unref (content); + } + /*Populate EGwItem*/ +@@ -589,10 +588,7 @@ + CamelStreamMem *content = (CamelStreamMem *)camel_stream_mem_new (); + CamelDataWrapper *dw = NULL; + const char *disposition, *filename; +- char *buffer = NULL; +- char *mime_type = NULL; + const char *content_id = NULL; +- char *encoding; + gboolean is_alternative = FALSE; + /* + * XXX: +@@ -601,55 +597,71 @@ + */ + part = camel_multipart_get_part (mp, i); + type = camel_mime_part_get_content_type(part); +- if (CAMEL_IS_MULTIPART ((CamelMultipart *)camel_medium_get_content_object (part))) { +- do_multipart (cnc, item, (CamelMultipart *)camel_medium_get_content_object (part), attach_list); +- continue; +- } else + dw = camel_medium_get_content_object (CAMEL_MEDIUM (part)); ++ ++ if (CAMEL_IS_MULTIPART (dw)) { ++ do_multipart (cnc, item, (CamelMultipart *) camel_medium_get_content_object ((CamelMedium *) part), attach_list); ++ continue; ++ } ++ + if (type->subtype && !strcmp (type->subtype, "alternative")) { ++ /* eh... I don't think this code will ever get hit? */ + CamelMimePart *temp_part; + const char *cid = NULL; + CamelStreamMem *temp_content = (CamelStreamMem *)camel_stream_mem_new (); + temp_part = camel_multipart_get_part ((CamelMultipart *)dw, 1); + CamelDataWrapper *temp_dw = NULL; ++ + if (temp_part) { + is_alternative = TRUE; + temp_dw = camel_medium_get_content_object (CAMEL_MEDIUM (temp_part)); + camel_data_wrapper_write_to_stream(temp_dw, (CamelStream *)temp_content); +- buffer = g_malloc0 (temp_content->buffer->len+1); +- buffer = memcpy (buffer, temp_content->buffer->data, temp_content->buffer->len); + filename = camel_mime_part_get_filename (temp_part); + disposition = camel_mime_part_get_disposition (temp_part); +- mime_type = camel_data_wrapper_get_mime_type (temp_dw); + cid = camel_mime_part_get_content_id (temp_part); +- g_print ("%s:%s\n",filename,camel_transfer_encoding_to_string(temp_part->encoding)); +- send_as_attachment (cnc, item, temp_content, buffer, type, temp_dw, filename, "", cid, attach_list); +- g_free (buffer); +- g_free (mime_type); ++ send_as_attachment (cnc, item, temp_content, type, temp_dw, filename, cid, attach_list); + } + camel_object_unref (temp_content); + continue; + } + +- +- camel_data_wrapper_write_to_stream(dw, (CamelStream *)content); +- buffer = g_malloc0 (content->buffer->len+1); +- encoding = camel_transfer_encoding_to_string (part->encoding); +- filename = camel_mime_part_get_filename (part); +- buffer = memcpy (buffer, content->buffer->data, content->buffer->len); +- disposition = camel_mime_part_get_disposition (part); +- mime_type = camel_data_wrapper_get_mime_type (dw); +- content_id = camel_mime_part_get_content_id (part); +- +- if (i == 0 && !strcmp (mime_type, "text/plain") ) { +- e_gw_item_set_content_type (item, mime_type); +- e_gw_item_set_message (item, buffer); ++ if (i == 0 && camel_content_type_is (type, "text", "plain")) { ++ CamelStream *filtered_stream; ++ CamelMimeFilter *filter; ++ const char *charset; ++ char *content_type; ++ ++ content_type = camel_content_type_simple (type); ++ e_gw_item_set_content_type (item, content_type); ++ g_free (content_type); ++ ++ charset = camel_content_type_param (type, "charset"); ++ if (charset && g_ascii_strcasecmp (charset, "US-ASCII") && g_ascii_strcasecmp (charset, "UTF-8")) { ++ filter = camel_mime_filter_charset_new_convert (charset, "UTF-8"); ++ filtered_stream = camel_stream_filter_new_with_stream ((CamelStream *) content); ++ camel_stream_filter_add ((CamelStreamFilter *) filtered_stream, filter); ++ camel_object_unref (filter); ++ } else { ++ /* US-ASCII or UTF-8 */ ++ filtered_stream = (CamelStream *) content; ++ camel_object_ref (content); ++ } ++ ++ camel_data_wrapper_decode_to_stream (dw, filtered_stream); ++ camel_stream_flush (filtered_stream); ++ camel_object_unref (filtered_stream); ++ ++ camel_stream_write ((CamelStream *) content, "", 1); ++ e_gw_item_set_message (item, content->buffer->data); + } else { +- send_as_attachment (cnc, item, content, buffer, type, dw, filename, encoding, content_id, attach_list); ++ filename = camel_mime_part_get_filename (part); ++ disposition = camel_mime_part_get_disposition (part); ++ content_id = camel_mime_part_get_content_id (part); ++ ++ camel_data_wrapper_decode_to_stream (dw, (CamelStream *) content); ++ send_as_attachment (cnc, item, content, type, dw, filename, content_id, attach_list); + } +- +- g_free (buffer); +- g_free (mime_type); ++ + camel_object_unref (content); + } /*end of for*/ + } +Index: camel/providers/groupwise/camel-groupwise-utils.h +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/groupwise/camel-groupwise-utils.h,v +retrieving revision 1.10 +diff -u -r1.10 camel/providers/groupwise/camel-groupwise-utils.h +--- camel/providers/groupwise/camel-groupwise-utils.h 4 Jan 2006 16:48:35 -0000 1.10 ++++ camel/providers/groupwise/camel-groupwise-utils.h 15 May 2006 18:01:10 -0000 +@@ -71,9 +71,9 @@ + int e_path_rmdir (const char *prefix, const char *vpath); + + +-EGwItem *camel_groupwise_util_item_from_message (EGwConnection *cnc, CamelMimeMessage *message, CamelAddress *from, CamelAddress *recipients); ++EGwItem *camel_groupwise_util_item_from_message (EGwConnection *cnc, CamelMimeMessage *message, CamelAddress *from); ++ + void do_flags_diff (flags_diff_t *diff, guint32 old, guint32 _new); +-GSList *add_recipients(GSList *recipient_list, CamelAddress *recipients, int recipient_type); + char *gw_concat ( const char *prefix, const char *suffix); + void strip_lt_gt (char **string, int s_offset, int e_offset); + #endif diff --git a/bnc-174255-honour-system-proxy-settings.patch b/bnc-174255-honour-system-proxy-settings.patch new file mode 100644 index 0000000..e900776 --- /dev/null +++ b/bnc-174255-honour-system-proxy-settings.patch @@ -0,0 +1,989 @@ +--- libedataserver/Makefile.am ++++ libedataserver/Makefile.am +@@ -7,7 +7,8 @@ + -DE_DATA_SERVER_EXTENSIONDIR=\"$(extensiondir)\" \ + -DE_DATA_SERVER_IMAGESDIR=\"$(imagesdir)\" \ + -DE_DATA_SERVER_UI_GLADEDIR=\""$(gladedir)"\" \ +- $(E_DATA_SERVER_CFLAGS) ++ $(E_DATA_SERVER_CFLAGS) \ ++ $(SOUP_CFLAGS) + + # The marshallers + MARSHAL_GENERATED = e-data-server-marshal.c e-data-server-marshal.h +@@ -32,6 +33,7 @@ + e-list-iterator.c \ + e-memory.c \ + e-msgport.c \ ++ e-proxy.c \ + e-sexp.c \ + e-source-group.c \ + e-source-list.c \ +@@ -50,7 +52,8 @@ + $(E_DATA_SERVER_LIBS) \ + $(ICONV_LIBS) \ + $(DB_LIBS) \ +- $(SOCKET_LIBS) ++ $(SOCKET_LIBS) \ ++ $(SOUP_LIBS) + + libedataserver_1_2_la_LDFLAGS = \ + -version-info $(LIBEDATASERVER_CURRENT):$(LIBEDATASERVER_REVISION):$(LIBEDATASERVER_AGE) $(NO_UNDEFINED) +@@ -72,6 +75,7 @@ + e-list-iterator.h \ + e-memory.h \ + e-msgport.h \ ++ e-proxy.h \ + e-sexp.h \ + e-source-group.h \ + e-source-list.h \ +--- libedataserver/e-proxy.c ++++ libedataserver/e-proxy.c +@@ -0,0 +1,647 @@ ++/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ ++/* ++ * Authors: Jeffrey Stedfast ++ * Veerapuram Varadhan ++ * ++ * Copyright 2002 Ximian, Inc. (www.ximian.com) ++ * ++ * This program is free software; you can redistribute it and/or modify ++ * it under the terms of the GNU General Public License as published by ++ * the Free Software Foundation; either version 2 of the License, or ++ * (at your option) any later version. ++ * ++ * This program is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * You should have received a copy of the GNU General Public License ++ * along with this program; if not, write to the Free Software ++ * Foundation, Inc., 59 Temple Street #330, Boston, MA 02111-1307, USA. ++ * ++ */ ++ ++ ++#ifdef HAVE_CONFIG_H ++#include ++#endif ++ ++#include ++#include ++#include ++#include ++#include ++#include ++ ++#include ++#include ++ ++#include ++#include ++#include "e-proxy.h" ++ ++/* Debug */ ++#define d(x) ++ ++/* GConf paths and keys */ ++#define PATH_GCONF_GNOME_VFS "/system/http_proxy" ++#define KEY_GCONF_HTTP_PROXY_PORT (PATH_GCONF_GNOME_VFS "/" "port") ++#define KEY_GCONF_HTTP_PROXY_HOST (PATH_GCONF_GNOME_VFS "/" "host") ++ ++#define KEY_GCONF_USE_HTTP_PROXY (PATH_GCONF_GNOME_VFS "/" "use_http_proxy") ++ ++#define KEY_GCONF_HTTP_AUTH_USER (PATH_GCONF_GNOME_VFS "/" "authentication_user") ++#define KEY_GCONF_HTTP_AUTH_PW (PATH_GCONF_GNOME_VFS "/" "authentication_password") ++#define KEY_GCONF_HTTP_USE_AUTH (PATH_GCONF_GNOME_VFS "/" "use_authentication") ++ ++#define KEY_GCONF_HTTP_PROXY_IGNORE_HOSTS (PATH_GCONF_GNOME_VFS "/" "ignore_hosts") ++ ++struct _EProxyPrivate { ++ SoupUri* uri; ++ guint notify_id; /* conxn id of gconf_client_notify_add */ ++ GSList* ign_hosts; /* List of hostnames. (Strings) */ ++ GSList* ign_addrs; /* List of hostaddrs. (ProxyHostAddrs) */ ++ gboolean use_proxy; /* Is system-proxy enabled? */ ++}; ++ ++/* Enum definition is copied from gnome-vfs/modules/http-proxy.c */ ++typedef enum { ++ PROXY_IPV4 = 4, ++ PROXY_IPV6 = 6 ++} ProxyAddrType; ++ ++typedef struct { ++ ProxyAddrType type; /* Specifies whether IPV4 or IPV6 */ ++ void* addr; /* Either in_addr* or in6_addr* */ ++ void* mask; /* Either in_addr* or in6_addr* */ ++} ProxyHostAddr; ++ ++/* Signals. */ ++enum { ++ CHANGED, ++ LAST_SIGNAL ++}; ++ ++static GObjectClass *parent_class; ++static unsigned int signals[LAST_SIGNAL] = { 0 }; ++ ++/* Forward declarations. */ ++ ++static void ep_setting_changed (GConfClient *client, guint32 cnxn_id, ++ GConfEntry *entry, gpointer user_data); ++static void e_proxy_dispose (GObject* object); ++ ++static void ipv6_network_addr (const struct in6_addr *addr, ++ const struct in6_addr *mask, ++ struct in6_addr *res); ++ ++static void ++ep_free_proxy_host_addr (ProxyHostAddr* host) ++{ ++ if (host) { ++ if (host->addr) { ++ g_free (host->addr); ++ host->addr = NULL; ++ } ++ if (host->mask) { ++ g_free (host->mask); ++ host->mask = NULL; ++ } ++ g_free (host); ++ } ++} ++ ++ ++static void ++e_proxy_class_init (EProxyClass *klass) ++{ ++ GObjectClass *object_class = G_OBJECT_CLASS (klass); ++ ++ parent_class = g_type_class_peek_parent (klass); ++ ++ object_class->dispose = e_proxy_dispose; ++ ++ /* signals */ ++ ++ /** ++ * EProxy::changed: ++ * @proxy: the proxy ++ * ++ * Emitted when proxy settings in gconf changes. ++ **/ ++ signals[CHANGED] = ++ g_signal_new ("changed", ++ G_OBJECT_CLASS_TYPE (object_class), ++ G_SIGNAL_RUN_FIRST, ++ G_STRUCT_OFFSET (EProxyClass, changed), ++ NULL, NULL, ++ g_cclosure_marshal_VOID__VOID, ++ G_TYPE_NONE, 0); ++ ++ ++} ++ ++static void ++e_proxy_init (EProxy *pxy, EProxyClass *klass) ++{ ++ EProxyPrivate *priv; ++ ++ /* allocate internal structure */ ++ priv = g_new0 (EProxyPrivate, 1); ++ pxy->priv = priv; ++ priv->ign_hosts = NULL; ++ priv->ign_addrs = NULL; ++ priv->uri = NULL; ++ priv->notify_id = 0; ++ priv->use_proxy = FALSE; ++} ++ ++static void ++e_proxy_dispose (GObject *object) ++{ ++ EProxy *proxy = (EProxy *)object; ++ ++ if (!E_IS_PROXY (proxy)) ++ return; ++ ++ EProxyPrivate *priv = proxy->priv; ++ ++ if (priv) { ++ GConfClient* client = NULL; ++ ++ if ((client = gconf_client_get_default ())) { ++ if (priv->notify_id > 0) ++ gconf_client_notify_remove (client, priv->notify_id); ++ g_object_unref (client); ++ } ++ ++ if (priv->uri) ++ soup_uri_free (priv->uri); ++ ++ if (priv->ign_hosts) { ++ g_slist_foreach (priv->ign_hosts, (GFunc) ep_free_proxy_host_addr, NULL); ++ g_slist_free (priv->ign_hosts); ++ } ++ ++ if (priv->ign_addrs) { ++ g_slist_foreach (priv->ign_addrs, (GFunc) g_free, NULL); ++ g_slist_free (priv->ign_addrs); ++ } ++ ++ priv->notify_id = 0; ++ ++ g_free (priv); ++ priv = NULL; ++ } ++} ++ ++GType ++e_proxy_get_type (void) ++{ ++ static GType type = 0; ++ ++ if (!type) { ++ static GTypeInfo info = { ++ sizeof (EProxyClass), ++ (GBaseInitFunc) NULL, ++ (GBaseFinalizeFunc) NULL, ++ (GClassInitFunc) e_proxy_class_init, ++ NULL, NULL, ++ sizeof (EProxy), ++ 0, ++ (GInstanceInitFunc) e_proxy_init ++ }; ++ type = g_type_register_static (G_TYPE_OBJECT, "EProxy", &info, 0); ++ } ++ ++ return type; ++} ++ ++static gboolean ++ep_need_proxy (EProxy* proxy, const char* host) ++{ ++ SoupAddress *addr = NULL; ++ EProxyPrivate *priv = proxy->priv; ++ ProxyHostAddr *p_addr = NULL; ++ GSList *l; ++ guint status; ++ ++ addr = soup_address_new (host, 0); ++ status = soup_address_resolve_sync (addr); ++ if (status == SOUP_STATUS_OK) { ++ gint addr_len; ++ struct sockaddr* s_addr = NULL; ++ ++ s_addr = soup_address_get_sockaddr (addr, &addr_len); ++ ++ /* This will never happen, since we have already called ++ soup_address_resolve_sync(). ++ */ ++ if (!s_addr) ++ return TRUE; ++ ++ if (s_addr->sa_family == AF_INET) { ++ struct in_addr in, *mask, *addr_in; ++ ++ in = ((struct sockaddr_in *)s_addr)->sin_addr; ++ for (l = priv->ign_addrs; l; l = l->next) { ++ p_addr = (ProxyHostAddr *)l->data; ++ if (p_addr->type == PROXY_IPV4) { ++ addr_in = ((struct in_addr *)p_addr->addr); ++ mask = ((struct in_addr *)p_addr->mask); ++ d(g_print ("ep_need_proxy:ipv4: in: %ul\t mask: %ul\t addr: %ul\n", ++ in.s_addr, mask->s_addr, addr_in->s_addr)); ++ if ((in.s_addr & mask->s_addr) == addr_in->s_addr) { ++ d(g_print ("Host [%s] doesn't require proxy\n", host)); ++ return FALSE; ++ } ++ } ++ } ++ } else { ++ struct in6_addr in6, net6; ++ struct in_addr *addr_in, *mask; ++ ++ in6 = ((struct sockaddr_in6 *)s_addr)->sin6_addr; ++ for (l = priv->ign_addrs; l; l = l->next) { ++ p_addr = (ProxyHostAddr *)l->data; ++ ipv6_network_addr (&in6, (struct in6_addr *)p_addr->mask, &net6); ++ if (p_addr->type == PROXY_IPV6) { ++ if (IN6_ARE_ADDR_EQUAL (&net6, (struct in6_addr *)p_addr->addr)) { ++ d(g_print ("Host [%s] doesn't require proxy\n", host)); ++ return FALSE; ++ } ++ } else if (p_addr->type == PROXY_IPV6 && ++ IN6_IS_ADDR_V4MAPPED (&net6)) { ++ guint32 v4addr; ++ ++ addr_in = ((struct in_addr *)p_addr->addr); ++ mask = ((struct in_addr *)p_addr->mask); ++ ++ v4addr = net6.s6_addr[12] << 24 ++ | net6.s6_addr[13] << 16 ++ | net6.s6_addr[14] << 8 ++ | net6.s6_addr[15]; ++ if ((v4addr & mask->s_addr) != addr_in->s_addr) { ++ d(g_print ("Host [%s] doesn't require proxy\n", host)); ++ return FALSE; ++ } ++ } ++ } ++ } ++ } else { ++ GSList* l; ++ gchar* hn = g_ascii_strdown (host, -1); ++ ++ for (l = priv->ign_hosts; l; l = l->next) { ++ if (*((gchar *)l->data) == '*') { ++ if (g_str_has_suffix (hn, ((gchar *)l->data)+1)) { ++ g_free (hn); ++ return FALSE; ++ } ++ } else if (strcmp (hn, l->data) == 0) { ++ g_free (hn); ++ return FALSE; ++ } ++ } ++ g_free (hn); ++ } ++ ++ d(g_print ("%s needs a proxy to connect to internet\n", host)); ++ return TRUE; ++} ++ ++static gboolean ++ep_manipulate_ipv4 (ProxyHostAddr *host_addr, ++ struct in_addr *addr_in, ++ gchar* netmask) ++{ ++ gboolean has_error = FALSE; ++ struct in_addr *addr, *mask; ++ ++ if (!addr_in) ++ return has_error; ++ ++ host_addr->type = PROXY_IPV4; ++ addr = g_new0 (struct in_addr, 1); ++ memcpy (addr, addr_in, sizeof (struct in_addr)); ++ mask = g_new0 (struct in_addr, 1); ++ ++ if (netmask) { ++ gchar *endptr; ++ gint width = strtol (netmask, &endptr, 10); ++ ++ if (*endptr != '\0' || width < 0 || width > 32) { ++ has_error = TRUE; ++ } ++ mask->s_addr = htonl (~0 << width); ++ addr->s_addr &= mask->s_addr; ++ } else { ++ mask->s_addr = 0xFFFFFFFF; ++ } ++ ++ d(g_print ("ep_manipulate_ipv4: addr_in: %ul, addr: %ul, mask: %ul\n", ++ addr_in->s_addr, addr->s_addr, mask->s_addr)); ++ ++ host_addr->addr = addr; ++ host_addr->mask = mask; ++ ++ return has_error; ++} ++ ++static void ++ipv6_network_addr(const struct in6_addr *addr, const struct in6_addr *mask, ++ struct in6_addr *res) ++{ ++ gint i; ++ ++ for (i = 0; i < 16; ++i) { ++ res->s6_addr[i] = addr->s6_addr[i] & mask->s6_addr[i]; ++ } ++} ++ ++static gboolean ++ep_manipulate_ipv6 (ProxyHostAddr *host_addr, ++ struct in6_addr *addr_in6, ++ gchar* netmask) ++{ ++ gboolean has_error = FALSE; ++ struct in6_addr *addr, *mask; ++ int i; ++ ++ if (!addr_in6) ++ return has_error; ++ ++ host_addr->type = PROXY_IPV6; ++ ++ addr = g_new0 (struct in6_addr, 1); ++ mask = g_new0 (struct in6_addr, 1); ++ ++ for (i = 0; i < 16; ++i) { ++ addr->s6_addr[i] = addr_in6->s6_addr[i]; ++ } ++ if (netmask) { ++ gchar *endptr; ++ gint width = strtol(netmask, &endptr, 10); ++ ++ if (*endptr != '\0' || width < 0 || width > 128) { ++ has_error = TRUE; ++ } ++ for (i = 0; i < 16; ++i) { ++ mask->s6_addr[i] = 0; ++ } ++ for (i = 0; i < width / 8; i++) { ++ mask->s6_addr[i] = 0xff; ++ } ++ mask->s6_addr[i] = (0xff << (8 - width % 8)) & 0xff; ++ ipv6_network_addr(addr, mask, addr); ++ } else { ++ for (i = 0; i < 16; ++i) { ++ mask->s6_addr[i] = 0xff; ++ } ++ } ++ ++ host_addr->addr = addr; ++ host_addr->mask = mask; ++ ++ return has_error; ++} ++ ++static void ++ep_parse_ignore_host (gpointer data, gpointer user_data) ++{ ++ EProxy* proxy = (EProxy *)user_data; ++ EProxyPrivate* priv = NULL; ++ SoupAddress *addr; ++ guint status; ++ gchar *input, *netmask, *hostname; ++ ProxyHostAddr *host_addr; ++ gboolean has_error = FALSE; ++ ++ if (!proxy || !proxy->priv) ++ return; ++ ++ priv = proxy->priv; ++ input = (gchar *)data; ++ ++ if ((netmask = strrchr (input, '/')) != NULL) { ++ hostname = g_strndup (input, netmask - input); ++ ++netmask; ++ } else { ++ hostname = g_ascii_strdown (input, -1); ++ } ++ ++ addr = soup_address_new (hostname, 0); ++ status = soup_address_resolve_sync (addr); ++ if (status == SOUP_STATUS_OK) { ++ gint addr_len; ++ struct sockaddr* s_addr = NULL; ++ ++ host_addr = g_new0 (ProxyHostAddr, 1); ++ ++ s_addr = soup_address_get_sockaddr (addr, &addr_len); ++ ++ /* This will never happen, since we have already called ++ soup_address_resolve_sync(). ++ */ ++ if (!s_addr) ++ goto error; ++ ++ if (s_addr->sa_family == AF_INET) ++ has_error = ep_manipulate_ipv4 (host_addr, ++ &((struct sockaddr_in *)s_addr)->sin_addr, ++ netmask); ++ else ++ has_error = ep_manipulate_ipv6 (host_addr, ++ &((struct sockaddr_in6 *)s_addr)->sin6_addr, ++ netmask); ++ ++ if (!has_error) ++ priv->ign_addrs = g_slist_append (priv->ign_addrs, host_addr); ++ ++ g_free (hostname); ++ } else { ++ d(g_print ("Unable to resolve %s\n", hostname)); ++ priv->ign_hosts = g_slist_append (priv->ign_hosts, hostname); ++ } ++ error: ++ g_object_unref (addr); ++} ++ ++static void ++ep_set_proxy (GConfClient *client, ++ gpointer user_data, ++ gboolean regen_ign_host_list, ++ gboolean set_auth) ++{ ++ char *proxy_server = NULL, *proxy_user = NULL, *proxy_pw = NULL, *uri = NULL; ++ gboolean use_auth; ++ int proxy_port; ++ EProxy* proxy = (EProxy *)user_data; ++ EProxyPrivate* priv = proxy->priv; ++ GSList *ignore; ++ ++ priv->use_proxy = gconf_client_get_bool (client, KEY_GCONF_USE_HTTP_PROXY, NULL); ++ if (priv->use_proxy == FALSE) { ++ if (priv->uri) { ++ soup_uri_free (priv->uri); ++ priv->uri = NULL; ++ } ++ goto emit_signal; ++ } ++ ++ proxy_server = gconf_client_get_string (client, KEY_GCONF_HTTP_PROXY_HOST, NULL); ++ proxy_port = gconf_client_get_int (client, KEY_GCONF_HTTP_PROXY_PORT, NULL); ++ uri = g_strdup_printf ("http://%s:%d", proxy_server, proxy_port); ++ d(g_print ("ep_set_proxy: uri: %s\n", uri)); ++ ++ if (regen_ign_host_list) { ++ if (priv->ign_hosts) { ++ g_slist_foreach (priv->ign_hosts, (GFunc) g_free, NULL); ++ g_slist_free (priv->ign_hosts); ++ priv->ign_hosts = NULL; ++ } ++ ++ if (priv->ign_addrs) { ++ g_slist_foreach (priv->ign_addrs, (GFunc) g_free, NULL); ++ g_slist_free (priv->ign_addrs); ++ priv->ign_addrs = NULL; ++ } ++ ++ ignore = gconf_client_get_list (client, KEY_GCONF_HTTP_PROXY_IGNORE_HOSTS, ++ GCONF_VALUE_STRING, NULL); ++ if (ignore) { ++ g_slist_foreach (ignore, (GFunc) ep_parse_ignore_host, proxy); ++ g_slist_foreach (ignore, (GFunc) g_free, NULL); ++ g_slist_free (ignore); ++ } ++ } else if (set_auth) { ++ ++ use_auth = gconf_client_get_bool (client, KEY_GCONF_HTTP_USE_AUTH, NULL); ++ if (use_auth == TRUE) { ++ proxy_user = gconf_client_get_string (client, KEY_GCONF_HTTP_AUTH_USER, NULL); ++ proxy_pw = gconf_client_get_string (client, KEY_GCONF_HTTP_AUTH_PW, NULL); ++ ++ if (uri) ++ g_free (uri); ++ ++ uri = g_strdup_printf ("http://%s:%s@%s:%d", proxy_user, proxy_pw, proxy_server, proxy_port); ++ } ++ } ++ ++ if (priv->uri) { ++ soup_uri_free (priv->uri); ++ priv->uri = NULL; ++ } ++ ++ if (uri) ++ priv->uri = soup_uri_new (uri); ++ d(g_print ("system-proxy: uri: %s\n", uri)); ++ ++ emit_signal: ++ g_signal_emit (proxy, signals[CHANGED], 0); ++ ++ g_free (uri); ++ ++ return; ++} ++ ++static void ++ep_setting_changed (GConfClient *client, guint32 cnxn_id, ++ GConfEntry *entry, gpointer user_data) ++{ ++ const char *key; ++ EProxy* proxy = (EProxy *)user_data; ++ ++ if (!proxy || !proxy->priv) ++ return; ++ ++ key = gconf_entry_get_key(entry); ++ ++ if (strcmp(key, KEY_GCONF_USE_HTTP_PROXY) == 0 ++ || strcmp(key, KEY_GCONF_HTTP_PROXY_IGNORE_HOSTS) == 0 ++ || strcmp(key, KEY_GCONF_HTTP_PROXY_HOST) == 0 ++ || strcmp(key, KEY_GCONF_HTTP_PROXY_PORT) == 0) { ++ gboolean regen_ign_host_list = FALSE; ++ ++ if (strcmp(key, KEY_GCONF_HTTP_PROXY_IGNORE_HOSTS) == 0) ++ regen_ign_host_list = TRUE; ++ ep_set_proxy (client, user_data, regen_ign_host_list, FALSE); ++ d(g_print ("e-proxy.c:ep_settings_changed: proxy settings changed\n")); ++ } else if (strcmp(key, KEY_GCONF_HTTP_AUTH_USER) == 0 ++ || strcmp(key, KEY_GCONF_HTTP_AUTH_PW) == 0 ++ || strcmp(key, KEY_GCONF_HTTP_USE_AUTH) == 0) { ++ ep_set_proxy (client, user_data, FALSE, TRUE); ++ d(g_print ("e-proxy.c:ep_settings_changed: auth settings changed\n")); ++ } ++} ++ ++EProxy* ++e_proxy_new (void) ++{ ++ EProxy *proxy = NULL; ++ ++ proxy = g_object_new (E_TYPE_PROXY, NULL); ++ ++ return proxy; ++} ++ ++void ++e_proxy_setup_proxy (EProxy* proxy) ++{ ++ GConfClient *client; ++ ++ /* We get the gnome-vfs proxy keys here ++ set soup up to use the proxy, ++ and listen to any changes */ ++ ++ if (!(client = gconf_client_get_default ())) ++ return; ++ ++ if (!proxy || !proxy->priv) ++ return; ++ ++ /* Listen to the changes in the gnome-vfs path */ ++ gconf_client_add_dir (client, PATH_GCONF_GNOME_VFS, ++ GCONF_CLIENT_PRELOAD_ONELEVEL, NULL); ++ ++ if (proxy->priv->notify_id == 0) ++ proxy->priv->notify_id = gconf_client_notify_add (client, PATH_GCONF_GNOME_VFS, ++ ep_setting_changed, (gpointer)proxy, ++ NULL, NULL); ++ ++ ep_set_proxy (client, proxy, TRUE, TRUE); ++ ++ g_object_unref (client); ++} ++ ++SoupUri* ++e_proxy_peek_uri (EProxy* proxy) ++{ ++ if (!proxy || !proxy->priv) ++ return NULL; ++ ++ return proxy->priv->uri; ++} ++ ++gboolean ++e_proxy_require_proxy_for_uri (EProxy* proxy, const char* uri) ++{ ++ SoupUri *srv_uri = NULL; ++ gboolean ret = FALSE; ++ ++ if (!uri || !proxy || !proxy->priv) ++ return ret; ++ ++ if (!proxy->priv->use_proxy) { ++ d(g_print ("[%s] don't need a proxy to connect to internet\n", uri)); ++ return ret; ++ } ++ ++ srv_uri = soup_uri_new (uri); ++ ++ ret = ep_need_proxy (proxy, srv_uri->host); ++ ++ soup_uri_free (srv_uri); ++ ++ return ret; ++} +--- libedataserver/e-proxy.h ++++ libedataserver/e-proxy.h +@@ -0,0 +1,63 @@ ++/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ ++/* ++ * Authors: Jeffrey Stedfast ++ * Veerapuram Varadhan ++ * ++ * Copyright 2002 Ximian, Inc. (www.ximian.com) ++ * ++ * This program is free software; you can redistribute it and/or modify ++ * it under the terms of the GNU General Public License as published by ++ * the Free Software Foundation; either version 2 of the License, or ++ * (at your option) any later version. ++ * ++ * This program is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * You should have received a copy of the GNU General Public License ++ * along with this program; if not, write to the Free Software ++ * Foundation, Inc., 59 Temple Street #330, Boston, MA 02111-1307, USA. ++ * ++ */ ++ ++ ++#ifndef __E_PROXY_H__ ++#define __E_PROXY_H__ ++ ++#include ++ ++G_BEGIN_DECLS ++ ++#define E_TYPE_PROXY (e_proxy_get_type ()) ++#define E_PROXY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), E_TYPE_PROXY, EProxy)) ++#define E_PROXY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), E_TYPE_PROXY, EProxyClass)) ++#define E_IS_PROXY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), E_TYPE_PROXY)) ++#define E_IS_PROXY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), E_TYPE_PROXY)) ++ ++typedef struct _EProxy EProxy; ++typedef struct _EProxyClass EProxyClass; ++typedef struct _EProxyPrivate EProxyPrivate; ++ ++struct _EProxy { ++ GObject parent; ++ EProxyPrivate *priv; ++}; ++ ++struct _EProxyClass { ++ GObjectClass parent_class; ++ /* Signals. */ ++ ++ void (*changed) (EProxy *proxy); ++}; ++ ++EProxy* e_proxy_new (void); ++SoupUri* e_proxy_peek_uri (EProxy* proxy); ++void e_proxy_setup_proxy (EProxy* proxy); ++GType e_proxy_get_type (void); ++gboolean e_proxy_require_proxy_for_uri (EProxy *proxy, ++ const char* uri); ++ ++G_END_DECLS ++ ++#endif +--- servers/exchange/lib/e2k-context.c ++++ servers/exchange/lib/e2k-context.c +@@ -49,6 +49,7 @@ + #include "e2k-utils.h" + #include "e2k-xml-utils.h" + ++#include + #include + #include + #include +@@ -104,6 +105,7 @@ + /* Forms-based authentication */ + char *cookie; + gboolean cookie_verified; ++ EProxy* proxy; + }; + + /* For operations with progress */ +@@ -113,6 +115,9 @@ + /* For soup sync session timeout */ + #define E2K_SOUP_SESSION_TIMEOUT 30 + ++/* Soup session proxy-uri property */ ++#define SOUP_SESSION_PROXY_URI "proxy-uri" ++ + #ifdef E2K_DEBUG + char *e2k_debug; + int e2k_debug_level; +@@ -123,6 +128,31 @@ + static gboolean do_notification (GIOChannel *source, GIOCondition condition, gpointer data); + + static void setup_message (SoupMessageFilter *filter, SoupMessage *msg); ++static void proxy_settings_changed (EProxy *proxy, gpointer user_data); ++ ++ ++static void ++proxy_settings_changed (EProxy *proxy, gpointer user_data) ++{ ++ SoupUri *proxy_uri = NULL; ++ E2kContext* ctx = (E2kContext *)user_data; ++ if (!ctx || !ctx->priv || ++ (!ctx->priv->session && !ctx->priv->async_session) || ++ (!ctx->priv->owa_uri)) ++ return; ++ ++ if (!e_proxy_require_proxy_for_uri (proxy, ctx->priv->owa_uri)) ++ proxy_uri = NULL; ++ else ++ proxy_uri = e_proxy_peek_uri (proxy); ++ ++ if (ctx->priv->session) ++ g_object_set (ctx->priv->session, SOUP_SESSION_PROXY_URI, ++ proxy_uri, NULL); ++ if (ctx->priv->async_session) ++ g_object_set (ctx->priv->async_session, SOUP_SESSION_PROXY_URI, ++ proxy_uri, NULL); ++} + + static void + init (GObject *object) +@@ -134,6 +164,9 @@ + g_hash_table_new (g_str_hash, g_str_equal); + ctx->priv->subscriptions_by_uri = + g_hash_table_new (g_str_hash, g_str_equal); ++ ctx->priv->proxy = e_proxy_new (); ++ e_proxy_setup_proxy (ctx->priv->proxy); ++ g_signal_connect (ctx->priv->proxy, "changed", G_CALLBACK (proxy_settings_changed), ctx); + } + + static void +@@ -180,8 +213,13 @@ + + g_free (ctx->priv->cookie); + ++ if (ctx->priv->proxy) { ++ g_object_unref (ctx->priv->proxy); ++ ctx->priv->proxy = NULL; ++ } + g_free (ctx->priv); + ctx->priv = NULL; ++ + } + + G_OBJECT_CLASS (parent_class)->dispose (object); +@@ -361,6 +399,7 @@ + const char *password) + { + guint timeout = E2K_SOUP_SESSION_TIMEOUT; ++ SoupUri* uri = NULL; + + g_return_if_fail (E2K_IS_CONTEXT (ctx)); + +@@ -390,10 +429,15 @@ + */ + if (g_getenv ("SOUP_SESSION_TIMEOUT")) + timeout = atoi (g_getenv ("SOUP_SESSION_TIMEOUT")); +- ++ ++ /* Check do we need a proxy to contact the server? */ ++ if (e_proxy_require_proxy_for_uri (ctx->priv->proxy, ctx->priv->owa_uri)) ++ uri = e_proxy_peek_uri (ctx->priv->proxy); ++ + ctx->priv->session = soup_session_sync_new_with_options ( + SOUP_SESSION_USE_NTLM, !authmech || !strcmp (authmech, "NTLM"), + SOUP_SESSION_TIMEOUT, timeout, ++ SOUP_SESSION_PROXY_URI, uri, + NULL); + g_signal_connect (ctx->priv->session, "authenticate", + G_CALLBACK (session_authenticate), ctx); +@@ -402,7 +446,7 @@ + + ctx->priv->async_session = soup_session_async_new_with_options ( + SOUP_SESSION_USE_NTLM, !authmech || !strcmp (authmech, "NTLM"), +- NULL); ++ SOUP_SESSION_PROXY_URI, uri, NULL); + g_signal_connect (ctx->priv->async_session, "authenticate", + G_CALLBACK (session_authenticate), ctx); + soup_session_add_filter (ctx->priv->async_session, +--- servers/groupwise/Makefile.am ++++ servers/groupwise/Makefile.am +@@ -15,9 +15,10 @@ + $(E_DATA_SERVER_LIBS) + + soap_test_SOURCES = soap-test.c +-soap_test_LDADD = \ +- $(SOUP_LIBS) \ +- libegroupwise-1.2.la \ ++soap_test_LDADD = \ ++ $(top_builddir)/libedataserver/libedataserver-1.2.la \ ++ $(SOUP_LIBS) \ ++ libegroupwise-1.2.la \ + $(E_DATA_SERVER_LIBS) + + lib_LTLIBRARIES = libegroupwise-1.2.la +--- servers/groupwise/e-gw-connection.c ++++ servers/groupwise/e-gw-connection.c +@@ -27,6 +27,7 @@ + #include + #include + #include ++#include + #include + #include + #include +@@ -37,6 +38,9 @@ + /* For soup sync session timeout */ + #define GW_SOUP_SESSION_TIMEOUT 30 + ++/* Soup session proxy-uri property */ ++#define SOUP_SESSION_PROXY_URI "proxy-uri" ++ + static GObjectClass *parent_class = NULL; + static GHashTable *loaded_connections_permissions = NULL; + +@@ -57,8 +61,37 @@ + GList *book_list; + EGwSendOptions *opts; + GMutex *reauth_mutex; ++ EProxy *proxy; + }; + ++static void ++update_soup_session_proxy_settings (EProxy *proxy, SoupSession* session, ++ const char* uri) ++{ ++ SoupUri *proxy_uri = NULL; ++ ++ if (!session || !uri || !proxy) ++ return; ++ ++ if (e_proxy_require_proxy_for_uri (proxy, uri)) ++ proxy_uri = e_proxy_peek_uri (proxy); ++ ++ g_object_set (session, SOUP_SESSION_PROXY_URI, ++ proxy_uri, NULL); ++} ++ ++static void ++proxy_settings_changed (EProxy *proxy, gpointer user_data) ++{ ++ EGwConnection* conn = (EGwConnection *)user_data; ++ if (!conn || !conn->priv || !conn->priv->soup_session) ++ return; ++ ++ update_soup_session_proxy_settings (proxy, ++ conn->priv->soup_session, ++ conn->priv->uri); ++} ++ + static EGwConnectionStatus + reauthenticate (EGwConnection *cnc) + { +@@ -319,6 +352,11 @@ + g_free (priv->server_time) ; + priv->server_time = NULL ; + } ++ ++ if (priv->proxy) { ++ g_object_unref (priv->proxy); ++ priv->proxy = NULL; ++ } + } + + if (parent_class->dispose) +@@ -369,6 +407,11 @@ + */ + if (g_getenv ("SOUP_SESSION_TIMEOUT")) + timeout = atoi (g_getenv ("SOUP_SESSION_TIMEOUT")); ++ ++ /* Initialize proxy settings */ ++ priv->proxy = e_proxy_new (); ++ e_proxy_setup_proxy (priv->proxy); ++ g_signal_connect (priv->proxy, "changed", G_CALLBACK (proxy_settings_changed), cnc); + + /* create the SoupSession for this connection */ + priv->soup_session = soup_session_sync_new_with_options (SOUP_SESSION_TIMEOUT, timeout, NULL); +@@ -448,11 +491,17 @@ + return cnc; + } + } +- + + /* not found, so create a new connection */ + cnc = g_object_new (E_TYPE_GW_CONNECTION, NULL); + ++ /* Set proxy details for the Soup session before any ++ communication. ++ */ ++ update_soup_session_proxy_settings (cnc->priv->proxy, ++ cnc->priv->soup_session, ++ uri); ++ + msg = form_login_request (uri, username, password); + + /* send message to server */ diff --git a/bnc-176277-2.patch b/bnc-176277-2.patch new file mode 100644 index 0000000..712014a --- /dev/null +++ b/bnc-176277-2.patch @@ -0,0 +1,208 @@ +Index: libedataserver/e-msgport.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/libedataserver/e-msgport.c,v +retrieving revision 1.6 +diff -u -r1.6 e-msgport.c +--- libedataserver/e-msgport.c 10 Jan 2006 07:59:04 -0000 1.6 ++++ libedataserver/e-msgport.c 31 May 2006 21:06:57 -0000 +@@ -70,7 +70,13 @@ + e_pipe (int *fds) + { + #ifndef G_OS_WIN32 +- return pipe (fds); ++ if (pipe (fds) != -1) ++ return 0; ++ ++ fds[0] = -1; ++ fds[1] = -1; ++ ++ return -1; + #else + SOCKET temp, socket1 = -1, socket2 = -1; + struct sockaddr_in saddr; +@@ -180,8 +186,11 @@ + closesocket (socket1); + out0: + closesocket (temp); +- errno = EIO; /* XXX */ +- ++ errno = EMFILE; /* FIXME: use the real syscall errno? */ ++ ++ fds[0] = -1; ++ fds[1] = -1; ++ + return -1; + + #endif +@@ -487,9 +496,12 @@ + } fd; + } pipe; + #ifdef HAVE_NSS +- struct { +- PRFileDesc *read; +- PRFileDesc *write; ++ union { ++ PRFileDesc *pipe[2]; ++ struct { ++ PRFileDesc *read; ++ PRFileDesc *write; ++ } fd; + } prpipe; + #endif + /* @#@$#$ glib stuff */ +@@ -497,6 +509,26 @@ + GMutex *lock; + }; + ++ ++#ifdef HAVE_NSS ++static int ++e_prpipe (PRFileDesc **fds) ++{ ++#ifdef G_OS_WIN32 ++ if (PR_NewTCPSocketPair (fds) != PR_FAILURE) ++ return 0; ++#else ++ if (PR_CreatePipe (&fds[0], &fds[1]) != PR_FAILURE) ++ return 0; ++#endif ++ ++ fds[0] = NULL; ++ fds[1] = NULL; ++ ++ return -1; ++} ++#endif ++ + EMsgPort *e_msgport_new(void) + { + EMsgPort *mp; +@@ -505,11 +537,9 @@ + e_dlist_init(&mp->queue); + mp->lock = g_mutex_new(); + mp->cond = g_cond_new(); +- mp->pipe.fd.read = -1; +- mp->pipe.fd.write = -1; ++ e_pipe (mp->pipe.pipe); + #ifdef HAVE_NSS +- mp->prpipe.read = NULL; +- mp->prpipe.write = NULL; ++ e_prpipe (mp->prpipe.pipe); + #endif + mp->condwait = 0; + +@@ -525,9 +555,9 @@ + E_CLOSE(mp->pipe.fd.write); + } + #ifdef HAVE_NSS +- if (mp->prpipe.read) { +- PR_Close(mp->prpipe.read); +- PR_Close(mp->prpipe.write); ++ if (mp->prpipe.fd.read) { ++ PR_Close(mp->prpipe.fd.read); ++ PR_Close(mp->prpipe.fd.write); + } + #endif + g_free(mp); +@@ -536,40 +566,13 @@ + /* get a fd that can be used to wait on the port asynchronously */ + int e_msgport_fd(EMsgPort *mp) + { +- int fd; +- +- g_mutex_lock(mp->lock); +- fd = mp->pipe.fd.read; +- if (fd == -1) { +- e_pipe(mp->pipe.pipe); +- fd = mp->pipe.fd.read; +- } +- g_mutex_unlock(mp->lock); +- +- return fd; ++ return mp->pipe.fd.read; + } + + #ifdef HAVE_NSS + PRFileDesc *e_msgport_prfd(EMsgPort *mp) + { +- PRFileDesc *fd; +- +- g_mutex_lock(mp->lock); +- fd = mp->prpipe.read; +- if (fd == NULL) { +-#ifdef G_OS_WIN32 +- PRFileDesc *fds[2]; +- PR_NewTCPSocketPair (fds); +- mp->prpipe.read = fds[0]; +- mp->prpipe.write = fds[1]; +-#else +- PR_CreatePipe(&mp->prpipe.read, &mp->prpipe.write); +-#endif +- fd = mp->prpipe.read; +- } +- g_mutex_unlock(mp->lock); +- +- return fd; ++ return mp->prpipe.fd.read; + } + #endif + +@@ -579,7 +582,7 @@ + #ifdef HAVE_NSS + PRFileDesc *prfd; + #endif +- ++ + m(printf("put:\n")); + g_mutex_lock(mp->lock); + e_dlist_addtail(&mp->queue, &msg->ln); +@@ -587,9 +590,10 @@ + m(printf("put: condwait > 0, waking up\n")); + g_cond_signal(mp->cond); + } ++ + fd = mp->pipe.fd.write; + #ifdef HAVE_NSS +- prfd = mp->prpipe.write; ++ prfd = mp->prpipe.fd.write; + #endif + g_mutex_unlock(mp->lock); + +@@ -626,7 +630,7 @@ + fd_set rfds; + int retry; + +- m(printf("wait: waitng on pipe\n")); ++ m(printf("wait: waiting on pipe\n")); + g_mutex_unlock(mp->lock); + do { + FD_ZERO(&rfds); +@@ -637,14 +641,14 @@ + g_mutex_lock(mp->lock); + m(printf("wait: got pipe\n")); + #ifdef HAVE_NSS +- } else if (mp->prpipe.read != NULL) { ++ } else if (mp->prpipe.fd.read != NULL) { + PRPollDesc polltable[1]; + int retry; + + m(printf("wait: waitng on pr pipe\n")); + g_mutex_unlock(mp->lock); + do { +- polltable[0].fd = mp->prpipe.read; ++ polltable[0].fd = mp->prpipe.fd.read; + polltable[0].in_flags = PR_POLL_READ|PR_POLL_ERR; + retry = PR_Poll(polltable, 1, PR_INTERVAL_NO_TIMEOUT) == -1 && PR_GetError() == PR_PENDING_INTERRUPT_ERROR; + pthread_testcancel(); +@@ -681,9 +685,9 @@ + if (mp->pipe.fd.read != -1) + E_READ(mp->pipe.fd.read, dummy, 1); + #ifdef HAVE_NSS +- if (mp->prpipe.read != NULL) { ++ if (mp->prpipe.fd.read != NULL) { + int c; +- c = PR_Read(mp->prpipe.read, dummy, 1); ++ c = PR_Read(mp->prpipe.fd.read, dummy, 1); + g_assert(c == 1); + } + #endif diff --git a/bnc-177394.patch b/bnc-177394.patch new file mode 100644 index 0000000..0cced98 --- /dev/null +++ b/bnc-177394.patch @@ -0,0 +1,20 @@ +Index: camel/providers/imap/camel-imap-command.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/imap/camel-imap-command.c,v +retrieving revision 1.76.2.2 +diff -u -r1.76.2.2 camel/providers/imap/camel-imap-command.c +--- camel/providers/imap/camel-imap-command.c 19 May 2006 15:21:37 -0000 1.76.2.2 ++++ camel/providers/imap/camel-imap-command.c 22 May 2006 16:00:09 -0000 +@@ -438,10 +438,9 @@ + fulllen += str->len; + g_ptr_array_add (data, str); + +- p = strrchr (str->str, '{'); +- if (!p) ++ if (!(p = strrchr (str->str, '{')) || p[1] == '-') + break; +- ++ + /* HACK ALERT: We scan the non-literal part of the string, looking for possible s expression braces. + This assumes we're getting s-expressions, which we should be. + This is so if we get a blank line after a literal, in an s-expression, we can keep going, since diff --git a/bnc-179350.patch b/bnc-179350.patch new file mode 100644 index 0000000..4e615ac --- /dev/null +++ b/bnc-179350.patch @@ -0,0 +1,554 @@ +Index: camel/providers/groupwise/camel-groupwise-folder.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/groupwise/camel-groupwise-folder.c,v +retrieving revision 1.114.2.12 +diff -u -r1.114.2.12 camel-groupwise-folder.c +--- camel/providers/groupwise/camel-groupwise-folder.c 6 Jun 2006 19:51:03 -0000 1.114.2.12 ++++ camel/providers/groupwise/camel-groupwise-folder.c 8 Jun 2006 15:32:24 -0000 +@@ -63,15 +63,6 @@ + #define GROUPWISE_BULK_DELETE_LIMIT 100 + static CamelOfflineFolderClass *parent_class = NULL; + +-struct _CamelGroupwiseFolderPrivate { +- +-#ifdef ENABLE_THREADS +- EMutex *search_lock; /* for locking the search object */ +- EMutex *cache_lock; /* for locking the cache object */ +-#endif +- +-}; +- + /*prototypes*/ + static void groupwise_transfer_messages_to (CamelFolder *source, + GPtrArray *uids, +@@ -94,9 +85,7 @@ + #define d(x) + + static CamelMimeMessage * +-groupwise_folder_get_message( CamelFolder *folder, +- const char *uid, +- CamelException *ex ) ++groupwise_folder_get_message (CamelFolder *folder, const char *uid, CamelException *ex) + { + CamelMimeMessage *msg = NULL; + CamelGroupwiseFolder *gw_folder = CAMEL_GROUPWISE_FOLDER(folder); +@@ -107,11 +96,10 @@ + EGwConnectionStatus status; + EGwConnection *cnc; + EGwItem *item; +- CamelStream *stream, *cache_stream; ++ CamelStream *stream; + int errno; + + /* see if it is there in cache */ +- + mi = (CamelGroupwiseMessageInfo *) camel_folder_summary_uid (folder->summary, uid); + if (mi == NULL) { + camel_exception_setv(ex, CAMEL_EXCEPTION_FOLDER_INVALID_UID, +@@ -119,41 +107,38 @@ + return NULL; + } + +- cache_stream = camel_data_cache_get (gw_folder->cache, "cache", uid, ex); +- stream = camel_stream_mem_new (); +- if (cache_stream) { ++ CAMEL_SERVICE_LOCK (folder->parent_store, connect_lock); ++ ++ if ((stream = camel_data_cache_get (gw_folder->cache, "cache", uid, ex))) { + msg = camel_mime_message_new (); +- camel_stream_reset (stream); +- camel_stream_write_to_stream (cache_stream, stream); +- camel_stream_reset (stream); + if (camel_data_wrapper_construct_from_stream ((CamelDataWrapper *) msg, stream) == -1) { + if (errno == EINTR) { + camel_exception_setv (ex, CAMEL_EXCEPTION_USER_CANCEL, _("User cancelled")); + camel_object_unref (msg); +- camel_object_unref (cache_stream); + camel_object_unref (stream); + camel_message_info_free (&mi->info); ++ CAMEL_SERVICE_UNLOCK (folder->parent_store, connect_lock); + return NULL; +- } else { +- camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM, _("Cannot get message %s: %s"), +- uid, g_strerror (errno)); +- camel_object_unref (msg); +- msg = NULL; + } ++ ++ camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM, _("Cannot get message %s: %s"), ++ uid, g_strerror (errno)); ++ camel_object_unref (stream); ++ camel_object_unref (msg); ++ msg = NULL; ++ } else { ++ camel_object_unref (stream); ++ camel_message_info_free (&mi->info); ++ CAMEL_SERVICE_UNLOCK (folder->parent_store, connect_lock); ++ return msg; + } +- camel_object_unref (cache_stream); +- } +- camel_object_unref (stream); +- +- if (msg != NULL) { +- camel_message_info_free (&mi->info); +- return msg; + } + + if (((CamelOfflineStore *) gw_store)->state == CAMEL_OFFLINE_STORE_NETWORK_UNAVAIL) { + camel_exception_set (ex, CAMEL_EXCEPTION_SERVICE_UNAVAILABLE, + _("This message is not available in offline mode.")); + camel_message_info_free (&mi->info); ++ CAMEL_SERVICE_UNLOCK (folder->parent_store, connect_lock); + return NULL; + } + +@@ -162,6 +147,7 @@ + camel_exception_set (ex, CAMEL_EXCEPTION_SERVICE_UNAVAILABLE, + _("This message is not available in offline mode.")); + camel_message_info_free (&mi->info); ++ CAMEL_SERVICE_UNLOCK (folder->parent_store, connect_lock); + return NULL; + } + +@@ -173,6 +159,7 @@ + g_free (container_id); + camel_exception_set (ex, CAMEL_EXCEPTION_SERVICE_INVALID, _("Could not get message")); + camel_message_info_free (&mi->info); ++ CAMEL_SERVICE_UNLOCK (folder->parent_store, connect_lock); + return NULL; + } + +@@ -181,30 +168,30 @@ + camel_exception_set (ex, CAMEL_EXCEPTION_SERVICE_INVALID, _("Could not get message")); + g_free (container_id); + camel_message_info_free (&mi->info); +- ++ CAMEL_SERVICE_UNLOCK (folder->parent_store, connect_lock); + return NULL; + } + +- if (msg) +- camel_medium_set_header (CAMEL_MEDIUM (msg), "X-Evolution-Source", groupwise_base_url_lookup (priv)); ++ camel_medium_set_header (CAMEL_MEDIUM (msg), "X-Evolution-Source", groupwise_base_url_lookup (priv)); + +- if(!strcmp (folder->full_name, "Sent Items")) ++ if (!strcmp (folder->full_name, "Sent Items")) + goto end; /*Dont cache if its sent items, since we need to Track Status*/ + + /* add to cache */ +- CAMEL_GROUPWISE_FOLDER_LOCK (folder, cache_lock); +- if ((cache_stream = camel_data_cache_add (gw_folder->cache, "cache", uid, NULL))) { +- if (camel_data_wrapper_write_to_stream ((CamelDataWrapper *) msg, cache_stream) == -1 +- || camel_stream_flush (cache_stream) == -1) ++ if ((stream = camel_data_cache_add (gw_folder->cache, "cache", uid, NULL))) { ++ if (camel_data_wrapper_write_to_stream ((CamelDataWrapper *) msg, stream) == -1 ++ || camel_stream_flush (stream) == -1) + camel_data_cache_remove (gw_folder->cache, "cache", uid, NULL); +- camel_object_unref (cache_stream); ++ camel_object_unref (stream); + } +- +- CAMEL_GROUPWISE_FOLDER_UNLOCK (folder, cache_lock); + + end: ++ + camel_message_info_free (&mi->info); + g_free (container_id); ++ ++ CAMEL_SERVICE_UNLOCK (folder->parent_store, connect_lock); ++ + return msg; + } + +@@ -411,18 +398,20 @@ + + summary_path = g_strdup_printf ("%s/summary", folder_dir); + +- CAMEL_GROUPWISE_FOLDER_LOCK (folder, cache_lock); ++ CAMEL_SERVICE_LOCK (folder->parent_store, connect_lock); ++ + g_free (gw_folder->cache->path); + gw_folder->cache->path = g_strdup (folder_dir); +- CAMEL_GROUPWISE_FOLDER_UNLOCK (folder, cache_lock); +- ++ + ((CamelFolderClass *)parent_class)->rename(folder, new); + camel_folder_summary_set_filename (folder->summary, summary_path); +- ++ + state_file = g_strdup_printf ("%s/cmeta", folder_dir); + camel_object_set(folder, NULL, CAMEL_OBJECT_STATE_FILE, state_file, NULL); + g_free (state_file); +- ++ ++ CAMEL_SERVICE_UNLOCK (folder->parent_store, connect_lock); ++ + g_free (summary_path); + g_free (folder_dir); + } +@@ -433,10 +422,12 @@ + CamelGroupwiseFolder *gw_folder = CAMEL_GROUPWISE_FOLDER(folder); + GPtrArray *matches; + +- CAMEL_GROUPWISE_FOLDER_LOCK(folder, search_lock); ++ CAMEL_SERVICE_LOCK (folder->parent_store, connect_lock); ++ + camel_folder_search_set_folder (gw_folder->search, folder); + matches = camel_folder_search_search(gw_folder->search, expression, NULL, ex); +- CAMEL_GROUPWISE_FOLDER_UNLOCK(gw_folder, search_lock); ++ ++ CAMEL_SERVICE_UNLOCK (folder->parent_store, connect_lock); + + return matches; + } +@@ -450,12 +441,12 @@ + if (uids->len == 0) + return g_ptr_array_new(); + +- CAMEL_GROUPWISE_FOLDER_LOCK(folder, search_lock); +- ++ CAMEL_SERVICE_LOCK (folder->parent_store, connect_lock); ++ + camel_folder_search_set_folder(gw_folder->search, folder); + matches = camel_folder_search_search(gw_folder->search, expression, uids, ex); + +- CAMEL_GROUPWISE_FOLDER_UNLOCK(gw_folder, search_lock); ++ CAMEL_SERVICE_UNLOCK (folder->parent_store, connect_lock); + + return matches; + } +@@ -467,12 +458,11 @@ + + g_return_if_fail (gw_folder->search); + +- CAMEL_GROUPWISE_FOLDER_LOCK(folder, search_lock); ++ CAMEL_SERVICE_LOCK (folder->parent_store, connect_lock); + + camel_folder_search_free_result (gw_folder->search, uids); +- +- CAMEL_GROUPWISE_FOLDER_UNLOCK(gw_folder, search_lock); + ++ CAMEL_SERVICE_UNLOCK (folder->parent_store, connect_lock); + } + + /******************* functions specific to Junk Mail Handling**************/ +@@ -596,31 +586,29 @@ + EGwConnectionStatus status; + EGwConnection *cnc; + int count, i; +- + GList *deleted_items, *deleted_head = NULL; + + deleted_items = NULL; +- +- ++ ++ CAMEL_SERVICE_LOCK (gw_store, connect_lock); ++ + if (((CamelOfflineStore *) gw_store)->state == CAMEL_OFFLINE_STORE_NETWORK_UNAVAIL || + ((CamelService *)gw_store)->status == CAMEL_SERVICE_DISCONNECTED) { + groupwise_sync_summary (folder, ex); ++ CAMEL_SERVICE_UNLOCK (gw_store, connect_lock); + return; + } + cnc = cnc_lookup (priv); + + container_id = camel_groupwise_store_container_id_lookup (gw_store, folder->full_name) ; +- +- CAMEL_SERVICE_LOCK (gw_store, connect_lock); ++ + if (!camel_groupwise_store_connected (gw_store, ex)) { + CAMEL_SERVICE_UNLOCK (gw_store, connect_lock); + camel_exception_clear (ex); + return; + } +- CAMEL_SERVICE_UNLOCK (gw_store, connect_lock); +- ++ + count = camel_folder_summary_count (folder->summary); +- CAMEL_GROUPWISE_FOLDER_LOCK (folder, cache_lock); + for (i=0 ; i summary, i); +@@ -659,17 +647,13 @@ + } + + if (g_list_length (deleted_items) == GROUPWISE_BULK_DELETE_LIMIT ) { +- CAMEL_SERVICE_LOCK (gw_store, connect_lock); + status = e_gw_connection_remove_items (cnc, container_id, deleted_items); +- CAMEL_SERVICE_UNLOCK (gw_store, connect_lock); + if (status == E_GW_CONNECTION_STATUS_OK) { + char *uid; + while (deleted_items) { + uid = (char *)deleted_items->data; +- CAMEL_GROUPWISE_FOLDER_LOCK (folder, cache_lock); + camel_folder_summary_remove_uid (folder->summary, uid); + camel_data_cache_remove(gw_folder->cache, "cache", uid, ex); +- CAMEL_GROUPWISE_FOLDER_UNLOCK (folder, cache_lock); + deleted_items = g_list_next (deleted_items); + count -= GROUPWISE_BULK_DELETE_LIMIT; + i -= GROUPWISE_BULK_DELETE_LIMIT; +@@ -681,19 +665,15 @@ + } + camel_message_info_free (info); + } +- CAMEL_GROUPWISE_FOLDER_UNLOCK (folder, cache_lock); ++ + if (deleted_items) { +- CAMEL_SERVICE_LOCK (gw_store, connect_lock); + status = e_gw_connection_remove_items (cnc, container_id, deleted_items); +- CAMEL_SERVICE_UNLOCK (gw_store, connect_lock); + if (status == E_GW_CONNECTION_STATUS_OK) { + char *uid; + while (deleted_items) { + uid = (char *)deleted_items->data; +- CAMEL_GROUPWISE_FOLDER_LOCK (folder, cache_lock); + camel_folder_summary_remove_uid (folder->summary, uid); + camel_data_cache_remove(gw_folder->cache, "cache", uid, ex); +- CAMEL_GROUPWISE_FOLDER_UNLOCK (folder, cache_lock); + deleted_items = g_list_next (deleted_items); + count -= GROUPWISE_BULK_DELETE_LIMIT; + i -= GROUPWISE_BULK_DELETE_LIMIT; +@@ -702,23 +682,17 @@ + g_list_free (deleted_head); + } + +- if (read_items && g_list_length (read_items)) { +- CAMEL_SERVICE_LOCK (gw_store, connect_lock); ++ if (read_items && g_list_length (read_items)) + e_gw_connection_mark_read (cnc, read_items); +- CAMEL_SERVICE_UNLOCK (gw_store, connect_lock); +- } +- ++ + if (expunge) { +- CAMEL_SERVICE_LOCK (gw_store, connect_lock); + status = e_gw_connection_purge_deleted_items (cnc); +- if (status == E_GW_CONNECTION_STATUS_OK) { ++ if (status == E_GW_CONNECTION_STATUS_OK) + g_message ("Purged deleted items in %s", folder->name); +- } +- CAMEL_SERVICE_UNLOCK (gw_store, connect_lock); + } +- +- CAMEL_SERVICE_LOCK (gw_store, connect_lock); ++ + groupwise_sync_summary (folder, ex); ++ + CAMEL_SERVICE_UNLOCK (gw_store, connect_lock); + } + +@@ -732,7 +706,6 @@ + char *summary_file, *state_file, *journal_file; + char *short_name; + +- + folder = CAMEL_FOLDER (camel_object_new(camel_groupwise_folder_get_type ()) ); + + gw_folder = CAMEL_GROUPWISE_FOLDER(folder); +@@ -1063,7 +1036,7 @@ + gw_update_cache (folder, list, ex, FALSE); + } + } +- ++ + CAMEL_SERVICE_UNLOCK (gw_store, connect_lock); + is_locked = FALSE; + +@@ -1097,7 +1070,6 @@ + end1: + if (is_locked) + CAMEL_SERVICE_UNLOCK (gw_store, connect_lock); +- return; + } + + static void +@@ -1318,7 +1290,6 @@ + mail_msg = groupwise_folder_item_to_msg (folder, item, ex); + if (mail_msg) + camel_medium_set_header (CAMEL_MEDIUM (mail_msg), "X-Evolution-Source", groupwise_base_url_lookup (priv)); +- CAMEL_GROUPWISE_FOLDER_LOCK (folder, cache_lock); + if ((cache_stream = camel_data_cache_add (gw_folder->cache, "cache", id, NULL))) { + if (camel_data_wrapper_write_to_stream ((CamelDataWrapper *) mail_msg, cache_stream) == -1 || camel_stream_flush (cache_stream) == -1) + camel_data_cache_remove (gw_folder->cache, "cache", id, NULL); +@@ -1326,7 +1297,6 @@ + } + + camel_object_unref (mail_msg); +- CAMEL_GROUPWISE_FOLDER_UNLOCK (folder, cache_lock); + } + /******************** Caching stuff ends *************************/ + i++; +@@ -1720,6 +1690,7 @@ + static void + gw_update_all_items ( CamelFolder *folder, GList *item_list, CamelException *ex) + { ++ CamelGroupwiseStore *gw_store = CAMEL_GROUPWISE_STORE (folder->parent_store); + CamelGroupwiseFolder *gw_folder = CAMEL_GROUPWISE_FOLDER (folder); + GPtrArray *summary = NULL; + int index = 0; +@@ -1741,11 +1712,11 @@ + temp = g_list_find_custom (item_list, (const char *)info->uid, (GCompareFunc) strcmp); + } + if (!temp) { +- CAMEL_GROUPWISE_FOLDER_LOCK (folder, cache_lock); ++ CAMEL_SERVICE_LOCK (gw_store, connect_lock); + camel_folder_summary_remove_uid (folder->summary, info->uid); + camel_data_cache_remove (gw_folder->cache, "cache", info->uid, ex); + camel_folder_change_info_remove_uid (changes, info->uid); +- CAMEL_GROUPWISE_FOLDER_UNLOCK (folder, cache_lock); ++ CAMEL_SERVICE_UNLOCK (gw_store, connect_lock); + } else { + item_list = g_list_delete_link (item_list, temp); + } +@@ -1754,8 +1725,6 @@ + camel_object_trigger_event (folder, "folder_changed", changes); + + if (item_list) { +- CamelGroupwiseStore *gw_store = CAMEL_GROUPWISE_STORE (folder->parent_store); +- + CAMEL_SERVICE_LOCK (gw_store, connect_lock); + gw_update_cache (folder, item_list, ex, TRUE); + CAMEL_SERVICE_UNLOCK (gw_store, connect_lock); +@@ -1801,6 +1770,7 @@ + cnc = cnc_lookup (priv); + + CAMEL_SERVICE_LOCK (folder->parent_store, connect_lock); ++ + /*Get the container id*/ + container_id = camel_groupwise_store_container_id_lookup (gw_store, folder->full_name) ; + +@@ -1974,15 +1944,15 @@ + int i, max; + gboolean delete = FALSE; + GList *deleted_items, *deleted_head = NULL; +- + + deleted_items = NULL; + cnc = cnc_lookup (priv); + if (!cnc) + return; +- ++ ++ CAMEL_SERVICE_LOCK (groupwise_store, connect_lock); ++ + if (!strcmp (folder->full_name, "Trash")) { +- CAMEL_SERVICE_LOCK (groupwise_store, connect_lock); + status = e_gw_connection_purge_deleted_items (cnc); + if (status == E_GW_CONNECTION_STATUS_OK) { + camel_folder_freeze (folder); +@@ -1997,7 +1967,7 @@ + changes = camel_folder_change_info_new (); + + container_id = g_strdup (camel_groupwise_store_container_id_lookup (groupwise_store, folder->full_name)) ; +- ++ + max = camel_folder_summary_count (folder->summary); + for (i = 0; i < max; i++) { + info = camel_folder_summary_index (folder->summary, i); +@@ -2013,18 +1983,14 @@ + } + if (g_list_length (deleted_items) == GROUPWISE_BULK_DELETE_LIMIT ) { + /* Read the FIXME below */ +- CAMEL_SERVICE_LOCK (groupwise_store, connect_lock); + status = e_gw_connection_remove_items (cnc, container_id, deleted_items); +- CAMEL_SERVICE_UNLOCK (groupwise_store, connect_lock); + if (status == E_GW_CONNECTION_STATUS_OK) { + char *uid; + while (deleted_items) { + uid = (char *)deleted_items->data; +- CAMEL_GROUPWISE_FOLDER_LOCK (folder, cache_lock); + camel_folder_change_info_remove_uid (changes, uid); + camel_folder_summary_remove_uid (folder->summary, uid); + camel_data_cache_remove(gw_folder->cache, "cache", uid, ex); +- CAMEL_GROUPWISE_FOLDER_UNLOCK (folder, cache_lock); + deleted_items = g_list_next (deleted_items); + max -= GROUPWISE_BULK_DELETE_LIMIT; + i -= GROUPWISE_BULK_DELETE_LIMIT; +@@ -2038,18 +2004,14 @@ + + if (deleted_items) { + /* FIXME: Put these in a function and reuse it inside the above loop, here and in groupwise_sync*/ +- CAMEL_SERVICE_LOCK (groupwise_store, connect_lock); + status = e_gw_connection_remove_items (cnc, container_id, deleted_items); +- CAMEL_SERVICE_UNLOCK (groupwise_store, connect_lock); + if (status == E_GW_CONNECTION_STATUS_OK) { + char *uid; + while (deleted_items) { + uid = (char *)deleted_items->data; +- CAMEL_GROUPWISE_FOLDER_LOCK (folder, cache_lock); + camel_folder_change_info_remove_uid (changes, uid); + camel_folder_summary_remove_uid (folder->summary, uid); + camel_data_cache_remove(gw_folder->cache, "cache", uid, ex); +- CAMEL_GROUPWISE_FOLDER_UNLOCK (folder, cache_lock); + deleted_items = g_list_next (deleted_items); + } + } +@@ -2063,6 +2025,8 @@ + + g_free (container_id); + camel_folder_change_info_free (changes); ++ ++ CAMEL_SERVICE_UNLOCK (groupwise_store, connect_lock); + } + + +@@ -2093,18 +2057,11 @@ + CamelGroupwiseFolder *gw_folder = CAMEL_GROUPWISE_FOLDER (object); + CamelFolder *folder = CAMEL_FOLDER (object); + +- + folder->permanent_flags = CAMEL_MESSAGE_ANSWERED | CAMEL_MESSAGE_DELETED | + CAMEL_MESSAGE_DRAFT | CAMEL_MESSAGE_FLAGGED | CAMEL_MESSAGE_SEEN; + + folder->folder_flags = CAMEL_FOLDER_HAS_SUMMARY_CAPABILITY | CAMEL_FOLDER_HAS_SEARCH_CAPABILITY; + +- gw_folder->priv = g_malloc0 (sizeof(*gw_folder->priv)); +- +-#ifdef ENABLE_THREADS +- gw_folder->priv->search_lock = e_mutex_new(E_MUTEX_SIMPLE); +- gw_folder->priv->cache_lock = e_mutex_new(E_MUTEX_REC); +-#endif + gw_folder->need_rescan = TRUE; + } + +@@ -2112,21 +2069,17 @@ + camel_groupwise_folder_finalize (CamelObject *object) + { + CamelGroupwiseFolder *gw_folder = CAMEL_GROUPWISE_FOLDER (object); +- +- if (gw_folder->priv) +- g_free(gw_folder->priv); ++ + if (gw_folder->cache) + camel_object_unref (gw_folder->cache); + if (gw_folder->search) + camel_object_unref (gw_folder->search); +- + } + + CamelType + camel_groupwise_folder_get_type (void) + { + static CamelType camel_groupwise_folder_type = CAMEL_INVALID_TYPE; +- + + if (camel_groupwise_folder_type == CAMEL_INVALID_TYPE) { + camel_groupwise_folder_type = +Index: camel/providers/groupwise/camel-groupwise-folder.h +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/groupwise/camel-groupwise-folder.h,v +retrieving revision 1.8 +diff -u -r1.8 camel-groupwise-folder.h +--- camel/providers/groupwise/camel-groupwise-folder.h 31 Aug 2005 04:26:07 -0000 1.8 ++++ camel/providers/groupwise/camel-groupwise-folder.h 8 Jun 2006 15:32:24 -0000 +@@ -54,8 +54,6 @@ + struct _CamelGroupwiseFolder { + CamelOfflineFolder parent_object; + +- struct _CamelGroupwiseFolderPrivate *priv; +- + CamelFolderSearch *search; + + CamelOfflineJournal *journal; diff --git a/bnc-181906-eds-ex-crash.diff b/bnc-181906-eds-ex-crash.diff new file mode 100644 index 0000000..8500f67 --- /dev/null +++ b/bnc-181906-eds-ex-crash.diff @@ -0,0 +1,16 @@ +Index: servers/exchange/storage/exchange-account.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/servers/exchange/storage/exchange-account.c,v +retrieving revision 1.32 +diff -u -p -r1.32 exchange-account.c +--- servers/exchange/storage/exchange-account.c 10 May 2006 08:55:24 -0000 1.32 ++++ servers/exchange/storage/exchange-account.c 6 Jun 2006 08:24:29 -0000 +@@ -1984,6 +1984,8 @@ exchange_account_new (EAccountList *acco + } + + account = g_object_new (EXCHANGE_TYPE_ACCOUNT, NULL); ++ if (!account) ++ return NULL; + account->priv->account_list = account_list; + g_object_ref (account_list); + account->priv->account = adata; diff --git a/bnc-183819-evo-crashed-closing-offline.patch b/bnc-183819-evo-crashed-closing-offline.patch new file mode 100644 index 0000000..309e7be --- /dev/null +++ b/bnc-183819-evo-crashed-closing-offline.patch @@ -0,0 +1,60 @@ +--- camel/providers/groupwise/camel-groupwise-folder.c.orig 2006-06-16 01:25:47.000000000 +0530 ++++ camel/providers/groupwise/camel-groupwise-folder.c 2006-06-16 10:52:22.000000000 +0530 +@@ -795,16 +795,27 @@ update_update (CamelSession *session, Ca + struct _folder_update_msg *m = (struct _folder_update_msg *)msg; + EGwConnectionStatus status; + CamelException *ex = NULL; ++ CamelGroupwiseStore *gw_store = CAMEL_GROUPWISE_STORE (m->folder->parent_store); + + GList *item_list, *items_full_list = NULL, *last_element=NULL; + int cursor = 0; + const char *position = E_GW_CURSOR_POSITION_END; + gboolean done; + ++ /* Hold the connect_lock. ++ In case if user went offline, don't do anything. ++ m->cnc would have become invalid, as the store disconnect unrefs it. ++ */ ++ CAMEL_SERVICE_LOCK (gw_store, connect_lock); ++ if (((CamelOfflineStore *) gw_store)->state == CAMEL_OFFLINE_STORE_NETWORK_UNAVAIL || ++ ((CamelService *)gw_store)->status == CAMEL_SERVICE_DISCONNECTED) { ++ goto end1; ++ } ++ + status = e_gw_connection_create_cursor (m->cnc, m->container_id, "id", NULL, &cursor); + if (status != E_GW_CONNECTION_STATUS_OK) { + g_warning ("ERROR update update\n"); +- return ; ++ goto end1; + } + + done = FALSE; +@@ -816,7 +827,7 @@ update_update (CamelSession *session, Ca + if (status != E_GW_CONNECTION_STATUS_OK) { + g_warning ("ERROR update update\n"); + e_gw_connection_destroy_cursor (m->cnc, m->container_id, cursor); +- return; ++ goto end1; + } + + if (!item_list || g_list_length (item_list) == 0) +@@ -839,6 +850,7 @@ update_update (CamelSession *session, Ca + } + e_gw_connection_destroy_cursor (m->cnc, m->container_id, cursor); + ++ CAMEL_SERVICE_UNLOCK (gw_store, connect_lock); + /* Take out only the first part in the list until the @ since it is guaranteed + to be unique only until that symbol */ + +@@ -860,6 +872,11 @@ update_update (CamelSession *session, Ca + + g_print ("\nNumber of items in the folder: %d \n", g_list_length(items_full_list)); + gw_update_all_items (m->folder, items_full_list, ex); ++ ++ return; ++ end1: ++ CAMEL_SERVICE_UNLOCK (gw_store, connect_lock); ++ return; + } + + static void diff --git a/bnc-187529-calendar-cache-population.patch b/bnc-187529-calendar-cache-population.patch new file mode 100644 index 0000000..36c24db --- /dev/null +++ b/bnc-187529-calendar-cache-population.patch @@ -0,0 +1,174 @@ +--- calendar/backends/groupwise/e-cal-backend-groupwise.c.orig 2006-06-26 14:26:10.000000000 +0530 ++++ calendar/backends/groupwise/e-cal-backend-groupwise.c 2006-06-26 14:30:26.000000000 +0530 +@@ -132,13 +132,19 @@ populate_cache (ECalBackendGroupwise *cb + EGwConnectionStatus status; + ECalComponent *comp; + GList *list = NULL, *l; +- gboolean done = FALSE; ++ gboolean done = FALSE, forward = FALSE; + int cursor = 0; + guint32 total, num = 0; +- int percent = 0; ++ int percent = 0, i; + const char *position = E_GW_CURSOR_POSITION_END; + icalcomponent_kind kind; + const char *type; ++ EGwFilter* filter[3]; ++ char l_str[26]; ++ char h_str[26]; ++ icaltimetype temp; ++ struct tm tm; ++ time_t h_time, l_time; + + priv = cbgw->priv; + kind = e_cal_backend_get_kind (E_CAL_BACKEND (cbgw)); +@@ -155,66 +161,101 @@ populate_cache (ECalBackendGroupwise *cb + else + type = "Task"; + +- status = e_gw_connection_create_cursor (priv->cnc, +- priv->container_id, +- "recipients message recipientStatus attachments default peek", NULL, &cursor); +- if (status != E_GW_CONNECTION_STATUS_OK) { +- e_cal_backend_groupwise_notify_error_code (cbgw, status); +- g_mutex_unlock (mutex); +- return status; +- } +- +- while (!done) { +- +- status = e_gw_connection_read_cursor (priv->cnc, priv->container_id, cursor, FALSE, CURSOR_ITEM_LIMIT, position, &list); ++ /* Fetch the data with a bias to present, near past/future */ ++ temp = icaltime_current_time_with_zone (icaltimezone_get_utc_timezone ()); ++ i = g_ascii_strtod (g_getenv ("PRELOAD_WINDOW_DAYS")? g_getenv ("PRELOAD_WINDOW_DAYS"):"15", NULL); ++ temp.day -= i; ++ icaltime_normalize (temp); ++ l_time = icaltime_as_timet_with_zone (temp, icaltimezone_get_utc_timezone ()); ++ gmtime_r (&l_time, &tm); ++ strftime (l_str, 26, "%Y-%m-%dT%H:%M:%SZ", &tm); ++ temp.day += (2*i); ++ icaltime_normalize (temp); ++ h_time = icaltime_as_timet_with_zone (temp, icaltimezone_get_utc_timezone ()); ++ gmtime_r (&h_time, &tm); ++ strftime (h_str, 26, "%Y-%m-%dT%H:%M:%SZ", &tm); ++ ++ filter[0] = e_gw_filter_new (); ++ e_gw_filter_add_filter_component (filter[0], E_GW_FILTER_OP_GREATERTHAN_OR_EQUAL, "startDate", l_str); ++ e_gw_filter_add_filter_component (filter[0], E_GW_FILTER_OP_LESSTHAN_OR_EQUAL, "startDate", h_str); ++ e_gw_filter_group_conditions (filter[0], E_GW_FILTER_OP_AND, 2); ++ filter[1] = e_gw_filter_new (); ++ e_gw_filter_add_filter_component (filter[1], E_GW_FILTER_OP_GREATERTHAN, "startDate", h_str); ++ filter[2] = e_gw_filter_new (); ++ e_gw_filter_add_filter_component (filter[2], E_GW_FILTER_OP_LESSTHAN, "startDate", l_str); ++ ++ for (i = 0; i < 3; i++) { ++ status = e_gw_connection_create_cursor (priv->cnc, ++ priv->container_id, ++ "recipients message recipientStatus attachments default peek", filter[i], &cursor); + if (status != E_GW_CONNECTION_STATUS_OK) { + e_cal_backend_groupwise_notify_error_code (cbgw, status); + g_mutex_unlock (mutex); + return status; + } +- for (l = list; l != NULL; l = g_list_next(l)) { +- EGwItem *item; +- char *progress_string = NULL; ++ done = FALSE; ++ if (i == 1) { ++ position = E_GW_CURSOR_POSITION_START; ++ forward = TRUE; ++ ++ } else { ++ position = E_GW_CURSOR_POSITION_END; ++ forward = FALSE; ++ } + +- item = E_GW_ITEM (l->data); +- comp = e_gw_item_to_cal_component (item, cbgw); +- g_object_unref (item); ++ while (!done) { + +- /* Show the progress information */ +- num++; +- percent = ((float) num/total) * 100; +- +- /* FIXME The total obtained from the server is wrong. Sometimes the num can +- be greater than the total. The following makes sure that the percentage is not >= 100 */ +- +- if (percent > 100) +- percent = 99; +- +- progress_string = g_strdup_printf (_("Loading %s items"), type); +- e_cal_backend_notify_view_progress (E_CAL_BACKEND (cbgw), progress_string, percent); ++ status = e_gw_connection_read_cursor (priv->cnc, priv->container_id, cursor, forward, CURSOR_ITEM_LIMIT, position, &list); ++ if (status != E_GW_CONNECTION_STATUS_OK) { ++ e_cal_backend_groupwise_notify_error_code (cbgw, status); ++ g_mutex_unlock (mutex); ++ return status; ++ } ++ for (l = list; l != NULL; l = g_list_next(l)) { ++ EGwItem *item; ++ char *progress_string = NULL; ++ ++ item = E_GW_ITEM (l->data); ++ comp = e_gw_item_to_cal_component (item, cbgw); ++ g_object_unref (item); ++ ++ /* Show the progress information */ ++ num++; ++ percent = ((float) num/total) * 100; + +- if (E_IS_CAL_COMPONENT (comp)) { +- char *comp_str; ++ /* FIXME The total obtained from the server is wrong. Sometimes the num can ++ be greater than the total. The following makes sure that the percentage is not >= 100 */ ++ ++ if (percent > 100) ++ percent = 99; ++ ++ progress_string = g_strdup_printf (_("Loading %s items"), type); ++ e_cal_backend_notify_view_progress (E_CAL_BACKEND (cbgw), progress_string, percent); + +- e_cal_component_commit_sequence (comp); +- if (kind == icalcomponent_isa (e_cal_component_get_icalcomponent (comp))) { +- comp_str = e_cal_component_get_as_string (comp); +- e_cal_backend_notify_object_created (E_CAL_BACKEND (cbgw), (const char *) comp_str); +- g_free (comp_str); ++ if (E_IS_CAL_COMPONENT (comp)) { ++ char *comp_str; ++ ++ e_cal_component_commit_sequence (comp); ++ if (kind == icalcomponent_isa (e_cal_component_get_icalcomponent (comp))) { ++ comp_str = e_cal_component_get_as_string (comp); ++ e_cal_backend_notify_object_created (E_CAL_BACKEND (cbgw), (const char *) comp_str); ++ g_free (comp_str); ++ } ++ e_cal_backend_cache_put_component (priv->cache, comp); ++ g_object_unref (comp); + } +- e_cal_backend_cache_put_component (priv->cache, comp); +- g_object_unref (comp); ++ g_free (progress_string); + } +- g_free (progress_string); ++ ++ if (!list || g_list_length (list) == 0) ++ done = TRUE; ++ g_list_free (list); ++ list = NULL; ++ position = E_GW_CURSOR_POSITION_CURRENT; + } +- +- if (!list || g_list_length (list) == 0) +- done = TRUE; +- g_list_free (list); +- list = NULL; +- position = E_GW_CURSOR_POSITION_CURRENT; +- } +- e_gw_connection_destroy_cursor (priv->cnc, priv->container_id, cursor); ++ e_gw_connection_destroy_cursor (priv->cnc, priv->container_id, cursor); ++ g_object_unref (filter[i]); ++ } + e_cal_backend_notify_view_done (E_CAL_BACKEND (cbgw), GNOME_Evolution_Calendar_Success); + + g_mutex_unlock (mutex); diff --git a/bulk-delete.patch b/bulk-delete.patch new file mode 100644 index 0000000..0531247 --- /dev/null +++ b/bulk-delete.patch @@ -0,0 +1,190 @@ +Index: camel/providers/groupwise/camel-groupwise-folder.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/groupwise/camel-groupwise-folder.c,v +retrieving revision 1.130 +diff -u -p -r1.130 camel-groupwise-folder.c +--- camel/providers/groupwise/camel-groupwise-folder.c 18 Apr 2006 15:15:30 -0000 1.130 ++++ camel/providers/groupwise/camel-groupwise-folder.c 24 Apr 2006 08:37:43 -0000 +@@ -61,6 +61,7 @@ + #define JUNK_FOLDER "Junk Mail" + #define READ_CURSOR_MAX_IDS 500 + #define MAX_ATTACHMENT_SIZE 1*1024*1024 /*In bytes*/ ++#define GROUPWISE_BULK_DELETE_LIMIT 100 + + static CamelOfflineFolderClass *parent_class = NULL; + +@@ -586,7 +587,11 @@ groupwise_sync (CamelFolder *folder, gbo + EGwConnectionStatus status; + EGwConnection *cnc; + int count, i; +- ++ ++ GList *deleted_items, *deleted_head=NULL; ++ ++ deleted_items = NULL; ++ + if (((CamelOfflineStore *) gw_store)->state == CAMEL_OFFLINE_STORE_NETWORK_UNAVAIL || + ((CamelService *)gw_store)->status == CAMEL_SERVICE_DISCONNECTED) { + groupwise_sync_summary (folder, ex); +@@ -606,7 +611,7 @@ groupwise_sync (CamelFolder *folder, gbo + + count = camel_folder_summary_count (folder->summary); + CAMEL_GROUPWISE_FOLDER_LOCK (folder, cache_lock); +- for (i=0 ; i summary, i); + gw_info = (CamelGroupwiseMessageInfo *) info; +@@ -635,22 +640,57 @@ groupwise_sync (CamelFolder *folder, gbo + if (diff.changed & CAMEL_MESSAGE_SEEN) + read_items = g_list_append (read_items, (char *)uid); + if (diff.changed & CAMEL_MESSAGE_DELETED) { +- CAMEL_SERVICE_LOCK (gw_store, connect_lock); +- status = e_gw_connection_remove_item (cnc, container_id, uid); +- if (status == E_GW_CONNECTION_STATUS_OK) { +- CAMEL_GROUPWISE_FOLDER_LOCK (folder, cache_lock); +- camel_folder_summary_remove (folder->summary, info); +- camel_data_cache_remove(gw_folder->cache, "cache", uid, ex); +- CAMEL_GROUPWISE_FOLDER_UNLOCK (folder, cache_lock); +- i--; count--; ++ if (deleted_items) ++ deleted_items = g_list_prepend (deleted_items, (char *)camel_message_info_uid (info)); ++ else { ++ g_list_free (deleted_head); ++ deleted_head = NULL; ++ deleted_head = deleted_items = g_list_prepend (deleted_items, (char *)camel_message_info_uid (info)); ++ } ++ ++ if (g_list_length (deleted_items) == GROUPWISE_BULK_DELETE_LIMIT ) { ++ CAMEL_SERVICE_LOCK (gw_store, connect_lock); ++ status = e_gw_connection_remove_items (cnc, container_id, deleted_items); ++ CAMEL_SERVICE_UNLOCK (gw_store, connect_lock); ++ if (status == E_GW_CONNECTION_STATUS_OK) { ++ char *uid; ++ while (deleted_items) { ++ uid = (char *)deleted_items->data; ++ CAMEL_GROUPWISE_FOLDER_LOCK (folder, cache_lock); ++ camel_folder_summary_remove_uid (folder->summary, uid); ++ camel_data_cache_remove(gw_folder->cache, "cache", uid, ex); ++ CAMEL_GROUPWISE_FOLDER_UNLOCK (folder, cache_lock); ++ deleted_items = g_list_next (deleted_items); ++ count -= GROUPWISE_BULK_DELETE_LIMIT; ++ i -= GROUPWISE_BULK_DELETE_LIMIT; ++ } ++ } + } +- CAMEL_SERVICE_UNLOCK (gw_store, connect_lock); + } + } + } + camel_message_info_free (info); + } + CAMEL_GROUPWISE_FOLDER_UNLOCK (folder, cache_lock); ++ if (deleted_items) { ++ CAMEL_SERVICE_LOCK (gw_store, connect_lock); ++ status = e_gw_connection_remove_items (cnc, container_id, deleted_items); ++ CAMEL_SERVICE_UNLOCK (gw_store, connect_lock); ++ if (status == E_GW_CONNECTION_STATUS_OK) { ++ char *uid; ++ while (deleted_items) { ++ uid = (char *)deleted_items->data; ++ CAMEL_GROUPWISE_FOLDER_LOCK (folder, cache_lock); ++ camel_folder_summary_remove_uid (folder->summary, uid); ++ camel_data_cache_remove(gw_folder->cache, "cache", uid, ex); ++ CAMEL_GROUPWISE_FOLDER_UNLOCK (folder, cache_lock); ++ deleted_items = g_list_next (deleted_items); ++ count -= GROUPWISE_BULK_DELETE_LIMIT; ++ i -= GROUPWISE_BULK_DELETE_LIMIT; ++ } ++ } ++ g_list_free (deleted_head); ++ } + + if (read_items && g_list_length (read_items)) { + CAMEL_SERVICE_LOCK (gw_store, connect_lock); +@@ -1960,8 +2000,10 @@ groupwise_expunge (CamelFolder *folder, + CamelFolderChangeInfo *changes; + int i, max; + gboolean delete = FALSE; ++ GList *deleted_items, *deleted_head=NULL; ++ + +- ++ deleted_items = NULL; + cnc = cnc_lookup (priv); + if (!cnc) + return; +@@ -1988,26 +2030,62 @@ groupwise_expunge (CamelFolder *folder, + info = camel_folder_summary_index (folder->summary, i); + ginfo = (CamelGroupwiseMessageInfo *) info; + if (ginfo && (ginfo->info.flags & CAMEL_MESSAGE_DELETED)) { +- const char *uid = camel_message_info_uid (info); +- CAMEL_SERVICE_LOCK (groupwise_store, connect_lock); +- status = e_gw_connection_remove_item (cnc, container_id, uid); +- if (status == E_GW_CONNECTION_STATUS_OK) { ++ ++ if (deleted_items) ++ deleted_items = g_list_prepend (deleted_items, (char *)camel_message_info_uid (info)); ++ else { ++ g_list_free (deleted_head); ++ deleted_head = NULL; ++ deleted_head = deleted_items = g_list_prepend (deleted_items, (char *)camel_message_info_uid (info)); ++ } ++ if (g_list_length (deleted_items) == GROUPWISE_BULK_DELETE_LIMIT ) { ++ /* Read the FIXME below */ ++ CAMEL_SERVICE_LOCK (groupwise_store, connect_lock); ++ status = e_gw_connection_remove_items (cnc, container_id, deleted_items); ++ CAMEL_SERVICE_UNLOCK (groupwise_store, connect_lock); ++ if (status == E_GW_CONNECTION_STATUS_OK) { ++ char *uid; ++ while (deleted_items) { ++ uid = (char *)deleted_items->data; ++ CAMEL_GROUPWISE_FOLDER_LOCK (folder, cache_lock); ++ camel_folder_change_info_remove_uid (changes, uid); ++ camel_folder_summary_remove_uid (folder->summary, uid); ++ camel_data_cache_remove(gw_folder->cache, "cache", uid, ex); ++ CAMEL_GROUPWISE_FOLDER_UNLOCK (folder, cache_lock); ++ deleted_items = g_list_next (deleted_items); ++ max -= GROUPWISE_BULK_DELETE_LIMIT; ++ i -= GROUPWISE_BULK_DELETE_LIMIT; ++ } ++ } ++ delete = TRUE; ++ } ++ } ++ camel_message_info_free (info); ++ } ++ ++ if (deleted_items) { ++ /* FIXME: Put these in a function and reuse it inside the above loop, here and in groupwise_sync*/ ++ CAMEL_SERVICE_LOCK (groupwise_store, connect_lock); ++ status = e_gw_connection_remove_items (cnc, container_id, deleted_items); ++ CAMEL_SERVICE_UNLOCK (groupwise_store, connect_lock); ++ if (status == E_GW_CONNECTION_STATUS_OK) { ++ char *uid; ++ while (deleted_items) { ++ uid = (char *)deleted_items->data; + CAMEL_GROUPWISE_FOLDER_LOCK (folder, cache_lock); +- camel_folder_change_info_remove_uid (changes, (char *) uid); +- camel_folder_summary_remove (folder->summary, info); ++ camel_folder_change_info_remove_uid (changes, uid); ++ camel_folder_summary_remove_uid (folder->summary, uid); + camel_data_cache_remove(gw_folder->cache, "cache", uid, ex); + CAMEL_GROUPWISE_FOLDER_UNLOCK (folder, cache_lock); +- delete = TRUE; +- i--; max--; ++ deleted_items = g_list_next (deleted_items); + } +- CAMEL_SERVICE_UNLOCK (groupwise_store, connect_lock); + } +- camel_message_info_free (info); ++ delete = TRUE; ++ g_list_free (deleted_head); + } + + if (delete) + camel_object_trigger_event (CAMEL_OBJECT (folder), "folder_changed", changes); +- + + g_free (container_id); + camel_folder_change_info_free (changes); diff --git a/cal-attachment-filename-handling.patch b/cal-attachment-filename-handling.patch new file mode 100644 index 0000000..affa4c9 --- /dev/null +++ b/cal-attachment-filename-handling.patch @@ -0,0 +1,17 @@ +Index: calendar/libical/src/libical/icalvalue.c +=================================================================== +RCS file: /cvs/gnome/libical/src/libical/icalvalue.c,v +retrieving revision 1.22 +retrieving revision 1.23 +diff -u -p -r1.22 -r1.23 +--- calendar/libical/src/libical/icalvalue.c 15 Jun 2006 14:42:21 -0000 1.22 ++++ calendar/libical/src/libical/icalvalue.c 3 Jul 2006 14:29:43 -0000 1.23 +@@ -1346,7 +1346,7 @@ int icalvalue_decode_ical_string(const c + + icalmemory_append_char(&str,&str_p,&buf_sz,'\0'); + +- if ((int)strlen(str) >= nMaxBufferLen) { ++ if ((int)strlen(str) > nMaxBufferLen) { + return 0; + } + diff --git a/camel-partha-gw-fixes.patch b/camel-partha-gw-fixes.patch new file mode 100644 index 0000000..119271d --- /dev/null +++ b/camel-partha-gw-fixes.patch @@ -0,0 +1,298 @@ +diff -Nrup camel/providers/groupwise/camel-groupwise-folder.c /root/varadhan/2.5/mar-23/head/evolution-data-server-1.5.92/camel/providers/groupwise/camel-groupwise-folder.c +--- camel/providers/groupwise/camel-groupwise-folder.c 2006-03-23 14:08:09.734955209 +0100 ++++ /root/varadhan/2.5/mar-23/head/evolution-data-server-1.5.92/camel/providers/groupwise/camel-groupwise-folder.c 2006-03-23 12:07:49.000000000 +0100 +@@ -92,7 +92,7 @@ static void gw_update_cache ( CamelFolde + static CamelMimeMessage *groupwise_folder_item_to_msg ( CamelFolder *folder, EGwItem *item, CamelException *ex ); + + +-#define d(x) x ++#define d(x) + + static CamelMimeMessage * + groupwise_folder_get_message( CamelFolder *folder, +@@ -635,9 +635,10 @@ groupwise_sync (CamelFolder *folder, gbo + diff.changed &= folder->permanent_flags; + + /* weed out flag changes that we can't sync to the server */ +- if (!diff.changed) ++ if (!diff.changed) { + camel_message_info_free(info); +- else { ++ continue; ++ } else { + const char *uid = camel_message_info_uid (info); + if (diff.changed & CAMEL_MESSAGE_SEEN) + read_items = g_list_append (read_items, (char *)uid); +@@ -656,7 +657,6 @@ groupwise_sync (CamelFolder *folder, gbo + } + } + camel_message_info_free (info); +- info = NULL; + } + CAMEL_GROUPWISE_FOLDER_UNLOCK (folder, cache_lock); + +@@ -989,7 +989,6 @@ groupwise_refresh_folder(CamelFolder *fo + + /* The storing of time-stamp to summary code below should be commented if the + above commented code is uncommented */ +- + if (summary->time_string) + g_free (summary->time_string); + +@@ -1047,7 +1046,7 @@ end1: + return; + } + +-void ++static void + gw_update_cache (CamelFolder *folder, GList *list, CamelException *ex, gboolean uid_flag) + { + CamelGroupwiseMessageInfo *mi = NULL; +@@ -1069,6 +1068,7 @@ gw_update_cache (CamelFolder *folder, GL + int total_items = g_list_length (item_list), i=0; + + /*Assert lock*/ ++ CAMEL_SERVICE_ASSERT_LOCKED (gw_store, connect_lock); + changes = camel_folder_change_info_new (); + container_id = g_strdup (camel_groupwise_store_container_id_lookup (gw_store, folder->full_name)); + if (!container_id) { +@@ -1092,8 +1092,9 @@ gw_update_cache (CamelFolder *folder, GL + const char *id; + GSList *recp_list = NULL; + status_flags = 0; +- CamelStream *cache_stream; ++ CamelStream *cache_stream, *t_cache_stream; + CamelMimeMessage *mail_msg = NULL; ++ gboolean is_sent_folder = FALSE; + + exists = FALSE; + +@@ -1118,11 +1119,7 @@ gw_update_cache (CamelFolder *folder, GL + if (pmi) { + exists = TRUE; + camel_message_info_ref (pmi); +- mi = (CamelGroupwiseMessageInfo *)camel_message_info_clone(pmi); +- /* +- pmi->summary = folder->summary; +- mi->info.summary = folder->summary; +- */ ++ mi = (CamelGroupwiseMessageInfo *)pmi; + } + + if (!exists) { +@@ -1146,9 +1143,15 @@ gw_update_cache (CamelFolder *folder, GL + item_status = e_gw_item_get_item_status (item); + if (item_status & E_GW_ITEM_STAT_READ) + status_flags |= CAMEL_MESSAGE_SEEN; ++ else ++ mi->info.flags &= ~CAMEL_MESSAGE_SEEN; ++ + if (item_status & E_GW_ITEM_STAT_REPLIED) + status_flags |= CAMEL_MESSAGE_ANSWERED; +- mi->info.flags |= status_flags; ++ if (exists) ++ mi->info.flags |= status_flags; ++ else ++ mi->info.flags = status_flags; + + priority = e_gw_item_get_priority (item); + if (priority && !(g_ascii_strcasecmp (priority,"High"))) { +@@ -1222,12 +1225,7 @@ gw_update_cache (CamelFolder *folder, GL + mi->info.date_sent = mi->info.date_received = actual_time; + } + } +-#if 0 +- +- if (exists) +- g_free(mi->info.uid); +- mi->info.uid = g_strdup(e_gw_item_get_id(item)); +-#endif ++ + if (!exists) { + mi->info.uid = g_strdup (e_gw_item_get_id(item)); + mi->info.size = e_gw_item_get_mail_size (item); +@@ -1235,12 +1233,7 @@ gw_update_cache (CamelFolder *folder, GL + } + + if (exists) { +- /* + camel_folder_change_info_change_uid (changes, mi->info.uid); +- camel_message_info_free (&mi->info);*/ +- camel_folder_summary_remove(folder->summary, pmi); +- camel_folder_summary_add (folder->summary,(CamelMessageInfo *)mi); +- camel_folder_change_info_add_uid (changes, mi->info.uid); + camel_message_info_free (pmi); + } else { + camel_folder_summary_add (folder->summary,(CamelMessageInfo *)mi); +@@ -1253,13 +1246,17 @@ gw_update_cache (CamelFolder *folder, GL + continue; + + if (!strcmp (folder->full_name, "Sent Items")) +- exists = FALSE; ++ is_sent_folder = TRUE; + /******************** Begine Caching ************************/ + /* add to cache if its a new message*/ +- if (!exists) { ++ t_cache_stream = camel_data_cache_get (gw_folder->cache, "cache", id, ex); ++ if (t_cache_stream && !is_sent_folder) { ++ camel_object_unref (t_cache_stream); ++ + mail_msg = groupwise_folder_item_to_msg (folder, item, ex); + if (mail_msg) + camel_medium_set_header (CAMEL_MEDIUM (mail_msg), "X-Evolution-Source", groupwise_base_url_lookup (priv)); ++ + CAMEL_GROUPWISE_FOLDER_LOCK (folder, cache_lock); + if ((cache_stream = camel_data_cache_add (gw_folder->cache, "cache", id, NULL))) { + if (camel_data_wrapper_write_to_stream ((CamelDataWrapper *) mail_msg, cache_stream) == -1 || camel_stream_flush (cache_stream) == -1) +@@ -1579,7 +1576,6 @@ groupwise_folder_item_to_msg( CamelFolde + } + g_object_unref (temp_item); + } else { +- g_print ("%d:%d\n", attach->size, MAX_ATTACHMENT_SIZE); + if (attach->size > MAX_ATTACHMENT_SIZE) { + long count = 0; + int i, t_len=0, offset=0, t_offset=0; +@@ -1743,7 +1739,7 @@ groupwise_append_message (CamelFolder *f + CamelGroupwiseStorePrivate *priv = gw_store->priv; + CamelOfflineStore *offline = (CamelOfflineStore *) folder->parent_store; + CamelAddress *recipients; +- EGwConnectionStatus status = E_GW_CONNECTION_STATUS_OK; ++ EGwConnectionStatus status; + EGwConnection *cnc; + EGwItem *item; + char *id; +diff -Nrup camel/providers/groupwise/camel-groupwise-store.c /root/varadhan/2.5/mar-23/head/evolution-data-server-1.5.92/camel/providers/groupwise/camel-groupwise-store.c +--- camel/providers/groupwise/camel-groupwise-store.c 2006-03-23 14:08:09.722954807 +0100 ++++ /root/varadhan/2.5/mar-23/head/evolution-data-server-1.5.92/camel/providers/groupwise/camel-groupwise-store.c 2006-03-23 10:26:40.000000000 +0100 +@@ -461,16 +461,15 @@ groupwise_build_folder_info(CamelGroupwi + name = fi->full_name; + else + name++; +- +- if (!strcmp (folder_name, "Sent Items")) +- fi->flags |= CAMEL_FOLDER_TYPE_SENT; +- else if (!strcmp (folder_name, "Mailbox")) +- fi->flags |= CAMEL_FOLDER_TYPE_INBOX; +- else if (!strcmp (folder_name, "Trash")) +- fi->flags |= CAMEL_FOLDER_TYPE_TRASH; +- else if (!strcmp (folder_name, "Junk Mail")) +- fi->flags |= CAMEL_FOLDER_TYPE_JUNK; +- ++ if (!strcmp (folder_name, "Sent Items")) ++ fi->flags |= CAMEL_FOLDER_TYPE_SENT; ++ else if (!strcmp (folder_name, "Mailbox")) ++ fi->flags |= CAMEL_FOLDER_TYPE_INBOX; ++ else if (!strcmp (folder_name, "Trash")) ++ fi->flags |= CAMEL_FOLDER_TYPE_TRASH; ++ else if (!strcmp (folder_name, "Junk Mail")) ++ fi->flags |= CAMEL_FOLDER_TYPE_JUNK; ++ + fi->name = g_strdup(name); + return fi; + } +@@ -690,7 +689,7 @@ gw_store_reload_folder (CamelGroupwiseSt + { + CamelGroupwiseStorePrivate *priv = gw_store->priv; + CamelGroupwiseSummary *summary; +- char *container_id, *folder_dir, *storage_path; ++ char *container_id; + EGwConnectionStatus status; + GList *list = NULL; + gboolean done = FALSE; +@@ -751,11 +750,9 @@ gw_store_reload_folder (CamelGroupwiseSt + if (status != E_GW_CONNECTION_STATUS_OK) { + CAMEL_SERVICE_UNLOCK (gw_store, connect_lock); + e_gw_connection_destroy_cursor (priv->cnc, container_id, cursor); +- camel_folder_summary_clear (folder->summary); + camel_folder_summary_save (folder->summary); + camel_exception_set (ex, CAMEL_EXCEPTION_SERVICE_INVALID, _("Authentication failed")); + camel_operation_end (NULL); +- camel_object_unref (folder); + g_free (container_id); + return; + } +@@ -981,6 +978,10 @@ groupwise_folders_sync (CamelGroupwiseSt + info = NULL; + } + } ++ if (store->current_folder && strcmp (store->current_folder->full_name, info->full_name) == 0) { ++ g_print ("Syncing up %s\n", info->full_name); ++ CAMEL_FOLDER_CLASS (CAMEL_OBJECT_GET_CLASS (store->current_folder))->sync(store->current_folder, FALSE, ex); ++ } + } + + g_free ((char *)url); +@@ -1153,7 +1154,8 @@ groupwise_get_folder_info (CamelStore *s + } + + CAMEL_SERVICE_LOCK (store, connect_lock); +- if ((groupwise_store->list_loaded == FALSE) && check_for_connection((CamelService *)store, ex)) { ++/* if ((groupwise_store->list_loaded == FALSE) && check_for_connection((CamelService *)store, ex)) {*/ ++ if (check_for_connection((CamelService *)store, ex)) { + if (!priv->cnc) { + if (groupwise_connect ((CamelService *)store, ex)) { + g_warning ("Could connect!!!\n"); +@@ -1161,7 +1163,7 @@ groupwise_get_folder_info (CamelStore *s + g_warning ("Could not connect..failure connecting\n"); + } + if (camel_groupwise_store_connected ((CamelGroupwiseStore *)store, ex)) { +- groupwise_store->list_loaded = TRUE; ++ /*groupwise_store->list_loaded = TRUE;*/ + groupwise_folders_sync (groupwise_store, ex); + if (camel_exception_is_set (ex)) { + CAMEL_SERVICE_UNLOCK (store, connect_lock); +@@ -1173,7 +1175,7 @@ groupwise_get_folder_info (CamelStore *s + } + CAMEL_SERVICE_UNLOCK (store, connect_lock); + +- //camel_exception_clear (ex); ++ /*camel_exception_clear (ex);*/ + info = groupwise_get_folder_info_offline (store, top, flags, ex); + return info; + } +diff -Nrup camel/providers/groupwise/camel-groupwise-utils.c /root/varadhan/2.5/mar-23/head/evolution-data-server-1.5.92/camel/providers/groupwise/camel-groupwise-utils.c +--- camel/providers/groupwise/camel-groupwise-utils.c 2006-03-23 14:08:09.702954138 +0100 ++++ /root/varadhan/2.5/mar-23/head/evolution-data-server-1.5.92/camel/providers/groupwise/camel-groupwise-utils.c 2006-03-21 07:12:04.000000000 +0100 +@@ -432,7 +432,7 @@ camel_groupwise_util_item_from_message ( + } else { + /*only message*/ + CamelStreamMem *content = (CamelStreamMem *)camel_stream_mem_new (); +- CamelDataWrapper *dw = camel_data_wrapper_new (); ++ CamelDataWrapper *dw = NULL; + CamelContentType *type; + char *buffer = NULL; + char *content_type = NULL; +@@ -587,7 +587,7 @@ do_multipart (EGwConnection *cnc, EGwIte + CamelContentType *type; + CamelMimePart *part; + CamelStreamMem *content = (CamelStreamMem *)camel_stream_mem_new (); +- CamelDataWrapper *dw = camel_data_wrapper_new (); ++ CamelDataWrapper *dw = NULL; + const char *disposition, *filename; + char *buffer = NULL; + char *mime_type = NULL; +@@ -611,7 +611,7 @@ do_multipart (EGwConnection *cnc, EGwIte + const char *cid = NULL; + CamelStreamMem *temp_content = (CamelStreamMem *)camel_stream_mem_new (); + temp_part = camel_multipart_get_part ((CamelMultipart *)dw, 1); +- CamelDataWrapper *temp_dw = camel_data_wrapper_new (); ++ CamelDataWrapper *temp_dw = NULL; + if (temp_part) { + is_alternative = TRUE; + temp_dw = camel_medium_get_content_object (CAMEL_MEDIUM (temp_part)); +@@ -628,8 +628,6 @@ do_multipart (EGwConnection *cnc, EGwIte + g_free (mime_type); + } + camel_object_unref (temp_content); +- camel_object_unref (temp_dw); +- camel_object_unref (dw); + continue; + } + +@@ -653,6 +651,5 @@ do_multipart (EGwConnection *cnc, EGwIte + g_free (buffer); + g_free (mime_type); + camel_object_unref (content); +- camel_object_unref (dw); + } /*end of for*/ + } diff --git a/camel-vfs-stream.diff b/camel-vfs-stream.diff new file mode 100644 index 0000000..e054398 --- /dev/null +++ b/camel-vfs-stream.diff @@ -0,0 +1,393 @@ +--- configure.in.old 2006-05-23 07:34:48.254719640 +0200 ++++ configure.in 2006-05-23 07:35:07.050359111 +0200 +@@ -1199,7 +1199,7 @@ + AC_MSG_ERROR([*** zlib is required]) + fi + +-EVO_SET_COMPILE_FLAGS(CAMEL, gthread-2.0 gmodule-2.0 gobject-2.0 $mozilla_nss, ++EVO_SET_COMPILE_FLAGS(CAMEL, gthread-2.0 gmodule-2.0 gobject-2.0 $mozilla_nss gnome-vfs-2.0, + $THREADS_CFLAGS $KRB4_CFLAGS $KRB5_CFLAGS $MANUAL_NSS_CFLAGS, + -lz $THREADS_LIBS $KRB4_LDFLAGS $KRB5_LDFLAGS $MANUAL_NSS_LIBS) + AC_SUBST(CAMEL_CFLAGS) +Index: camel/Makefile.am +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/Makefile.am,v +retrieving revision 1.213 +diff -u -p -r1.213 Makefile.am +--- camel/Makefile.am 4 Jan 2006 23:47:07 -0000 1.213 ++++ camel/Makefile.am 23 May 2006 03:54:24 -0000 +@@ -201,6 +201,7 @@ libcamel_1_2_la_SOURCES = \ + camel-stream-fs.c \ + camel-stream-mem.c \ + camel-stream-null.c \ ++ camel-stream-vfs.c \ + camel-stream.c \ + camel-string-utils.c \ + camel-text-index.c \ +@@ -270,6 +271,7 @@ libcamelinclude_HEADERS = \ + camel-stream-mem.h \ + camel-stream-null.h \ + camel-stream-process.h \ ++ camel-stream-vfs.h \ + camel-stream.h \ + camel-string-utils.h \ + camel-text-index.h \ +--- /dev/null 2006-04-26 01:42:37.000000000 +0530 ++++ camel/camel-stream-vfs.c 2006-05-18 16:42:45.000000000 +0530 +@@ -0,0 +1,281 @@ ++/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ ++/* camel-stream-vfs.c : file system based stream */ ++ ++/* ++ * Authors: Srinivasa Ragavan ++ * ++ * Copyright 2006 Novell, Inc. (www.novell.com) ++ * ++ * This program is free software; you can redistribute it and/or ++ * modify it under the terms of version 2 of the GNU Lesser General Public ++ * License as published by the Free Software Foundation. ++ * ++ * This program is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU Lesser General Public License for more details. ++ * ++ * You should have received a copy of the GNU Lesser General Public License ++ * along with this program; if not, write to the Free Software ++ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 ++ * USA ++ */ ++ ++#ifdef HAVE_CONFIG_H ++#include ++#endif ++ ++#include ++#include ++#include ++#include ++#include ++ ++#include ++ ++#include "camel-file-utils.h" ++#include "camel-operation.h" ++#include "camel-private.h" ++#include "camel-stream-vfs.h" ++ ++static CamelSeekableStreamClass *parent_class = NULL; ++ ++/* Returns the class for a CamelStreamVFS */ ++#define CSVFS_CLASS(so) CAMEL_STREAM_VFS_CLASS (CAMEL_OBJECT_GET_CLASS(so)) ++ ++static ssize_t stream_read (CamelStream *stream, char *buffer, size_t n); ++static ssize_t stream_write (CamelStream *stream, const char *buffer, size_t n); ++/* static int stream_flush (CamelStream *stream); */ ++static int stream_close (CamelStream *stream); ++static off_t stream_seek (CamelSeekableStream *stream, off_t offset, ++ CamelStreamSeekPolicy policy); ++ ++static void ++camel_stream_vfs_class_init (CamelStreamVFSClass *camel_stream_vfs_class) ++{ ++ CamelSeekableStreamClass *camel_seekable_stream_class = ++ CAMEL_SEEKABLE_STREAM_CLASS (camel_stream_vfs_class); ++ CamelStreamClass *camel_stream_class = ++ CAMEL_STREAM_CLASS (camel_stream_vfs_class); ++ ++ parent_class = CAMEL_SEEKABLE_STREAM_CLASS (camel_type_get_global_classfuncs (camel_seekable_stream_get_type ())); ++ ++ /* virtual method overload */ ++ camel_stream_class->read = stream_read; ++ camel_stream_class->write = stream_write; ++/* camel_stream_class->flush = stream_flush; */ ++ camel_stream_class->close = stream_close; ++ ++ camel_seekable_stream_class->seek = stream_seek; ++} ++ ++static void ++camel_stream_vfs_init (gpointer object, gpointer klass) ++{ ++ CamelStreamVFS *stream = CAMEL_STREAM_VFS (object); ++ ++ stream->handle = (gpointer) -1; ++ ((CamelSeekableStream *)stream)->bound_end = CAMEL_STREAM_UNBOUND; ++} ++ ++static void ++camel_stream_vfs_finalize (CamelObject *object) ++{ ++ CamelStreamVFS *stream_vfs = CAMEL_STREAM_VFS (object); ++ ++ if (stream_vfs->handle != -1) ++ close (stream_vfs->handle); ++} ++ ++ ++CamelType ++camel_stream_vfs_get_type (void) ++{ ++ static CamelType camel_stream_vfs_type = CAMEL_INVALID_TYPE; ++ ++ if (camel_stream_vfs_type == CAMEL_INVALID_TYPE) { ++ camel_stream_vfs_type = camel_type_register (camel_seekable_stream_get_type (), "CamelStreamVFS", ++ sizeof (CamelStreamVFS), ++ sizeof (CamelStreamVFSClass), ++ (CamelObjectClassInitFunc) camel_stream_vfs_class_init, ++ NULL, ++ (CamelObjectInitFunc) camel_stream_vfs_init, ++ (CamelObjectFinalizeFunc) camel_stream_vfs_finalize); ++ } ++ ++ return camel_stream_vfs_type; ++} ++ ++/** ++ * camel_stream_vfs_new_with_handle: ++ * @handle: a GnomeVFS handle ++ * ++ * Creates a new fs stream using the given GnomeVFS handle @handle as the ++ * backing store. When the stream is destroyed, the file descriptor ++ * will be closed. ++ * ++ * Returns a new #CamelStreamVFS ++ **/ ++CamelStream * ++camel_stream_vfs_new_with_handle (GnomeVFSHandle *handle) ++{ ++ CamelStreamVFS *stream_vfs; ++ off_t offset; ++ GnomeVFSResult result; ++ ++ if (!handle) ++ return NULL; ++ ++ stream_vfs = CAMEL_STREAM_VFS (camel_object_new (camel_stream_vfs_get_type ())); ++ stream_vfs->handle = handle; ++ gnome_vfs_seek (handle, GNOME_VFS_SEEK_CURRENT, 0); ++ offset = 0; ++ CAMEL_SEEKABLE_STREAM (stream_vfs)->position = offset; ++ ++ return CAMEL_STREAM (stream_vfs); ++} ++ ++/** ++ * camel_stream_vfs_new_with_uri: ++ * @name: a file uri ++ * @flags: flags as in open(2) ++ * @mode: a file mode ++ * ++ * Creates a new #CamelStreamVFS corresponding to the named file, flags, ++ * and mode. ++ * ++ * Returns the new stream, or %NULL on error. ++ **/ ++CamelStream * ++camel_stream_vfs_new_with_uri (const char *name, int flags, mode_t mode) ++{ ++ GnomeVFSResult result; ++ GnomeVFSHandle *handle; ++ int vfs_flag = 0; ++ ++ if (flags & O_WRONLY) ++ vfs_flag = vfs_flag | GNOME_VFS_OPEN_WRITE; ++ if (flags & O_RDONLY) ++ vfs_flag = vfs_flag | GNOME_VFS_OPEN_READ; ++ if (flags & O_RDWR) ++ vfs_flag = vfs_flag | GNOME_VFS_OPEN_READ |GNOME_VFS_OPEN_WRITE; ++ ++ if (flags & O_CREAT) ++ result = gnome_vfs_create (&handle, name, vfs_flag, flags & O_TRUNC, mode); ++ else ++ result = gnome_vfs_open (&handle, name, vfs_flag); ++ ++ if (result != GNOME_VFS_OK) { ++ return NULL; ++ } ++ ++ return camel_stream_vfs_new_with_handle (handle); ++} ++ ++static ssize_t ++stream_read (CamelStream *stream, char *buffer, size_t n) ++{ ++ CamelStreamVFS *stream_vfs = CAMEL_STREAM_VFS (stream); ++ CamelSeekableStream *seekable = CAMEL_SEEKABLE_STREAM (stream); ++ ssize_t nread = 0; ++ GnomeVFSResult result; ++ ++ if (seekable->bound_end != CAMEL_STREAM_UNBOUND) ++ n = MIN (seekable->bound_end - seekable->position, n); ++ ++ result = gnome_vfs_read (stream_vfs->handle, buffer, n, &nread); ++ ++ if (nread > 0 && result == GNOME_VFS_OK) ++ seekable->position += nread; ++ else if (nread == 0) ++ stream->eos = TRUE; ++ ++ return nread; ++} ++ ++static ssize_t ++stream_write (CamelStream *stream, const char *buffer, size_t n) ++{ ++ CamelStreamVFS *stream_vfs = CAMEL_STREAM_VFS (stream); ++ CamelSeekableStream *seekable = CAMEL_SEEKABLE_STREAM (stream); ++ ssize_t nwritten = 0; ++ GnomeVFSResult result; ++ ++ if (seekable->bound_end != CAMEL_STREAM_UNBOUND) ++ n = MIN (seekable->bound_end - seekable->position, n); ++ ++ result = gnome_vfs_write (stream_vfs->handle, buffer, n, &nwritten); ++ ++ if (nwritten > 0 && result == GNOME_VFS_OK) ++ seekable->position += nwritten; ++ ++ return nwritten; ++} ++ ++/* static int */ ++/* stream_flush (CamelStream *stream) */ ++/* { */ ++/* return fsync(((CamelStreamVFS *)stream)->handle); */ ++/* } */ ++ ++static int ++stream_close (CamelStream *stream) ++{ ++ GnomeVFSResult result; ++ ++ result = gnome_vfs_close(((CamelStreamVFS *)stream)->handle); ++ ++ if (result != GNOME_VFS_OK) ++ return -1; ++ ++ ((CamelStreamVFS *)stream)->handle = NULL; ++ return 0; ++} ++ ++static off_t ++stream_seek (CamelSeekableStream *stream, off_t offset, CamelStreamSeekPolicy policy) ++{ ++ CamelStreamVFS *stream_vfs = CAMEL_STREAM_VFS (stream); ++ off_t real = 0; ++ GnomeVFSResult result; ++ GnomeVFSHandle *handle = stream_vfs->handle; ++ ++ switch (policy) { ++ case CAMEL_STREAM_SET: ++ real = offset; ++ break; ++ case CAMEL_STREAM_CUR: ++ real = stream->position + offset; ++ break; ++ case CAMEL_STREAM_END: ++ if (stream->bound_end == CAMEL_STREAM_UNBOUND) { ++ result = gnome_vfs_seek (handle, GNOME_VFS_SEEK_END, offset); ++ if (result != GNOME_VFS_OK) ++ return -1; ++ gnome_vfs_tell (handle, &real); ++ if (real != -1) { ++ if (realbound_start) ++ real = stream->bound_start; ++ stream->position = real; ++ } ++ return real; ++ } ++ real = stream->bound_end + offset; ++ break; ++ } ++ ++ if (stream->bound_end != CAMEL_STREAM_UNBOUND) ++ real = MIN (real, stream->bound_end); ++ real = MAX (real, stream->bound_start); ++ ++ result = gnome_vfs_seek (handle, GNOME_VFS_SEEK_START, real); ++ if (result != GNOME_VFS_OK) ++ return -1; ++ ++ if (real != stream->position && ((CamelStream *)stream)->eos) ++ ((CamelStream *)stream)->eos = FALSE; ++ ++ stream->position = real; ++ ++ return real; ++} +--- /dev/null 2006-04-26 01:42:37.000000000 +0530 ++++ camel/camel-stream-vfs.h 2006-05-18 16:41:12.000000000 +0530 +@@ -0,0 +1,72 @@ ++/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */ ++/* camel-stream-vfs.h :stream based on unix filesystem */ ++ ++/* ++ * Author: ++ * Srinivasa Ragavan ++ * ++ * Copyright 2006 Novell, Inc. (www.novell.com) ++ * ++ * This program is free software; you can redistribute it and/or ++ * modify it under the terms of version 2 of the GNU Lesser General Public ++ * License as published by the Free Software Foundation. ++ * ++ * This program is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU Lesser General Public License for more details. ++ * ++ * You should have received a copy of the GNU Lesser General Public License ++ * along with this program; if not, write to the Free Software ++ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 ++ * USA ++ */ ++ ++ ++#ifndef CAMEL_STREAM_VFS_H ++#define CAMEL_STREAM_VFS_H 1 ++ ++ ++#ifdef __cplusplus ++extern "C" { ++#pragma } ++#endif /* __cplusplus */ ++ ++/* for open flags */ ++#include ++#include ++#include ++#include ++ ++#include ++ ++#define CAMEL_STREAM_VFS_TYPE (camel_stream_vfs_get_type ()) ++#define CAMEL_STREAM_VFS(obj) (CAMEL_CHECK_CAST((obj), CAMEL_STREAM_VFS_TYPE, CamelStreamVFS)) ++#define CAMEL_STREAM_VFS_CLASS(k) (CAMEL_CHECK_CLASS_CAST ((k), CAMEL_STREAM_VFS_TYPE, CamelStreamVFSClass)) ++#define CAMEL_IS_STREAM_VFS(o) (CAMEL_CHECK_TYPE((o), CAMEL_STREAM_VFS_TYPE)) ++ ++typedef struct _CamelStreamVFS CamelStreamVFS; ++ ++struct _CamelStreamVFS { ++ CamelSeekableStream parent_object; ++ ++ GnomeVFSHandle *handle; ++}; ++ ++typedef struct { ++ CamelSeekableStreamClass parent_class; ++ ++} CamelStreamVFSClass; ++ ++/* Standard Camel function */ ++CamelType camel_stream_vfs_get_type (void); ++ ++/* public methods */ ++CamelStream * camel_stream_vfs_new_with_uri (const char *uri, int flags, mode_t mode); ++ ++ ++#ifdef __cplusplus ++} ++#endif /* __cplusplus */ ++ ++#endif /* CAMEL_STREAM_VFS_H */ diff --git a/crash-while-browsing-through-mails.patch b/crash-while-browsing-through-mails.patch new file mode 100644 index 0000000..684fb49 --- /dev/null +++ b/crash-while-browsing-through-mails.patch @@ -0,0 +1,1121 @@ +--- camel/providers/groupwise/camel-groupwise-store.c.orig 2006-03-27 17:23:54.929978882 +0200 ++++ camel/providers/groupwise/camel-groupwise-store.c 2006-03-27 17:24:38.924418549 +0200 +@@ -1154,8 +1154,7 @@ groupwise_get_folder_info (CamelStore *s + } + + CAMEL_SERVICE_LOCK (store, connect_lock); +-/* if ((groupwise_store->list_loaded == FALSE) && check_for_connection((CamelService *)store, ex)) {*/ +- if (check_for_connection((CamelService *)store, ex)) { ++ if ((groupwise_store->list_loaded == FALSE) && check_for_connection((CamelService *)store, ex)) { + if (!priv->cnc) { + if (groupwise_connect ((CamelService *)store, ex)) { + g_warning ("Could connect!!!\n"); +@@ -1163,7 +1162,7 @@ groupwise_get_folder_info (CamelStore *s + g_warning ("Could not connect..failure connecting\n"); + } + if (camel_groupwise_store_connected ((CamelGroupwiseStore *)store, ex)) { +- /*groupwise_store->list_loaded = TRUE;*/ ++ groupwise_store->list_loaded = TRUE; + groupwise_folders_sync (groupwise_store, ex); + if (camel_exception_is_set (ex)) { + CAMEL_SERVICE_UNLOCK (store, connect_lock); +--- camel/providers/groupwise/camel-groupwise-folder.c.orig 2006-03-27 17:24:21.222839155 +0200 ++++ camel/providers/groupwise/camel-groupwise-folder.c 2006-03-27 17:24:38.923418516 +0200 +@@ -74,13 +74,7 @@ struct _CamelGroupwiseFolderPrivate { + }; + + /*prototypes*/ +-static void groupwise_transfer_messages_to (CamelFolder *source, +- GPtrArray *uids, +- CamelFolder *destination, +- GPtrArray **transferred_uids, +- gboolean delete_originals, +- CamelException *ex); +- ++static void groupwise_transfer_messages_to (CamelFolder *source, GPtrArray *uids, CamelFolder *destination, GPtrArray **transferred_uids, gboolean delete_originals, CamelException *ex); + static int gw_getv (CamelObject *object, CamelException *ex, CamelArgGetV *args); + void convert_to_calendar (EGwItem *item, char **str, int *len); + static void convert_to_task (EGwItem *item, char **str, int *len); +@@ -95,9 +89,7 @@ static CamelMimeMessage *groupwise_folde + #define d(x) + + static CamelMimeMessage * +-groupwise_folder_get_message( CamelFolder *folder, +- const char *uid, +- CamelException *ex ) ++groupwise_folder_get_message( CamelFolder *folder, const char *uid, CamelException *ex ) + { + CamelMimeMessage *msg = NULL; + CamelGroupwiseFolder *gw_folder = CAMEL_GROUPWISE_FOLDER(folder); +@@ -110,7 +102,7 @@ groupwise_folder_get_message( CamelFolde + EGwItem *item; + CamelStream *stream, *cache_stream; + int errno; +- ++ + /* see if it is there in cache */ + + mi = (CamelGroupwiseMessageInfo *) camel_folder_summary_uid (folder->summary, uid); +@@ -149,14 +141,14 @@ groupwise_folder_get_message( CamelFolde + camel_message_info_free (&mi->info); + return msg; + } +- ++ + if (((CamelOfflineStore *) gw_store)->state == CAMEL_OFFLINE_STORE_NETWORK_UNAVAIL) { + camel_exception_set (ex, CAMEL_EXCEPTION_SERVICE_UNAVAILABLE, + _("This message is not available in offline mode.")); + camel_message_info_free (&mi->info); + return NULL; + } +- ++ + /* Check if we are really offline */ + if (!camel_groupwise_store_connected (gw_store, ex)) { + camel_exception_set (ex, CAMEL_EXCEPTION_SERVICE_UNAVAILABLE, +@@ -181,7 +173,7 @@ groupwise_folder_get_message( CamelFolde + camel_exception_set (ex, CAMEL_EXCEPTION_SERVICE_INVALID, _("Could not get message")); + g_free (container_id); + camel_message_info_free (&mi->info); +- ++ + return NULL; + } + +@@ -201,7 +193,7 @@ groupwise_folder_get_message( CamelFolde + } + + CAMEL_GROUPWISE_FOLDER_UNLOCK (folder, cache_lock); +- ++ + end: + camel_message_info_free (&mi->info); + g_free (container_id); +@@ -234,7 +226,6 @@ groupwise_populate_details_from_item (Ca + } + } + +- + static void + groupwise_populate_msg_body_from_item (EGwConnection *cnc, CamelMultipart *multipart, EGwItem *item, char *body) + { +@@ -278,19 +269,19 @@ groupwise_populate_msg_body_from_item (E + case E_GW_ITEM_TYPE_NOTIFICATION: + case E_GW_ITEM_TYPE_MAIL: + case E_GW_ITEM_TYPE_NOTE: +- if (body) +- camel_mime_part_set_content(part, body, strlen(body), "text/html"); +- else if (temp_body) +- camel_mime_part_set_content(part, temp_body, strlen(temp_body), e_gw_item_get_msg_content_type (item)); +- else +- camel_mime_part_set_content(part, " ", strlen(" "), "text/html"); ++ if (body) ++ camel_mime_part_set_content(part, body, strlen(body), "text/html"); ++ else if (temp_body) ++ camel_mime_part_set_content(part, temp_body, strlen(temp_body), e_gw_item_get_msg_content_type (item)); ++ else ++ camel_mime_part_set_content(part, " ", strlen(" "), "text/html"); + break; + + default: + break; + + } +- ++ + camel_multipart_set_boundary (multipart, NULL); + camel_multipart_add_part (multipart, part); + camel_object_unref (part); +@@ -312,7 +303,7 @@ groupwise_msg_set_recipient_list (CamelM + GSList *rl; + char *status_opt = NULL; + gboolean enabled; +- ++ + for (rl = recipient_list ; rl != NULL ; rl = rl->next) { + EGwItemRecipient *recp = (EGwItemRecipient *) rl->data; + enabled = recp->status_enabled; +@@ -322,7 +313,7 @@ groupwise_msg_set_recipient_list (CamelM + } else { + ha=camel_header_address_new_name(recp->display_name,recp->email); + } +- ++ + if (recp->type == E_GW_ITEM_RECIPIENT_TO) { + if (recp->status_enabled) + status_opt = g_strconcat (status_opt ? status_opt : "" , "TO", ";",NULL); +@@ -331,7 +322,7 @@ groupwise_msg_set_recipient_list (CamelM + if (recp->status_enabled) + status_opt = g_strconcat (status_opt ? status_opt : "", "CC", ";",NULL); + camel_header_address_list_append(&cc_list,ha); +- ++ + } else if (recp->type == E_GW_ITEM_RECIPIENT_BC) { + if (recp->status_enabled) + status_opt = g_strconcat (status_opt ? status_opt : "", "BCC", ";",NULL); +@@ -341,17 +332,17 @@ groupwise_msg_set_recipient_list (CamelM + } + if (recp->status_enabled) { + status_opt = g_strconcat (status_opt, +- recp->display_name,";", +- recp->email,";", +- recp->delivered_date ? recp->delivered_date : "", ";", +- recp->opened_date ? recp->opened_date : "", ";", +- recp->accepted_date ? recp->accepted_date : "", ";", +- recp->deleted_date ? recp->deleted_date : "", ";", +- recp->declined_date ? recp->declined_date : "", ";", +- recp->completed_date ? recp->completed_date : "", ";", +- recp->undelivered_date ? recp->undelivered_date : "", ";", +- "::", NULL); +- ++ recp->display_name,";", ++ recp->email,";", ++ recp->delivered_date ? recp->delivered_date : "", ";", ++ recp->opened_date ? recp->opened_date : "", ";", ++ recp->accepted_date ? recp->accepted_date : "", ";", ++ recp->deleted_date ? recp->deleted_date : "", ";", ++ recp->declined_date ? recp->declined_date : "", ";", ++ recp->completed_date ? recp->completed_date : "", ";", ++ recp->undelivered_date ? recp->undelivered_date : "", ";", ++ "::", NULL); ++ + } + } + if (enabled) { +@@ -382,11 +373,11 @@ groupwise_msg_set_recipient_list (CamelM + } + + if (org) { +- if (org->display_name && org->email) { ++ if (org->display_name && org->email) + ha=camel_header_address_new_name(org->display_name,org->email); +- } else { ++ else + ha=camel_header_address_new_group(org->display_name); +- } ++ + subs_email=camel_header_address_list_encode(ha); + camel_medium_set_header( CAMEL_MEDIUM(msg), "From", subs_email); + camel_header_address_unref(ha); +@@ -394,7 +385,6 @@ groupwise_msg_set_recipient_list (CamelM + } + } + +- + static void + groupwise_folder_rename (CamelFolder *folder, const char *new) + { +@@ -432,12 +422,12 @@ groupwise_folder_search_by_expression (C + { + CamelGroupwiseFolder *gw_folder = CAMEL_GROUPWISE_FOLDER(folder); + GPtrArray *matches; +- ++ + CAMEL_GROUPWISE_FOLDER_LOCK(folder, search_lock); + camel_folder_search_set_folder (gw_folder->search, folder); + matches = camel_folder_search_search(gw_folder->search, expression, NULL, ex); + CAMEL_GROUPWISE_FOLDER_UNLOCK(gw_folder, search_lock); +- ++ + return matches; + } + +@@ -449,7 +439,7 @@ groupwise_folder_search_by_uids(CamelFol + + if (uids->len == 0) + return g_ptr_array_new(); +- ++ + CAMEL_GROUPWISE_FOLDER_LOCK(folder, search_lock); + + camel_folder_search_set_folder(gw_folder->search, folder); +@@ -464,7 +454,7 @@ static void + groupwise_folder_search_free (CamelFolder *folder, GPtrArray *uids) + { + CamelGroupwiseFolder *gw_folder = CAMEL_GROUPWISE_FOLDER(folder); +- ++ + g_return_if_fail (gw_folder->search); + + CAMEL_GROUPWISE_FOLDER_LOCK(folder, search_lock); +@@ -472,7 +462,7 @@ groupwise_folder_search_free (CamelFolde + camel_folder_search_free_result (gw_folder->search, uids); + + CAMEL_GROUPWISE_FOLDER_UNLOCK(gw_folder, search_lock); +- ++ + } + + /******************* functions specific to Junk Mail Handling**************/ +@@ -532,10 +522,10 @@ move_to_mailbox (CamelFolder *folder, Ca + CamelFolder *dest; + GPtrArray *uids; + const char *uid = camel_message_info_uid (info); +- ++ + uids = g_ptr_array_new (); + g_ptr_array_add (uids, (gpointer) uid); +- ++ + dest = camel_store_get_folder (folder->parent_store, "Mailbox", 0, ex); + if (dest) + groupwise_transfer_messages_to (folder, uids, dest, NULL, TRUE, ex); +@@ -552,10 +542,10 @@ move_to_junk (CamelFolder *folder, Camel + CamelFolderInfo *fi; + GPtrArray *uids; + const char *uid = camel_message_info_uid (info); +- ++ + uids = g_ptr_array_new (); + g_ptr_array_add (uids, (gpointer) uid); +- ++ + dest = camel_store_get_folder (folder->parent_store, JUNK_FOLDER, 0, ex); + if (dest) + groupwise_transfer_messages_to (folder, uids, dest, NULL, TRUE, ex); +@@ -567,9 +557,9 @@ move_to_junk (CamelFolder *folder, Camel + else + groupwise_transfer_messages_to (folder, uids, dest, NULL, TRUE, ex); + } +- ++ + update_junk_list (folder->parent_store, info, ADD_JUNK_ENTRY); +- ++ + } + + /********************* back to folder functions*************************/ +@@ -597,12 +587,12 @@ groupwise_sync (CamelFolder *folder, gbo + int count, i; + + if (((CamelOfflineStore *) gw_store)->state == CAMEL_OFFLINE_STORE_NETWORK_UNAVAIL || +- ((CamelService *)gw_store)->status == CAMEL_SERVICE_DISCONNECTED) { ++ ((CamelService *)gw_store)->status == CAMEL_SERVICE_DISCONNECTED) { + groupwise_sync_summary (folder, ex); + return; + } + cnc = cnc_lookup (priv); +- ++ + container_id = camel_groupwise_store_container_id_lookup (gw_store, folder->full_name) ; + + CAMEL_SERVICE_LOCK (gw_store, connect_lock); +@@ -619,7 +609,7 @@ groupwise_sync (CamelFolder *folder, gbo + guint32 flags = 0; + info = camel_folder_summary_index (folder->summary, i); + gw_info = (CamelGroupwiseMessageInfo *) info; +- ++ + /**Junk Mail handling**/ + if(!info) + continue; +@@ -680,8 +670,6 @@ groupwise_sync (CamelFolder *folder, gbo + CAMEL_SERVICE_UNLOCK (gw_store, connect_lock); + } + +- +- + CamelFolder * + camel_gw_folder_new(CamelStore *store, const char *folder_name, const char *folder_dir, CamelException *ex) + { +@@ -707,11 +695,11 @@ camel_gw_folder_new(CamelStore *store, c + if (!folder->summary) { + camel_object_unref (CAMEL_OBJECT (folder)); + camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM, +- _("Could not load summary for %s"), +- folder_name); ++ _("Could not load summary for %s"), ++ folder_name); + return NULL; + } +- ++ + /* set/load persistent state */ + state_file = g_strdup_printf ("%s/cmeta", folder_dir); + camel_object_set(folder, NULL, CAMEL_OBJECT_STATE_FILE, state_file, NULL); +@@ -736,13 +724,13 @@ camel_gw_folder_new(CamelStore *store, c + if (camel_url_get_param (((CamelService *) store)->url, "filter")) + folder->folder_flags |= CAMEL_FOLDER_FILTER_RECENT; + } +- ++ + gw_folder->search = camel_folder_search_new (); + if (!gw_folder->search) { + camel_object_unref (folder); + return NULL; + } +- ++ + return folder; + } + +@@ -756,7 +744,6 @@ struct _folder_update_msg { + GSList *slist; + }; + +- + static void + update_update (CamelSession *session, CamelSessionThreadMsg *msg) + { +@@ -786,16 +773,16 @@ update_update (CamelSession *session, Ca + e_gw_connection_destroy_cursor (m->cnc, m->container_id, cursor); + return; + } +- ++ + if (!item_list || g_list_length (item_list) == 0) + done = TRUE; + else { +- ++ + /* item_list is prepended to items_full_list and not the other way + because when we have a large number of items say 50000, + for each iteration there will be more elements in items_full_list + and less elements in item_list */ +- ++ + last_element = g_list_last (item_list); + if (items_full_list) { + last_element->next = items_full_list; +@@ -811,21 +798,21 @@ update_update (CamelSession *session, Ca + to be unique only until that symbol */ + + /*if (items_full_list) { +- int i; +- item_list = items_full_list; +- +- while (item_list->next) { +- i = 0; +- while (((const char *)item_list->data)[i++]!='@'); +- ((char *)item_list->data)[i-1] = '\0'; +- item_list = item_list->next; +- } ++ int i; ++ item_list = items_full_list; ++ ++ while (item_list->next) { ++ i = 0; ++ while (((const char *)item_list->data)[i++]!='@'); ++ ((char *)item_list->data)[i-1] = '\0'; ++ item_list = item_list->next; ++ } ++ ++ i = 0; ++ while (((const char *)item_list->data)[i++]!='@'); ++ ((char *)item_list->data)[i-1] = '\0'; ++ }*/ + +- i = 0; +- while (((const char *)item_list->data)[i++]!='@'); +- ((char *)item_list->data)[i-1] = '\0'; +- }*/ +- + g_print ("\nNumber of items in the folder: %d \n", g_list_length(items_full_list)); + gw_update_all_items (m->folder, items_full_list, ex); + } +@@ -919,7 +906,7 @@ groupwise_refresh_folder(CamelFolder *fo + if (camel_folder_is_frozen (folder) ) { + gw_folder->need_refresh = TRUE; + } +- ++ + CAMEL_SERVICE_LOCK (gw_store, connect_lock); + + if (!camel_groupwise_store_connected (gw_store, ex)) +@@ -965,43 +952,43 @@ groupwise_refresh_folder(CamelFolder *fo + if (summary->time_string) + g_free (summary->time_string); + +- ++ + summary->time_string = g_strdup (t_str); + g_free (t_str); + t_str = NULL; + + /* +- for ( sl = slist ; sl != NULL; sl = sl->next) +- list = g_list_append (list, sl->data);*/ ++ for ( sl = slist ; sl != NULL; sl = sl->next) ++ list = g_list_append (list, sl->data);*/ + + if (slist && g_slist_length(slist) != 0) + check_all = TRUE; +- ++ + g_slist_free (slist); + slist = NULL; + + t_str = g_strdup (time_string); +- ++ + /*Get those items which have been modifed*/ + + status = e_gw_connection_get_quick_messages (cnc, container_id, + "peek id", + &t_str, "Modified", NULL, NULL, -1, &slist); +- ++ + if (status != E_GW_CONNECTION_STATUS_OK) { + camel_exception_set (ex, CAMEL_EXCEPTION_SERVICE_INVALID, _("Authentication failed")); + goto end3; + } +- ++ + /* The storing of time-stamp to summary code below should be commented if the + above commented code is uncommented */ + +-/* if (summary->time_string) ++ /* if (summary->time_string) + g_free (summary->time_string); + +- summary->time_string = g_strdup (t_str); ++ summary->time_string = g_strdup (t_str); + +- g_free (t_str), t_str = NULL;*/ ++ g_free (t_str), t_str = NULL;*/ + + for ( sl = slist ; sl != NULL; sl = sl->next) + list = g_list_prepend (list, sl->data); +@@ -1012,12 +999,12 @@ groupwise_refresh_folder(CamelFolder *fo + if (gw_store->current_folder != folder) { + gw_store->current_folder = folder; + } +- ++ + if (list) { + gw_update_cache (folder, list, ex, FALSE); + } +- +- ++ ++ + CAMEL_SERVICE_UNLOCK (gw_store, connect_lock); + is_locked = FALSE; + +@@ -1029,15 +1016,15 @@ groupwise_refresh_folder(CamelFolder *fo + */ + /*create a new session thread for the update all operation*/ + if (check_all) { +- msg = camel_session_thread_msg_new (session, &update_ops, sizeof(*msg)); +- msg->cnc = cnc; +- msg->t_str = g_strdup (time_string); +- msg->container_id = g_strdup (container_id); +- msg->folder = folder; +- camel_object_ref (folder); +- camel_folder_freeze (folder); +- camel_session_thread_queue (session, &msg->msg, 0); +- /*thread creation and queueing done*/ ++ msg = camel_session_thread_msg_new (session, &update_ops, sizeof(*msg)); ++ msg->cnc = cnc; ++ msg->t_str = g_strdup (time_string); ++ msg->container_id = g_strdup (container_id); ++ msg->folder = folder; ++ camel_object_ref (folder); ++ camel_folder_freeze (folder); ++ camel_session_thread_queue (session, &msg->msg, 0); ++ /*thread creation and queueing done*/ + } + + end3: +@@ -1074,9 +1061,9 @@ gw_update_cache (CamelFolder *folder, GL + EGwItemStatus status; + GList *item_list = list; + int total_items = g_list_length (item_list), i=0; +- +- /*Assert lock*/ ++ + CAMEL_SERVICE_ASSERT_LOCKED (gw_store, connect_lock); ++ + changes = camel_folder_change_info_new (); + container_id = g_strdup (camel_groupwise_store_container_id_lookup (gw_store, folder->full_name)); + if (!container_id) { +@@ -1084,7 +1071,7 @@ gw_update_cache (CamelFolder *folder, GL + camel_folder_change_info_free (changes); + return; + } +- ++ + if (!strcmp (folder->full_name, JUNK_FOLDER)) { + is_junk = TRUE; + } +@@ -1105,7 +1092,7 @@ gw_update_cache (CamelFolder *folder, GL + gboolean is_sent_folder = FALSE; + + exists = FALSE; +- ++ + if (uid_flag == FALSE) { + temp_item = (EGwItem *)item_list->data; + id = e_gw_item_get_id (temp_item); +@@ -1173,7 +1160,7 @@ gw_update_cache (CamelFolder *folder, GL + EGwItemAttachment *attach = (EGwItemAttachment *)al->data; + + if (!g_ascii_strcasecmp (attach->name, "Mime.822") || +- !g_ascii_strcasecmp (attach->name, "TEXT.htm")) ++ !g_ascii_strcasecmp (attach->name, "TEXT.htm")) + has_attachments = FALSE; + + if (has_attachments) +@@ -1208,10 +1195,10 @@ gw_update_cache (CamelFolder *folder, GL + mi->info.to = camel_pstring_strdup (str->str); + g_string_truncate (str, 0); + } +- ++ + if (type == E_GW_ITEM_TYPE_APPOINTMENT +- || type == E_GW_ITEM_TYPE_NOTE +- || type == E_GW_ITEM_TYPE_TASK ) { ++ || type == E_GW_ITEM_TYPE_NOTE ++ || type == E_GW_ITEM_TYPE_TASK ) { + temp_date = e_gw_item_get_start_date (item); + if (temp_date) { + time_t time = e_gw_connection_get_date_from_string (temp_date); +@@ -1233,13 +1220,13 @@ gw_update_cache (CamelFolder *folder, GL + mi->info.date_sent = mi->info.date_received = actual_time; + } + } +- ++ + if (!exists) { + mi->info.uid = g_strdup (e_gw_item_get_id(item)); + mi->info.size = e_gw_item_get_mail_size (item); + mi->info.subject = camel_pstring_strdup(e_gw_item_get_subject(item)); + } +- ++ + if (exists) { + camel_folder_change_info_change_uid (changes, mi->info.uid); + camel_message_info_free (pmi); +@@ -1260,7 +1247,7 @@ gw_update_cache (CamelFolder *folder, GL + t_cache_stream = camel_data_cache_get (gw_folder->cache, "cache", id, ex); + if (t_cache_stream && !is_sent_folder) { + camel_object_unref (t_cache_stream); +- ++ + mail_msg = groupwise_folder_item_to_msg (folder, item, ex); + if (mail_msg) + camel_medium_set_header (CAMEL_MEDIUM (mail_msg), "X-Evolution-Source", groupwise_base_url_lookup (priv)); +@@ -1300,7 +1287,7 @@ gw_update_summary ( CamelFolder *folder, + char *container_id = NULL; + gboolean is_junk = FALSE; + GList *item_list = list; +- ++ + /*Assert lock???*/ + changes = camel_folder_change_info_new (); + container_id = g_strdup (camel_groupwise_store_container_id_lookup (gw_store, folder->full_name)); +@@ -1309,7 +1296,7 @@ gw_update_summary ( CamelFolder *folder, + camel_folder_change_info_free (changes); + return; + } +- ++ + if (!strcmp (folder->full_name, JUNK_FOLDER)) { + is_junk = TRUE; + } +@@ -1324,7 +1311,7 @@ gw_update_summary ( CamelFolder *folder, + status_flags = 0; + + id = e_gw_item_get_id (item); +- ++ + mi = (CamelGroupwiseMessageInfo *)camel_folder_summary_uid (folder->summary, id); + if (mi) + exists = TRUE; +@@ -1352,13 +1339,13 @@ gw_update_summary ( CamelFolder *folder, + status_flags |= CAMEL_MESSAGE_SEEN; + if (item_status & E_GW_ITEM_STAT_REPLIED) + status_flags |= CAMEL_MESSAGE_ANSWERED; +- ++ + if (!strcmp (folder->full_name, "Trash")) + status_flags |= CAMEL_MESSAGE_SEEN; +- ++ + mi->info.flags |= status_flags; + +- ++ + priority = e_gw_item_get_priority (item); + if (priority && !(g_ascii_strcasecmp (priority,"High"))) { + mi->info.flags |= CAMEL_MESSAGE_FLAGGED; +@@ -1371,7 +1358,7 @@ gw_update_summary ( CamelFolder *folder, + EGwItemAttachment *attach = (EGwItemAttachment *)al->data; + + if (!g_ascii_strcasecmp (attach->name, "Mime.822") || +- !g_ascii_strcasecmp (attach->name, "TEXT.htm")) ++ !g_ascii_strcasecmp (attach->name, "TEXT.htm")) + has_attachments = FALSE; + + if (has_attachments) +@@ -1402,10 +1389,10 @@ gw_update_summary ( CamelFolder *folder, + mi->info.to = camel_pstring_strdup (str->str); + g_string_truncate (str, 0); + } +- ++ + if (type == E_GW_ITEM_TYPE_APPOINTMENT +- || type == E_GW_ITEM_TYPE_NOTE +- || type == E_GW_ITEM_TYPE_TASK ) { ++ || type == E_GW_ITEM_TYPE_NOTE ++ || type == E_GW_ITEM_TYPE_TASK ) { + temp_date = e_gw_item_get_start_date (item); + if (temp_date) { + time_t time = e_gw_connection_get_date_from_string (temp_date); +@@ -1432,7 +1419,7 @@ gw_update_summary ( CamelFolder *folder, + if (!exists) + mi->info.size = e_gw_item_get_mail_size (item); + mi->info.subject = camel_pstring_strdup(e_gw_item_get_subject(item)); +- ++ + if (exists) { + camel_folder_change_info_change_uid (changes, e_gw_item_get_id (item)); + camel_message_info_free (&mi->info); +@@ -1485,8 +1472,9 @@ groupwise_folder_item_to_msg( CamelFolde + int len = 0; + + if (!g_ascii_strcasecmp (attach->name, "Mime.822") || +- !g_ascii_strcasecmp (attach->name, "TEXT.htm")) { +- ++ !g_ascii_strcasecmp (attach->name, "TEXT.htm") || ++ !g_ascii_strcasecmp (attach->name, "Header")) { ++ + status = e_gw_connection_get_attachment (cnc, + attach->id, 0, -1, + (const char **)&attachment, &len); +@@ -1541,7 +1529,7 @@ groupwise_folder_item_to_msg( CamelFolde + } + + groupwise_populate_msg_body_from_item (cnc, multipart, item, body); +- ++ + /*Set recipient details*/ + groupwise_msg_set_recipient_list (msg, item); + groupwise_populate_details_from_item (msg, item); +@@ -1561,9 +1549,10 @@ groupwise_folder_item_to_msg( CamelFolde + if (attach->contentid && (is_text_html_embed != TRUE)) + is_text_html_embed = TRUE; + if ( !g_ascii_strcasecmp (attach->name, "TEXT.htm") || +- !g_ascii_strcasecmp (attach->name, "Mime.822")) ++ !g_ascii_strcasecmp (attach->name, "Mime.822") || ++ !g_ascii_strcasecmp (attach->name, "Header")) + continue; +- ++ + if ( (attach->item_reference) && (!g_ascii_strcasecmp (attach->item_reference, "1")) ) { + CamelMimeMessage *temp_msg = NULL; + status = e_gw_connection_get_item (cnc, container_id, attach->id, "default distribution recipient message attachments subject notification created recipientStatus status startDate", &temp_item); +@@ -1589,7 +1578,7 @@ groupwise_folder_item_to_msg( CamelFolde + int i, t_len=0, offset=0, t_offset=0; + char *t_attach = NULL; + GString *gstr = g_string_new (NULL); +- ++ + count = (attach->size)/(1024*1024); + count++; + len = 0; +@@ -1627,7 +1616,6 @@ groupwise_folder_item_to_msg( CamelFolde + camel_content_type_set_param(CAMEL_DATA_WRAPPER (multipart)->mime_type, "type", "multipart/alternative"); + if (attach->contentid) { + gchar **t; +- //strip_lt_gt ((char **)&attach->contentid, 1, 2); + t= g_strsplit_set (attach->contentid, "<>", -1); + if (!t[1]) + camel_mime_part_set_content_id (part, attach->contentid); +@@ -1637,13 +1625,13 @@ groupwise_folder_item_to_msg( CamelFolde + camel_mime_part_set_content_location (part, attach->name); + } + } else if (attach->contentType && +- !strcmp (attach->contentType, "application/pgp-signature")) { ++ !strcmp (attach->contentType, "application/pgp-signature")) { + camel_mime_part_set_filename(part, g_strdup(attach->name)); + camel_data_wrapper_set_mime_type(CAMEL_DATA_WRAPPER (multipart), "multipart/signed"); + has_boundary = TRUE; + camel_content_type_set_param(CAMEL_DATA_WRAPPER (multipart)->mime_type, "protocol", attach->contentType); + } else if (attach->contentType && +- !strcmp (attach->contentType, "application/pgp-encrypted")) { ++ !strcmp (attach->contentType, "application/pgp-encrypted")) { + camel_mime_part_set_filename(part, g_strdup(attach->name)); + camel_data_wrapper_set_mime_type(CAMEL_DATA_WRAPPER (multipart), "multipart/encrypted"); + has_boundary = TRUE; +@@ -1659,8 +1647,9 @@ groupwise_folder_item_to_msg( CamelFolde + camel_mime_part_set_encoding (part, CAMEL_TRANSFER_ENCODING_BASE64); + camel_mime_part_set_content(part, attachment, len, attach->contentType); + camel_content_type_set_param (((CamelDataWrapper *) part)->mime_type, "name", attach->name); +- } else +- camel_mime_part_set_content(part, attachment, len, ""); ++ } else { ++ camel_mime_part_set_content(part, attachment, len, "text/plain"); ++ } + if (!has_boundary) + camel_data_wrapper_set_mime_type(CAMEL_DATA_WRAPPER (multipart),"multipart/digest"); + +@@ -1698,13 +1687,13 @@ gw_update_all_items (CamelFolder *folder + changes = camel_folder_change_info_new (); + + item_list = g_list_reverse (item_list); +- ++ + summary = camel_folder_get_summary (folder); + /*item_ids : List of ids from the summary*/ + while (index < summary->len) { + info = g_ptr_array_index (summary, index); + temp = NULL; +- ++ + if (item_list) { + temp = g_list_find_custom (item_list, (const char *)info->uid, (GCompareFunc) strcmp); + } +@@ -1720,7 +1709,7 @@ gw_update_all_items (CamelFolder *folder + } + index ++; + } +- ++ + camel_object_trigger_event (folder, "folder_changed", changes); + + if (item_list) { +@@ -1729,11 +1718,11 @@ gw_update_all_items (CamelFolder *folder + CAMEL_SERVICE_LOCK (gw_store, connect_lock); + gw_update_cache (folder, item_list, ex, TRUE); + CAMEL_SERVICE_UNLOCK (gw_store, connect_lock); +- ++ + g_list_foreach (item_list, (GFunc)g_free, NULL); + g_list_free (item_list); + } +- ++ + camel_folder_free_summary (folder, summary); + } + +@@ -1752,7 +1741,7 @@ groupwise_append_message (CamelFolder *f + EGwItem *item; + char *id; + gboolean is_ok = FALSE; +- ++ + if (!strcmp (folder->name, RECEIVED)) + is_ok = TRUE; + if(!strcmp (folder->name, SENT)) +@@ -1783,20 +1772,20 @@ groupwise_append_message (CamelFolder *f + item = camel_groupwise_util_item_from_message (cnc, message, CAMEL_ADDRESS (message->from), recipients); + /*Set the source*/ + if (!strcmp (folder->name, RECEIVED)) +- e_gw_item_set_source (item, "received"); ++ e_gw_item_set_source (item, "received"); + if (!strcmp (folder->name, SENT)) +- e_gw_item_set_source (item, "sent"); ++ e_gw_item_set_source (item, "sent"); + if (!strcmp (folder->name, DRAFT)) +- e_gw_item_set_source (item, "draft"); ++ e_gw_item_set_source (item, "draft"); + if (!strcmp (folder->name, PERSONAL)) +- e_gw_item_set_source (item, "personal"); ++ e_gw_item_set_source (item, "personal"); + /*set container id*/ + e_gw_item_set_container_id (item, container_id); + + status = e_gw_connection_create_item (cnc, item, &id); + if (status != E_GW_CONNECTION_STATUS_OK) { + camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM, _("Cannot create message: %s"), +- e_gw_connection_get_error_message (status)); ++ e_gw_connection_get_error_message (status)); + + if (appended_uid) + *appended_uid = NULL; +@@ -1808,7 +1797,7 @@ groupwise_append_message (CamelFolder *f + g_message ("Adding %s to %s", id, container_id); + if (status != E_GW_CONNECTION_STATUS_OK) { + camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM, _("Cannot append message to folder `%s': %s"), +- folder->full_name, e_gw_connection_get_error_message (status)); ++ folder->full_name, e_gw_connection_get_error_message (status)); + + if (appended_uid) + *appended_uid = NULL; +@@ -1841,8 +1830,8 @@ uid_compar (const void *va, const void * + + static void + groupwise_transfer_messages_to (CamelFolder *source, GPtrArray *uids, +- CamelFolder *destination, GPtrArray **transferred_uids, +- gboolean delete_originals, CamelException *ex) ++ CamelFolder *destination, GPtrArray **transferred_uids, ++ gboolean delete_originals, CamelException *ex) + { + int count, index = 0; + GList *item_ids = NULL; +@@ -1853,8 +1842,8 @@ groupwise_transfer_messages_to (CamelFol + EGwConnectionStatus status; + EGwConnection *cnc; + +- count = camel_folder_summary_count (destination->summary); +- qsort (uids->pdata, uids->len, sizeof (void *), uid_compar); ++ count = camel_folder_summary_count (destination->summary); ++ qsort (uids->pdata, uids->len, sizeof (void *), uid_compar); + + while (index < uids->len) { + item_ids = g_list_append (item_ids, g_ptr_array_index (uids, index)); +@@ -1869,7 +1858,7 @@ groupwise_transfer_messages_to (CamelFol + else + source_container_id = NULL; + dest_container_id = camel_groupwise_store_container_id_lookup (gw_store, destination->full_name) ; +- ++ + CAMEL_SERVICE_LOCK (source->parent_store, connect_lock); + /* check for offline operation */ + if (offline->state == CAMEL_OFFLINE_STORE_NETWORK_UNAVAIL) { +@@ -1877,22 +1866,22 @@ groupwise_transfer_messages_to (CamelFol + CamelMimeMessage *message; + GList *l; + int i; +- ++ + for (l = item_ids, i = 0; l; l = l->next, i++) { + CamelMessageInfo *info; + + if (!(info = camel_folder_summary_uid (source->summary, uids->pdata[i]))) + continue; +- ++ + if (!(message = groupwise_folder_get_message (source, camel_message_info_uid (info), ex))) + break; +- ++ + camel_groupwise_journal_transfer (journal, (CamelGroupwiseFolder *)source, message, info, uids->pdata[i], NULL, ex); + camel_object_unref (message); +- ++ + if (camel_exception_is_set (ex)) + break; +- ++ + if (delete_originals) + camel_folder_delete_message(source, camel_message_info_uid (info)); + } +@@ -1900,7 +1889,7 @@ groupwise_transfer_messages_to (CamelFol + CAMEL_SERVICE_UNLOCK (source->parent_store, connect_lock); + return; + } +- ++ + cnc = cnc_lookup (priv); + + index = 0; +@@ -1949,8 +1938,8 @@ groupwise_expunge (CamelFolder *folder, + CamelFolderChangeInfo *changes; + int i, max; + gboolean delete = FALSE; +- +- ++ ++ + cnc = cnc_lookup (priv); + if (!cnc) + return; +@@ -1967,9 +1956,9 @@ groupwise_expunge (CamelFolder *folder, + CAMEL_SERVICE_UNLOCK (groupwise_store, connect_lock); + return; + } +- ++ + changes = camel_folder_change_info_new (); +- ++ + container_id = g_strdup (camel_groupwise_store_container_id_lookup (groupwise_store, folder->full_name)) ; + + max = camel_folder_summary_count (folder->summary); +@@ -1996,20 +1985,19 @@ groupwise_expunge (CamelFolder *folder, + + if (delete) + camel_object_trigger_event (CAMEL_OBJECT (folder), "folder_changed", changes); +- +- ++ ++ + g_free (container_id); + camel_folder_change_info_free (changes); + } + +- + static void + camel_groupwise_folder_class_init (CamelGroupwiseFolderClass *camel_groupwise_folder_class) + { + CamelFolderClass *camel_folder_class = CAMEL_FOLDER_CLASS (camel_groupwise_folder_class); +- ++ + parent_class = CAMEL_OFFLINE_FOLDER_CLASS (camel_type_get_global_classfuncs (camel_offline_folder_get_type ())); +- ++ + ((CamelObjectClass *) camel_groupwise_folder_class)->getv = gw_getv; + + camel_folder_class->get_message = groupwise_folder_get_message; +@@ -2035,7 +2023,7 @@ camel_groupwise_folder_init (gpointer ob + CAMEL_MESSAGE_DRAFT | CAMEL_MESSAGE_FLAGGED | CAMEL_MESSAGE_SEEN; + + folder->folder_flags = CAMEL_FOLDER_HAS_SUMMARY_CAPABILITY | CAMEL_FOLDER_HAS_SEARCH_CAPABILITY; +- ++ + gw_folder->priv = g_malloc0 (sizeof(*gw_folder->priv)); + + #ifdef ENABLE_THREADS +@@ -2063,20 +2051,20 @@ CamelType + camel_groupwise_folder_get_type (void) + { + static CamelType camel_groupwise_folder_type = CAMEL_INVALID_TYPE; +- +- ++ ++ + if (camel_groupwise_folder_type == CAMEL_INVALID_TYPE) { + camel_groupwise_folder_type = + camel_type_register (camel_offline_folder_get_type (), +- "CamelGroupwiseFolder", +- sizeof (CamelGroupwiseFolder), +- sizeof (CamelGroupwiseFolderClass), +- (CamelObjectClassInitFunc) camel_groupwise_folder_class_init, +- NULL, +- (CamelObjectInitFunc) camel_groupwise_folder_init, +- (CamelObjectFinalizeFunc) camel_groupwise_folder_finalize); ++ "CamelGroupwiseFolder", ++ sizeof (CamelGroupwiseFolder), ++ sizeof (CamelGroupwiseFolderClass), ++ (CamelObjectClassInitFunc) camel_groupwise_folder_class_init, ++ NULL, ++ (CamelObjectInitFunc) camel_groupwise_folder_init, ++ (CamelObjectFinalizeFunc) camel_groupwise_folder_finalize); + } +- ++ + return camel_groupwise_folder_type; + } + +@@ -2086,7 +2074,7 @@ gw_getv (CamelObject *object, CamelExcep + CamelFolder *folder = (CamelFolder *)object; + int i, count = 0; + guint32 tag; +- ++ + for (i=0 ; iargc ; i++) { + CamelArgGet *arg = &args->argv[i]; + +@@ -2114,7 +2102,7 @@ gw_getv (CamelObject *object, CamelExcep + return ((CamelObjectClass *)parent_class)->getv(object, ex, args); + + return 0; +- ++ + } + + void +@@ -2133,7 +2121,7 @@ convert_to_calendar (EGwItem *item, char + gstr = g_string_append (gstr, "BEGIN:VCALENDAR\n"); + gstr = g_string_append (gstr, "METHOD:REQUEST\n"); + gstr = g_string_append (gstr, "BEGIN:VEVENT\n"); +- ++ + if ((recur_key = e_gw_item_get_recurrence_key (item)) != 0) { + char *recur_k = g_strdup_printf ("%d", recur_key); + +@@ -2147,7 +2135,7 @@ convert_to_calendar (EGwItem *item, char + g_string_append_printf (gstr, "X-GWITEM-TYPE:APPOINTMENT\n"); + g_string_append_printf (gstr, "DTSTART:%s\n",e_gw_item_get_start_date (item)); + g_string_append_printf (gstr, "SUMMARY:%s\n", e_gw_item_get_subject (item)); +- ++ + temp = e_gw_item_get_message (item); + if (temp) { + g_string_append(gstr, "DESCRIPTION:"); +@@ -2169,8 +2157,8 @@ convert_to_calendar (EGwItem *item, char + org = e_gw_item_get_organizer (item); + if (org) + g_string_append_printf (gstr, "ORGANIZER;CN= %s;ROLE= CHAIR;\n MAILTO:%s\n", +- org->display_name, org->email); +- ++ org->display_name, org->email); ++ + recp_list = e_gw_item_get_recipient_list (item); + if (recp_list) { + GSList *rl ; +@@ -2182,14 +2170,14 @@ convert_to_calendar (EGwItem *item, char + recp->display_name, recp->email); + } + } +- ++ + g_string_append_printf (gstr, "DTEND:%s\n", e_gw_item_get_end_date (item)); + + temp = NULL; + temp = e_gw_item_get_place (item); + if (temp) + g_string_append_printf (gstr, "LOCATION:%s\n", temp); +- ++ + temp = NULL; + temp = e_gw_item_get_task_priority (item); + if (temp) +@@ -2207,10 +2195,10 @@ convert_to_calendar (EGwItem *item, char + } + gstr = g_string_append (gstr, "END:VEVENT\n"); + gstr = g_string_append (gstr, "END:VCALENDAR\n"); +- ++ + *str = gstr->str; + *len = gstr->len; +- ++ + g_string_free (gstr, FALSE); + g_strfreev (tmp); + } +@@ -2223,7 +2211,7 @@ convert_to_task (EGwItem *item, char **s + GString *gstr = g_string_new (NULL); + char **tmp = NULL; + const char *temp = NULL; +- ++ + tmp = g_strsplit (e_gw_item_get_id (item), "@", -1); + + gstr = g_string_append (gstr, "BEGIN:VCALENDAR\n"); +@@ -2241,8 +2229,8 @@ convert_to_task (EGwItem *item, char **s + org = e_gw_item_get_organizer (item); + if (org) + g_string_append_printf (gstr, "ORGANIZER;CN= %s;ROLE= CHAIR;\n MAILTO:%s\n", +- org->display_name, org->email); +- ++ org->display_name, org->email); ++ + recp_list = e_gw_item_get_recipient_list (item); + if (recp_list) { + GSList *rl; +@@ -2254,13 +2242,13 @@ convert_to_task (EGwItem *item, char **s + recp->display_name, recp->email); + } + } +- ++ + g_string_append_printf (gstr, "DTEND:%s\n", e_gw_item_get_end_date (item)); + + temp = e_gw_item_get_place (item); + if (temp) + g_string_append_printf (gstr, "LOCATION:%s\n", temp); +- ++ + temp = NULL; + temp = e_gw_item_get_task_priority (item); + if (temp) +@@ -2272,13 +2260,13 @@ convert_to_task (EGwItem *item, char **s + g_string_append_printf (gstr, "DUE:%s\n", temp); + gstr = g_string_append (gstr, "END:VTODO\n"); + gstr = g_string_append (gstr, "END:VCALENDAR\n"); +- ++ + + *str = g_strdup (gstr->str); + *len = gstr->len; +- ++ + g_string_free (gstr, TRUE); + g_strfreev (tmp); + } + +- ++/** End **/ diff --git a/datarootdir.diff b/datarootdir.diff new file mode 100644 index 0000000..ed462c3 --- /dev/null +++ b/datarootdir.diff @@ -0,0 +1,70 @@ +--- addressbook/libebook/libebook.pc.in ++++ addressbook/libebook/libebook.pc.in +@@ -2,6 +2,7 @@ + exec_prefix=@exec_prefix@ + libdir=@libdir@ + includedir=@includedir@ ++datarootdir=@datarootdir@ + + idldir=@idldir@ + IDL_INCLUDES=-I ${idldir} @IDL_INCLUDES@ +--- addressbook/libedata-book/libedata-book.pc.in ++++ addressbook/libedata-book/libedata-book.pc.in +@@ -2,6 +2,7 @@ + exec_prefix=@exec_prefix@ + libdir=@libdir@ + includedir=@includedir@ ++datarootdir=@datarootdir@ + + idldir=@idldir@ + IDL_INCLUDES=-I ${idldir} @IDL_INCLUDES@ +--- calendar/libecal/libecal.pc.in ++++ calendar/libecal/libecal.pc.in +@@ -2,6 +2,7 @@ + exec_prefix=@exec_prefix@ + libdir=@libdir@ + includedir=@includedir@ ++datarootdir=@datarootdir@ + + idldir=@idldir@ + IDL_INCLUDES=-I ${idldir} @IDL_INCLUDES@ +--- calendar/libedata-cal/libedata-cal.pc.in ++++ calendar/libedata-cal/libedata-cal.pc.in +@@ -2,6 +2,7 @@ + exec_prefix=@exec_prefix@ + libdir=@libdir@ + includedir=@includedir@ ++datarootdir=@datarootdir@ + + idldir=@idldir@ + IDL_INCLUDES=-I ${idldir} @IDL_INCLUDES@ +--- evolution-data-server.pc.in ++++ evolution-data-server.pc.in +@@ -4,6 +4,7 @@ + includedir=@includedir@ + privlibdir=@privlibdir@ + extensiondir=@extensiondir@ ++datarootdir=@datarootdir@ + datadir=@datadir@ + privdatadir=@privdatadir@ + +--- servers/exchange/storage/libexchange-storage.pc.in ++++ servers/exchange/storage/libexchange-storage.pc.in +@@ -2,6 +2,7 @@ + exec_prefix=@exec_prefix@ + libdir=@libdir@ + includedir=@includedir@ ++datarootdir=@datarootdir@ + + idldir=@idldir@ + IDL_INCLUDES=-I ${idldir} @IDL_INCLUDES@ +--- servers/groupwise/libegroupwise.pc.in ++++ servers/groupwise/libegroupwise.pc.in +@@ -2,6 +2,7 @@ + exec_prefix=@exec_prefix@ + libdir=@libdir@ + includedir=@includedir@ ++datarootdir=@datarootdir@ + + idldir=@idldir@ + IDL_INCLUDES=-I ${idldir} @IDL_INCLUDES@ diff --git a/e-d-s-configure-break-fix.patch b/e-d-s-configure-break-fix.patch new file mode 100644 index 0000000..ff408ee --- /dev/null +++ b/e-d-s-configure-break-fix.patch @@ -0,0 +1,11 @@ +--- configure.in.orig 2006-07-04 12:02:26.528729871 +0200 ++++ configure.in 2006-07-04 13:33:54.123889885 +0200 +@@ -310,7 +310,7 @@ int main(int argc, char **argv) + }],[ + AC_DEFINE(HAVE_LKSTRFTIME, 1, [strftime supports use of l and k]) + ac_cv_lkstrftime=yes +-],ac_cv_lkstrftime=no,ac_cv_lkstrftime=no]) ++],ac_cv_lkstrftime=no,[ac_cv_lkstrftime=no]) + AC_MSG_RESULT($ac_cv_lkstrftime) + + PKG_PROG_PKG_CONFIG diff --git a/eds-compiler-warning.patch b/eds-compiler-warning.patch new file mode 100644 index 0000000..e5cfb10 --- /dev/null +++ b/eds-compiler-warning.patch @@ -0,0 +1,54 @@ +--- addressbook/backends/ldap/e-book-backend-ldap.c ++++ addressbook/backends/ldap/e-book-backend-ldap.c +@@ -2285,7 +2285,9 @@ + GTimeVal start, end; + unsigned long diff; + +- if (enable_debug) ++ if (enable_debug) { + printf ("contact_list_handler ...\n"); ++ g_get_current_time (&start); ++ } + ldap = bl->priv->ldap; + if (!ldap) { +@@ -2481,6 +2483,8 @@ + if (enable_debug) { + g_get_current_time (&end); + printf ("e_book_backend_ldap_get_contact_list invoked contact_list_handler "); ++ diff = end.tv_sec * 1000 + end.tv_usec/1000; ++ diff -= start.tv_sec * 1000 + start.tv_usec/1000; + printf ("and took %ld.%03ld seconds\n", diff/1000, diff%1000); + } + } +--- camel/camel-stream-vfs.c ++++ camel/camel-stream-vfs.c +@@ -151,7 +151,7 @@ + { + GnomeVFSResult result; + GnomeVFSHandle *handle; +- int vfs_flag; ++ int vfs_flag = 0; + + if (flags & O_WRONLY) + vfs_flag = vfs_flag | GNOME_VFS_OPEN_WRITE; +--- libedataserverui/e-passwords.c ++++ libedataserverui/e-passwords.c +@@ -600,6 +600,7 @@ + #endif + + #if WITH_GNOME_KEYRING ++static void + ep_get_password (EPassMsg *msg) + { + char *path, *passwd; +--- servers/exchange/storage/exchange-account.c ++++ servers/exchange/storage/exchange-account.c +@@ -1846,7 +1846,7 @@ + int + exchange_account_check_password_expiry (ExchangeAccount *account) + { +- E2kGlobalCatalogEntry *entry; ++ E2kGlobalCatalogEntry *entry = NULL; + int max_pwd_age_days = -1; + + g_return_val_if_fail (EXCHANGE_IS_ACCOUNT (account), 0); diff --git a/eds-kerb-check.diff b/eds-kerb-check.diff new file mode 100644 index 0000000..a2f6d75 --- /dev/null +++ b/eds-kerb-check.diff @@ -0,0 +1,25 @@ +Index: servers/exchange/storage/exchange-account.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/servers/exchange/storage/exchange-account.c,v +retrieving revision 1.30 +diff -u -p -r1.30 exchange-account.c +--- servers/exchange/storage/exchange-account.c 6 Mar 2006 06:00:26 -0000 1.30 ++++ servers/exchange/storage/exchange-account.c 19 Apr 2006 09:26:18 -0000 +@@ -1000,7 +1000,7 @@ is_password_expired (ExchangeAccount *ac + + result = e2k_kerberos_check_password (ac->username, domain, + ac->password); +- if (result != E2K_KERBEROS_OK || ++ if (result != E2K_KERBEROS_OK && + result != E2K_KERBEROS_PASSWORD_EXPIRED) { + /* try again with nt domain */ + domain = ac->nt_domain; +@@ -1102,7 +1102,7 @@ exchange_account_set_password (ExchangeA + + result = e2k_kerberos_change_password (account->priv->username, domain, + old_pass, new_pass); +- if (result != E2K_KERBEROS_OK || result != E2K_KERBEROS_PASSWORD_TOO_WEAK) { ++ if (result != E2K_KERBEROS_OK && result != E2K_KERBEROS_PASSWORD_TOO_WEAK) { + /* try with nt_domain */ + domain = account->priv->nt_domain; + if (domain) diff --git a/eds-translations-updated.diff b/eds-translations-updated.diff new file mode 100644 index 0000000..0754bc2 --- /dev/null +++ b/eds-translations-updated.diff @@ -0,0 +1,64 @@ +diff -up ../../602/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/it.po po/it.po +--- ../../602/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/it.po 2006-06-02 07:38:25.231210320 +0200 ++++ po/it.po 2006-05-31 18:31:38.000000000 +0200 +@@ -18,7 +18,7 @@ msgstr "" + "Project-Id-Version: evolution-data-server\n" + "Report-Msgid-Bugs-To: \n" + "POT-Creation-Date: 2006-05-04 06:53+0000\n" +-"PO-Revision-Date: 2006-05-17 14:47\n" ++"PO-Revision-Date: 2006-05-31 17:31\n" + "Last-Translator: Novell Language \n" + "Language-Team: Novell Language \n" + "MIME-Version: 1.0\n" +@@ -714,7 +714,7 @@ msgstr "Impossibile salvare i dati del c + #: ../calendar/backends/file/e-cal-backend-file.c:209 + #, + msgid "Can't save calendar data: " +-msgstr "Can't save calendar data: " ++msgstr "Impossibile salvare i dati del calendario:" + + #: ../calendar/backends/groupwise/e-cal-backend-groupwise-utils.c:872 + #: ../camel/providers/groupwise/camel-groupwise-folder.c:1582 +@@ -2517,7 +2517,7 @@ msgstr "Certificato non corretto da %s:\ + #: ../camel/camel-tcp-stream-ssl.c:896 + #, c-format + msgid "SSL Certificate check for %s:\n\n%s\n\nDo you wish to accept?" +-msgstr "Controllo certificato SSL per %s:\n\n%s\n\nSi desidera accettare?" ++msgstr "Controllo certificato SSL per %s:\n\n%s\nSi desidera accettare?" + + #: ../camel/camel-tcp-stream-ssl.c:940 + #, c-format +@@ -2642,7 +2642,7 @@ msgstr "Impossibile caricare il sommario + + #: ../camel/providers/groupwise/camel-groupwise-folder.c:966 + msgid "Trash Folder Full. Please Empty." +-msgstr "Trash Folder Full. Please Empty." ++msgstr "La cartella del cestino è piena. Svuotarla." + + # LF + #: ../camel/providers/groupwise/camel-groupwise-folder.c:1129 +@@ -2767,7 +2767,7 @@ msgstr "Non è stata inserita la passwor + #: ../camel/providers/groupwise/camel-groupwise-store.c:226 + #, + msgid "Unable to authenticate to GroupWise server. " +-msgstr "Unable to authenticate to GroupWise server. " ++msgstr "Impossibile autenticare il server Groupwise." + + #: ../camel/providers/groupwise/camel-groupwise-store.c:304 + msgid "Some features may not work correctly with your current server version" +@@ -4954,13 +4954,13 @@ msgstr "Eli_mina %s" + #: ../libedataserverui/e-passwords.c:472 + #, + msgid "_Remember this passphrase" +-msgstr "_Remember this passphrase" ++msgstr "_Memorizza questa passphrase" + + # LF + #: ../libedataserverui/e-passwords.c:473 + #, + msgid "_Remember this passphrase for the remainder of this session" +-msgstr "_Remember this passphrase for the remainder of this session" ++msgstr "_Memorizza la passphrase per l'intera sessione" + + # LF + #: ../libedataserverui/e-passwords.c:476 diff --git a/eds-updated-translations.diff b/eds-updated-translations.diff new file mode 100644 index 0000000..1314151 --- /dev/null +++ b/eds-updated-translations.diff @@ -0,0 +1,20805 @@ +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: .intltool-merge-cache +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: ChangeLog +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: Makefile +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: Makefile.in +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: Makefile.in.in +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: POTFILES +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: POTFILES.in +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: POTFILES.skip +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: am.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: am.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: ar.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: ar.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: az.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: az.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: be.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: be.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: bg.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: bg.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: bn.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: bn.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: bs.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: bs.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: ca.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: ca.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: cs.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: cs.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: cy.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: cy.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: da.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: da.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: de.gmo +diff -up /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/de.po po/de.po +--- /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/de.po 2006-03-06 09:17:30.000000000 +0100 ++++ po/de.po 2006-05-19 14:48:58.000000000 +0200 +@@ -11,38 +11,38 @@ msgid "" + msgstr "" + "Project-Id-Version: evolution-data-server\n" + "Report-Msgid-Bugs-To: \n" +-"POT-Creation-Date: 2006-03-06 09:14+0100\n" +-"PO-Revision-Date: 2006-03-06 06:18+0100\n" +-"Last-Translator: Frank Arnold \n" +-"Language-Team: German \n" ++"POT-Creation-Date: 2006-05-04 06:53+0000\n" ++"PO-Revision-Date: 2006-05-17 11:25\n" ++"Last-Translator: Novell Language \n" ++"Language-Team: Novell Language \n" + "MIME-Version: 1.0\n" + "Content-Type: text/plain; charset=UTF-8\n" + "Content-Transfer-Encoding: 8bit\n" + +-#: ../addressbook/backends/file/e-book-backend-file.c:536 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2213 ++#: ../addressbook/backends/file/e-book-backend-file.c:538 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2225 + #: ../addressbook/backends/vcf/e-book-backend-vcf.c:484 + msgid "Loading..." + msgstr "Ladevorgang..." + +-#: ../addressbook/backends/file/e-book-backend-file.c:538 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2172 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2192 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2211 ++#: ../addressbook/backends/file/e-book-backend-file.c:540 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2184 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2204 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2223 + #: ../addressbook/backends/ldap/e-book-backend-ldap.c:4038 + #: ../addressbook/backends/vcf/e-book-backend-vcf.c:486 + msgid "Searching..." + msgstr "Suchvorgang..." + +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2496 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2593 + #: ../addressbook/backends/ldap/e-book-backend-ldap.c:4202 + #, c-format + msgid "Downloading contacts (%d)... " + msgstr "Kontakte werden heruntergeladen (%d)..." + +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2645 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2812 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2848 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2746 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2927 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2957 + #, c-format + msgid "Updating contacts cache (%d)... " + msgstr "Zwischenspeicher für Kontakte wird aktualisiert (%d)..." +@@ -170,8 +170,7 @@ msgstr "%s: Es gab keine in GConf gespei + #: ../addressbook/libebook/e-book.c:3672 + #, c-format + msgid "%s: there was no source for uid `%s' stored in gconf." +-msgstr "" +-"%s: Es gab keine in GConf gespeicherte Quelle der Benutzerkennung »%s«." ++msgstr "%s: Es gab keine in GConf gespeicherte Quelle der Benutzerkennung »%s«." + + #: ../addressbook/libebook/e-contact.c:108 + msgid "Unique ID" +@@ -650,62 +649,68 @@ msgstr "Geburtstag: %s" + msgid "Anniversary: %s" + msgstr "Jahrestag: %s" + +-#: ../calendar/backends/file/e-cal-backend-file.c:203 ++#: ../calendar/backends/file/e-cal-backend-file.c:204 + msgid "Can't save calendar data: Malformed URI." +-msgstr "" +-"Kalenderdaten konnten nicht gespeichert werden: URI fehlerhaft formatiert." ++msgstr "Kalenderdaten konnten nicht gespeichert werden: URI fehlerhaft formatiert." ++ ++#: ../calendar/backends/file/e-cal-backend-file.c:209 ++#, ++msgid "Can't save calendar data: " ++msgstr "Can't save calendar data: " + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise-utils.c:871 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1467 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise-utils.c:872 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1582 + msgid "Reply Requested: by " + msgstr "Antwort erbeten: durch " + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise-utils.c:876 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1472 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise-utils.c:877 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1587 + msgid "Reply Requested: When convenient" + msgstr "Antwort erbeten: Wenn es passt" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:191 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:193 + #, c-format + msgid "Loading %s items" + msgstr "%s-Elemente werden geladen" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:718 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:719 + #: ../servers/exchange/storage/exchange-hierarchy-foreign.c:260 + msgid "Calendar" + msgstr "Kalender" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:774 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:775 + msgid "Invalid server URI" + msgstr "Ungültige Server-URI" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:790 +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:799 +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:884 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:791 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:800 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:885 + #: ../calendar/libecal/e-cal.c:5137 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:902 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:922 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:950 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:574 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:589 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:630 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1120 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:970 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:993 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1028 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:588 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:603 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:644 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:712 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:754 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1253 + #: ../camel/providers/groupwise/camel-groupwise-transport.c:178 + msgid "Authentication failed" + msgstr "Legitimation gescheitert" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:840 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:841 + msgid "Could not create thread for getting deltas" + msgstr "Thread zum Abrufen von Änderungen konnte nicht angelegt werden" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:865 +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:1112 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:866 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:1113 + #: ../calendar/backends/http/e-cal-backend-http.c:520 + #: ../calendar/backends/weather/e-cal-backend-weather.c:452 + msgid "Could not create cache file" + msgstr "Datei zum Zwischenspeichern konnte nicht angelegt werden" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:878 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:879 + msgid "Could not create thread for populating cache" + msgstr "Thread zum Belegen des Zwischenspeichers konnte nicht angelegt werden" + +@@ -1063,9 +1068,7 @@ msgstr "Nicht festgelegt" + #: ../calendar/libecal/e-cal.c:1707 + #, c-format + msgid "Enter password for %s to enable proxy for user %s" +-msgstr "" +-"Geben Sie das Passwort für %s ein, um die Stellvertretung für den Benutzer %" +-"s zu aktivieren" ++msgstr "Geben Sie das Passwort für %s ein, um die Stellvertretung für den Benutzer %s zu aktivieren" + + #: ../calendar/libecal/e-cal.c:1710 ../libedataserverui/e-book-auth-util.c:198 + #, c-format +@@ -1089,11 +1092,11 @@ msgstr "Repository offline" + msgid "No such calendar" + msgstr "Kein derartiger Kalender" + +-#: ../calendar/libecal/e-cal.c:5117 ../servers/groupwise/e-gw-connection.c:172 ++#: ../calendar/libecal/e-cal.c:5117 ../servers/groupwise/e-gw-connection.c:175 + msgid "Object not found" + msgstr "Objekt nicht gefunden" + +-#: ../calendar/libecal/e-cal.c:5119 ../servers/groupwise/e-gw-connection.c:166 ++#: ../calendar/libecal/e-cal.c:5119 ../servers/groupwise/e-gw-connection.c:169 + msgid "Invalid object" + msgstr "Objekt ungültig" + +@@ -1110,7 +1113,7 @@ msgstr "URI bereits geladen" + msgid "Permission denied" + msgstr "Erlaubnis verweigert" + +-#: ../calendar/libecal/e-cal.c:5127 ../servers/groupwise/e-gw-connection.c:174 ++#: ../calendar/libecal/e-cal.c:5127 ../servers/groupwise/e-gw-connection.c:177 + msgid "Unknown User" + msgstr "Unbekannter Benutzer" + +@@ -1144,11 +1147,11 @@ msgstr "Es ist eine CORBA-Exception aufg + #: ../camel/providers/imap/camel-imap-command.c:311 + #: ../camel/providers/imap/camel-imap-command.c:411 + #: ../camel/providers/imap4/camel-imap4-store.c:383 +-#: ../camel/providers/pop3/camel-pop3-store.c:533 +-#: ../camel/providers/pop3/camel-pop3-store.c:540 +-#: ../camel/providers/pop3/camel-pop3-store.c:546 ++#: ../camel/providers/pop3/camel-pop3-store.c:528 ++#: ../camel/providers/pop3/camel-pop3-store.c:535 ++#: ../camel/providers/pop3/camel-pop3-store.c:541 + #: ../servers/exchange/storage/e-storage.c:586 +-#: ../servers/groupwise/e-gw-connection.c:180 ++#: ../servers/groupwise/e-gw-connection.c:183 + msgid "Unknown error" + msgstr "Unbekannter Fehler" + +@@ -1185,8 +1188,7 @@ msgstr "»%s« erwartet als erstes Argum + #: ../calendar/libedata-cal/e-cal-backend-sexp.c:119 + #, c-format + msgid "\"%s\" expects the first argument to be an ISO 8601 date/time string" +-msgstr "" +-"»%s« erwartet als erstes Argument eine Datum-/Zeit-Zeichenkette nach ISO 8601" ++msgstr "»%s« erwartet als erstes Argument eine Datum-/Zeit-Zeichenkette nach ISO 8601" + + #: ../calendar/libedata-cal/e-cal-backend-sexp.c:158 + #: ../calendar/libedata-cal/e-cal-backend-sexp.c:359 +@@ -1224,12 +1226,8 @@ msgstr "»%s« erwartet als zweites Argu + + #: ../calendar/libedata-cal/e-cal-backend-sexp.c:548 + #, c-format +-msgid "" +-"\"%s\" expects the first argument to be either \"any\", \"summary\", or " +-"\"description\", or \"location\"" +-msgstr "" +-"»%s« erwartet als erstes Argument entweder »any«, »summary«, »description« " +-"oder »location«" ++msgid "\"%s\" expects the first argument to be either \"any\", \"summary\", or \"description\", or \"location\"" ++msgstr "»%s« erwartet als erstes Argument entweder »any«, »summary«, »description« oder »location«" + + #: ../calendar/libedata-cal/e-cal-backend-sexp.c:671 + #, c-format +@@ -1238,12 +1236,8 @@ msgstr "»%s« erwartet mindestens ein A + + #: ../calendar/libedata-cal/e-cal-backend-sexp.c:685 + #, c-format +-msgid "" +-"\"%s\" expects all arguments to be strings or one and only one argument to " +-"be a boolean false (#f)" +-msgstr "" +-"»%s« erwartet als Argumente Zeichenketten, oder aber ein einziges Argument " +-"mit dem Wahrheitswert »falsch« (#f)" ++msgid "\"%s\" expects all arguments to be strings or one and only one argument to be a boolean false (#f)" ++msgstr "»%s« erwartet als Argumente Zeichenketten, oder aber ein einziges Argument mit dem Wahrheitswert »falsch« (#f)" + + #: ../camel/camel-cipher-context.c:102 + msgid "Signing is not supported by this cipher" +@@ -1296,25 +1290,13 @@ msgstr "Cache-Eintrag konnte nicht entfe + + #: ../camel/camel-disco-diary.c:197 + #, c-format +-msgid "" +-"Could not write log entry: %s\n" +-"Further operations on this server will not be replayed when you\n" +-"reconnect to the network." +-msgstr "" +-"Protokolleintrag konnte nicht geschrieben werden: %s\n" +-"Auf diesem Server können keine weiteren Vorgänge wiedergegeben\n" +-"werden, sobald Sie die Netzwerkverbindung erneut herstellen." ++msgid "Could not write log entry: %s\nFurther operations on this server will not be replayed when you\nreconnect to the network." ++msgstr "Protokolleintrag konnte nicht geschrieben werden: %s\nAuf diesem Server können keine weiteren Vorgänge wiedergegeben\nwerden, sobald Sie die Netzwerkverbindung erneut herstellen." + + #: ../camel/camel-disco-diary.c:260 + #, c-format +-msgid "" +-"Could not open `%s':\n" +-"%s\n" +-"Changes made to this folder will not be resynchronized." +-msgstr "" +-"»%s« konnte nicht geöffnet werden:\n" +-"%s\n" +-"Änderungen an diesem Ordner werden nicht resynchronisiert werden." ++msgid "Could not open `%s':\n%s\nChanges made to this folder will not be resynchronized." ++msgstr "»%s« konnte nicht geöffnet werden:\n%s\nÄnderungen an diesem Ordner werden nicht resynchronisiert werden." + + #: ../camel/camel-disco-diary.c:296 + msgid "Resynchronizing with server" +@@ -1334,8 +1316,7 @@ msgid "Preparing folder '%s' for offline + msgstr "Ordner »%s« wird für den Offline-Modus vorbereitet" + + #: ../camel/camel-disco-store.c:401 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1311 +-#: ../camel/providers/imap/camel-imap-store.c:2964 ++#: ../camel/providers/imap/camel-imap-store.c:2970 + msgid "You must be working online to complete this operation" + msgstr "Sie müssen online arbeiten, um diesen Vorgang abzuschließen" + +@@ -1432,26 +1413,17 @@ msgstr "Fehler beim Ausführen einer Fil + + #: ../camel/camel-folder-search.c:357 ../camel/camel-folder-search.c:478 + #, c-format +-msgid "" +-"Cannot parse search expression: %s:\n" +-"%s" +-msgstr "" +-"Syntax des Suchausdrucks konnte nicht analysiert werden: %s:\n" +-"%s" ++msgid "Cannot parse search expression: %s:\n%s" ++msgstr "Syntax des Suchausdrucks konnte nicht analysiert werden: %s:\n%s" + + #: ../camel/camel-folder-search.c:367 ../camel/camel-folder-search.c:488 + #, c-format +-msgid "" +-"Error executing search expression: %s:\n" +-"%s" +-msgstr "" +-"Fehler beim Ausführen eines Suchausdrucks: %s:\n" +-"%s" ++msgid "Error executing search expression: %s:\n%s" ++msgstr "Fehler beim Ausführen eines Suchausdrucks: %s:\n%s" + + #: ../camel/camel-folder-search.c:674 ../camel/camel-folder-search.c:707 + msgid "(match-all) requires a single bool result" +-msgstr "" +-"(match-all) macht einen einzelnen Boole'schen Wert als Ergebnis erforderlich" ++msgstr "(match-all) macht einen einzelnen Boole'schen Wert als Ergebnis erforderlich" + + #: ../camel/camel-folder-search.c:757 + msgid "(match-threads) not allowed inside match-all" +@@ -1511,34 +1483,21 @@ msgstr "Neue Nachricht(en) wird/werden g + + #: ../camel/camel-gpg-context.c:753 + #, c-format +-msgid "" +-"Unexpected GnuPG status message encountered:\n" +-"\n" +-"%s" +-msgstr "" +-"Nicht erwartete GnuPG-Statusmeldung erhalten:\n" +-"\n" +-"%s" ++msgid "Unexpected GnuPG status message encountered:\n\n%s" ++msgstr "Nicht erwartete GnuPG-Statusmeldung erhalten:\n\n%s" + + #: ../camel/camel-gpg-context.c:767 + msgid "Failed to parse gpg userid hint." +-msgstr "" +-"Die Syntax des gpg-Wink auf die Benutzerkennung konnte nicht analysiert " +-"werden." ++msgstr "Die Syntax des gpg-Wink auf die Benutzerkennung konnte nicht analysiert werden." + + #: ../camel/camel-gpg-context.c:791 + msgid "Failed to parse gpg passphrase request." +-msgstr "" +-"Die Syntax des gpg-Winks auf das Passwort konnte nicht analysiert werden." ++msgstr "Die Syntax des gpg-Winks auf das Passwort konnte nicht analysiert werden." + + #: ../camel/camel-gpg-context.c:806 ../camel/camel-gpg-context.c:810 + #, c-format +-msgid "" +-"You need a passphrase to unlock the key for\n" +-"user: \"%s\"" +-msgstr "" +-"Für das Entsperren des Schlüssels für den\n" +-"Benutzer %s ist ein Passwort erforderlich." ++msgid "You need a passphrase to unlock the key for\nuser: \"%s\"" ++msgstr "Für das Entsperren des Schlüssels für den\nBenutzer %s ist ein Passwort erforderlich." + + #: ../camel/camel-gpg-context.c:828 ../camel/camel-gpg-context.c:1032 + #: ../camel/providers/nntp/camel-nntp-store.c:1272 +@@ -1547,9 +1506,7 @@ msgstr "Abgesagt." + + #: ../camel/camel-gpg-context.c:846 + msgid "Failed to unlock secret key: 3 bad passphrases given." +-msgstr "" +-"Geheimschlüssel konnte nicht entsperrt werden: 3 falsche Passwörter " +-"eingegeben." ++msgstr "Geheimschlüssel konnte nicht entsperrt werden: 3 falsche Passwörter eingegeben." + + #: ../camel/camel-gpg-context.c:852 + #, c-format +@@ -1558,9 +1515,7 @@ msgstr "Unerwartete GnuPG-Antwort: %s" + + #: ../camel/camel-gpg-context.c:904 + msgid "Failed to encrypt: No valid recipients specified." +-msgstr "" +-"Nachricht konnte nicht verschlüsselt werden: keine gültigen Empfänger " +-"angegeben." ++msgstr "Nachricht konnte nicht verschlüsselt werden: keine gültigen Empfänger angegeben." + + #. always called on an i/o error + #: ../camel/camel-gpg-context.c:1170 ../camel/camel-gpg-context.c:1298 +@@ -1590,16 +1545,12 @@ msgstr "Dies ist ein digital signierter + #: ../camel/camel-smime-context.c:690 ../camel/camel-smime-context.c:701 + #: ../camel/camel-smime-context.c:708 + msgid "Cannot verify message signature: Incorrect message format" +-msgstr "" +-"Nachrichtensignatur konnte nicht verifiziert werden: Nachrichtenformat " +-"fehlerhaft" ++msgstr "Nachrichtensignatur konnte nicht verifiziert werden: Nachrichtenformat fehlerhaft" + + #: ../camel/camel-gpg-context.c:1487 + #, c-format + msgid "Cannot verify message signature: could not create temp file: %s" +-msgstr "" +-"Die Nachrichtensignatur konnte nicht verifiziert werden: Temporäre Datei " +-"konnte nicht erstellt werden: %s" ++msgstr "Die Nachrichtensignatur konnte nicht verifiziert werden: Temporäre Datei konnte nicht erstellt werden: %s" + + #: ../camel/camel-gpg-context.c:1568 + #, c-format +@@ -1616,8 +1567,7 @@ msgstr "MIME-Teil konnte nicht entschlü + + #: ../camel/camel-gpg-context.c:1686 + msgid "Cannot decrypt message: Incorrect message format" +-msgstr "" +-"Nachricht konnte nicht entschlüsselt werden: Nachrichtenformat fehlerhaft" ++msgstr "Nachricht konnte nicht entschlüsselt werden: Nachrichtenformat fehlerhaft" + + #: ../camel/camel-gpg-context.c:1740 ../camel/camel-smime-context.c:964 + msgid "Encrypted content" +@@ -1633,8 +1583,8 @@ msgstr "Syntax des Nachrichteninhalts ko + #: ../camel/providers/imap4/camel-imap4-engine.c:1589 + #: ../camel/providers/imap4/camel-imap4-engine.c:1634 + #: ../camel/providers/imap4/camel-imap4-engine.c:1690 +-#: ../camel/providers/imap4/camel-imap4-store.c:886 +-#: ../camel/providers/imap4/camel-imap4-store.c:1559 ++#: ../camel/providers/imap4/camel-imap4-store.c:881 ++#: ../camel/providers/imap4/camel-imap4-store.c:1554 + #: ../camel/providers/imap4/camel-imap4-utils.c:575 + #: ../camel/providers/smtp/camel-smtp-transport.c:160 + #: ../camel/providers/smtp/camel-smtp-transport.c:215 +@@ -1669,9 +1619,7 @@ msgstr "Sperrdatei für %s konnte nicht + #: ../camel/camel-lock.c:157 + #, c-format + msgid "Timed out trying to get lock file on %s. Try again later." +-msgstr "" +-"Zeitüberschreitung beim Versuch, eine Sperrdatei auf %s zu erhalten. " +-"Versuchen Sie es später noch einmal." ++msgstr "Zeitüberschreitung beim Versuch, eine Sperrdatei auf %s zu erhalten. Versuchen Sie es später noch einmal." + + #: ../camel/camel-lock.c:212 + #, c-format +@@ -1743,8 +1691,8 @@ msgstr "Fehler bei der Syntaxanalyse" + + #: ../camel/camel-net-utils.c:497 ../camel/camel-net-utils.c:659 + #: ../camel/camel-net-utils.c:790 +-#: ../camel/providers/pop3/camel-pop3-store.c:446 +-#: ../camel/providers/pop3/camel-pop3-store.c:527 ++#: ../camel/providers/pop3/camel-pop3-store.c:441 ++#: ../camel/providers/pop3/camel-pop3-store.c:522 + msgid "Cancelled" + msgstr "Abgesagt" + +@@ -1800,9 +1748,7 @@ msgstr "Zum Lesen von E-Mails in Form ei + #: ../camel/camel-provider.c:188 + #, c-format + msgid "Could not load %s: Module loading not supported on this system." +-msgstr "" +-"%s konnte nicht geladen werden: Laden von Modulen wird von diesem System " +-"nicht unterstützt." ++msgstr "%s konnte nicht geladen werden: Laden von Modulen wird von diesem System nicht unterstützt." + + #: ../camel/camel-provider.c:197 + #, c-format +@@ -1825,9 +1771,7 @@ msgstr "Anonym" + + #: ../camel/camel-sasl-anonymous.c:37 + msgid "This option will connect to the server using an anonymous login." +-msgstr "" +-"Dies stellt unter Verwendung einer anonymen Anmeldekennung eine Verbindung " +-"mit dem Server her" ++msgstr "Dies stellt unter Verwendung einer anonymen Anmeldekennung eine Verbindung mit dem Server her" + + #: ../camel/camel-sasl-anonymous.c:122 ../camel/camel-sasl-plain.c:89 + msgid "Authentication failed." +@@ -1835,54 +1779,34 @@ msgstr "Legitimation gescheitert." + + #: ../camel/camel-sasl-anonymous.c:131 + #, c-format +-msgid "" +-"Invalid email address trace information:\n" +-"%s" +-msgstr "" +-"Ungültige E-Mail-Adressverfolgungsinformationen:\n" +-"%s" ++msgid "Invalid email address trace information:\n%s" ++msgstr "Ungültige E-Mail-Adressverfolgungsinformationen:\n%s" + + #: ../camel/camel-sasl-anonymous.c:143 + #, c-format +-msgid "" +-"Invalid opaque trace information:\n" +-"%s" +-msgstr "" +-"Ungültige opake Verfolgungsinformationen:\n" +-"%s" ++msgid "Invalid opaque trace information:\n%s" ++msgstr "Ungültige opake Verfolgungsinformationen:\n%s" + + #: ../camel/camel-sasl-anonymous.c:155 + #, c-format +-msgid "" +-"Invalid trace information:\n" +-"%s" +-msgstr "" +-"Ungültige Verfolgungsinformationen:\n" +-"%s" ++msgid "Invalid trace information:\n%s" ++msgstr "Ungültige Verfolgungsinformationen:\n%s" + + #: ../camel/camel-sasl-cram-md5.c:38 + msgid "CRAM-MD5" + msgstr "CRAM-MD5" + + #: ../camel/camel-sasl-cram-md5.c:40 +-msgid "" +-"This option will connect to the server using a secure CRAM-MD5 password, if " +-"the server supports it." +-msgstr "" +-"Dies stellt eine Verbindung mit dem SMTP-Server her und verwendet dazu ein " +-"sicheres CRAM-MD5-Passwort, falls der Server dies unterstützt." ++msgid "This option will connect to the server using a secure CRAM-MD5 password, if the server supports it." ++msgstr "Dies stellt eine Verbindung mit dem SMTP-Server her und verwendet dazu ein sicheres CRAM-MD5-Passwort, falls der Server dies unterstützt." + + #: ../camel/camel-sasl-digest-md5.c:48 + msgid "DIGEST-MD5" + msgstr "DIGEST-MD5" + + #: ../camel/camel-sasl-digest-md5.c:50 +-msgid "" +-"This option will connect to the server using a secure DIGEST-MD5 password, " +-"if the server supports it." +-msgstr "" +-"Dies stellt eine Verbindung mit dem SMTP-Server her und verwendet dazu ein " +-"sicheres DIGEST-MD5-Passwort, falls der Server dies unterstützt." ++msgid "This option will connect to the server using a secure DIGEST-MD5 password, if the server supports it." ++msgstr "Dies stellt eine Verbindung mit dem SMTP-Server her und verwendet dazu ein sicheres DIGEST-MD5-Passwort, falls der Server dies unterstützt." + + #: ../camel/camel-sasl-digest-md5.c:818 + msgid "Server challenge too long (>2048 octets)" +@@ -1894,8 +1818,7 @@ msgstr "Server-Herausforderung ungültig + + #: ../camel/camel-sasl-digest-md5.c:833 + msgid "Server challenge contained invalid \"Quality of Protection\" token" +-msgstr "" +-"Server-Herausforderung enthielt ungültiges »Quality-of-Protection«-Token" ++msgstr "Server-Herausforderung enthielt ungültiges »Quality-of-Protection«-Token" + + #: ../camel/camel-sasl-digest-md5.c:863 + msgid "Server response did not contain authorization data" +@@ -1916,57 +1839,32 @@ msgstr "GSSAPI" + + #: ../camel/camel-sasl-gssapi.c:59 + msgid "This option will connect to the server using Kerberos 5 authentication." +-msgstr "" +-"Dies stellt eine Verbindung mit dem Server her und verwendet zur " +-"Legitimation Kerberos 5" ++msgstr "Dies stellt eine Verbindung mit dem Server her und verwendet zur Legitimation Kerberos 5" + + #: ../camel/camel-sasl-gssapi.c:157 +-msgid "" +-"The specified mechanism is not supported by the provided credential, or is " +-"unrecognized by the implementation." +-msgstr "" +-"Der angegebene Mechanismus wird vom übergebenen Berechtigungsnachweis nicht " +-"unterstützt oder wird von der Implementierung nicht erkannt." ++msgid "The specified mechanism is not supported by the provided credential, or is unrecognized by the implementation." ++msgstr "Der angegebene Mechanismus wird vom übergebenen Berechtigungsnachweis nicht unterstützt oder wird von der Implementierung nicht erkannt." + + #: ../camel/camel-sasl-gssapi.c:162 + msgid "The provided target_name parameter was ill-formed." +-msgstr "" +-"Der übergebene Parameter »target_name« liegt in fehlerhafter Formatierung " +-"vor." ++msgstr "Der übergebene Parameter »target_name« liegt in fehlerhafter Formatierung vor." + + #: ../camel/camel-sasl-gssapi.c:165 +-msgid "" +-"The provided target_name parameter contained an invalid or unsupported type " +-"of name." +-msgstr "" +-"Der übergebene Parameter »target_name« enthält einen ungültigen oder nicht " +-"unterstützten Namenstyp " ++msgid "The provided target_name parameter contained an invalid or unsupported type of name." ++msgstr "Der übergebene Parameter »target_name« enthält einen ungültigen oder nicht unterstützten Namenstyp " + + #: ../camel/camel-sasl-gssapi.c:169 +-msgid "" +-"The input_token contains different channel bindings to those specified via " +-"the input_chan_bindings parameter." +-msgstr "" +-"Das Eingabe-Token »input_token« enthält andere Kanalbindungen als die vom " +-"Parameter »input_chan_bindings« angegebenen." ++msgid "The input_token contains different channel bindings to those specified via the input_chan_bindings parameter." ++msgstr "Das Eingabe-Token »input_token« enthält andere Kanalbindungen als die vom Parameter »input_chan_bindings« angegebenen." + + #: ../camel/camel-sasl-gssapi.c:174 +-msgid "" +-"The input_token contains an invalid signature, or a signature that could not " +-"be verified." +-msgstr "" +-"Das Eingabe-Token »input_token« enthält eine ungültige oder nicht " +-"verifizierbare Signatur." ++msgid "The input_token contains an invalid signature, or a signature that could not be verified." ++msgstr "Das Eingabe-Token »input_token« enthält eine ungültige oder nicht verifizierbare Signatur." + + # CHECK + #: ../camel/camel-sasl-gssapi.c:178 +-msgid "" +-"The supplied credentials were not valid for context initiation, or the " +-"credential handle did not reference any credentials." +-msgstr "" +-"Die übergebenen Berechtigungsnachweise sind nicht für die Auslösung eines " +-"Kontextes gültig oder der Berechtigungsnachweis-Handle hat auf keine " +-"Berechtigungsnachweise Bezug genommen." ++msgid "The supplied credentials were not valid for context initiation, or the credential handle did not reference any credentials." ++msgstr "Die übergebenen Berechtigungsnachweise sind nicht für die Auslösung eines Kontextes gültig oder der Berechtigungsnachweis-Handle hat auf keine Berechtigungsnachweise Bezug genommen." + + #: ../camel/camel-sasl-gssapi.c:183 + msgid "The supplied context handle did not refer to a valid context." +@@ -1974,26 +1872,20 @@ msgstr "Der übergebene Kontext-Handle f + + #: ../camel/camel-sasl-gssapi.c:186 + msgid "The consistency checks performed on the input_token failed." +-msgstr "" +-"Die für das Eingabe-Token »input_token« durchgeführten Konsistenzprüfungen " +-"schlugen fehl." ++msgstr "Die für das Eingabe-Token »input_token« durchgeführten Konsistenzprüfungen schlugen fehl." + + #: ../camel/camel-sasl-gssapi.c:189 + msgid "The consistency checks performed on the credential failed." +-msgstr "" +-"Die für den Berechtigungsnachweis durchgeführten Konsistenzüberprüfungen " +-"schlugen fehl." ++msgstr "Die für den Berechtigungsnachweis durchgeführten Konsistenzüberprüfungen schlugen fehl." + + #: ../camel/camel-sasl-gssapi.c:192 + msgid "The referenced credentials have expired." +-msgstr "" +-"Die Berechtigungsnachweise, auf die Bezug genommen wurde, sind nicht mehr " +-"gültig." ++msgstr "Die Berechtigungsnachweise, auf die Bezug genommen wurde, sind nicht mehr gültig." + + #: ../camel/camel-sasl-gssapi.c:198 ../camel/camel-sasl-gssapi.c:246 + #: ../camel/camel-sasl-gssapi.c:282 ../camel/camel-sasl-gssapi.c:297 + #: ../camel/camel-sasl-kerberos4.c:229 +-#: ../camel/providers/imap/camel-imap-store.c:1285 ++#: ../camel/providers/imap/camel-imap-store.c:1280 + msgid "Bad authentication response from server." + msgstr "Fehlerhafte Legitimationsantwort vom Server." + +@@ -2007,18 +1899,12 @@ msgstr "Kerberos 4" + + #: ../camel/camel-sasl-kerberos4.c:47 + msgid "This option will connect to the server using Kerberos 4 authentication." +-msgstr "" +-"Dies stellt eine Verbindung mit dem Server her und verwendet zur " +-"Legitimation Kerberos 4." ++msgstr "Dies stellt eine Verbindung mit dem Server her und verwendet zur Legitimation Kerberos 4." + + #: ../camel/camel-sasl-kerberos4.c:172 + #, c-format +-msgid "" +-"Could not get Kerberos ticket:\n" +-"%s" +-msgstr "" +-"Kerberos-Ticket konnte nicht erhalten werden:\n" +-"%s" ++msgid "Could not get Kerberos ticket:\n%s" ++msgstr "Kerberos-Ticket konnte nicht erhalten werden:\n%s" + + #: ../camel/camel-sasl-login.c:34 + msgid "Login" +@@ -2026,9 +1912,7 @@ msgstr "Anmelden" + + #: ../camel/camel-sasl-login.c:36 ../camel/camel-sasl-plain.c:36 + msgid "This option will connect to the server using a simple password." +-msgstr "" +-"Dies stellt unter Verwendung eines einfachen Passworts eine Verbindung mit " +-"dem Server her." ++msgstr "Dies stellt unter Verwendung eines einfachen Passworts eine Verbindung mit dem Server her." + + #: ../camel/camel-sasl-login.c:133 + msgid "Unknown authentication state." +@@ -2039,12 +1923,8 @@ msgid "NTLM / SPA" + msgstr "NTLM/SPA" + + #: ../camel/camel-sasl-ntlm.c:34 +-msgid "" +-"This option will connect to a Windows-based server using NTLM / Secure " +-"Password Authentication." +-msgstr "" +-"Mit dieser Option werden Sie mit einem Windows-basierten Server, der " +-"NTLM/»Secure Password Authentication« verwendet, verbunden." ++msgid "This option will connect to a Windows-based server using NTLM / Secure Password Authentication." ++msgstr "Mit dieser Option werden Sie mit einem Windows-basierten Server, der NTLM/»Secure Password Authentication« verwendet, verbunden." + + #: ../camel/camel-sasl-plain.c:34 + msgid "PLAIN" +@@ -2092,12 +1972,8 @@ msgstr "Adresse »%s« benötigt eine Pf + + #: ../camel/camel-session.c:292 + #, c-format +-msgid "" +-"Could not create directory %s:\n" +-"%s" +-msgstr "" +-"Verzeichnis %s konnte nicht angelegt werden:\n" +-"%s" ++msgid "Could not create directory %s:\n%s" ++msgstr "Verzeichnis %s konnte nicht angelegt werden:\n%s" + + #: ../camel/camel-smime-context.c:229 + #, c-format +@@ -2227,13 +2103,11 @@ msgstr "Zertifikatimport gescheitert" + + #: ../camel/camel-smime-context.c:597 + msgid "Certificate is the only message, cannot verify certificates" +-msgstr "" +-"Zertifikat ist die einzige Nachricht, Zertifikatverifizierung nicht möglich" ++msgstr "Zertifikat ist die einzige Nachricht, Zertifikatverifizierung nicht möglich" + + #: ../camel/camel-smime-context.c:600 + msgid "Certificate is the only message, certificates imported and verified" +-msgstr "" +-"Zertifikat ist die einzige Nachricht, Zertifikate importiert und verifiziert" ++msgstr "Zertifikat ist die einzige Nachricht, Zertifikate importiert und verifiziert" + + #: ../camel/camel-smime-context.c:604 + msgid "Cannot find signature digests" +@@ -2256,16 +2130,13 @@ msgstr "Es konnte kein Zertifikat für + # CHECK + #: ../camel/camel-smime-context.c:780 + msgid "Cannot find common bulk encryption algorithm" +-msgstr "" +-"Es konnte kein gemeinsamer Massenverschlüsselungsalgorithmus gefunden werden" ++msgstr "Es konnte kein gemeinsamer Massenverschlüsselungsalgorithmus gefunden werden" + + # CHECK + #. PORT_GetError(); ?? + #: ../camel/camel-smime-context.c:789 + msgid "Cannot allocate slot for encryption bulk key" +-msgstr "" +-"Es konnte kein Slot für den Massenverschlüsselungsschlüssel bereitgestellt " +-"werden" ++msgstr "Es konnte kein Slot für den Massenverschlüsselungsschlüssel bereitgestellt werden" + + #: ../camel/camel-smime-context.c:800 + msgid "Cannot create CMS Message" +@@ -2315,9 +2186,7 @@ msgstr "Schlüssel exportieren: Nicht im + #: ../camel/camel-store.c:214 + #: ../camel/providers/groupwise/camel-groupwise-transport.c:168 + msgid "Cannot get folder: Invalid operation on this store" +-msgstr "" +-"Auf Ordner konnte nicht zugegriffen werden: Ungültiger Vorgang auf diesem " +-"Speicher" ++msgstr "Auf Ordner konnte nicht zugegriffen werden: Ungültiger Vorgang auf diesem Speicher" + + #: ../camel/camel-store.c:246 + #, c-format +@@ -2326,8 +2195,7 @@ msgstr "Ordner »%s« konnte nicht angel + + #: ../camel/camel-store.c:310 + msgid "Cannot create folder: Invalid operation on this store" +-msgstr "" +-"Ordner konnte nicht angelegt werden: Ungültiger Vorgang auf diesem Speicher" ++msgstr "Ordner konnte nicht angelegt werden: Ungültiger Vorgang auf diesem Speicher" + + #: ../camel/camel-store.c:338 + #, c-format +@@ -2370,13 +2238,11 @@ msgstr "Die Zertifikatsignatur konnte ni + + #: ../camel/camel-tcp-stream-openssl.c:574 + msgid "Unable to decrypt Certificate Revocation List signature" +-msgstr "" +-"Die Signatur der Zertifikatrücknahmeliste konnte nicht entschlüsselt werden" ++msgstr "Die Signatur der Zertifikatrücknahmeliste konnte nicht entschlüsselt werden" + + #: ../camel/camel-tcp-stream-openssl.c:576 + msgid "Unable to decode issuer's public key" +-msgstr "" +-"Der öffentliche Schlüssel des Ausstellers konnte nicht entschlüsselt werden" ++msgstr "Der öffentliche Schlüssel des Ausstellers konnte nicht entschlüsselt werden" + + #: ../camel/camel-tcp-stream-openssl.c:578 + msgid "Certificate signature failure" +@@ -2476,16 +2342,8 @@ msgstr "Fehler bei der Anwendungsüberpr + + #: ../camel/camel-tcp-stream-openssl.c:696 ../camel/camel-tcp-stream-ssl.c:886 + #, c-format +-msgid "" +-"Issuer: %s\n" +-"Subject: %s\n" +-"Fingerprint: %s\n" +-"Signature: %s" +-msgstr "" +-"Aussteller: %s\n" +-"Empfänger: %s\n" +-"Fingerabdruck: %s\n" +-"Signatur: %s" ++msgid "Issuer: %s\nSubject: %s\nFingerprint: %s\nSignature: %s" ++msgstr "Aussteller: %s\nEmpfänger: %s\nFingerabdruck: %s\nSignatur: %s" + + #: ../camel/camel-tcp-stream-openssl.c:702 ../camel/camel-tcp-stream-ssl.c:892 + msgid "GOOD" +@@ -2497,74 +2355,34 @@ msgstr "SCHLECHT" + + #: ../camel/camel-tcp-stream-openssl.c:704 + #, c-format +-msgid "" +-"Bad certificate from %s:\n" +-"\n" +-"%s\n" +-"\n" +-"%s\n" +-"\n" +-"Do you wish to accept anyway?" +-msgstr "" +-"Ungültiges Zertifikat von %s:\n" +-"\n" +-"%s\n" +-"\n" +-"%s\n" +-"\n" +-"Möchten Sie es dennoch akzeptieren?" ++msgid "Bad certificate from %s:\n\n%s\n\n%s\n\nDo you wish to accept anyway?" ++msgstr "Ungültiges Zertifikat von %s:\n\n%s\n\n%s\n\nMöchten Sie es dennoch akzeptieren?" + + #. construct our user prompt + #: ../camel/camel-tcp-stream-ssl.c:896 + #, c-format +-msgid "" +-"SSL Certificate check for %s:\n" +-"\n" +-"%s\n" +-"\n" +-"Do you wish to accept?" +-msgstr "" +-"SSL Zertifikatsprüfung von %s:\n" +-"\n" +-"%s\n" +-"\n" +-"Möchten Sie es akzeptieren?" ++msgid "SSL Certificate check for %s:\n\n%s\n\nDo you wish to accept?" ++msgstr "SSL Zertifikatsprüfung von %s:\n\n%s\n\nMöchten Sie es akzeptieren?" + + #: ../camel/camel-tcp-stream-ssl.c:940 + #, c-format +-msgid "" +-"Certificate problem: %s\n" +-"Issuer: %s" +-msgstr "" +-"Zertifikatproblem: %s\n" +-"Aussteller: %s" ++msgid "Certificate problem: %s\nIssuer: %s" ++msgstr "Zertifikatproblem: %s\nAussteller: %s" + + #: ../camel/camel-tcp-stream-ssl.c:992 + #, c-format +-msgid "" +-"Bad certificate domain: %s\n" +-"Issuer: %s" +-msgstr "" +-"Fehlerhafte Zertifikatdomäne: %s\n" +-"Aussteller: %s" ++msgid "Bad certificate domain: %s\nIssuer: %s" ++msgstr "Fehlerhafte Zertifikatdomäne: %s\nAussteller: %s" + + #: ../camel/camel-tcp-stream-ssl.c:1010 + #, c-format +-msgid "" +-"Certificate expired: %s\n" +-"Issuer: %s" +-msgstr "" +-"Zertifikat nicht mehr gültig: %s\n" +-"Aussteller: %s" ++msgid "Certificate expired: %s\nIssuer: %s" ++msgstr "Zertifikat nicht mehr gültig: %s\nAussteller: %s" + + #: ../camel/camel-tcp-stream-ssl.c:1027 + #, c-format +-msgid "" +-"Certificate revocation list expired: %s\n" +-"Issuer: %s" +-msgstr "" +-"Zertifikatrücknahmeliste nicht mehr gültig: %s\n" +-"Aussteller: %s" ++msgid "Certificate revocation list expired: %s\nIssuer: %s" ++msgstr "Zertifikatrücknahmeliste nicht mehr gültig: %s\nAussteller: %s" + + #: ../camel/camel-url.c:293 + #, c-format +@@ -2583,8 +2401,7 @@ msgstr "Nachricht %s existiert nicht in + + #: ../camel/camel-vee-folder.c:642 ../camel/camel-vee-folder.c:648 + msgid "Cannot copy or move messages into a Virtual Folder" +-msgstr "" +-"Nachrichten können nicht in virtuelle Ordner kopiert oder verschoben werden" ++msgstr "Nachrichten können nicht in virtuelle Ordner kopiert oder verschoben werden" + + #: ../camel/camel-vee-store.c:101 ../camel/camel-vee-store.c:344 + msgid "Unmatched" +@@ -2608,17 +2425,13 @@ msgstr "Nachrichten können nicht in den + msgid "Cannot copy messages to the Junk folder" + msgstr "Nachrichten können nicht in den Unerwünscht-Ordner kopiert werden" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:116 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:112 + #: ../camel/providers/imap/camel-imap-folder.c:2063 + #, c-format +-msgid "" +-"Cannot get message: %s\n" +-" %s" +-msgstr "" +-"Nachricht konnte nicht abgerufen werden: %s\n" +-" %s" ++msgid "Cannot get message: %s\n %s" ++msgstr "Nachricht konnte nicht abgerufen werden: %s\n %s" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:116 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:112 + #: ../camel/providers/imap/camel-imap-folder.c:2063 + #: ../camel/providers/local/camel-maildir-folder.c:245 + #: ../camel/providers/local/camel-mbox-folder.c:350 +@@ -2626,7 +2439,7 @@ msgstr "" + msgid "No such message" + msgstr "Nachricht existiert nicht" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:128 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:124 + #: ../camel/providers/imap4/camel-imap4-folder.c:788 + #: ../camel/providers/nntp/camel-nntp-folder.c:155 + #: ../camel/providers/nntp/camel-nntp-folder.c:231 +@@ -2638,7 +2451,7 @@ msgstr "Nachricht existiert nicht" + msgid "User cancelled" + msgstr "Benutzer hat abgebrochen" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:135 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:131 + #: ../camel/providers/imap4/camel-imap4-folder.c:793 + #: ../camel/providers/nntp/camel-nntp-folder.c:146 + #: ../camel/providers/nntp/camel-nntp-folder.c:148 +@@ -2652,40 +2465,44 @@ msgstr "Benutzer hat abgebrochen" + msgid "Cannot get message %s: %s" + msgstr "Nachricht %s konnte nicht abgerufen werden: %s" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:152 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:160 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:148 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:156 + #: ../camel/providers/imap4/camel-imap4-folder.c:811 + msgid "This message is not available in offline mode." + msgstr "Diese Nachricht ist im Offline-Modus nicht verfügbar." + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:171 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:178 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1430 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:167 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:174 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1545 + msgid "Could not get message" + msgstr "Abrufen der Nachricht gescheitert" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:707 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:740 + #: ../camel/providers/imap/camel-imap-folder.c:252 + #, c-format + msgid "Could not load summary for %s" + msgstr "Zusammenfassung für %s konnte nicht geladen werden" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1037 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:618 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:966 ++msgid "Trash Folder Full. Please Empty." ++msgstr "Trash Folder Full. Please Empty." ++ ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1129 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:632 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:744 + #: ../camel/providers/imap/camel-imap-folder.c:2375 + #: ../camel/providers/imap/camel-imap-folder.c:2445 + #, c-format + msgid "Fetching summary information for new messages in %s" +-msgstr "" +-"Zusammenfassende Informationen für neue Nachrichten in %s werden abgerufen" ++msgstr "Zusammenfassende Informationen für neue Nachrichten in %s werden abgerufen" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1668 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1716 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1813 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1861 + #, c-format + msgid "Cannot append message to folder `%s': %s" + msgstr "Nachricht konnte nicht an Ordner »%s« angehängt werden: %s" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1704 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1849 + #, c-format + msgid "Cannot create message: %s" + msgstr "Nachricht konnte nicht angelegt werden: %s" +@@ -2698,9 +2515,7 @@ msgstr "Ordnerbehälter »%s« konnte ni + #: ../camel/providers/groupwise/camel-groupwise-journal.c:347 + #: ../camel/providers/imap4/camel-imap4-journal.c:320 + msgid "Cannot append message in offline mode: cache unavailable" +-msgstr "" +-"Nachricht konnte im Offline-Modus nicht angehängt werden: Zwischenspeicher " +-"nicht verfügbar" ++msgstr "Nachricht konnte im Offline-Modus nicht angehängt werden: Zwischenspeicher nicht verfügbar" + + #: ../camel/providers/groupwise/camel-groupwise-journal.c:363 + #: ../camel/providers/imap4/camel-imap4-journal.c:336 +@@ -2770,66 +2585,62 @@ msgid "Password" + msgstr "Passwort" + + #: ../camel/providers/groupwise/camel-groupwise-provider.c:104 +-msgid "" +-"This option will connect to the GroupWise server using a plaintext password." +-msgstr "" +-"Dies stellt unter Verwendung eines unverschlüsselten Passworts eine " +-"Verbindung mit dem GroupWise-Server her." ++msgid "This option will connect to the GroupWise server using a plaintext password." ++msgstr "Dies stellt unter Verwendung eines unverschlüsselten Passworts eine Verbindung mit dem GroupWise-Server her." + + #: ../camel/providers/groupwise/camel-groupwise-store.c:103 + msgid "Host or user not available in url" + msgstr "Rechner oder Benutzer in der URL nicht verfügbar" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:198 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:200 + #, c-format + msgid "%sPlease enter the GroupWise password for %s@%s" + msgstr "%sBitte geben Sie das GroupWise-Passwort für %s@%s ein" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:212 +-#: ../camel/providers/imap/camel-imap-store.c:1364 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:214 ++#: ../camel/providers/imap/camel-imap-store.c:1359 + msgid "You didn't enter a password." + msgstr "Sie haben kein Passwort eingegeben." + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:224 +-msgid "Unable to authenticate to GroupWise server." +-msgstr "Legitimation am GroupWise-Server gescheitert." ++#: ../camel/providers/groupwise/camel-groupwise-store.c:226 ++#, ++msgid "Unable to authenticate to GroupWise server. " ++msgstr "Unable to authenticate to GroupWise server. " + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:298 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:304 + msgid "Some features may not work correctly with your current server version" +-msgstr "" +-"Einige Funktionen werden mit Ihrer momentanen Server-Version möglicherweise " +-"nicht einwandfrei arbeiten." ++msgstr "Einige Funktionen werden mit Ihrer momentanen Server-Version möglicherweise nicht einwandfrei arbeiten." + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:526 +-#: ../camel/providers/imap/camel-imap-store.c:1873 +-#: ../camel/providers/imap/camel-imap-store.c:2064 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:540 ++#: ../camel/providers/imap/camel-imap-store.c:1868 ++#: ../camel/providers/imap/camel-imap-store.c:2059 + #, c-format + msgid "No such folder %s" + msgstr "Ordner »%s« nicht vorhanden" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1097 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1230 + msgid "Cannot create GroupWise folders in offline mode." + msgstr "GroupWise-Ordner können im Offline-Modus nicht angelegt werden." + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1111 +-#: ../camel/providers/imap/camel-imap-store.c:1948 +-#: ../camel/providers/imap/camel-imap-store.c:2317 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1244 ++#: ../camel/providers/imap/camel-imap-store.c:1943 ++#: ../camel/providers/imap/camel-imap-store.c:2312 + msgid "The parent folder is not allowed to contain subfolders" + msgstr "Der Elternordner darf keine Unterordner enthalten" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1188 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1209 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1321 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1342 + #, c-format + msgid "Cannot rename Groupwise folder `%s' to `%s'" + msgstr "GroupWise-Ordner »%s« konnte nicht in »%s« umbenannt werden" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1241 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1374 + #: ../camel/providers/groupwise/camel-groupwise-transport.c:121 + #, c-format + msgid "GroupWise server %s" + msgstr "GroupWise-Server %s" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1243 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1376 + #, c-format + msgid "GroupWise service for %s on %s" + msgstr "GroupWise-Dienst für %s auf %s" +@@ -2844,15 +2655,8 @@ msgid "Sending Message" + msgstr "Nachricht wird verschickt" + + #: ../camel/providers/groupwise/camel-groupwise-transport.c:216 +-msgid "" +-"You have exceeded this account's storage limit. Your messages are queued in " +-"your Outbox. Resend by pressing Send/Receive after deleting/archiving some " +-"of your mail.\n" +-msgstr "" +-"Sie haben das Speicherplatzlimit für dieses Konto überschritten. Ihre " +-"Nachrichten sind im Ausgang abgelegt. Senden Sie diese erneut durch drücken " +-"von Verschicken/Abrufen, nachdem Sie einige Ihrer E-Mails archiviert oder " +-"gelöscht haben.\n" ++msgid "You have exceeded this account's storage limit. Your messages are queued in your Outbox. Resend by pressing Send/Receive after deleting/archiving some of your mail.\n" ++msgstr "Sie haben das Speicherplatzlimit für dieses Konto überschritten. Ihre Nachrichten sind im Ausgang abgelegt. Senden Sie diese erneut durch drücken von Verschicken/Abrufen, nachdem Sie einige Ihrer E-Mails archiviert oder gelöscht haben.\n" + + #: ../camel/providers/groupwise/camel-groupwise-transport.c:218 + #: ../camel/providers/sendmail/camel-sendmail-transport.c:206 +@@ -2924,19 +2728,17 @@ msgstr "Für den Zugriff auf Hula-Server + + #: ../camel/providers/hula/camel-hula-provider.c:94 + msgid "This option will connect to the Hula server using a plaintext password." +-msgstr "" +-"Dies stellt unter Verwendung eines unverschlüsselten Passworts eine " +-"Verbindung mit dem Hula-Server her." ++msgstr "Dies stellt unter Verwendung eines unverschlüsselten Passworts eine Verbindung mit dem Hula-Server her." + + #: ../camel/providers/imap/camel-imap-command.c:223 + #: ../camel/providers/imap/camel-imap-command.c:265 + #: ../camel/providers/imap/camel-imap-command.c:472 +-#: ../camel/providers/imap/camel-imap-store.c:3004 ++#: ../camel/providers/imap/camel-imap-store.c:3010 + msgid "Operation cancelled" + msgstr "Vorgang abgebrochen" + + #: ../camel/providers/imap/camel-imap-command.c:310 +-#: ../camel/providers/imap/camel-imap-store.c:3007 ++#: ../camel/providers/imap/camel-imap-store.c:3013 + #, c-format + msgid "Server unexpectedly disconnected: %s" + msgstr "Server-Verbindung unerwartet getrennt: %s" +@@ -2945,12 +2747,8 @@ msgstr "Server-Verbindung unerwartet get + #. we might get a ']' from a BAD response since we +12, but who cares? + #: ../camel/providers/imap/camel-imap-command.c:331 + #, c-format +-msgid "" +-"Alert from IMAP server %s@%s:\n" +-"%s" +-msgstr "" +-"Alarm von IMAP-Server %s@%s:\n" +-"%s" ++msgid "Alert from IMAP server %s@%s:\n%s" ++msgstr "Alarm von IMAP-Server %s@%s:\n%s" + + #: ../camel/providers/imap/camel-imap-command.c:400 + #, c-format +@@ -3005,8 +2803,7 @@ msgstr "Diese Nachricht ist derzeit nich + #: ../camel/providers/imap/camel-imap-folder.c:2553 + #, c-format + msgid "Incomplete server response: no information provided for message %d" +-msgstr "" +-"Unvollständige Server-Antwort: Keine Informationen zu Nachricht %d erhalten" ++msgstr "Unvollständige Server-Antwort: Keine Informationen zu Nachricht %d erhalten" + + #: ../camel/providers/imap/camel-imap-folder.c:2561 + #, c-format +@@ -3015,11 +2812,8 @@ msgstr "Unvollständige Server-Antwort: + + #: ../camel/providers/imap/camel-imap-folder.c:2574 + #, c-format +-msgid "" +-"Unexpected server response: Identical UIDs provided for messages %d and %d" +-msgstr "" +-"Unerwartete Server-Antwort: Identische UIDs für Nachrichten %d und %d " +-"erhalten" ++msgid "Unexpected server response: Identical UIDs provided for messages %d and %d" ++msgstr "Unerwartete Server-Antwort: Identische UIDs für Nachrichten %d und %d erhalten" + + #: ../camel/providers/imap/camel-imap-folder.c:2755 + msgid "Could not find message body in FETCH response." +@@ -3074,9 +2868,7 @@ msgstr "Zum Lesen und Speichern von E-Ma + #: ../camel/providers/imap/camel-imap-provider.c:98 + #: ../camel/providers/imapp/camel-imapp-provider.c:68 + msgid "This option will connect to the IMAP server using a plaintext password." +-msgstr "" +-"Dies stellt unter Verwendung eines unverschlüsselten Passworts eine " +-"Verbindung mit dem IMAP-Server her." ++msgstr "Dies stellt unter Verwendung eines unverschlüsselten Passworts eine Verbindung mit dem IMAP-Server her." + + #: ../camel/providers/imap/camel-imap-store.c:447 + #: ../camel/providers/imap4/camel-imap4-store.c:215 +@@ -3124,7 +2916,7 @@ msgstr "SSL nicht verfügbar" + msgid "Connection cancelled" + msgstr "Verbindung abgebrochen" + +-#: ../camel/providers/imap/camel-imap-store.c:699 ++#: ../camel/providers/imap/camel-imap-store.c:702 + #: ../camel/providers/imap/camel-imap-store.c:721 + #: ../camel/providers/imap/camel-imap-store.c:727 + #: ../camel/providers/imap4/camel-imap4-store.c:369 +@@ -3134,7 +2926,7 @@ msgstr "Verbindung abgebrochen" + msgid "Failed to connect to IMAP server %s in secure mode: %s" + msgstr "Verbindung mit IMAP-Server %s im sicheren Modus ist gescheitert: %s" + +-#: ../camel/providers/imap/camel-imap-store.c:700 ++#: ../camel/providers/imap/camel-imap-store.c:703 + #: ../camel/providers/smtp/camel-smtp-transport.c:323 + msgid "STARTTLS not supported" + msgstr "STARTTLS nicht unterstützt" +@@ -3159,10 +2951,10 @@ msgid "Could not connect with command \" + msgstr "Verbindung mit Befehl »%s« konnte nicht hergestellt werden: %s" + + #. create a dummy "." parent inbox, use to scan, then put back at the top level +-#: ../camel/providers/imap/camel-imap-store.c:1057 +-#: ../camel/providers/imap/camel-imap-store.c:2413 ++#: ../camel/providers/imap/camel-imap-store.c:1052 ++#: ../camel/providers/imap/camel-imap-store.c:2408 + #: ../camel/providers/imap4/camel-imap4-store-summary.c:368 +-#: ../camel/providers/imap4/camel-imap4-store.c:1392 ++#: ../camel/providers/imap4/camel-imap4-store.c:1387 + #: ../camel/providers/local/camel-maildir-folder.c:75 + #: ../camel/providers/local/camel-maildir-store.c:217 + #: ../camel/providers/local/camel-maildir-store.c:289 +@@ -3173,43 +2965,36 @@ msgstr "Verbindung mit Befehl »%s« kon + msgid "Inbox" + msgstr "Eingang" + +-#: ../camel/providers/imap/camel-imap-store.c:1317 ++#: ../camel/providers/imap/camel-imap-store.c:1312 + #, c-format + msgid "IMAP server %s does not support requested authentication type %s" + msgstr "IMAP-Server %s unterstützt den verlangten Legitimationstyp %s nicht." + +-#: ../camel/providers/imap/camel-imap-store.c:1327 +-#: ../camel/providers/smtp/camel-smtp-transport.c:498 ++#: ../camel/providers/imap/camel-imap-store.c:1322 ++#: ../camel/providers/smtp/camel-smtp-transport.c:493 + #, c-format + msgid "No support for authentication type %s" + msgstr "Keine Unterstützung für Legitimationstyp %s" + +-#: ../camel/providers/imap/camel-imap-store.c:1350 ++#: ../camel/providers/imap/camel-imap-store.c:1345 + #: ../camel/providers/imapp/camel-imapp-store.c:364 + #, c-format + msgid "%sPlease enter the IMAP password for %s@%s" + msgstr "%sBitte geben Sie das IMAP-Passwort für %s@%s ein" + +-#: ../camel/providers/imap/camel-imap-store.c:1393 ++#: ../camel/providers/imap/camel-imap-store.c:1388 + #, c-format +-msgid "" +-"Unable to authenticate to IMAP server.\n" +-"%s\n" +-"\n" +-msgstr "" +-"Legitimation am IMAP-Server gescheitert.\n" +-"%s\n" +-"\n" +- +-#: ../camel/providers/imap/camel-imap-store.c:1885 +-#: ../camel/providers/imap/camel-imap-store.c:2255 +-#: ../camel/providers/imap4/camel-imap4-store.c:1022 ++msgid "Unable to authenticate to IMAP server.\n%s\n\n" ++msgstr "Legitimation am IMAP-Server gescheitert.\n%s\n\n" ++ ++#: ../camel/providers/imap/camel-imap-store.c:1880 ++#: ../camel/providers/imap/camel-imap-store.c:2250 ++#: ../camel/providers/imap4/camel-imap4-store.c:1017 + #, c-format +-msgid "" +-"The folder name \"%s\" is invalid because it contains the character \"%c\"" ++msgid "The folder name \"%s\" is invalid because it contains the character \"%c\"" + msgstr "Der Ordnername »%s« ist ungültig, da er das Zeichen »%c« enthält" + +-#: ../camel/providers/imap/camel-imap-store.c:2002 ++#: ../camel/providers/imap/camel-imap-store.c:1997 + #: ../camel/providers/local/camel-maildir-store.c:190 + #: ../camel/providers/local/camel-mbox-store.c:202 + #: ../camel/providers/local/camel-mh-store.c:249 +@@ -3217,7 +3002,7 @@ msgstr "Der Ordnername »%s« ist ungül + msgid "Cannot create folder `%s': folder exists." + msgstr "Ordner »%s« konnte nicht angelegt werden: Ordner existiert." + +-#: ../camel/providers/imap/camel-imap-store.c:2266 ++#: ../camel/providers/imap/camel-imap-store.c:2261 + #, c-format + msgid "Unknown parent folder: %s" + msgstr "Unbekannter Elternerdner: %s" +@@ -3257,11 +3042,8 @@ msgid "IMAP4 server %s unexpectedly disc + msgstr "Verbindung mit IMAP4-Server %s unerwartet getrennt: %s" + + #: ../camel/providers/imap4/camel-imap4-folder.c:86 +-msgid "" +-"Enable Mailing-List detection required for some filter and vFolder rules" +-msgstr "" +-"Erkennung von Mailinglisten aktivieren. Wird für einige Filter und VOrdner-" +-"Regeln benötigt." ++msgid "Enable Mailing-List detection required for some filter and vFolder rules" ++msgstr "Erkennung von Mailinglisten aktivieren. Wird für einige Filter und VOrdner-Regeln benötigt." + + #: ../camel/providers/imap4/camel-imap4-folder.c:399 + #, c-format +@@ -3276,8 +3058,7 @@ msgstr "Flags konnten nicht mit Ordner + #: ../camel/providers/imap4/camel-imap4-folder.c:464 + #, c-format + msgid "Cannot sync flags to folder `%s': Bad command" +-msgstr "" +-"Flags konnten nicht mit Ordner »%s« synchronisiert werden: Ungültiger Befehl" ++msgstr "Flags konnten nicht mit Ordner »%s« synchronisiert werden: Ungültiger Befehl" + + #: ../camel/providers/imap4/camel-imap4-folder.c:604 + #, c-format +@@ -3292,63 +3073,47 @@ msgstr "Ordner »%s« konnte nicht gesä + #: ../camel/providers/imap4/camel-imap4-folder.c:865 + #, c-format + msgid "Cannot get message %s from folder `%s': No such message" +-msgstr "" +-"Nachricht %s konnte nicht aus Ordner %s abgerufen werden: Keine derartige " +-"Nachricht" ++msgstr "Nachricht %s konnte nicht aus Ordner %s abgerufen werden: Keine derartige Nachricht" + + #: ../camel/providers/imap4/camel-imap4-folder.c:870 + #, c-format + msgid "Cannot get message %s from folder `%s': Bad command" +-msgstr "" +-"Nachricht %s konnte nicht aus Ordner »%s« abgerufen werden: Fehlerhafter " +-"Befehl" ++msgstr "Nachricht %s konnte nicht aus Ordner »%s« abgerufen werden: Fehlerhafter Befehl" + + #: ../camel/providers/imap4/camel-imap4-folder.c:914 + #, c-format + msgid "Cannot append message to folder `%s': Folder is read-only" +-msgstr "" +-"Nachricht konnte nicht an Ordner »%s« angehängt werden: Ordner ist " +-"schreibgeschützt" ++msgstr "Nachricht konnte nicht an Ordner »%s« angehängt werden: Ordner ist schreibgeschützt" + + #: ../camel/providers/imap4/camel-imap4-folder.c:1007 + #, c-format + msgid "Cannot append message to folder `%s': Unknown error" +-msgstr "" +-"Nachricht konnte nicht an Ordner »%s« angehängt werden: Unbekannter Fehler" ++msgstr "Nachricht konnte nicht an Ordner »%s« angehängt werden: Unbekannter Fehler" + + #: ../camel/providers/imap4/camel-imap4-folder.c:1036 + #, c-format + msgid "Cannot append message to folder `%s': Bad command" +-msgstr "" +-"Nachricht konnte nicht an Ordner »%s« angehängt werden: Ungültiger Befehl" ++msgstr "Nachricht konnte nicht an Ordner »%s« angehängt werden: Ungültiger Befehl" + + #: ../camel/providers/imap4/camel-imap4-folder.c:1156 + #, c-format + msgid "Cannot move messages from folder `%s' to folder `%s': Unknown" +-msgstr "" +-"Nachrichten aus Ordner »%s« konnten nicht in Ordner »%s« verschoben werden: " +-"Unbekannt" ++msgstr "Nachrichten aus Ordner »%s« konnten nicht in Ordner »%s« verschoben werden: Unbekannt" + + #: ../camel/providers/imap4/camel-imap4-folder.c:1160 + #, c-format + msgid "Cannot copy messages from folder `%s' to folder `%s': Unknown" +-msgstr "" +-"Nachrichten aus Ordner »%s« konnten nicht in Ordner »%s« kopiert werden: " +-"Unbekannt" ++msgstr "Nachrichten aus Ordner »%s« konnten nicht in Ordner »%s« kopiert werden: Unbekannt" + + #: ../camel/providers/imap4/camel-imap4-folder.c:1168 + #, c-format + msgid "Cannot move messages from folder `%s' to folder `%s': Bad command" +-msgstr "" +-"Nachrichten aus Ordner »%s« konnten nicht in Ordner »%s« verschoben werden: " +-"Ungültiger Befehl" ++msgstr "Nachrichten aus Ordner »%s« konnten nicht in Ordner »%s« verschoben werden: Ungültiger Befehl" + + #: ../camel/providers/imap4/camel-imap4-folder.c:1172 + #, c-format + msgid "Cannot copy messages from folder `%s' to folder `%s': Bad command" +-msgstr "" +-"Nachrichten aus Ordner »%s« konnten nicht in Ordner »%s« kopiert werden: " +-"Ungültiger Befehl" ++msgstr "Nachrichten aus Ordner »%s« konnten nicht in Ordner »%s« kopiert werden: Ungültiger Befehl" + + #: ../camel/providers/imap4/camel-imap4-provider.c:71 + msgid "IMAP4rev1" +@@ -3359,135 +3124,121 @@ msgid "For reading and storing mail on I + msgstr "Zum Lesen und Speichern von E-Mails auf IMAPv4rev1-Servern." + + #: ../camel/providers/imap4/camel-imap4-provider.c:90 +-msgid "" +-"This option will connect to the IMAPv4rev1 server using a plaintext password." +-msgstr "" +-"Dies stellt unter Verwendung eines unverschlüsselten Passworts eine " +-"Verbindung mit dem IMAPv4rev1-Server her." ++msgid "This option will connect to the IMAPv4rev1 server using a plaintext password." ++msgstr "Dies stellt unter Verwendung eines unverschlüsselten Passworts eine Verbindung mit dem IMAPv4rev1-Server her." + +-#: ../camel/providers/imap4/camel-imap4-store.c:486 ++#: ../camel/providers/imap4/camel-imap4-store.c:481 + #, c-format +-msgid "" +-"Cannot authenticate to IMAP server %s using the %s authentication mechanism" +-msgstr "" +-"Legitimation am IMAP-Server %s mit Hilfe des Legitimationsmechanismus %s " +-"gescheitert" ++msgid "Cannot authenticate to IMAP server %s using the %s authentication mechanism" ++msgstr "Legitimation am IMAP-Server %s mit Hilfe des Legitimationsmechanismus %s gescheitert" + +-#: ../camel/providers/imap4/camel-imap4-store.c:535 ++#: ../camel/providers/imap4/camel-imap4-store.c:530 + #, c-format + msgid "%sPlease enter the IMAP password for %s on host %s" + msgstr "%sBitte geben Sie das IMAP-Passwort für %s auf dem Rechner %s ein" + +-#: ../camel/providers/imap4/camel-imap4-store.c:602 ++#: ../camel/providers/imap4/camel-imap4-store.c:597 + #, c-format + msgid "Cannot authenticate to IMAP server %s using %s" + msgstr "Legitimation am POP-Server %s mit Hilfe von %s gescheitert" + +-#: ../camel/providers/imap4/camel-imap4-store.c:764 +-#: ../camel/providers/imap4/camel-imap4-store.c:1032 ++#: ../camel/providers/imap4/camel-imap4-store.c:759 ++#: ../camel/providers/imap4/camel-imap4-store.c:1027 + msgid "Cannot create IMAP folders in offline mode." + msgstr "IMAP-Ordner können im Offline-Modus nicht angelegt werden." + +-#: ../camel/providers/imap4/camel-imap4-store.c:803 ++#: ../camel/providers/imap4/camel-imap4-store.c:798 + #, c-format + msgid "Cannot get folder `%s' on IMAP server %s: Unknown" +-msgstr "" +-"Ordner »%s« auf IMAP-Server %s konnte nicht abgerufen werden: Unbekannt" ++msgstr "Ordner »%s« auf IMAP-Server %s konnte nicht abgerufen werden: Unbekannt" + +-#: ../camel/providers/imap4/camel-imap4-store.c:884 ++#: ../camel/providers/imap4/camel-imap4-store.c:879 + #, c-format + msgid "Cannot get LIST information for `%s' on IMAP server %s: %s" +-msgstr "" +-"LIST-Informationen für »%s« auf IMAP-Server %s konnten nicht abgerufen " +-"werden: %s" ++msgstr "LIST-Informationen für »%s« auf IMAP-Server %s konnten nicht abgerufen werden: %s" + +-#: ../camel/providers/imap4/camel-imap4-store.c:886 +-#: ../camel/providers/imap4/camel-imap4-store.c:1559 ++#: ../camel/providers/imap4/camel-imap4-store.c:881 ++#: ../camel/providers/imap4/camel-imap4-store.c:1554 + msgid "Bad command" + msgstr "Ungültiger Befehl" + +-#: ../camel/providers/imap4/camel-imap4-store.c:965 ++#: ../camel/providers/imap4/camel-imap4-store.c:960 + #, c-format + msgid "Cannot create folder `%s': Invalid mailbox name" + msgstr "Ordner »%s« konnte nicht angelegt werden: Ungültiger Postfachname" + +-#: ../camel/providers/imap4/camel-imap4-store.c:970 ++#: ../camel/providers/imap4/camel-imap4-store.c:965 + #, c-format + msgid "Cannot create folder `%s': Bad command" + msgstr "Ordner »%s« konnte nicht angelegt werden: Ungültiger Befehl" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1076 ++#: ../camel/providers/imap4/camel-imap4-store.c:1071 + #, c-format + msgid "Cannot delete folder `%s': Special folder" + msgstr "Ordner »%s« konnte nicht gelöscht werden: Ordner mit Sonderstatus" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1083 ++#: ../camel/providers/imap4/camel-imap4-store.c:1078 + msgid "Cannot delete IMAP folders in offline mode." + msgstr "IMAP-Ordner können im Offline-Modus nicht gelöscht werden." + +-#: ../camel/providers/imap4/camel-imap4-store.c:1142 ++#: ../camel/providers/imap4/camel-imap4-store.c:1137 + #, c-format + msgid "Cannot delete folder `%s': Invalid mailbox name" + msgstr "Ordner »%s« konnte nicht gelöscht werden: Ungültiger Postfachname" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1147 ++#: ../camel/providers/imap4/camel-imap4-store.c:1142 + #, c-format + msgid "Cannot delete folder `%s': Bad command" + msgstr "Ordner »%s« konnte nicht gelöscht werden: Ungültiger Befehl" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1167 ++#: ../camel/providers/imap4/camel-imap4-store.c:1162 + #, c-format + msgid "Cannot rename folder `%s' to `%s': Special folder" +-msgstr "" +-"Ordner »%s« konnte nicht in »%s« umbenannt werden: Ordner mit Sonderstatus" ++msgstr "Ordner »%s« konnte nicht in »%s« umbenannt werden: Ordner mit Sonderstatus" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1174 ++#: ../camel/providers/imap4/camel-imap4-store.c:1169 + msgid "Cannot rename IMAP folders in offline mode." + msgstr "IMAP-Ordner können im Offline-Modus nicht umbenannt werden." + +-#: ../camel/providers/imap4/camel-imap4-store.c:1205 ++#: ../camel/providers/imap4/camel-imap4-store.c:1200 + #, c-format + msgid "Cannot rename folder `%s' to `%s': Invalid mailbox name" +-msgstr "" +-"Ordner »%s« konnte nicht in »%s« umbenannt werden: Ungültiger Postfachname" ++msgstr "Ordner »%s« konnte nicht in »%s« umbenannt werden: Ungültiger Postfachname" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1210 ++#: ../camel/providers/imap4/camel-imap4-store.c:1205 + #, c-format + msgid "Cannot rename folder `%s' to `%s': Bad command" + msgstr "Ordner »%s« konnte nicht in »%s« umbenannt werden: Ungültiger Befehl" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1557 ++#: ../camel/providers/imap4/camel-imap4-store.c:1552 + #, c-format + msgid "Cannot get %s information for pattern `%s' on IMAP server %s: %s" +-msgstr "" +-"%s-Informationen für Muster »%s« auf IMAP-Server %s konnten nicht abgerufen " +-"werden: %s" ++msgstr "%s-Informationen für Muster »%s« auf IMAP-Server %s konnten nicht abgerufen werden: %s" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1597 ++#: ../camel/providers/imap4/camel-imap4-store.c:1592 + msgid "Cannot subscribe to IMAP folders in offline mode." + msgstr "IMAP-Ordner können im Offline-Modus nicht abonniert werden." + +-#: ../camel/providers/imap4/camel-imap4-store.c:1642 ++#: ../camel/providers/imap4/camel-imap4-store.c:1637 + #, c-format + msgid "Cannot subscribe to folder `%s': Invalid mailbox name" + msgstr "Abonnieren des Ordners »%s« gescheitert: Ungültiger Postfachname" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1647 ++#: ../camel/providers/imap4/camel-imap4-store.c:1642 + #, c-format + msgid "Cannot subscribe to folder `%s': Bad command" + msgstr "Abonnieren des Ordners »%s« gescheitert: Ungültiger Befehl" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1669 ++#: ../camel/providers/imap4/camel-imap4-store.c:1664 + msgid "Cannot unsubscribe from IMAP folders in offline mode." +-msgstr "" +-"Abonnements von IMAP-Ordnern können im Offline-Modus nicht beendet werden." ++msgstr "Abonnements von IMAP-Ordnern können im Offline-Modus nicht beendet werden." + +-#: ../camel/providers/imap4/camel-imap4-store.c:1714 ++#: ../camel/providers/imap4/camel-imap4-store.c:1709 + #, c-format + msgid "Cannot unsubscribe from folder `%s': Invalid mailbox name" + msgstr "Abbestellen des Ordners »%s« gescheitert: Ungültiger Postfachname" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1719 ++#: ../camel/providers/imap4/camel-imap4-store.c:1714 + #, c-format + msgid "Cannot unsubscribe from folder `%s': Bad command" + msgstr "Abbestellen des Ordners »%s« gescheitert: Ungültiger Befehl" +@@ -3524,17 +3275,8 @@ msgid "IMAP+" + msgstr "IMAP+" + + #: ../camel/providers/imapp/camel-imapp-provider.c:50 +-msgid "" +-"Experimental IMAP 4(.1) client\n" +-"This is untested and unsupported code, you want to use plain imap instead.\n" +-"\n" +-" !!! DO NOT USE THIS FOR PRODUCTION EMAIL !!!\n" +-msgstr "" +-"Experimenteller IMAP 4(.1)-Client\n" +-"Dieser Anwendungsteil ist ungetestet und nicht unterstützt, Sie sollten " +-"stattdessen normales IMAP verwenden.\n" +-"\n" +-" !!! VERWENDEN SIE DIES NICHT FÜR DEN PRODUKTIVEN EINSATZ !!!\n" ++msgid "Experimental IMAP 4(.1) client\nThis is untested and unsupported code, you want to use plain imap instead.\n\n !!! DO NOT USE THIS FOR PRODUCTION EMAIL !!!\n" ++msgstr "Experimenteller IMAP 4(.1)-Client\nDieser Anwendungsteil ist ungetestet und nicht unterstützt, Sie sollten stattdessen normales IMAP verwenden.\n\n !!! VERWENDEN SIE DIES NICHT FÜR DEN PRODUKTIVEN EINSATZ !!!\n" + + #: ../camel/providers/imapp/camel-imapp-store.c:251 + #, c-format +@@ -3586,12 +3328,8 @@ msgid "Local delivery" + msgstr "Lokale Auslieferung" + + #: ../camel/providers/local/camel-local-provider.c:73 +-msgid "" +-"For retrieving (moving) local mail from standard mbox-formatted spools into " +-"folders managed by Evolution." +-msgstr "" +-"Zum Abrufen (Verschieben) von lokalen E-Mails aus Standardspools im mbox-" +-"Format in von Evolution verwaltete Ordner." ++msgid "For retrieving (moving) local mail from standard mbox-formatted spools into folders managed by Evolution." ++msgstr "Zum Abrufen (Verschieben) von lokalen E-Mails aus Standardspools im mbox-Format in von Evolution verwaltete Ordner." + + #: ../camel/providers/local/camel-local-provider.c:87 + #: ../camel/providers/local/camel-local-provider.c:106 +@@ -3615,14 +3353,8 @@ msgid "Standard Unix mbox spool or direc + msgstr "Standard-UNIX-mbox-Spool oder Verzeichnis" + + #: ../camel/providers/local/camel-local-provider.c:115 +-msgid "" +-"For reading and storing local mail in external standard mbox spool files.\n" +-"May also be used to read a tree of Elm, Pine, or Mutt style folders." +-msgstr "" +-"Zum Lesen und Speichern von lokaler E-Mails in externen Standard-mbox-" +-"Spooldateien.\n" +-"Kann außerdem zum Einlesen eines Baums mit Elm-, Pine- oder Mutt-Ordnern " +-"verwendet werden." ++msgid "For reading and storing local mail in external standard mbox spool files.\nMay also be used to read a tree of Elm, Pine, or Mutt style folders." ++msgstr "Zum Lesen und Speichern von lokaler E-Mails in externen Standard-mbox-Spooldateien.\nKann außerdem zum Einlesen eines Baums mit Elm-, Pine- oder Mutt-Ordnern verwendet werden." + + #: ../camel/providers/local/camel-local-store.c:156 + #: ../camel/providers/local/camel-local-store.c:267 +@@ -3688,9 +3420,7 @@ msgstr "Zusammenfassung konnte nicht ges + + #: ../camel/providers/local/camel-local-summary.c:467 + msgid "Unable to add message to summary: unknown reason" +-msgstr "" +-"Nachricht konnte nicht zur Zusammenfassung hinzugefügt werden: Grund " +-"unbekannt" ++msgstr "Nachricht konnte nicht zur Zusammenfassung hinzugefügt werden: Grund unbekannt" + + #: ../camel/providers/local/camel-maildir-folder.c:215 + msgid "Maildir append message cancelled" +@@ -3712,12 +3442,8 @@ msgstr "Nachricht konnte nicht an Maildi + #: ../camel/providers/local/camel-mh-folder.c:213 + #: ../camel/providers/local/camel-mh-folder.c:222 + #, c-format +-msgid "" +-"Cannot get message: %s from folder %s\n" +-" %s" +-msgstr "" +-"Nachricht %s konnte nicht aus Ordner %s abgerufen werden\n" +-" %s" ++msgid "Cannot get message: %s from folder %s\n %s" ++msgstr "Nachricht %s konnte nicht aus Ordner %s abgerufen werden\n %s" + + #: ../camel/providers/local/camel-maildir-folder.c:268 + msgid "Invalid message contents" +@@ -3833,12 +3559,8 @@ msgstr "Ordner »%s« konnte nicht abger + #: ../camel/providers/local/camel-mbox-store.c:237 + #: ../camel/providers/local/camel-mbox-store.c:260 + #, c-format +-msgid "" +-"Could not delete folder `%s':\n" +-"%s" +-msgstr "" +-"Ordner »%s« konnte nicht gelöscht werden:\n" +-"%s" ++msgid "Could not delete folder `%s':\n%s" ++msgstr "Ordner »%s« konnte nicht gelöscht werden:\n%s" + + #: ../camel/providers/local/camel-mbox-store.c:245 + #, c-format +@@ -3886,9 +3608,7 @@ msgstr "Ordner konnte nicht geöffnet we + #: ../camel/providers/local/camel-mbox-summary.c:469 + #, c-format + msgid "Fatal mail parser error near position %ld in folder %s" +-msgstr "" +-"Schwerwiegender Fehler beim Analysieren der E-Mail-Syntax nahe Position %ld " +-"in Ordner %s" ++msgstr "Schwerwiegender Fehler beim Analysieren der E-Mail-Syntax nahe Position %ld in Ordner %s" + + #: ../camel/providers/local/camel-mbox-summary.c:525 + #, c-format +@@ -3935,9 +3655,7 @@ msgstr "Ordner konnte nicht gespeichert + #: ../camel/providers/local/camel-mbox-summary.c:936 + #: ../camel/providers/local/camel-mbox-summary.c:944 + msgid "Summary and folder mismatch, even after a sync" +-msgstr "" +-"Zusammenfassung und Ordner stimmen nicht überein, sogar nach einer " +-"Synchronisierung" ++msgstr "Zusammenfassung und Ordner stimmen nicht überein, sogar nach einer Synchronisierung" + + #: ../camel/providers/local/camel-mbox-summary.c:870 + #: ../camel/providers/local/camel-spool-summary.c:336 +@@ -3988,8 +3706,7 @@ msgstr "Spool »%s« konnte nicht geöff + #: ../camel/providers/local/camel-spool-store.c:144 + #, c-format + msgid "Spool `%s' is not a regular file or directory" +-msgstr "" +-"Spool »%s« ist weder eine reguläre Datei noch ein reguläres Verzeichnis" ++msgstr "Spool »%s« ist weder eine reguläre Datei noch ein reguläres Verzeichnis" + + #: ../camel/providers/local/camel-spool-store.c:163 + #, c-format +@@ -3998,12 +3715,8 @@ msgstr "Ordner »%s/%s« existiert nicht + + #: ../camel/providers/local/camel-spool-store.c:173 + #, c-format +-msgid "" +-"Could not open folder `%s':\n" +-"%s" +-msgstr "" +-"Ordner »%s« konnte nicht geöffnet werden:\n" +-"%s" ++msgid "Could not open folder `%s':\n%s" ++msgstr "Ordner »%s« konnte nicht geöffnet werden:\n%s" + + #: ../camel/providers/local/camel-spool-store.c:177 + #, c-format +@@ -4012,12 +3725,8 @@ msgstr "Ordner »%s« existiert nicht." + + #: ../camel/providers/local/camel-spool-store.c:182 + #, c-format +-msgid "" +-"Could not create folder `%s':\n" +-"%s" +-msgstr "" +-"Ordner »%s« konnte nicht angelegt werden:\n" +-"%s" ++msgid "Could not create folder `%s':\n%s" ++msgstr "Ordner »%s« konnte nicht angelegt werden:\n%s" + + #: ../camel/providers/local/camel-spool-store.c:190 + #, c-format +@@ -4062,12 +3771,8 @@ msgstr "Spool-Ordner %s konnte nicht syn + #: ../camel/providers/local/camel-spool-summary.c:263 + #: ../camel/providers/local/camel-spool-summary.c:276 + #, c-format +-msgid "" +-"Could not sync spool folder %s: %s\n" +-"Folder may be corrupt, copy saved in `%s'" +-msgstr "" +-"Spool-Ordner %s konnte nicht synchronisiert werden: %s\n" +-"Ordner könnte fehlerhaft sein, Kopie in »%s« gespeichert" ++msgid "Could not sync spool folder %s: %s\nFolder may be corrupt, copy saved in `%s'" ++msgstr "Spool-Ordner %s konnte nicht synchronisiert werden: %s\nOrdner könnte fehlerhaft sein, Kopie in »%s« gespeichert" + + #: ../camel/providers/nntp/camel-nntp-folder.c:175 + #: ../camel/providers/nntp/camel-nntp-folder.c:207 +@@ -4092,8 +3797,7 @@ msgid "You cannot copy messages from a N + msgstr "Nachrichten können nicht aus NNTP-Ordnern kopiert werden!" + + #: ../camel/providers/nntp/camel-nntp-provider.c:44 +-msgid "" +-"Show folders in short notation (e.g. c.o.linux rather than comp.os.linux)" ++msgid "Show folders in short notation (e.g. c.o.linux rather than comp.os.linux)" + msgstr "Ordner in Kurznotation verwenden (also c.o.linux statt comp.os.linux)" + + #: ../camel/providers/nntp/camel-nntp-provider.c:46 +@@ -4106,17 +3810,11 @@ msgstr "USENET-News" + + #: ../camel/providers/nntp/camel-nntp-provider.c:55 + msgid "This is a provider for reading from and posting to USENET newsgroups." +-msgstr "" +-"Dies ist ein Treiber zum Lesen und Verfassen von Beiträgen in bzw. an USENET-" +-"Newsgroups." ++msgstr "Dies ist ein Treiber zum Lesen und Verfassen von Beiträgen in bzw. an USENET-Newsgroups." + + #: ../camel/providers/nntp/camel-nntp-provider.c:74 +-msgid "" +-"This option will authenticate with the NNTP server using a plaintext " +-"password." +-msgstr "" +-"Dies führt die Legitimation am NNTP-Server mit einem unverschlüsselten " +-"Passwort durch." ++msgid "This option will authenticate with the NNTP server using a plaintext password." ++msgstr "Dies führt die Legitimation am NNTP-Server mit einem unverschlüsselten Passwort durch." + + #: ../camel/providers/nntp/camel-nntp-store.c:219 + #, c-format +@@ -4135,36 +3833,20 @@ msgstr "USENET-News über %s" + + #: ../camel/providers/nntp/camel-nntp-store.c:798 + #, c-format +-msgid "" +-"Error retrieving newsgroups:\n" +-"\n" +-"%s" +-msgstr "" +-"Fehler beim Abrufen von Newsgroups:\n" +-"\n" +-"%s" ++msgid "Error retrieving newsgroups:\n\n%s" ++msgstr "Fehler beim Abrufen von Newsgroups:\n\n%s" + + #: ../camel/providers/nntp/camel-nntp-store.c:892 +-msgid "" +-"You cannot subscribe to this newsgroup:\n" +-"\n" +-"No such newsgroup. The selected item is a probably a parent folder." +-msgstr "" +-"Sie können diese Newsgroup nicht abonnieren, da sie nicht existiert.\n" +-"Vermutlich ist das gewählte Objekt ein Elternordner." ++msgid "You cannot subscribe to this newsgroup:\n\nNo such newsgroup. The selected item is a probably a parent folder." ++msgstr "Sie können diese Newsgroup nicht abonnieren, da sie nicht existiert.\nVermutlich ist das gewählte Objekt ein Elternordner." + + #: ../camel/providers/nntp/camel-nntp-store.c:924 +-msgid "" +-"You cannot unsubscribe to this newsgroup:\n" +-"\n" +-"newsgroup does not exist!" ++msgid "You cannot unsubscribe to this newsgroup:\n\nnewsgroup does not exist!" + msgstr "Sie können diese Newsgroup nicht abonnieren, da sie nicht existiert." + + #: ../camel/providers/nntp/camel-nntp-store.c:949 + msgid "You cannot create a folder in a News store: subscribe instead." +-msgstr "" +-"Sie können in Newsgroups keine Ordner anlegen: Abonnieren Sie sie " +-"stattdessen." ++msgstr "Sie können in Newsgroups keine Ordner anlegen: Abonnieren Sie sie stattdessen." + + #: ../camel/providers/nntp/camel-nntp-store.c:957 + msgid "You cannot rename a folder in a News store." +@@ -4172,14 +3854,11 @@ msgstr "Sie können in Newsgroups keine + + #: ../camel/providers/nntp/camel-nntp-store.c:965 + msgid "You cannot remove a folder in a News store: unsubscribe instead." +-msgstr "" +-"Sie können in Newsgroups keine Ordner entfernen: Bestellen Sie sie " +-"stattdessen ab." ++msgstr "Sie können in Newsgroups keine Ordner entfernen: Bestellen Sie sie stattdessen ab." + + #: ../camel/providers/nntp/camel-nntp-store.c:1146 + msgid "Authentication requested but no username provided" +-msgstr "" +-"Legitimation wurde angefragt, es wird jedoch kein Benutzername unterstützt" ++msgstr "Legitimation wurde angefragt, es wird jedoch kein Benutzername unterstützt" + + #: ../camel/providers/nntp/camel-nntp-store.c:1154 + #, c-format +@@ -4281,99 +3960,73 @@ msgid "For connecting to and downloading + msgstr "Zum Verbinden mit und Herunterladen von E-Mails von POP-Servern." + + #: ../camel/providers/pop3/camel-pop3-provider.c:74 +-msgid "" +-"This option will connect to the POP server using a plaintext password. This " +-"is the only option supported by many POP servers." +-msgstr "" +-"Dies stellt unter Verwendung eines unverschlüsselten Passworts eine " +-"Verbindung mit dem POP-Server her. Viele POP-Server unterstützen nur diese " +-"Möglichkeit." ++msgid "This option will connect to the POP server using a plaintext password. This is the only option supported by many POP servers." ++msgstr "Dies stellt unter Verwendung eines unverschlüsselten Passworts eine Verbindung mit dem POP-Server her. Viele POP-Server unterstützen nur diese Möglichkeit." + + #: ../camel/providers/pop3/camel-pop3-provider.c:84 +-msgid "" +-"This option will connect to the POP server using an encrypted password via " +-"the APOP protocol. This may not work for all users even on servers that " +-"claim to support it." +-msgstr "" +-"Dies stellt unter Verwendung eines verschlüsselten Passworts eine Verbindung " +-"mit dem POP-Server über das APO-Protokoll her. Das funktioniert " +-"möglicherweise nicht für alle Benutzer, sogar auf Servern, die behaupten, es " +-"zu unterstützen." ++msgid "This option will connect to the POP server using an encrypted password via the APOP protocol. This may not work for all users even on servers that claim to support it." ++msgstr "Dies stellt unter Verwendung eines verschlüsselten Passworts eine Verbindung mit dem POP-Server über das APO-Protokoll her. Das funktioniert möglicherweise nicht für alle Benutzer, sogar auf Servern, die behaupten, es zu unterstützen." + + #: ../camel/providers/pop3/camel-pop3-store.c:202 + #, c-format + msgid "Failed to read a valid greeting from POP server %s" + msgstr "Es konnte keine gültige Begrüßung durch POP-Server %s gelesen werden" + +-#: ../camel/providers/pop3/camel-pop3-store.c:216 ++#: ../camel/providers/pop3/camel-pop3-store.c:219 + #: ../camel/providers/pop3/camel-pop3-store.c:233 + #: ../camel/providers/pop3/camel-pop3-store.c:243 + #: ../camel/providers/pop3/camel-pop3-store.c:249 + #, c-format + msgid "Failed to connect to POP server %s in secure mode: %s" +-msgstr "" +-"Verbindung mit POP-Server %s konnte im sicheren Modus nicht hergestellt " +-"werden: %s" ++msgstr "Verbindung mit POP-Server %s konnte im sicheren Modus nicht hergestellt werden: %s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:217 ++#: ../camel/providers/pop3/camel-pop3-store.c:220 + msgid "STLS not supported" + msgstr "STLS nicht unterstützt" + +-#: ../camel/providers/pop3/camel-pop3-store.c:361 ++#: ../camel/providers/pop3/camel-pop3-store.c:356 + #, c-format + msgid "Could not connect to POP server %s" + msgstr "Verbindung mit POP-Server %s konnte nicht hergestellt werden" + +-#: ../camel/providers/pop3/camel-pop3-store.c:402 +-#: ../camel/providers/pop3/camel-pop3-store.c:516 ++#: ../camel/providers/pop3/camel-pop3-store.c:397 ++#: ../camel/providers/pop3/camel-pop3-store.c:511 + #, c-format +-msgid "" +-"Unable to connect to POP server %s: No support for requested authentication " +-"mechanism." +-msgstr "" +-"Verbindung mit POP-Server %s konnte nicht hergestellt werden: Der " +-"erforderliche Legitimationsmechanismus wird nicht unterstützt." ++msgid "Unable to connect to POP server %s: No support for requested authentication mechanism." ++msgstr "Verbindung mit POP-Server %s konnte nicht hergestellt werden: Der erforderliche Legitimationsmechanismus wird nicht unterstützt." + +-#: ../camel/providers/pop3/camel-pop3-store.c:418 ++#: ../camel/providers/pop3/camel-pop3-store.c:413 + #, c-format + msgid "SASL `%s' Login failed for POP server %s: %s" + msgstr "SASL »%s«-Anmeldung an POP-Server %s gescheitert: %s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:430 ++#: ../camel/providers/pop3/camel-pop3-store.c:425 + #, c-format + msgid "Cannot login to POP server %s: SASL Protocol error" + msgstr "Anmeldung an POP-Server %s gescheitert: SASL-Protokollfehler" + +-#: ../camel/providers/pop3/camel-pop3-store.c:449 ++#: ../camel/providers/pop3/camel-pop3-store.c:444 + #, c-format + msgid "Failed to authenticate on POP server %s: %s" + msgstr "Legitimation am POP-Server %s gescheitert: %s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:475 ++#: ../camel/providers/pop3/camel-pop3-store.c:470 + #, c-format + msgid "%sPlease enter the POP password for %s on host %s" + msgstr "%sBitte geben Sie das POP-Passwort für %s auf dem Rechner %s ein" + +-#: ../camel/providers/pop3/camel-pop3-store.c:530 +-#: ../camel/providers/pop3/camel-pop3-store.c:543 ++#: ../camel/providers/pop3/camel-pop3-store.c:525 ++#: ../camel/providers/pop3/camel-pop3-store.c:538 + #, c-format +-msgid "" +-"Unable to connect to POP server %s.\n" +-"Error sending password: %s" +-msgstr "" +-"Verbindung mit POP-Server %s konnte nicht hergestellt werden.\n" +-"Fehler beim Übermitteln des Passworts: %s" ++msgid "Unable to connect to POP server %s.\nError sending password: %s" ++msgstr "Verbindung mit POP-Server %s konnte nicht hergestellt werden.\nFehler beim Übermitteln des Passworts: %s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:537 ++#: ../camel/providers/pop3/camel-pop3-store.c:532 + #, c-format +-msgid "" +-"Unable to connect to POP server %s.\n" +-"Error sending username: %s" +-msgstr "" +-"Verbindung mit POP-Server %s konnte nicht hergestellt werden.\n" +-"Fehler beim Übermitteln des Benutzernamens: %s" ++msgid "Unable to connect to POP server %s.\nError sending username: %s" ++msgstr "Verbindung mit POP-Server %s konnte nicht hergestellt werden.\nFehler beim Übermitteln des Benutzernamens: %s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:643 ++#: ../camel/providers/pop3/camel-pop3-store.c:638 + #, c-format + msgid "No such folder `%s'." + msgstr "Ordner »%s« existiert nicht." +@@ -4383,12 +4036,8 @@ msgid "Sendmail" + msgstr "Sendmail" + + #: ../camel/providers/sendmail/camel-sendmail-provider.c:39 +-msgid "" +-"For delivering mail by passing it to the \"sendmail\" program on the local " +-"system." +-msgstr "" +-"Zum Zustellen von E-Mails durch Übergabe an das Programm »sendmail« auf dem " +-"lokalen System." ++msgid "For delivering mail by passing it to the \"sendmail\" program on the local system." ++msgstr "Zum Zustellen von E-Mails durch Übergabe an das Programm »sendmail« auf dem lokalen System." + + #: ../camel/providers/sendmail/camel-sendmail-transport.c:114 + msgid "Could not parse recipient list" +@@ -4397,9 +4046,7 @@ msgstr "Syntax der Empfängerliste konnt + #: ../camel/providers/sendmail/camel-sendmail-transport.c:145 + #, c-format + msgid "Could not create pipe to sendmail: %s: mail not sent" +-msgstr "" +-"Weiterleitung an sendmail konnte nicht angelegt werden: %s: E-Mail nicht " +-"verschickt" ++msgstr "Weiterleitung an sendmail konnte nicht angelegt werden: %s: E-Mail nicht verschickt" + + #: ../camel/providers/sendmail/camel-sendmail-transport.c:166 + #, c-format +@@ -4435,8 +4082,7 @@ msgstr "SMTP" + + #: ../camel/providers/smtp/camel-smtp-provider.c:40 + msgid "For delivering mail by connecting to a remote mailhub using SMTP." +-msgstr "" +-"Zum Zustellen von E-Mails per SMTP über einen entfernten E-Mail-Knotenpunkt." ++msgstr "Zum Zustellen von E-Mails per SMTP über einen entfernten E-Mail-Knotenpunkt." + + #: ../camel/providers/smtp/camel-smtp-transport.c:162 + msgid "Syntax error, command unrecognized" +@@ -4528,8 +4174,7 @@ msgstr "Legitimationsmechanismus ist zu + + #: ../camel/providers/smtp/camel-smtp-transport.c:208 + msgid "Encryption required for requested authentication mechanism" +-msgstr "" +-"Für den verlangten Legitimationsmechanismus ist Verschlüsselung erforderlich." ++msgstr "Für den verlangten Legitimationsmechanismus ist Verschlüsselung erforderlich." + + #: ../camel/providers/smtp/camel-smtp-transport.c:210 + msgid "Temporary authentication failure" +@@ -4555,117 +4200,108 @@ msgstr "STARTTLS-Befehl gescheitert: %s" + msgid "STARTTLS command failed" + msgstr "STARTTLS-Befehl gescheitert" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:488 ++#: ../camel/providers/smtp/camel-smtp-transport.c:483 + #, c-format + msgid "SMTP server %s does not support requested authentication type %s." +-msgstr "" +-"SMTP-Server %s unterstützt den erforderlichen Legitimationstypen %s nicht." ++msgstr "SMTP-Server %s unterstützt den erforderlichen Legitimationstypen %s nicht." + +-#: ../camel/providers/smtp/camel-smtp-transport.c:526 ++#: ../camel/providers/smtp/camel-smtp-transport.c:521 + #, c-format + msgid "%sPlease enter the SMTP password for %s on host %s" + msgstr "%sBitte geben Sie das SMTP-Passwort für %s auf dem Rechner %s ein" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:545 ++#: ../camel/providers/smtp/camel-smtp-transport.c:540 + #, c-format +-msgid "" +-"Unable to authenticate to SMTP server.\n" +-"%s\n" +-"\n" +-msgstr "" +-"Legitimation am SMTP-Server gescheitert.\n" +-"%s\n" +-"\n" ++msgid "Unable to authenticate to SMTP server.\n%s\n\n" ++msgstr "Legitimation am SMTP-Server gescheitert.\n%s\n\n" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:669 ++#: ../camel/providers/smtp/camel-smtp-transport.c:664 + #, c-format + msgid "SMTP server %s" + msgstr "SMTP-Server %s" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:671 ++#: ../camel/providers/smtp/camel-smtp-transport.c:666 + #, c-format + msgid "SMTP mail delivery via %s" + msgstr "SMTP-E-Mail-Auslieferung über %s" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:689 ++#: ../camel/providers/smtp/camel-smtp-transport.c:684 + msgid "Cannot send message: service not connected." + msgstr "Nachricht konnte nicht verschickt werden: Dienst nicht verbunden." + +-#: ../camel/providers/smtp/camel-smtp-transport.c:695 ++#: ../camel/providers/smtp/camel-smtp-transport.c:690 + msgid "Cannot send message: sender address not valid." +-msgstr "" +-"Nachricht konnte nicht verschickt werden: Absenderadresse nicht gültig." ++msgstr "Nachricht konnte nicht verschickt werden: Absenderadresse nicht gültig." + +-#: ../camel/providers/smtp/camel-smtp-transport.c:699 ++#: ../camel/providers/smtp/camel-smtp-transport.c:694 + msgid "Sending message" + msgstr "Nachricht wird verschickt" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:714 ++#: ../camel/providers/smtp/camel-smtp-transport.c:709 + msgid "Cannot send message: no recipients defined." + msgstr "Nachricht konnte nicht verschickt werden: Keine Empfänger angegeben." + +-#: ../camel/providers/smtp/camel-smtp-transport.c:725 ++#: ../camel/providers/smtp/camel-smtp-transport.c:720 + msgid "Cannot send message: one or more invalid recipients" +-msgstr "" +-"Nachricht konnte nicht verschickt werden: Mindestens ein Empfänger ungültig" ++msgstr "Nachricht konnte nicht verschickt werden: Mindestens ein Empfänger ungültig" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:894 ++#: ../camel/providers/smtp/camel-smtp-transport.c:889 + msgid "SMTP Greeting" + msgstr "SMTP-Begrüßung" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:920 ++#: ../camel/providers/smtp/camel-smtp-transport.c:915 + #, c-format + msgid "HELO command failed: %s" + msgstr "HELO-Befehl gescheitert: %s" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:937 ++#: ../camel/providers/smtp/camel-smtp-transport.c:932 + msgid "HELO command failed" + msgstr "HELO-Befehl gescheitert" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1003 ++#: ../camel/providers/smtp/camel-smtp-transport.c:998 + msgid "SMTP Authentication" + msgstr "SMTP-Legitimation" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1009 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1004 + msgid "Error creating SASL authentication object." + msgstr "Fehler beim Anlegen eines SASL-Legitimations-Objektes." + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1026 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1037 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1021 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1032 + #, c-format + msgid "AUTH command failed: %s" + msgstr "AUTH-Befehl gescheitert: %s" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1043 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1038 + msgid "AUTH command failed" + msgstr "AUTH-Befehl gescheitert" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1105 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1100 + msgid "Bad authentication response from server.\n" + msgstr "Fehlerhafte Legitimationsantwort vom Server.\n" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1130 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1125 + #, c-format + msgid "MAIL FROM command failed: %s: mail not sent" + msgstr "MAIL FROM-Befehl gescheitert: %s: E-Mail nicht verschickt" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1147 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1142 + msgid "MAIL FROM command failed" + msgstr "MAIL FROM-Befehl gescheitert" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1171 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1166 + #, c-format + msgid "RCPT TO command failed: %s: mail not sent" + msgstr "RCPT TO-Befehl gescheitert: %s: E-Mail nicht verschickt" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1190 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1185 + #, c-format + msgid "RCPT TO <%s> failed" + msgstr "RCPT TO <%s> gescheitert" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1229 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1287 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1306 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1224 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1282 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1301 + #, c-format + msgid "DATA command failed: %s: mail not sent" + msgstr "DATA-Befehl gescheitert: %s: E-Mail nicht verschickt" +@@ -4673,26 +4309,26 @@ msgstr "DATA-Befehl gescheitert: %s: E-M + #. we should have gotten instructions on how to use the DATA command: + #. * 354 Enter mail, end with "." on a line by itself + #. +-#: ../camel/providers/smtp/camel-smtp-transport.c:1246 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1322 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1241 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1317 + msgid "DATA command failed" + msgstr "DATA-Befehl gescheitert" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1345 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1340 + #, c-format + msgid "RSET command failed: %s" + msgstr "RSET-Befehl gescheitert: %s" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1361 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1356 + msgid "RSET command failed" + msgstr "RSET-Befehl gescheitert" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1384 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1379 + #, c-format + msgid "QUIT command failed: %s" + msgstr "QUIT-Befehl gescheitert: %s" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1398 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1393 + msgid "QUIT command failed" + msgstr "QUIT-Befehl gescheitert" + +@@ -4910,12 +4546,8 @@ msgstr "Legitimation gescheitert.\n" + + #: ../libedataserverui/e-categories-dialog.c:265 + #, c-format +-msgid "" +-"There is already a category '%s' in the configuration. Please use another " +-"name" +-msgstr "" +-"Es gibt bereits eine Kategorie »%s« in dieser Konfiguration. Bitte einen " +-"anderen Namen verwenden." ++msgid "There is already a category '%s' in the configuration. Please use another name" ++msgstr "Es gibt bereits eine Kategorie »%s« in dieser Konfiguration. Bitte einen anderen Namen verwenden." + + #: ../libedataserverui/e-categories-dialog.c:435 + msgid "Category" +@@ -4957,15 +4589,15 @@ msgstr "_Bearbeiten" + msgid "categories" + msgstr "Kategorien" + +-#: ../libedataserverui/e-name-selector-dialog.c:282 ++#: ../libedataserverui/e-name-selector-dialog.c:284 + msgid "Select Contacts from Address Book" + msgstr "Kontakte aus dem Adressbuch wählen" + +-#: ../libedataserverui/e-name-selector-dialog.c:576 ++#: ../libedataserverui/e-name-selector-dialog.c:578 + msgid "_Add" + msgstr "_Hinzufügen" + +-#: ../libedataserverui/e-name-selector-dialog.c:601 ++#: ../libedataserverui/e-name-selector-dialog.c:603 + msgid "_Remove" + msgstr "_Entfernen" + +@@ -5027,11 +4659,21 @@ msgstr "%s _bearbeiten" + msgid "_Delete %s" + msgstr "%s _löschen" + +-#: ../libedataserverui/e-passwords.c:471 ++#: ../libedataserverui/e-passwords.c:472 ++#, ++msgid "_Remember this passphrase" ++msgstr "_Remember this passphrase" ++ ++#: ../libedataserverui/e-passwords.c:473 ++#, ++msgid "_Remember this passphrase for the remainder of this session" ++msgstr "_Remember this passphrase for the remainder of this session" ++ ++#: ../libedataserverui/e-passwords.c:476 + msgid "_Remember this password" + msgstr "An dieses Passwort _erinnern" + +-#: ../libedataserverui/e-passwords.c:472 ++#: ../libedataserverui/e-passwords.c:477 + msgid "_Remember this password for the remainder of this session" + msgstr "Für den Rest dieser Sitzung an dieses Passwort _erinnern" + +@@ -5045,13 +4687,13 @@ msgstr "Ziel wählen" + msgid "_Destination" + msgstr "_Ziel" + +-#: ../servers/exchange/lib/e2k-autoconfig.c:1639 ++#: ../servers/exchange/lib/e2k-autoconfig.c:1647 + #: ../servers/exchange/storage/exchange-account.c:932 + #, c-format + msgid "Enter password for %s" + msgstr "Geben Sie das Passwort für %s ein" + +-#: ../servers/exchange/lib/e2k-autoconfig.c:1640 ++#: ../servers/exchange/lib/e2k-autoconfig.c:1648 + #: ../servers/exchange/storage/exchange-account.c:937 + msgid "Enter password" + msgstr "Passwort eingeben" +@@ -5098,14 +4740,6 @@ msgstr "Keine" + msgid "Custom" + msgstr "Benutzerdefiniert" + +-#: ../servers/exchange/lib/e2k-user-dialog.c:144 +-msgid "Select User" +-msgstr "Benutzer auswählen" +- +-#: ../servers/exchange/lib/e2k-user-dialog.c:182 +-msgid "Addressbook..." +-msgstr "Adressbuch..." +- + #: ../servers/exchange/storage/e-storage.c:556 + msgid "Generic error" + msgstr "Allgemeiner Fehler" +@@ -5215,19 +4849,19 @@ msgstr "Verschickte Objekte" + msgid "Tasks" + msgstr "Aufgaben" + +-#: ../servers/groupwise/e-gw-connection.c:164 ++#: ../servers/groupwise/e-gw-connection.c:167 + msgid "Invalid connection" + msgstr "Ungültige Verbindung" + +-#: ../servers/groupwise/e-gw-connection.c:168 ++#: ../servers/groupwise/e-gw-connection.c:171 + msgid "Invalid response from server" + msgstr "Ungültige Server-Antwort" + +-#: ../servers/groupwise/e-gw-connection.c:170 ++#: ../servers/groupwise/e-gw-connection.c:173 + msgid "No response from the server" + msgstr "Server liefert keine Antwort" + +-#: ../servers/groupwise/e-gw-connection.c:176 ++#: ../servers/groupwise/e-gw-connection.c:179 + msgid "Bad parameter" + msgstr "Fehlerhafter Parameter" + +@@ -5251,18 +4885,17 @@ msgstr "Evolution-Data-Server Protokolli + #: ../src/server.c:106 + #, c-format + msgid "Multiple segmentation faults occurred; can't display error dialog\n" +-msgstr "" +-"Mehrere Speicherzugriffsfehler aufgetreten; Fehlerdialog kann nicht " +-"angezeigt werden\n" ++msgstr "Mehrere Speicherzugriffsfehler aufgetreten; Fehlerdialog kann nicht angezeigt werden\n" + ++#~ msgid "Select User" ++#~ msgstr "Benutzer auswählen" ++#~ msgid "Addressbook..." ++#~ msgstr "Adressbuch..." + #~ msgid "Failed to create pipe to '%s': %s" + #~ msgstr "Weiterleitung an »%s« konnte nicht erstellt werden: %s" +- + #~ msgid "Cannot get folder info in offline mode." + #~ msgstr "Ordnerinformationen können im Offline-Modus nicht abgerufen werden." +- + #~ msgid "Cannot delete GroupWise folders in offline mode." + #~ msgstr "GroupWise-Ordner können im Offline-Modus nicht gelöscht werden." +- + #~ msgid "Cannot rename GroupWise folders in offline mode." + #~ msgstr "GroupWise-Ordner können im Offline-Modus nicht umbenannt werden." +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: el.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: el.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: en_AU.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: en_AU.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: en_CA.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: en_CA.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: en_GB.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: en_GB.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: es.gmo +diff -up /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/es.po po/es.po +--- /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/es.po 2006-01-21 19:58:41.000000000 +0100 ++++ po/es.po 2006-05-19 14:49:16.000000000 +0200 +@@ -13,40 +13,40 @@ msgid "" + msgstr "" + "Project-Id-Version: gnome-screensaver\n" + "Report-Msgid-Bugs-To: \n" +-"POT-Creation-Date: 2006-01-21 19:56+0100\n" +-"PO-Revision-Date: 2006-01-21 19:58+0100\n" +-"Last-Translator: Francisco Javier F. Serrador \n" +-"Language-Team: Spanish \n" ++"POT-Creation-Date: 2006-05-04 06:53+0000\n" ++"PO-Revision-Date: 2006-05-16 14:20\n" ++"Last-Translator: Novell Language \n" ++"Language-Team: Novell Language \n" + "MIME-Version: 1.0\n" + "Content-Type: text/plain; charset=UTF-8\n" + "Content-Transfer-Encoding: 8bit\n" + "Plural-Forms: nplurals=2; plural=(n != 1);\n" + "X-Generator: KBabel 1.10.2\n" + +-#: ../addressbook/backends/file/e-book-backend-file.c:536 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2213 ++#: ../addressbook/backends/file/e-book-backend-file.c:538 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2225 + #: ../addressbook/backends/vcf/e-book-backend-vcf.c:484 + msgid "Loading..." + msgstr "Cargando..." + +-#: ../addressbook/backends/file/e-book-backend-file.c:538 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2172 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2192 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2211 ++#: ../addressbook/backends/file/e-book-backend-file.c:540 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2184 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2204 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2223 + #: ../addressbook/backends/ldap/e-book-backend-ldap.c:4038 + #: ../addressbook/backends/vcf/e-book-backend-vcf.c:486 + msgid "Searching..." + msgstr "Buscando..." + +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2496 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2593 + #: ../addressbook/backends/ldap/e-book-backend-ldap.c:4202 + #, c-format + msgid "Downloading contacts (%d)... " + msgstr "Descargando contactos (%d)..." + +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2645 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2812 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2848 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2746 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2927 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2957 + #, c-format + msgid "Updating contacts cache (%d)... " + msgstr "Actualizando caché de contactos (%d)..." +@@ -611,7 +611,7 @@ msgstr "Fecha de nacimiento" + #. Make sure we have all categories + #: ../addressbook/libebook/e-contact.c:242 + #: ../calendar/backends/contacts/e-cal-backend-contacts.c:460 +-#: ../libedataserver/e-categories.c:240 ++#: ../libedataserver/e-categories.c:246 + msgid "Anniversary" + msgstr "Aniversario" + +@@ -639,7 +639,7 @@ msgid "Unnamed List" + msgstr "Lista de anónimos" + + #: ../calendar/backends/contacts/e-cal-backend-contacts.c:462 +-#: ../libedataserver/e-categories.c:241 ++#: ../libedataserver/e-categories.c:247 + msgid "Birthday" + msgstr "Cumpleaños" + +@@ -653,61 +653,68 @@ msgstr "Cumpleaños: %s" + msgid "Anniversary: %s" + msgstr "Aniversario %s" + +-#: ../calendar/backends/file/e-cal-backend-file.c:203 ++#: ../calendar/backends/file/e-cal-backend-file.c:204 + msgid "Can't save calendar data: Malformed URI." + msgstr "No se pudo guardar los datos de la agenda. URL malformada." + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise-utils.c:871 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1462 ++#: ../calendar/backends/file/e-cal-backend-file.c:209 ++#, ++msgid "Can't save calendar data: " ++msgstr "No es posible guardar los datos de calendario: " ++ ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise-utils.c:872 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1582 + msgid "Reply Requested: by " + msgstr "Respuesta solicitada: por" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise-utils.c:876 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1467 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise-utils.c:877 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1587 + msgid "Reply Requested: When convenient" + msgstr "Respuesta solicitada: Cuando convenga" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:191 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:193 + #, c-format + msgid "Loading %s items" + msgstr "Cargando %s elementos" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:715 +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:257 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:719 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:260 + msgid "Calendar" + msgstr "Agenda" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:771 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:775 + msgid "Invalid server URI" + msgstr "URI del servidor inválida" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:787 +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:796 +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:881 +-#: ../calendar/libecal/e-cal.c:5131 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:897 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:917 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:945 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:515 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:530 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:572 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1059 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:791 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:800 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:885 ++#: ../calendar/libecal/e-cal.c:5137 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:970 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:993 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1028 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:588 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:603 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:644 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:712 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:754 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1253 + #: ../camel/providers/groupwise/camel-groupwise-transport.c:178 + msgid "Authentication failed" + msgstr "Falló la autenticación" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:837 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:841 + msgid "Could not create thread for getting deltas" + msgstr "No se pudo crear el hilo para obtener deltas" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:862 +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:1109 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:866 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:1113 + #: ../calendar/backends/http/e-cal-backend-http.c:520 + #: ../calendar/backends/weather/e-cal-backend-weather.c:452 + msgid "Could not create cache file" + msgstr "No se pudo crear el archivo de caché" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:875 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:879 + msgid "Could not create thread for populating cache" + msgstr "No se pudo crear el hilo para la llenar la caché" + +@@ -1062,97 +1069,96 @@ msgid "Undefined" + msgstr "Sin definir" + + #. FIXME: Try to get the parent uri so that we dont have to ask the password again +-#: ../calendar/libecal/e-cal.c:1705 ++#: ../calendar/libecal/e-cal.c:1707 + #, c-format + msgid "Enter password for %s to enable proxy for user %s" +-msgstr "" +-"Introduzca su contraseña para %s para activar el proxy para el usuario %s" ++msgstr "Introduzca su contraseña para %s para activar el proxy para el usuario %s" + +-#: ../calendar/libecal/e-cal.c:1708 ../libedataserverui/e-book-auth-util.c:192 ++#: ../calendar/libecal/e-cal.c:1710 ../libedataserverui/e-book-auth-util.c:198 + #, c-format + msgid "Enter password for %s (user %s)" + msgstr "Introduzca su contraseña para %s (usuario %s)" + +-#: ../calendar/libecal/e-cal.c:5103 ++#: ../calendar/libecal/e-cal.c:5109 + msgid "Invalid argument" + msgstr "Argumento inválido" + +-#: ../calendar/libecal/e-cal.c:5105 ++#: ../calendar/libecal/e-cal.c:5111 + msgid "Backend is busy" + msgstr "El soporte está ocupado" + +-#: ../calendar/libecal/e-cal.c:5107 ++#: ../calendar/libecal/e-cal.c:5113 + msgid "Repository is offline" + msgstr "El repositorio está desconectado" + +-#: ../calendar/libecal/e-cal.c:5109 ++#: ../calendar/libecal/e-cal.c:5115 + msgid "No such calendar" + msgstr "No existe el calendario" + +-#: ../calendar/libecal/e-cal.c:5111 ../servers/groupwise/e-gw-connection.c:172 ++#: ../calendar/libecal/e-cal.c:5117 ../servers/groupwise/e-gw-connection.c:175 + msgid "Object not found" + msgstr "Objeto no encontrado" + +-#: ../calendar/libecal/e-cal.c:5113 ../servers/groupwise/e-gw-connection.c:166 ++#: ../calendar/libecal/e-cal.c:5119 ../servers/groupwise/e-gw-connection.c:169 + msgid "Invalid object" + msgstr "Objeto inválido" + +-#: ../calendar/libecal/e-cal.c:5115 ++#: ../calendar/libecal/e-cal.c:5121 + msgid "URI not loaded" + msgstr "URI no cargada" + +-#: ../calendar/libecal/e-cal.c:5117 ++#: ../calendar/libecal/e-cal.c:5123 + msgid "URI already loaded" + msgstr "URI ya cargada" + +-#: ../calendar/libecal/e-cal.c:5119 ++#: ../calendar/libecal/e-cal.c:5125 + #: ../servers/exchange/storage/e-storage.c:572 + msgid "Permission denied" + msgstr "Permiso denegado" + +-#: ../calendar/libecal/e-cal.c:5121 ../servers/groupwise/e-gw-connection.c:174 ++#: ../calendar/libecal/e-cal.c:5127 ../servers/groupwise/e-gw-connection.c:177 + msgid "Unknown User" + msgstr "Usuario desconocido" + +-#: ../calendar/libecal/e-cal.c:5123 ++#: ../calendar/libecal/e-cal.c:5129 + msgid "Object ID already exists" + msgstr "El ID del objeto ya existe" + +-#: ../calendar/libecal/e-cal.c:5125 ++#: ../calendar/libecal/e-cal.c:5131 + msgid "Protocol not supported" + msgstr "Protocolo no implementado" + +-#: ../calendar/libecal/e-cal.c:5127 ++#: ../calendar/libecal/e-cal.c:5133 + msgid "Operation has been cancelled" + msgstr "La operación ha sido cancelada" + +-#: ../calendar/libecal/e-cal.c:5129 ++#: ../calendar/libecal/e-cal.c:5135 + msgid "Could not cancel operation" + msgstr "No se pudo cancelar la operación" + +-#: ../calendar/libecal/e-cal.c:5133 ++#: ../calendar/libecal/e-cal.c:5139 + #: ../camel/providers/smtp/camel-smtp-transport.c:212 + msgid "Authentication required" + msgstr "Autenticación requerida" + +-#: ../calendar/libecal/e-cal.c:5135 ++#: ../calendar/libecal/e-cal.c:5141 + msgid "A CORBA exception has occurred" + msgstr "Ha ocurrido una excepción CORBA" + +-#: ../calendar/libecal/e-cal.c:5137 +-#: ../camel/providers/groupwise/camel-groupwise-transport.c:217 ++#: ../calendar/libecal/e-cal.c:5143 ++#: ../camel/providers/groupwise/camel-groupwise-transport.c:218 + #: ../camel/providers/imap/camel-imap-command.c:311 + #: ../camel/providers/imap/camel-imap-command.c:411 + #: ../camel/providers/imap4/camel-imap4-store.c:383 +-#: ../camel/providers/pop3/camel-pop3-store.c:533 +-#: ../camel/providers/pop3/camel-pop3-store.c:540 +-#: ../camel/providers/pop3/camel-pop3-store.c:546 ++#: ../camel/providers/pop3/camel-pop3-store.c:528 ++#: ../camel/providers/pop3/camel-pop3-store.c:535 ++#: ../camel/providers/pop3/camel-pop3-store.c:541 + #: ../servers/exchange/storage/e-storage.c:586 +-#: ../servers/groupwise/e-gw-connection.c:180 ++#: ../servers/groupwise/e-gw-connection.c:183 + msgid "Unknown error" + msgstr "Error desconocido" + +-#: ../calendar/libecal/e-cal.c:5139 ++#: ../calendar/libecal/e-cal.c:5145 + #: ../servers/exchange/storage/e-storage.c:554 + msgid "No error" + msgstr "Sin errores" +@@ -1185,9 +1191,7 @@ msgstr "«%s» espera que el primer argu + #: ../calendar/libedata-cal/e-cal-backend-sexp.c:119 + #, c-format + msgid "\"%s\" expects the first argument to be an ISO 8601 date/time string" +-msgstr "" +-"«%s» espera que el primer argumento sea una cadena tipo ISO 8601 de fecha/" +-"hora" ++msgstr "«%s» espera que el primer argumento sea una cadena tipo ISO 8601 de fecha/hora" + + #: ../calendar/libedata-cal/e-cal-backend-sexp.c:158 + #: ../calendar/libedata-cal/e-cal-backend-sexp.c:359 +@@ -1225,12 +1229,8 @@ msgstr "«%s» espera que el segundo arg + + #: ../calendar/libedata-cal/e-cal-backend-sexp.c:548 + #, c-format +-msgid "" +-"\"%s\" expects the first argument to be either \"any\", \"summary\", or " +-"\"description\", or \"location\"" +-msgstr "" +-"«%s» espera que el primer argumento sea «any», «summary», «description» o " +-"«location»" ++msgid "\"%s\" expects the first argument to be either \"any\", \"summary\", or \"description\", or \"location\"" ++msgstr "«%s» espera que el primer argumento sea «any», «summary», «description» o «location»" + + #: ../calendar/libedata-cal/e-cal-backend-sexp.c:671 + #, c-format +@@ -1239,12 +1239,8 @@ msgstr "«%s» espera al menos un argume + + #: ../calendar/libedata-cal/e-cal-backend-sexp.c:685 + #, c-format +-msgid "" +-"\"%s\" expects all arguments to be strings or one and only one argument to " +-"be a boolean false (#f)" +-msgstr "" +-"«%s» espera que todos los argumentos sean cadenas o que uno y sólo uno de " +-"los argumentos sea un booleano falso (#f)" ++msgid "\"%s\" expects all arguments to be strings or one and only one argument to be a boolean false (#f)" ++msgstr "«%s» espera que todos los argumentos sean cadenas o que uno y sólo uno de los argumentos sea un booleano falso (#f)" + + #: ../camel/camel-cipher-context.c:102 + msgid "Signing is not supported by this cipher" +@@ -1297,25 +1293,13 @@ msgstr "No se pudo quitar la entrada de + + #: ../camel/camel-disco-diary.c:197 + #, c-format +-msgid "" +-"Could not write log entry: %s\n" +-"Further operations on this server will not be replayed when you\n" +-"reconnect to the network." +-msgstr "" +-"No se pudo escribir una entrada del archivo de actividad: %s\n" +-"Las siguientes operaciones en este servidor no serán registradas\n" +-"cuando se reconecte a la red." ++msgid "Could not write log entry: %s\nFurther operations on this server will not be replayed when you\nreconnect to the network." ++msgstr "No se pudo escribir una entrada del archivo de actividad: %s\nLas siguientes operaciones en este servidor no serán registradas\ncuando se reconecte a la red." + + #: ../camel/camel-disco-diary.c:260 + #, c-format +-msgid "" +-"Could not open `%s':\n" +-"%s\n" +-"Changes made to this folder will not be resynchronized." +-msgstr "" +-"No se pudo abrir «%s»:\n" +-"%s\n" +-"Los cambios hechos a esta carpeta no serán resincronizados." ++msgid "Could not open `%s':\n%s\nChanges made to this folder will not be resynchronized." ++msgstr "No se pudo abrir «%s»:\n%s\nLos cambios hechos a esta carpeta no serán resincronizados." + + #: ../camel/camel-disco-diary.c:296 + msgid "Resynchronizing with server" +@@ -1323,8 +1307,7 @@ msgstr "Resincronizando con el servidor" + + #: ../camel/camel-disco-folder.c:42 ../camel/camel-offline-folder.c:50 + msgid "Copy folder content locally for offline operation" +-msgstr "" +-"Copiar el contenido de la carpeta localmente para operación desconectada" ++msgstr "Copiar el contenido de la carpeta localmente para operación desconectada" + + #: ../camel/camel-disco-folder.c:104 ../camel/camel-offline-folder.c:109 + msgid "Downloading new messages for offline mode" +@@ -1336,8 +1319,7 @@ msgid "Preparing folder '%s' for offline + msgstr "Preparando carpeta «%s» para desconexión" + + #: ../camel/camel-disco-store.c:401 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1250 +-#: ../camel/providers/imap/camel-imap-store.c:2964 ++#: ../camel/providers/imap/camel-imap-store.c:2970 + msgid "You must be working online to complete this operation" + msgstr "Para completar esta operación debe estar trabajando conectado a la red" + +@@ -1434,21 +1416,13 @@ msgstr "Error ejecutando la búsqueda de + + #: ../camel/camel-folder-search.c:357 ../camel/camel-folder-search.c:478 + #, c-format +-msgid "" +-"Cannot parse search expression: %s:\n" +-"%s" +-msgstr "" +-"No se pudo analizar la expresión de búsqueda: %s:\n" +-"%s" ++msgid "Cannot parse search expression: %s:\n%s" ++msgstr "No se pudo analizar la expresión de búsqueda: %s:\n%s" + + #: ../camel/camel-folder-search.c:367 ../camel/camel-folder-search.c:488 + #, c-format +-msgid "" +-"Error executing search expression: %s:\n" +-"%s" +-msgstr "" +-"Error ejecutando la búsqueda según la expresión: %s:\n" +-"%s" ++msgid "Error executing search expression: %s:\n%s" ++msgstr "Error ejecutando la búsqueda según la expresión: %s:\n%s" + + #: ../camel/camel-folder-search.c:674 ../camel/camel-folder-search.c:707 + msgid "(match-all) requires a single bool result" +@@ -1462,15 +1436,15 @@ msgstr "(coincidir-conversaciones) no se + msgid "(match-threads) requires a match type string" + msgstr "(coincidir-conversaciones) requiere una cadena de coincidencia" + +-#: ../camel/camel-folder-search.c:786 ++#: ../camel/camel-folder-search.c:788 + msgid "(match-threads) expects an array result" + msgstr "(coincidir-conversaciones) espera un resultado array" + +-#: ../camel/camel-folder-search.c:792 ++#: ../camel/camel-folder-search.c:794 + msgid "(match-threads) requires the folder set" + msgstr "(coincidir-conversaciones) requiere que se establezca una carpeta" + +-#: ../camel/camel-folder-search.c:881 ++#: ../camel/camel-folder-search.c:886 + #, c-format + msgid "Performing query on unknown header: %s" + msgstr "Realizando búsqueda en cabecera desconocida: %s" +@@ -1512,14 +1486,8 @@ msgstr "Filtrando mensajes(s) nuevo(s)" + + #: ../camel/camel-gpg-context.c:753 + #, c-format +-msgid "" +-"Unexpected GnuPG status message encountered:\n" +-"\n" +-"%s" +-msgstr "" +-"Se encontró un mensaje de estado GNUPG inesperado:\n" +-"\n" +-"%s" ++msgid "Unexpected GnuPG status message encountered:\n\n%s" ++msgstr "Se encontró un mensaje de estado GNUPG inesperado:\n\n%s" + + #: ../camel/camel-gpg-context.c:767 + msgid "Failed to parse gpg userid hint." +@@ -1529,104 +1497,97 @@ msgstr "Falló al analizar el id del usu + msgid "Failed to parse gpg passphrase request." + msgstr "Falló al analizar la solicitud de contraseña gpg." + +-#: ../camel/camel-gpg-context.c:805 ++#: ../camel/camel-gpg-context.c:806 ../camel/camel-gpg-context.c:810 + #, c-format +-msgid "" +-"You need a passphrase to unlock the key for\n" +-"user: \"%s\"" +-msgstr "" +-"Necesita una contraseña para desbloquear la clave para \n" +-"el usuario: «%s»" ++msgid "You need a passphrase to unlock the key for\nuser: \"%s\"" ++msgstr "Necesita una contraseña para desbloquear la clave para \nel usuario: «%s»" + +-#: ../camel/camel-gpg-context.c:822 ../camel/camel-gpg-context.c:1026 ++#: ../camel/camel-gpg-context.c:828 ../camel/camel-gpg-context.c:1032 + #: ../camel/providers/nntp/camel-nntp-store.c:1272 + msgid "Cancelled." + msgstr "Cancelado." + +-#: ../camel/camel-gpg-context.c:840 ++#: ../camel/camel-gpg-context.c:846 + msgid "Failed to unlock secret key: 3 bad passphrases given." + msgstr "Falló al desbloquear la clave secreta: se dieron 3 contraseñas falsas." + +-#: ../camel/camel-gpg-context.c:846 ++#: ../camel/camel-gpg-context.c:852 + #, c-format + msgid "Unexpected response from GnuPG: %s" + msgstr "Respuesta inesperada del GNUPG: %s" + +-#: ../camel/camel-gpg-context.c:898 ++#: ../camel/camel-gpg-context.c:904 + msgid "Failed to encrypt: No valid recipients specified." + msgstr "No se pudo cifrar este mensaje: no hay destinatarios." + + #. always called on an i/o error +-#: ../camel/camel-gpg-context.c:1164 ../camel/camel-gpg-context.c:1292 +-#: ../camel/camel-gpg-context.c:1776 ../camel/camel-gpg-context.c:1821 ++#: ../camel/camel-gpg-context.c:1170 ../camel/camel-gpg-context.c:1298 ++#: ../camel/camel-gpg-context.c:1782 ../camel/camel-gpg-context.c:1827 + #, c-format + msgid "Failed to execute gpg: %s" + msgstr "Error al ejecutar gpg: %s" + +-#: ../camel/camel-gpg-context.c:1260 ../camel/camel-smime-context.c:387 ++#: ../camel/camel-gpg-context.c:1266 ../camel/camel-smime-context.c:387 + #, c-format + msgid "Could not generate signing data: %s" + msgstr "No se pudo generar los datos de la firma: %s" + +-#: ../camel/camel-gpg-context.c:1307 ../camel/camel-gpg-context.c:1496 +-#: ../camel/camel-gpg-context.c:1579 ../camel/camel-gpg-context.c:1594 +-#: ../camel/camel-gpg-context.c:1698 ../camel/camel-gpg-context.c:1713 +-#: ../camel/camel-gpg-context.c:1792 ../camel/camel-gpg-context.c:1837 ++#: ../camel/camel-gpg-context.c:1313 ../camel/camel-gpg-context.c:1502 ++#: ../camel/camel-gpg-context.c:1585 ../camel/camel-gpg-context.c:1600 ++#: ../camel/camel-gpg-context.c:1704 ../camel/camel-gpg-context.c:1719 ++#: ../camel/camel-gpg-context.c:1798 ../camel/camel-gpg-context.c:1843 + msgid "Failed to execute gpg." + msgstr "Falló al ejecutar gpg." + +-#: ../camel/camel-gpg-context.c:1326 ++#: ../camel/camel-gpg-context.c:1332 + msgid "This is a digitally signed message part" + msgstr "Esta parte del mensaje está firmada digitalmente" + +-#: ../camel/camel-gpg-context.c:1414 ../camel/camel-gpg-context.c:1420 +-#: ../camel/camel-gpg-context.c:1426 ../camel/camel-gpg-context.c:1443 ++#: ../camel/camel-gpg-context.c:1420 ../camel/camel-gpg-context.c:1426 ++#: ../camel/camel-gpg-context.c:1432 ../camel/camel-gpg-context.c:1449 + #: ../camel/camel-smime-context.c:690 ../camel/camel-smime-context.c:701 + #: ../camel/camel-smime-context.c:708 + msgid "Cannot verify message signature: Incorrect message format" +-msgstr "" +-"No se pudo verificar la firma del mensaje: Formato de mensaje incorrecto" ++msgstr "No se pudo verificar la firma del mensaje: Formato de mensaje incorrecto" + +-#: ../camel/camel-gpg-context.c:1481 ++#: ../camel/camel-gpg-context.c:1487 + #, c-format + msgid "Cannot verify message signature: could not create temp file: %s" +-msgstr "" +-"No se pudo verificar la firma del mensaje: no pude crear un archivo " +-"temporal: %s" ++msgstr "No se pudo verificar la firma del mensaje: no pude crear un archivo temporal: %s" + +-#: ../camel/camel-gpg-context.c:1562 ++#: ../camel/camel-gpg-context.c:1568 + #, c-format + msgid "Could not generate encrypting data: %s" + msgstr "No se pudo generar los datos de cifrado: %s" + +-#: ../camel/camel-gpg-context.c:1612 ++#: ../camel/camel-gpg-context.c:1618 + msgid "This is a digitally encrypted message part" + msgstr "Esta parte del mensaje está cifrada digitalmente" + +-#: ../camel/camel-gpg-context.c:1669 ++#: ../camel/camel-gpg-context.c:1675 + msgid "Failed to decrypt MIME part: protocol error" + msgstr "Falló al descifrar la parte MIME: error del protocolo" + +-#: ../camel/camel-gpg-context.c:1680 ++#: ../camel/camel-gpg-context.c:1686 + msgid "Cannot decrypt message: Incorrect message format" + msgstr "No se pudo descifrar el mensaje: Formato de mensaje incorrecto" + +-#: ../camel/camel-gpg-context.c:1734 ../camel/camel-smime-context.c:964 ++#: ../camel/camel-gpg-context.c:1740 ../camel/camel-smime-context.c:964 + msgid "Encrypted content" + msgstr "Contenido cifrado" + +-#: ../camel/camel-gpg-context.c:1753 ++#: ../camel/camel-gpg-context.c:1759 + msgid "Unable to parse message content" + msgstr "No se pudo interpretar el contenido del mensaje" + +-#: ../camel/camel-gpg-context.c:1777 ../camel/camel-gpg-context.c:1822 ++#: ../camel/camel-gpg-context.c:1783 ../camel/camel-gpg-context.c:1828 + #: ../camel/camel-tcp-stream-openssl.c:631 + #: ../camel/providers/imap4/camel-imap4-engine.c:1550 + #: ../camel/providers/imap4/camel-imap4-engine.c:1589 + #: ../camel/providers/imap4/camel-imap4-engine.c:1634 + #: ../camel/providers/imap4/camel-imap4-engine.c:1690 +-#: ../camel/providers/imap4/camel-imap4-store.c:886 +-#: ../camel/providers/imap4/camel-imap4-store.c:1559 ++#: ../camel/providers/imap4/camel-imap4-store.c:881 ++#: ../camel/providers/imap4/camel-imap4-store.c:1554 + #: ../camel/providers/imap4/camel-imap4-utils.c:575 + #: ../camel/providers/smtp/camel-smtp-transport.c:160 + #: ../camel/providers/smtp/camel-smtp-transport.c:215 +@@ -1661,9 +1622,7 @@ msgstr "No se pudo bloquear el archivo p + #: ../camel/camel-lock.c:157 + #, c-format + msgid "Timed out trying to get lock file on %s. Try again later." +-msgstr "" +-"Expiró el tiempo tratando de obtener un bloqueo del archivo %s. Inténtelo " +-"más tarde." ++msgstr "Expiró el tiempo tratando de obtener un bloqueo del archivo %s. Inténtelo más tarde." + + #: ../camel/camel-lock.c:212 + #, c-format +@@ -1733,40 +1692,40 @@ msgstr "Error copiando el correo al arch + msgid "parse error" + msgstr "error de análisis sintáctico" + +-#: ../camel/camel-net-utils.c:495 ../camel/camel-net-utils.c:657 +-#: ../camel/camel-net-utils.c:788 +-#: ../camel/providers/pop3/camel-pop3-store.c:446 +-#: ../camel/providers/pop3/camel-pop3-store.c:527 ++#: ../camel/camel-net-utils.c:497 ../camel/camel-net-utils.c:659 ++#: ../camel/camel-net-utils.c:790 ++#: ../camel/providers/pop3/camel-pop3-store.c:441 ++#: ../camel/providers/pop3/camel-pop3-store.c:522 + msgid "Cancelled" + msgstr "Cancelado" + +-#: ../camel/camel-net-utils.c:514 ++#: ../camel/camel-net-utils.c:516 + msgid "cannot create thread" + msgstr "no se puede crear el hilo" + +-#: ../camel/camel-net-utils.c:661 ++#: ../camel/camel-net-utils.c:663 + #, c-format + msgid "Resolving: %s" + msgstr "Resolviendo: %s" + +-#: ../camel/camel-net-utils.c:683 ++#: ../camel/camel-net-utils.c:685 + msgid "Host lookup failed" + msgstr "Ha fallado la resolución del host" + +-#: ../camel/camel-net-utils.c:685 ++#: ../camel/camel-net-utils.c:687 + #, c-format + msgid "Host lookup failed: %s: %s" + msgstr "Ha fallado la resolución del host: %s: %s" + +-#: ../camel/camel-net-utils.c:792 ++#: ../camel/camel-net-utils.c:794 + msgid "Resolving address" + msgstr "Resolviendo dirección" + +-#: ../camel/camel-net-utils.c:812 ++#: ../camel/camel-net-utils.c:814 + msgid "Name lookup failed" + msgstr "Ha fallado la resolución del nombre" + +-#: ../camel/camel-net-utils.c:815 ++#: ../camel/camel-net-utils.c:817 + #, c-format + msgid "Name lookup failed: %s" + msgstr "Ha fallado la resolución del nombre: %s" +@@ -1792,9 +1751,7 @@ msgstr "Para leer correo como una búsqu + #: ../camel/camel-provider.c:188 + #, c-format + msgid "Could not load %s: Module loading not supported on this system." +-msgstr "" +-"No se pudo cargar %s: La carga de módulos no está implementada es este " +-"sistema." ++msgstr "No se pudo cargar %s: La carga de módulos no está implementada es este sistema." + + #: ../camel/camel-provider.c:197 + #, c-format +@@ -1825,54 +1782,34 @@ msgstr "Falló la autenticación." + + #: ../camel/camel-sasl-anonymous.c:131 + #, c-format +-msgid "" +-"Invalid email address trace information:\n" +-"%s" +-msgstr "" +-"Dirección de correo errónea información de ayuda:\n" +-"%s" ++msgid "Invalid email address trace information:\n%s" ++msgstr "Dirección de correo errónea información de ayuda:\n%s" + + #: ../camel/camel-sasl-anonymous.c:143 + #, c-format +-msgid "" +-"Invalid opaque trace information:\n" +-"%s" +-msgstr "" +-"Información opaca de seguimiento inválida:\n" +-"%s" ++msgid "Invalid opaque trace information:\n%s" ++msgstr "Información opaca de seguimiento inválida:\n%s" + + #: ../camel/camel-sasl-anonymous.c:155 + #, c-format +-msgid "" +-"Invalid trace information:\n" +-"%s" +-msgstr "" +-"Información de seguimiento inválida:\n" +-"%s" ++msgid "Invalid trace information:\n%s" ++msgstr "Información de seguimiento inválida:\n%s" + + #: ../camel/camel-sasl-cram-md5.c:38 + msgid "CRAM-MD5" + msgstr "CRAM-MD5" + + #: ../camel/camel-sasl-cram-md5.c:40 +-msgid "" +-"This option will connect to the server using a secure CRAM-MD5 password, if " +-"the server supports it." +-msgstr "" +-"Esta opción conectará con el servidor usando una clave segura CRAM-MD5, si " +-"el servidor lo implementa." ++msgid "This option will connect to the server using a secure CRAM-MD5 password, if the server supports it." ++msgstr "Esta opción conectará con el servidor usando una clave segura CRAM-MD5, si el servidor lo implementa." + + #: ../camel/camel-sasl-digest-md5.c:48 + msgid "DIGEST-MD5" + msgstr "DIGEST-MD5" + + #: ../camel/camel-sasl-digest-md5.c:50 +-msgid "" +-"This option will connect to the server using a secure DIGEST-MD5 password, " +-"if the server supports it." +-msgstr "" +-"Esta opción conectará con el servidor usando una clave segura DIGEST-MD5, si " +-"el servidor lo implementa." ++msgid "This option will connect to the server using a secure DIGEST-MD5 password, if the server supports it." ++msgstr "Esta opción conectará con el servidor usando una clave segura DIGEST-MD5, si el servidor lo implementa." + + #: ../camel/camel-sasl-digest-md5.c:818 + msgid "Server challenge too long (>2048 octets)" +@@ -1884,8 +1821,7 @@ msgstr "Reto del servidor no válido\n" + + #: ../camel/camel-sasl-digest-md5.c:833 + msgid "Server challenge contained invalid \"Quality of Protection\" token" +-msgstr "" +-"El reto del servidor contiene un token inválido para «Calidad de Protección»" ++msgstr "El reto del servidor contiene un token inválido para «Calidad de Protección»" + + #: ../camel/camel-sasl-digest-md5.c:863 + msgid "Server response did not contain authorization data" +@@ -1893,8 +1829,7 @@ msgstr "La respuesta del servidor no con + + #: ../camel/camel-sasl-digest-md5.c:881 + msgid "Server response contained incomplete authorization data" +-msgstr "" +-"La respuesta del servidor contenía información de autorización incompleta" ++msgstr "La respuesta del servidor contenía información de autorización incompleta" + + #: ../camel/camel-sasl-digest-md5.c:891 + msgid "Server response does not match" +@@ -1909,54 +1844,32 @@ msgid "This option will connect to the s + msgstr "Esta opción conectará con el servidor usando autenticación Kerberos 5." + + #: ../camel/camel-sasl-gssapi.c:157 +-msgid "" +-"The specified mechanism is not supported by the provided credential, or is " +-"unrecognized by the implementation." +-msgstr "" +-"El mecanismo especificado no está soportado por la credencial provista, o es " +-"irreconocible por la implementación." ++msgid "The specified mechanism is not supported by the provided credential, or is unrecognized by the implementation." ++msgstr "El mecanismo especificado no está soportado por la credencial provista, o es irreconocible por la implementación." + + #: ../camel/camel-sasl-gssapi.c:162 + msgid "The provided target_name parameter was ill-formed." + msgstr "El parámetro target_name no ha sido formado correctamente." + + #: ../camel/camel-sasl-gssapi.c:165 +-msgid "" +-"The provided target_name parameter contained an invalid or unsupported type " +-"of name." +-msgstr "" +-"El parámetro target_name proporcionado contenía un tipo de nombre inválido o " +-"no soportado." ++msgid "The provided target_name parameter contained an invalid or unsupported type of name." ++msgstr "El parámetro target_name proporcionado contenía un tipo de nombre inválido o no soportado." + + #: ../camel/camel-sasl-gssapi.c:169 +-msgid "" +-"The input_token contains different channel bindings to those specified via " +-"the input_chan_bindings parameter." +-msgstr "" +-"input_token contiene diferentes vinculaciones de canal a aquellas " +-"especificadas por medio del parámetro input_chan_bindings." ++msgid "The input_token contains different channel bindings to those specified via the input_chan_bindings parameter." ++msgstr "input_token contiene diferentes vinculaciones de canal a aquellas especificadas por medio del parámetro input_chan_bindings." + + #: ../camel/camel-sasl-gssapi.c:174 +-msgid "" +-"The input_token contains an invalid signature, or a signature that could not " +-"be verified." +-msgstr "" +-"input_token contiene una firma inválida, o una firma que no pudo ser " +-"verificada." ++msgid "The input_token contains an invalid signature, or a signature that could not be verified." ++msgstr "input_token contiene una firma inválida, o una firma que no pudo ser verificada." + + #: ../camel/camel-sasl-gssapi.c:178 +-msgid "" +-"The supplied credentials were not valid for context initiation, or the " +-"credential handle did not reference any credentials." +-msgstr "" +-"Las credenciales suministradas no fueron válidas para la iniciación del " +-"contexto, o el manipulador de credenciales no referenciaba ninguna " +-"credencial." ++msgid "The supplied credentials were not valid for context initiation, or the credential handle did not reference any credentials." ++msgstr "Las credenciales suministradas no fueron válidas para la iniciación del contexto, o el manipulador de credenciales no referenciaba ninguna credencial." + + #: ../camel/camel-sasl-gssapi.c:183 + msgid "The supplied context handle did not refer to a valid context." +-msgstr "" +-"El manipulador de contexto suministrado no se refiere a un contexto válido." ++msgstr "El manipulador de contexto suministrado no se refiere a un contexto válido." + + #: ../camel/camel-sasl-gssapi.c:186 + msgid "The consistency checks performed on the input_token failed." +@@ -1973,7 +1886,7 @@ msgstr "Las credenciales referenciadas h + #: ../camel/camel-sasl-gssapi.c:198 ../camel/camel-sasl-gssapi.c:246 + #: ../camel/camel-sasl-gssapi.c:282 ../camel/camel-sasl-gssapi.c:297 + #: ../camel/camel-sasl-kerberos4.c:229 +-#: ../camel/providers/imap/camel-imap-store.c:1285 ++#: ../camel/providers/imap/camel-imap-store.c:1280 + msgid "Bad authentication response from server." + msgstr "Respuesta de autenticación errónea desde el servidor." + +@@ -1991,12 +1904,8 @@ msgstr "Esta opción conectará con el s + + #: ../camel/camel-sasl-kerberos4.c:172 + #, c-format +-msgid "" +-"Could not get Kerberos ticket:\n" +-"%s" +-msgstr "" +-"No se pudo obtener el pase Kerberos:\n" +-"%s" ++msgid "Could not get Kerberos ticket:\n%s" ++msgstr "No se pudo obtener el pase Kerberos:\n%s" + + #: ../camel/camel-sasl-login.c:34 + msgid "Login" +@@ -2015,12 +1924,8 @@ msgid "NTLM / SPA" + msgstr "NTLM / SPA" + + #: ../camel/camel-sasl-ntlm.c:34 +-msgid "" +-"This option will connect to a Windows-based server using NTLM / Secure " +-"Password Authentication." +-msgstr "" +-"Esta opción conectará a un servidor basado en Windows usando NTLM / Secure " +-"Password Autentication." ++msgid "This option will connect to a Windows-based server using NTLM / Secure Password Authentication." ++msgstr "Esta opción conectará a un servidor basado en Windows usando NTLM / Secure Password Autentication." + + #: ../camel/camel-sasl-plain.c:34 + msgid "PLAIN" +@@ -2068,12 +1973,8 @@ msgstr "La URL «%s» necesita un compon + + #: ../camel/camel-session.c:292 + #, c-format +-msgid "" +-"Could not create directory %s:\n" +-"%s" +-msgstr "" +-"No se pudo crear el directorio %s:\n" +-"%s" ++msgid "Could not create directory %s:\n%s" ++msgstr "No se pudo crear el directorio %s:\n%s" + + #: ../camel/camel-smime-context.c:229 + #, c-format +@@ -2203,13 +2104,11 @@ msgstr "Falló la importación del certi + + #: ../camel/camel-smime-context.c:597 + msgid "Certificate is the only message, cannot verify certificates" +-msgstr "" +-"El certificado es el único mensaje, no se pueden verificar los certificados" ++msgstr "El certificado es el único mensaje, no se pueden verificar los certificados" + + #: ../camel/camel-smime-context.c:600 + msgid "Certificate is the only message, certificates imported and verified" +-msgstr "" +-"El certificado es el único menaje, certificados importados y verificados" ++msgstr "El certificado es el único menaje, certificados importados y verificados" + + #: ../camel/camel-smime-context.c:604 + msgid "Cannot find signature digests" +@@ -2338,8 +2237,7 @@ msgstr "No se pudo descifrar la firma de + + #: ../camel/camel-tcp-stream-openssl.c:574 + msgid "Unable to decrypt Certificate Revocation List signature" +-msgstr "" +-"No se pudo descifrar la firma de la Lista de Revocación de Certificados" ++msgstr "No se pudo descifrar la firma de la Lista de Revocación de Certificados" + + #: ../camel/camel-tcp-stream-openssl.c:576 + msgid "Unable to decode issuer's public key" +@@ -2443,16 +2341,8 @@ msgstr "Error en la verificación de la + + #: ../camel/camel-tcp-stream-openssl.c:696 ../camel/camel-tcp-stream-ssl.c:886 + #, c-format +-msgid "" +-"Issuer: %s\n" +-"Subject: %s\n" +-"Fingerprint: %s\n" +-"Signature: %s" +-msgstr "" +-"Emisor: %s\n" +-"Tema: %s\n" +-"Huella: %s\n" +-"Firma: %s" ++msgid "Issuer: %s\nSubject: %s\nFingerprint: %s\nSignature: %s" ++msgstr "Emisor: %s\nTema: %s\nHuella: %s\nFirma: %s" + + #: ../camel/camel-tcp-stream-openssl.c:702 ../camel/camel-tcp-stream-ssl.c:892 + msgid "GOOD" +@@ -2464,74 +2354,34 @@ msgstr "BAD" + + #: ../camel/camel-tcp-stream-openssl.c:704 + #, c-format +-msgid "" +-"Bad certificate from %s:\n" +-"\n" +-"%s\n" +-"\n" +-"%s\n" +-"\n" +-"Do you wish to accept anyway?" +-msgstr "" +-"Certificado erróneo de %s:\n" +-"\n" +-"%s\n" +-"\n" +-"%s\n" +-"\n" +-"¿Quiere aceptarlo de todos modos?" ++msgid "Bad certificate from %s:\n\n%s\n\n%s\n\nDo you wish to accept anyway?" ++msgstr "Certificado erróneo de %s:\n\n%s\n\n%s\n\n¿Quiere aceptarlo de todos modos?" + + #. construct our user prompt + #: ../camel/camel-tcp-stream-ssl.c:896 + #, c-format +-msgid "" +-"SSL Certificate check for %s:\n" +-"\n" +-"%s\n" +-"\n" +-"Do you wish to accept?" +-msgstr "" +-"Comprobación de Certificado SSL para %s:\n" +-"\n" +-"%s\n" +-"\n" +-"¿Quiere aceptar?" ++msgid "SSL Certificate check for %s:\n\n%s\n\nDo you wish to accept?" ++msgstr "Comprobación de Certificado SSL para %s:\n\n%s\n\n¿Quiere aceptar?" + + #: ../camel/camel-tcp-stream-ssl.c:940 + #, c-format +-msgid "" +-"Certificate problem: %s\n" +-"Issuer: %s" +-msgstr "" +-"Problema del certificado: %s\n" +-"Emisor: %s" ++msgid "Certificate problem: %s\nIssuer: %s" ++msgstr "Problema del certificado: %s\nEmisor: %s" + + #: ../camel/camel-tcp-stream-ssl.c:992 + #, c-format +-msgid "" +-"Bad certificate domain: %s\n" +-"Issuer: %s" +-msgstr "" +-"Dominio del certificado erróneo: %s\n" +-"Emisor: %s" ++msgid "Bad certificate domain: %s\nIssuer: %s" ++msgstr "Dominio del certificado erróneo: %s\nEmisor: %s" + + #: ../camel/camel-tcp-stream-ssl.c:1010 + #, c-format +-msgid "" +-"Certificate expired: %s\n" +-"Issuer: %s" +-msgstr "" +-"Certificado caducado: %s\n" +-"Emisor: %s" ++msgid "Certificate expired: %s\nIssuer: %s" ++msgstr "Certificado caducado: %s\nEmisor: %s" + + #: ../camel/camel-tcp-stream-ssl.c:1027 + #, c-format +-msgid "" +-"Certificate revocation list expired: %s\n" +-"Issuer: %s" +-msgstr "" +-"Lista de revocación de certificados caducada: %s\n" +-"Emisor: %s" ++msgid "Certificate revocation list expired: %s\nIssuer: %s" ++msgstr "Lista de revocación de certificados caducada: %s\nEmisor: %s" + + #: ../camel/camel-url.c:293 + #, c-format +@@ -2574,17 +2424,13 @@ msgstr "No puede copiar mensajes a la ca + msgid "Cannot copy messages to the Junk folder" + msgstr "No puede copiar mensajes a la carpeta «Spam»" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:116 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:112 + #: ../camel/providers/imap/camel-imap-folder.c:2063 + #, c-format +-msgid "" +-"Cannot get message: %s\n" +-" %s" +-msgstr "" +-"No se pudo obtener el mensaje; %s\n" +-" %s" ++msgid "Cannot get message: %s\n %s" ++msgstr "No se pudo obtener el mensaje; %s\n %s" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:116 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:112 + #: ../camel/providers/imap/camel-imap-folder.c:2063 + #: ../camel/providers/local/camel-maildir-folder.c:245 + #: ../camel/providers/local/camel-mbox-folder.c:350 +@@ -2592,7 +2438,7 @@ msgstr "" + msgid "No such message" + msgstr "No existe ese mensaje" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:128 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:124 + #: ../camel/providers/imap4/camel-imap4-folder.c:788 + #: ../camel/providers/nntp/camel-nntp-folder.c:155 + #: ../camel/providers/nntp/camel-nntp-folder.c:231 +@@ -2604,7 +2450,7 @@ msgstr "No existe ese mensaje" + msgid "User cancelled" + msgstr "El usuario canceló" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:135 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:131 + #: ../camel/providers/imap4/camel-imap4-folder.c:793 + #: ../camel/providers/nntp/camel-nntp-folder.c:146 + #: ../camel/providers/nntp/camel-nntp-folder.c:148 +@@ -2618,39 +2464,44 @@ msgstr "El usuario canceló" + msgid "Cannot get message %s: %s" + msgstr "No se pudo obtener mensaje %s: %s" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:152 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:160 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:148 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:156 + #: ../camel/providers/imap4/camel-imap4-folder.c:811 + msgid "This message is not available in offline mode." + msgstr "Este mensaje no está disponible en modo desconectado." + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:171 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:178 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1425 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:167 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:174 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1545 + msgid "Could not get message" + msgstr "No se pudo obtener el mensaje" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:708 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:740 + #: ../camel/providers/imap/camel-imap-folder.c:252 + #, c-format + msgid "Could not load summary for %s" + msgstr "No se pudo cargar el resumen de %s" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1032 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:560 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:966 ++msgid "Trash Folder Full. Please Empty." ++msgstr "La carpeta de papelera está llena. Vacíela." ++ ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1129 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:632 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:744 + #: ../camel/providers/imap/camel-imap-folder.c:2375 + #: ../camel/providers/imap/camel-imap-folder.c:2445 + #, c-format + msgid "Fetching summary information for new messages in %s" + msgstr "Obteniendo información de los nuevos mensajes en %s" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1661 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1707 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1813 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1861 + #, c-format + msgid "Cannot append message to folder `%s': %s" + msgstr "No se pudo agregar el mensaje a la carpeta «%s»: %s" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1695 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1849 + #, c-format + msgid "Cannot create message: %s" + msgstr "No se pudo crear el mensaje: %s" +@@ -2691,9 +2542,7 @@ msgstr "Opciones" + + #: ../camel/providers/groupwise/camel-groupwise-provider.c:58 + msgid "Apply filters to new messages in Inbox on this server" +-msgstr "" +-"Aplicar filtros a los mensajes nuevos en la bandeja de entrada de este " +-"servidor" ++msgstr "Aplicar filtros a los mensajes nuevos en la bandeja de entrada de este servidor" + + #: ../camel/providers/groupwise/camel-groupwise-provider.c:60 + msgid "Check new messages for Junk contents" +@@ -2734,66 +2583,62 @@ msgid "Password" + msgstr "Contraseña" + + #: ../camel/providers/groupwise/camel-groupwise-provider.c:104 +-msgid "" +-"This option will connect to the GroupWise server using a plaintext password." +-msgstr "" +-"Esta opción conectará con el servidor GroupWise usando una contraseña de " +-"texto plano." ++msgid "This option will connect to the GroupWise server using a plaintext password." ++msgstr "Esta opción conectará con el servidor GroupWise usando una contraseña de texto plano." + + #: ../camel/providers/groupwise/camel-groupwise-store.c:103 + msgid "Host or user not available in url" + msgstr "Anfitrión o usuario no disponible en la url" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:199 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:200 + #, c-format + msgid "%sPlease enter the GroupWise password for %s@%s" + msgstr "%s Escriba la contraseña GroupWise para %s@%s" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:213 +-#: ../camel/providers/imap/camel-imap-store.c:1364 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:214 ++#: ../camel/providers/imap/camel-imap-store.c:1359 + msgid "You didn't enter a password." + msgstr "No introdujo una contraseña." + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:227 +-msgid "Unable to authenticate to GroupWise server." +-msgstr "No se pudo autenticar en el servidor al servidor GroupWise." ++#: ../camel/providers/groupwise/camel-groupwise-store.c:226 ++#, ++msgid "Unable to authenticate to GroupWise server. " ++msgstr "No es posible autenticarse en el servidor de GroupWise. " + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:295 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:304 + msgid "Some features may not work correctly with your current server version" +-msgstr "" +-"Algunas características quizá no funcionen correctamente con su versión " +-"actual del servidor" ++msgstr "Algunas características quizá no funcionen correctamente con su versión actual del servidor" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:467 +-#: ../camel/providers/imap/camel-imap-store.c:1873 +-#: ../camel/providers/imap/camel-imap-store.c:2064 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:540 ++#: ../camel/providers/imap/camel-imap-store.c:1868 ++#: ../camel/providers/imap/camel-imap-store.c:2059 + #, c-format + msgid "No such folder %s" + msgstr "No existe la carpeta %s" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1036 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1230 + msgid "Cannot create GroupWise folders in offline mode." + msgstr "No se pueden crear las carpetas GroupWise en modo desconectado." + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1050 +-#: ../camel/providers/imap/camel-imap-store.c:1948 +-#: ../camel/providers/imap/camel-imap-store.c:2317 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1244 ++#: ../camel/providers/imap/camel-imap-store.c:1943 ++#: ../camel/providers/imap/camel-imap-store.c:2312 + msgid "The parent folder is not allowed to contain subfolders" + msgstr "No está permitido que la carpeta raíz contenga subcarpetas" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1127 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1148 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1321 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1342 + #, c-format + msgid "Cannot rename Groupwise folder `%s' to `%s'" + msgstr "No se pudo renombrar la carpeta Groupwise «%s» a «%s»" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1180 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1374 + #: ../camel/providers/groupwise/camel-groupwise-transport.c:121 + #, c-format + msgid "GroupWise server %s" + msgstr "Servidor GroupWise %s" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1182 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1376 + #, c-format + msgid "GroupWise service for %s on %s" + msgstr "Servicio GroupWise para %s en %s" +@@ -2807,14 +2652,11 @@ msgstr "Entrega de correo Groupwise por + msgid "Sending Message" + msgstr "Enviando mensaje" + +-#: ../camel/providers/groupwise/camel-groupwise-transport.c:215 +-msgid "" +-"You have exceeded this account's storage limit. Your messages are queued in " +-"your Outbox. Resend by pressing Send/Receive after deleting/archiving some " +-"of your mail.\n" ++#: ../camel/providers/groupwise/camel-groupwise-transport.c:216 ++msgid "You have exceeded this account's storage limit. Your messages are queued in your Outbox. Resend by pressing Send/Receive after deleting/archiving some of your mail.\n" + msgstr "Ha excedido el límite de almacenamiento de esta cuenta. Sus mensajes se encolan en su Bandeja de salida. Reenvíelos pulsando Enviar/Recibir después de borrar/archivar algunos de sus mensajes.\n" + +-#: ../camel/providers/groupwise/camel-groupwise-transport.c:217 ++#: ../camel/providers/groupwise/camel-groupwise-transport.c:218 + #: ../camel/providers/sendmail/camel-sendmail-transport.c:206 + #, c-format + msgid "Could not send message: %s" +@@ -2884,19 +2726,17 @@ msgstr "Para acceder a servidores Hula" + + #: ../camel/providers/hula/camel-hula-provider.c:94 + msgid "This option will connect to the Hula server using a plaintext password." +-msgstr "" +-"Esta opción conectará con el servidor Hula usando una contraseña de texto " +-"plano." ++msgstr "Esta opción conectará con el servidor Hula usando una contraseña de texto plano." + + #: ../camel/providers/imap/camel-imap-command.c:223 + #: ../camel/providers/imap/camel-imap-command.c:265 + #: ../camel/providers/imap/camel-imap-command.c:472 +-#: ../camel/providers/imap/camel-imap-store.c:3004 ++#: ../camel/providers/imap/camel-imap-store.c:3010 + msgid "Operation cancelled" + msgstr "Operación cancelada" + + #: ../camel/providers/imap/camel-imap-command.c:310 +-#: ../camel/providers/imap/camel-imap-store.c:3007 ++#: ../camel/providers/imap/camel-imap-store.c:3013 + #, c-format + msgid "Server unexpectedly disconnected: %s" + msgstr "El servidor se desconectó inesperadamente: %s" +@@ -2905,12 +2745,8 @@ msgstr "El servidor se desconectó inesp + #. we might get a ']' from a BAD response since we +12, but who cares? + #: ../camel/providers/imap/camel-imap-command.c:331 + #, c-format +-msgid "" +-"Alert from IMAP server %s@%s:\n" +-"%s" +-msgstr "" +-"Respuesta inesperada del servidor IMAP: %s@%s:\n" +-"%s" ++msgid "Alert from IMAP server %s@%s:\n%s" ++msgstr "Respuesta inesperada del servidor IMAP: %s@%s:\n%s" + + #: ../camel/providers/imap/camel-imap-command.c:400 + #, c-format +@@ -2965,24 +2801,17 @@ msgstr "Este mensaje no está disponible + #: ../camel/providers/imap/camel-imap-folder.c:2553 + #, c-format + msgid "Incomplete server response: no information provided for message %d" +-msgstr "" +-"Respuesta del servidor incompleta: no hay información proporcionada para el " +-"mensaje %d" ++msgstr "Respuesta del servidor incompleta: no hay información proporcionada para el mensaje %d" + + #: ../camel/providers/imap/camel-imap-folder.c:2561 + #, c-format + msgid "Incomplete server response: no UID provided for message %d" +-msgstr "" +-"Respuesta incompleta del servidor: No se proporcionó un UID para el mensaje %" +-"d" ++msgstr "Respuesta incompleta del servidor: No se proporcionó un UID para el mensaje %d" + + #: ../camel/providers/imap/camel-imap-folder.c:2574 + #, c-format +-msgid "" +-"Unexpected server response: Identical UIDs provided for messages %d and %d" +-msgstr "" +-"Respuesta inesperada del servidor: Se proporcionaron UIDs idénticos para los " +-"mensajes %d y %d" ++msgid "Unexpected server response: Identical UIDs provided for messages %d and %d" ++msgstr "Respuesta inesperada del servidor: Se proporcionaron UIDs idénticos para los mensajes %d y %d" + + #: ../camel/providers/imap/camel-imap-folder.c:2755 + msgid "Could not find message body in FETCH response." +@@ -3037,9 +2866,7 @@ msgstr "Para leer y almacenar correo en + #: ../camel/providers/imap/camel-imap-provider.c:98 + #: ../camel/providers/imapp/camel-imapp-provider.c:68 + msgid "This option will connect to the IMAP server using a plaintext password." +-msgstr "" +-"Esta opción conectará con el servidor IMAP usando una contraseña de texto " +-"plano." ++msgstr "Esta opción conectará con el servidor IMAP usando una contraseña de texto plano." + + #: ../camel/providers/imap/camel-imap-store.c:447 + #: ../camel/providers/imap4/camel-imap4-store.c:215 +@@ -3087,7 +2914,7 @@ msgstr "SSL no disponible" + msgid "Connection cancelled" + msgstr "Conexión cancelada" + +-#: ../camel/providers/imap/camel-imap-store.c:699 ++#: ../camel/providers/imap/camel-imap-store.c:702 + #: ../camel/providers/imap/camel-imap-store.c:721 + #: ../camel/providers/imap/camel-imap-store.c:727 + #: ../camel/providers/imap4/camel-imap4-store.c:369 +@@ -3097,7 +2924,7 @@ msgstr "Conexión cancelada" + msgid "Failed to connect to IMAP server %s in secure mode: %s" + msgstr "Falló al conectar al servidor IMAP %s en modo seguro: %s" + +-#: ../camel/providers/imap/camel-imap-store.c:700 ++#: ../camel/providers/imap/camel-imap-store.c:703 + #: ../camel/providers/smtp/camel-smtp-transport.c:323 + msgid "STARTTLS not supported" + msgstr "No se soporta STARTTLS" +@@ -3122,58 +2949,50 @@ msgid "Could not connect with command \" + msgstr "No se pudo conectar con el comando «%s»: %s" + + #. create a dummy "." parent inbox, use to scan, then put back at the top level +-#: ../camel/providers/imap/camel-imap-store.c:1057 +-#: ../camel/providers/imap/camel-imap-store.c:2413 ++#: ../camel/providers/imap/camel-imap-store.c:1052 ++#: ../camel/providers/imap/camel-imap-store.c:2408 + #: ../camel/providers/imap4/camel-imap4-store-summary.c:368 +-#: ../camel/providers/imap4/camel-imap4-store.c:1392 ++#: ../camel/providers/imap4/camel-imap4-store.c:1387 + #: ../camel/providers/local/camel-maildir-folder.c:75 + #: ../camel/providers/local/camel-maildir-store.c:217 + #: ../camel/providers/local/camel-maildir-store.c:289 + #: ../camel/providers/local/camel-maildir-store.c:511 + #: ../camel/providers/local/camel-maildir-store.c:524 + #: ../camel/providers/local/camel-spool-store.c:461 +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:261 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:264 + msgid "Inbox" + msgstr "Bandeja de entrada" + +-#: ../camel/providers/imap/camel-imap-store.c:1317 ++#: ../camel/providers/imap/camel-imap-store.c:1312 + #, c-format + msgid "IMAP server %s does not support requested authentication type %s" + msgstr "El servidor IMAP %s no soporta el método de autenticación requerido %s" + +-#: ../camel/providers/imap/camel-imap-store.c:1327 +-#: ../camel/providers/smtp/camel-smtp-transport.c:498 ++#: ../camel/providers/imap/camel-imap-store.c:1322 ++#: ../camel/providers/smtp/camel-smtp-transport.c:493 + #, c-format + msgid "No support for authentication type %s" + msgstr "No hay soporte para el tipo de autenticación %s" + +-#: ../camel/providers/imap/camel-imap-store.c:1350 ++#: ../camel/providers/imap/camel-imap-store.c:1345 + #: ../camel/providers/imapp/camel-imapp-store.c:364 + #, c-format + msgid "%sPlease enter the IMAP password for %s@%s" + msgstr "%s Escriba la contraseña IMAP para %s@%s" + +-#: ../camel/providers/imap/camel-imap-store.c:1393 ++#: ../camel/providers/imap/camel-imap-store.c:1388 + #, c-format +-msgid "" +-"Unable to authenticate to IMAP server.\n" +-"%s\n" +-"\n" +-msgstr "" +-"No se pudo autenticar en el servidor IMAP.\n" +-"%s\n" +-"\n" +- +-#: ../camel/providers/imap/camel-imap-store.c:1885 +-#: ../camel/providers/imap/camel-imap-store.c:2255 +-#: ../camel/providers/imap4/camel-imap4-store.c:1022 ++msgid "Unable to authenticate to IMAP server.\n%s\n\n" ++msgstr "No se pudo autenticar en el servidor IMAP.\n%s\n\n" ++ ++#: ../camel/providers/imap/camel-imap-store.c:1880 ++#: ../camel/providers/imap/camel-imap-store.c:2250 ++#: ../camel/providers/imap4/camel-imap4-store.c:1017 + #, c-format +-msgid "" +-"The folder name \"%s\" is invalid because it contains the character \"%c\"" +-msgstr "" +-"El nombre de la carpeta «%s» es inválido porque contiene el carácter «%c»" ++msgid "The folder name \"%s\" is invalid because it contains the character \"%c\"" ++msgstr "El nombre de la carpeta «%s» es inválido porque contiene el carácter «%c»" + +-#: ../camel/providers/imap/camel-imap-store.c:2002 ++#: ../camel/providers/imap/camel-imap-store.c:1997 + #: ../camel/providers/local/camel-maildir-store.c:190 + #: ../camel/providers/local/camel-mbox-store.c:202 + #: ../camel/providers/local/camel-mh-store.c:249 +@@ -3181,7 +3000,7 @@ msgstr "" + msgid "Cannot create folder `%s': folder exists." + msgstr "No se pudo crear la carpeta: %s: la carpeta existe." + +-#: ../camel/providers/imap/camel-imap-store.c:2266 ++#: ../camel/providers/imap/camel-imap-store.c:2261 + #, c-format + msgid "Unknown parent folder: %s" + msgstr "Carpeta padre desconocida: %s" +@@ -3221,11 +3040,8 @@ msgid "IMAP4 server %s unexpectedly disc + msgstr "El servidor IMAP4 %s se desconectó inesperadamente: %s" + + #: ../camel/providers/imap4/camel-imap4-folder.c:86 +-msgid "" +-"Enable Mailing-List detection required for some filter and vFolder rules" +-msgstr "" +-"Activar la detección de lista de correo requerida para algunos filtros y " +-"reglas de carpetas virtuales" ++msgid "Enable Mailing-List detection required for some filter and vFolder rules" ++msgstr "Activar la detección de lista de correo requerida para algunos filtros y reglas de carpetas virtuales" + + #: ../camel/providers/imap4/camel-imap4-folder.c:399 + #, c-format +@@ -3255,8 +3071,7 @@ msgstr "No se pudo compactar la carpeta + #: ../camel/providers/imap4/camel-imap4-folder.c:865 + #, c-format + msgid "Cannot get message %s from folder `%s': No such message" +-msgstr "" +-"No se pudo obtener el mensaje; %s de la carpeta «%s»: No existe dicho mensaje" ++msgstr "No se pudo obtener el mensaje; %s de la carpeta «%s»: No existe dicho mensaje" + + #: ../camel/providers/imap4/camel-imap4-folder.c:870 + #, c-format +@@ -3266,9 +3081,7 @@ msgstr "No se pudo obtener el mensaje; % + #: ../camel/providers/imap4/camel-imap4-folder.c:914 + #, c-format + msgid "Cannot append message to folder `%s': Folder is read-only" +-msgstr "" +-"No se pudo agregar el mensaje a la carpeta «%s»: La carpeta es de sólo " +-"lectura" ++msgstr "No se pudo agregar el mensaje a la carpeta «%s»: La carpeta es de sólo lectura" + + #: ../camel/providers/imap4/camel-imap4-folder.c:1007 + #, c-format +@@ -3283,30 +3096,22 @@ msgstr "No se pudo agregar el mensaje a + #: ../camel/providers/imap4/camel-imap4-folder.c:1156 + #, c-format + msgid "Cannot move messages from folder `%s' to folder `%s': Unknown" +-msgstr "" +-"No se pudo mover los mensajes de la carpeta «%s» a la carpeta «%s»: " +-"Desconocido" ++msgstr "No se pudo mover los mensajes de la carpeta «%s» a la carpeta «%s»: Desconocido" + + #: ../camel/providers/imap4/camel-imap4-folder.c:1160 + #, c-format + msgid "Cannot copy messages from folder `%s' to folder `%s': Unknown" +-msgstr "" +-"No se pudo copiar los mensajes desde la carpeta «%s» a la carpeta «%s»: " +-"Desconocido" ++msgstr "No se pudo copiar los mensajes desde la carpeta «%s» a la carpeta «%s»: Desconocido" + + #: ../camel/providers/imap4/camel-imap4-folder.c:1168 + #, c-format + msgid "Cannot move messages from folder `%s' to folder `%s': Bad command" +-msgstr "" +-"No se pudo mover los mensajes desde la carpeta «%s» a la carpeta «%s»: " +-"Comando erróneo" ++msgstr "No se pudo mover los mensajes desde la carpeta «%s» a la carpeta «%s»: Comando erróneo" + + #: ../camel/providers/imap4/camel-imap4-folder.c:1172 + #, c-format + msgid "Cannot copy messages from folder `%s' to folder `%s': Bad command" +-msgstr "" +-"No se pudo copiar los mensajes desde la carpeta «%s» a la carpeta «%s»: " +-"Comando erróneo" ++msgstr "No se pudo copiar los mensajes desde la carpeta «%s» a la carpeta «%s»: Comando erróneo" + + #: ../camel/providers/imap4/camel-imap4-provider.c:71 + msgid "IMAP4rev1" +@@ -3317,130 +3122,121 @@ msgid "For reading and storing mail on I + msgstr "Para leer y almacenar correo en los servidores IMAPv4rev1." + + #: ../camel/providers/imap4/camel-imap4-provider.c:90 +-msgid "" +-"This option will connect to the IMAPv4rev1 server using a plaintext password." +-msgstr "" +-"Esta opción conectará con el servidor IMAPv4rev1 usando una contraseña de " +-"texto plano." ++msgid "This option will connect to the IMAPv4rev1 server using a plaintext password." ++msgstr "Esta opción conectará con el servidor IMAPv4rev1 usando una contraseña de texto plano." + +-#: ../camel/providers/imap4/camel-imap4-store.c:486 ++#: ../camel/providers/imap4/camel-imap4-store.c:481 + #, c-format +-msgid "" +-"Cannot authenticate to IMAP server %s using the %s authentication mechanism" +-msgstr "" +-"No se pudo autenticar con el servidor IMAP %s usando el mecanismo de " +-"autenticación %s" ++msgid "Cannot authenticate to IMAP server %s using the %s authentication mechanism" ++msgstr "No se pudo autenticar con el servidor IMAP %s usando el mecanismo de autenticación %s" + +-#: ../camel/providers/imap4/camel-imap4-store.c:535 ++#: ../camel/providers/imap4/camel-imap4-store.c:530 + #, c-format + msgid "%sPlease enter the IMAP password for %s on host %s" + msgstr "%s Escriba la contraseña IMAP para %s en el servidor %s" + +-#: ../camel/providers/imap4/camel-imap4-store.c:602 ++#: ../camel/providers/imap4/camel-imap4-store.c:597 + #, c-format + msgid "Cannot authenticate to IMAP server %s using %s" + msgstr "No se pudo autenticar frente al servidor IMAP %s usando %s" + +-#: ../camel/providers/imap4/camel-imap4-store.c:764 +-#: ../camel/providers/imap4/camel-imap4-store.c:1032 ++#: ../camel/providers/imap4/camel-imap4-store.c:759 ++#: ../camel/providers/imap4/camel-imap4-store.c:1027 + msgid "Cannot create IMAP folders in offline mode." + msgstr "No se pueden crear las carpetas IMAP en modo desconectado." + +-#: ../camel/providers/imap4/camel-imap4-store.c:803 ++#: ../camel/providers/imap4/camel-imap4-store.c:798 + #, c-format + msgid "Cannot get folder `%s' on IMAP server %s: Unknown" + msgstr "No se pudo obtener la carpeta «%s» en el servidor IMAP %s: Desconocido" + +-#: ../camel/providers/imap4/camel-imap4-store.c:884 ++#: ../camel/providers/imap4/camel-imap4-store.c:879 + #, c-format + msgid "Cannot get LIST information for `%s' on IMAP server %s: %s" +-msgstr "" +-"No se pudo obtener la información LIST para «%s» en el servidor IMAP %s: %s" ++msgstr "No se pudo obtener la información LIST para «%s» en el servidor IMAP %s: %s" + +-#: ../camel/providers/imap4/camel-imap4-store.c:886 +-#: ../camel/providers/imap4/camel-imap4-store.c:1559 ++#: ../camel/providers/imap4/camel-imap4-store.c:881 ++#: ../camel/providers/imap4/camel-imap4-store.c:1554 + msgid "Bad command" + msgstr "Comando erróneo" + +-#: ../camel/providers/imap4/camel-imap4-store.c:965 ++#: ../camel/providers/imap4/camel-imap4-store.c:960 + #, c-format + msgid "Cannot create folder `%s': Invalid mailbox name" + msgstr "No se pudo crear la carpeta «%s»: Nombre de buzón inválido" + +-#: ../camel/providers/imap4/camel-imap4-store.c:970 ++#: ../camel/providers/imap4/camel-imap4-store.c:965 + #, c-format + msgid "Cannot create folder `%s': Bad command" + msgstr "No se pudo crear la carpeta «%s»: Comando erróneo" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1076 ++#: ../camel/providers/imap4/camel-imap4-store.c:1071 + #, c-format + msgid "Cannot delete folder `%s': Special folder" + msgstr "No se pudo borrar la carpeta «%s»: Carpeta especial" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1083 ++#: ../camel/providers/imap4/camel-imap4-store.c:1078 + msgid "Cannot delete IMAP folders in offline mode." + msgstr "No se pueden borrar carpetas IMAP en modo desconectado." + +-#: ../camel/providers/imap4/camel-imap4-store.c:1142 ++#: ../camel/providers/imap4/camel-imap4-store.c:1137 + #, c-format + msgid "Cannot delete folder `%s': Invalid mailbox name" + msgstr "No se pudo borrar la carpeta: «%s»: Nombre de buzón inválido" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1147 ++#: ../camel/providers/imap4/camel-imap4-store.c:1142 + #, c-format + msgid "Cannot delete folder `%s': Bad command" + msgstr "No se pudo borrar la carpeta «%s»: Comando erróneo" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1167 ++#: ../camel/providers/imap4/camel-imap4-store.c:1162 + #, c-format + msgid "Cannot rename folder `%s' to `%s': Special folder" + msgstr "No se pudo renombrar la carpeta «%s» a «%s»: Carpeta especial" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1174 ++#: ../camel/providers/imap4/camel-imap4-store.c:1169 + msgid "Cannot rename IMAP folders in offline mode." + msgstr "No se puede renombrar las carpetas IMAP en modo desconectado." + +-#: ../camel/providers/imap4/camel-imap4-store.c:1205 ++#: ../camel/providers/imap4/camel-imap4-store.c:1200 + #, c-format + msgid "Cannot rename folder `%s' to `%s': Invalid mailbox name" + msgstr "No se pudo renombrar la carpeta «%s» a «%s»: Nombre de buzón inválido" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1210 ++#: ../camel/providers/imap4/camel-imap4-store.c:1205 + #, c-format + msgid "Cannot rename folder `%s' to `%s': Bad command" + msgstr "No se pudo renombrar la carpeta «%s» a «%s»: Comando erróneo" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1557 ++#: ../camel/providers/imap4/camel-imap4-store.c:1552 + #, c-format + msgid "Cannot get %s information for pattern `%s' on IMAP server %s: %s" +-msgstr "" +-"No se pudo obtener la información %s para el patrón «%s» en el servidor IMAP " +-"%s:%s" ++msgstr "No se pudo obtener la información %s para el patrón «%s» en el servidor IMAP %s:%s" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1597 ++#: ../camel/providers/imap4/camel-imap4-store.c:1592 + msgid "Cannot subscribe to IMAP folders in offline mode." + msgstr "No puede suscribirse a las carpetas IMAP en modo desconectado." + +-#: ../camel/providers/imap4/camel-imap4-store.c:1642 ++#: ../camel/providers/imap4/camel-imap4-store.c:1637 + #, c-format + msgid "Cannot subscribe to folder `%s': Invalid mailbox name" + msgstr "No pudo suscribirse a la carpeta «%s»: Nombre de buzón inválido" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1647 ++#: ../camel/providers/imap4/camel-imap4-store.c:1642 + #, c-format + msgid "Cannot subscribe to folder `%s': Bad command" + msgstr "No pudo suscribirse a la carpeta «%s»: Comando erróneo" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1669 ++#: ../camel/providers/imap4/camel-imap4-store.c:1664 + msgid "Cannot unsubscribe from IMAP folders in offline mode." + msgstr "No puede desuscribirse de las carpetas IMAP en modo desconectado." + +-#: ../camel/providers/imap4/camel-imap4-store.c:1714 ++#: ../camel/providers/imap4/camel-imap4-store.c:1709 + #, c-format + msgid "Cannot unsubscribe from folder `%s': Invalid mailbox name" + msgstr "No pudo desuscribirse de la carpeta «%s»: Nombre de buzón inválido" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1719 ++#: ../camel/providers/imap4/camel-imap4-store.c:1714 + #, c-format + msgid "Cannot unsubscribe from folder `%s': Bad command" + msgstr "No pudo desuscribirse de la carpeta «%s»: Comando erróneo" +@@ -3477,17 +3273,8 @@ msgid "IMAP+" + msgstr "IMAP+" + + #: ../camel/providers/imapp/camel-imapp-provider.c:50 +-msgid "" +-"Experimental IMAP 4(.1) client\n" +-"This is untested and unsupported code, you want to use plain imap instead.\n" +-"\n" +-" !!! DO NOT USE THIS FOR PRODUCTION EMAIL !!!\n" +-msgstr "" +-"Cliente experimental IMAP 4(.1) \n" +-"Este código no está probado y no está soportado, quizá desee usar imap " +-"simple en su lugar.\n" +-"\n" +-" !!! NO USAR ESTO PARA CORREO EN PRODUCCIÓN !!!\n" ++msgid "Experimental IMAP 4(.1) client\nThis is untested and unsupported code, you want to use plain imap instead.\n\n !!! DO NOT USE THIS FOR PRODUCTION EMAIL !!!\n" ++msgstr "Cliente experimental IMAP 4(.1) \nEste código no está probado y no está soportado, quizá desee usar imap simple en su lugar.\n\n !!! NO USAR ESTO PARA CORREO EN PRODUCCIÓN !!!\n" + + #: ../camel/providers/imapp/camel-imapp-store.c:251 + #, c-format +@@ -3539,12 +3326,8 @@ msgid "Local delivery" + msgstr "Reparto local" + + #: ../camel/providers/local/camel-local-provider.c:73 +-msgid "" +-"For retrieving (moving) local mail from standard mbox-formatted spools into " +-"folders managed by Evolution." +-msgstr "" +-"Para obtener (moviendo) el correo local de colas de correo mbox estándar a " +-"carpetas gestionadas por Evolution." ++msgid "For retrieving (moving) local mail from standard mbox-formatted spools into folders managed by Evolution." ++msgstr "Para obtener (moviendo) el correo local de colas de correo mbox estándar a carpetas gestionadas por Evolution." + + #: ../camel/providers/local/camel-local-provider.c:87 + #: ../camel/providers/local/camel-local-provider.c:106 +@@ -3568,13 +3351,8 @@ msgid "Standard Unix mbox spool or direc + msgstr "Cola de correo Mbox estándar de Unix o directorio" + + #: ../camel/providers/local/camel-local-provider.c:115 +-msgid "" +-"For reading and storing local mail in external standard mbox spool files.\n" +-"May also be used to read a tree of Elm, Pine, or Mutt style folders." +-msgstr "" +-"Para leer y guardar el correo local en directorios externos estándar mbox.\n" +-"También puede ser usado para leer un árbol del estilo de carpetas de Elm, " +-"Pine o Mutt." ++msgid "For reading and storing local mail in external standard mbox spool files.\nMay also be used to read a tree of Elm, Pine, or Mutt style folders." ++msgstr "Para leer y guardar el correo local en directorios externos estándar mbox.\nTambién puede ser usado para leer un árbol del estilo de carpetas de Elm, Pine o Mutt." + + #: ../camel/providers/local/camel-local-store.c:156 + #: ../camel/providers/local/camel-local-store.c:267 +@@ -3662,12 +3440,8 @@ msgstr "No se pudo añadir el mensaje a + #: ../camel/providers/local/camel-mh-folder.c:213 + #: ../camel/providers/local/camel-mh-folder.c:222 + #, c-format +-msgid "" +-"Cannot get message: %s from folder %s\n" +-" %s" +-msgstr "" +-"No se pudo obtener el mensaje; %s de la carpeta %s\n" +-" %s" ++msgid "Cannot get message: %s from folder %s\n %s" ++msgstr "No se pudo obtener el mensaje; %s de la carpeta %s\n %s" + + # + #: ../camel/providers/local/camel-maildir-folder.c:268 +@@ -3784,12 +3558,8 @@ msgstr "No se pudo obtener la carpeta « + #: ../camel/providers/local/camel-mbox-store.c:237 + #: ../camel/providers/local/camel-mbox-store.c:260 + #, c-format +-msgid "" +-"Could not delete folder `%s':\n" +-"%s" +-msgstr "" +-"No se pudo borrar la carpeta «%s»:\n" +-"%s" ++msgid "Could not delete folder `%s':\n%s" ++msgstr "No se pudo borrar la carpeta «%s»:\n%s" + + #: ../camel/providers/local/camel-mbox-store.c:245 + #, c-format +@@ -3945,12 +3715,8 @@ msgstr "La carpeta «%s/%s» no existe." + + #: ../camel/providers/local/camel-spool-store.c:173 + #, c-format +-msgid "" +-"Could not open folder `%s':\n" +-"%s" +-msgstr "" +-"No se pudo abrir la carpeta «%s»:\n" +-"%s" ++msgid "Could not open folder `%s':\n%s" ++msgstr "No se pudo abrir la carpeta «%s»:\n%s" + + #: ../camel/providers/local/camel-spool-store.c:177 + #, c-format +@@ -3959,12 +3725,8 @@ msgstr "La carpeta «%s» no existe." + + #: ../camel/providers/local/camel-spool-store.c:182 + #, c-format +-msgid "" +-"Could not create folder `%s':\n" +-"%s" +-msgstr "" +-"No se pudo crear la carpeta «%s»:\n" +-"%s" ++msgid "Could not create folder `%s':\n%s" ++msgstr "No se pudo crear la carpeta «%s»:\n%s" + + #: ../camel/providers/local/camel-spool-store.c:190 + #, c-format +@@ -4009,12 +3771,8 @@ msgstr "No se pudo sincronizar la carpet + #: ../camel/providers/local/camel-spool-summary.c:263 + #: ../camel/providers/local/camel-spool-summary.c:276 + #, c-format +-msgid "" +-"Could not sync spool folder %s: %s\n" +-"Folder may be corrupt, copy saved in `%s'" +-msgstr "" +-"No se pudo sincronizar la carpeta de correo %s: %s\n" +-"La carpeta puede estar corrupta, copia guardada en «%s»" ++msgid "Could not sync spool folder %s: %s\nFolder may be corrupt, copy saved in `%s'" ++msgstr "No se pudo sincronizar la carpeta de correo %s: %s\nLa carpeta puede estar corrupta, copia guardada en «%s»" + + #: ../camel/providers/nntp/camel-nntp-folder.c:175 + #: ../camel/providers/nntp/camel-nntp-folder.c:207 +@@ -4039,10 +3797,8 @@ msgid "You cannot copy messages from a N + msgstr "No puede copiar mensajes desde una carpeta NNTP." + + #: ../camel/providers/nntp/camel-nntp-provider.c:44 +-msgid "" +-"Show folders in short notation (e.g. c.o.linux rather than comp.os.linux)" +-msgstr "" +-"Mostrar carpetas en notación corta (ej: c.o.linux en vez de comp.os.linux)" ++msgid "Show folders in short notation (e.g. c.o.linux rather than comp.os.linux)" ++msgstr "Mostrar carpetas en notación corta (ej: c.o.linux en vez de comp.os.linux)" + + #: ../camel/providers/nntp/camel-nntp-provider.c:46 + msgid "In the subscription dialog, show relative folder names" +@@ -4057,12 +3813,8 @@ msgid "This is a provider for reading fr + msgstr "Este es un proveedor para leer y enviar noticias a grupos de USENET." + + #: ../camel/providers/nntp/camel-nntp-provider.c:74 +-msgid "" +-"This option will authenticate with the NNTP server using a plaintext " +-"password." +-msgstr "" +-"Esta opción es para autenticarse con el servidor NNTP usando una contraseña " +-"de texto." ++msgid "This option will authenticate with the NNTP server using a plaintext password." ++msgstr "Esta opción es para autenticarse con el servidor NNTP usando una contraseña de texto." + + #: ../camel/providers/nntp/camel-nntp-store.c:219 + #, c-format +@@ -4081,40 +3833,20 @@ msgstr "Noticias USENET vía %s" + + #: ../camel/providers/nntp/camel-nntp-store.c:798 + #, c-format +-msgid "" +-"Error retrieving newsgroups:\n" +-"\n" +-"%s" +-msgstr "" +-"Error al obtener los grupos de noticias:\n" +-"\n" +-"%s" ++msgid "Error retrieving newsgroups:\n\n%s" ++msgstr "Error al obtener los grupos de noticias:\n\n%s" + + #: ../camel/providers/nntp/camel-nntp-store.c:892 +-msgid "" +-"You cannot subscribe to this newsgroup:\n" +-"\n" +-"No such newsgroup. The selected item is a probably a parent folder." +-msgstr "" +-"No puede suscribirse a este grupo de noticias:\n" +-"\n" +-"No existe dicho grupo. El elemento seleccionado probablemente es una carpeta " +-"madre." ++msgid "You cannot subscribe to this newsgroup:\n\nNo such newsgroup. The selected item is a probably a parent folder." ++msgstr "No puede suscribirse a este grupo de noticias:\n\nNo existe dicho grupo. El elemento seleccionado probablemente es una carpeta madre." + + #: ../camel/providers/nntp/camel-nntp-store.c:924 +-msgid "" +-"You cannot unsubscribe to this newsgroup:\n" +-"\n" +-"newsgroup does not exist!" +-msgstr "" +-"No puede suscribirse a este grupo de noticias:\n" +-"\n" +-"el grupo de noticias no existe." ++msgid "You cannot unsubscribe to this newsgroup:\n\nnewsgroup does not exist!" ++msgstr "No puede suscribirse a este grupo de noticias:\n\nel grupo de noticias no existe." + + #: ../camel/providers/nntp/camel-nntp-store.c:949 + msgid "You cannot create a folder in a News store: subscribe instead." +-msgstr "" +-"No puede crear una carpeta en un almacén de noticias: suscríbase en su lugar." ++msgstr "No puede crear una carpeta en un almacén de noticias: suscríbase en su lugar." + + #: ../camel/providers/nntp/camel-nntp-store.c:957 + msgid "You cannot rename a folder in a News store." +@@ -4122,9 +3854,7 @@ msgstr "No se puede renombrar una carpet + + #: ../camel/providers/nntp/camel-nntp-store.c:965 + msgid "You cannot remove a folder in a News store: unsubscribe instead." +-msgstr "" +-"No puede eliminar una carpeta en un almacén de noticias: desuscríbase en su " +-"lugar." ++msgstr "No puede eliminar una carpeta en un almacén de noticias: desuscríbase en su lugar." + + #: ../camel/providers/nntp/camel-nntp-store.c:1146 + msgid "Authentication requested but no username provided" +@@ -4230,29 +3960,19 @@ msgid "For connecting to and downloading + msgstr "Para conectarse y descargar correo de servidores POP." + + #: ../camel/providers/pop3/camel-pop3-provider.c:74 +-msgid "" +-"This option will connect to the POP server using a plaintext password. This " +-"is the only option supported by many POP servers." +-msgstr "" +-"Esta opción es para conectar con servidores POP usando una contraseña en " +-"texto plano. Esta es la única opción implementada por muchos servidores POP." ++msgid "This option will connect to the POP server using a plaintext password. This is the only option supported by many POP servers." ++msgstr "Esta opción es para conectar con servidores POP usando una contraseña en texto plano. Esta es la única opción implementada por muchos servidores POP." + + #: ../camel/providers/pop3/camel-pop3-provider.c:84 +-msgid "" +-"This option will connect to the POP server using an encrypted password via " +-"the APOP protocol. This may not work for all users even on servers that " +-"claim to support it." +-msgstr "" +-"Esta opción es para conectar con servidores POP usando una contraseña " +-"cifrada por medio del protocolo APOP. Esto no funcionará para todos los " +-"usuarios ni siquiera en servidores que dicen implementarlo." ++msgid "This option will connect to the POP server using an encrypted password via the APOP protocol. This may not work for all users even on servers that claim to support it." ++msgstr "Esta opción es para conectar con servidores POP usando una contraseña cifrada por medio del protocolo APOP. Esto no funcionará para todos los usuarios ni siquiera en servidores que dicen implementarlo." + + #: ../camel/providers/pop3/camel-pop3-store.c:202 + #, c-format + msgid "Failed to read a valid greeting from POP server %s" + msgstr "Se produjo un fallo al leer un saludo válido desde el servidor POP %s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:216 ++#: ../camel/providers/pop3/camel-pop3-store.c:219 + #: ../camel/providers/pop3/camel-pop3-store.c:233 + #: ../camel/providers/pop3/camel-pop3-store.c:243 + #: ../camel/providers/pop3/camel-pop3-store.c:249 +@@ -4260,66 +3980,53 @@ msgstr "Se produjo un fallo al leer un s + msgid "Failed to connect to POP server %s in secure mode: %s" + msgstr "Se produjo un fallo al conectar al servidor POP %s en modo seguro: %s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:217 ++#: ../camel/providers/pop3/camel-pop3-store.c:220 + msgid "STLS not supported" + msgstr "No se soporta STLS" + +-#: ../camel/providers/pop3/camel-pop3-store.c:361 ++#: ../camel/providers/pop3/camel-pop3-store.c:356 + #, c-format + msgid "Could not connect to POP server %s" + msgstr "No se pudo conectar con el servidor POP %s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:402 +-#: ../camel/providers/pop3/camel-pop3-store.c:516 ++#: ../camel/providers/pop3/camel-pop3-store.c:397 ++#: ../camel/providers/pop3/camel-pop3-store.c:511 + #, c-format +-msgid "" +-"Unable to connect to POP server %s: No support for requested authentication " +-"mechanism." +-msgstr "" +-"No se pudo conectar con el servidor POP %s: \n" +-"No hay soporte para el sistema de autenticación pedido." ++msgid "Unable to connect to POP server %s: No support for requested authentication mechanism." ++msgstr "No se pudo conectar con el servidor POP %s: \nNo hay soporte para el sistema de autenticación pedido." + +-#: ../camel/providers/pop3/camel-pop3-store.c:418 ++#: ../camel/providers/pop3/camel-pop3-store.c:413 + #, c-format + msgid "SASL `%s' Login failed for POP server %s: %s" + msgstr "SASL «%s» Falló el inicio de sesión para servidor POP %s: %s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:430 ++#: ../camel/providers/pop3/camel-pop3-store.c:425 + #, c-format + msgid "Cannot login to POP server %s: SASL Protocol error" +-msgstr "" +-"No se pudo iniciar sesión en el servidor POP %s: Error del protocolo SASL" ++msgstr "No se pudo iniciar sesión en el servidor POP %s: Error del protocolo SASL" + +-#: ../camel/providers/pop3/camel-pop3-store.c:449 ++#: ../camel/providers/pop3/camel-pop3-store.c:444 + #, c-format + msgid "Failed to authenticate on POP server %s: %s" + msgstr "No se pudo autenticarme en el servidor POP %s: %s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:475 ++#: ../camel/providers/pop3/camel-pop3-store.c:470 + #, c-format + msgid "%sPlease enter the POP password for %s on host %s" + msgstr "%s Escriba la contraseña POP para %s en el servidor %s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:530 +-#: ../camel/providers/pop3/camel-pop3-store.c:543 ++#: ../camel/providers/pop3/camel-pop3-store.c:525 ++#: ../camel/providers/pop3/camel-pop3-store.c:538 + #, c-format +-msgid "" +-"Unable to connect to POP server %s.\n" +-"Error sending password: %s" +-msgstr "" +-"No se pudo conectar con el servidor POP %s.\n" +-"Error al enviar la contraseña: %s" ++msgid "Unable to connect to POP server %s.\nError sending password: %s" ++msgstr "No se pudo conectar con el servidor POP %s.\nError al enviar la contraseña: %s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:537 ++#: ../camel/providers/pop3/camel-pop3-store.c:532 + #, c-format +-msgid "" +-"Unable to connect to POP server %s.\n" +-"Error sending username: %s" +-msgstr "" +-"No se pudo conectar con el servidor POP %s.\n" +-"Error al enviar nombre de usuario: %s" ++msgid "Unable to connect to POP server %s.\nError sending username: %s" ++msgstr "No se pudo conectar con el servidor POP %s.\nError al enviar nombre de usuario: %s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:643 ++#: ../camel/providers/pop3/camel-pop3-store.c:638 + #, c-format + msgid "No such folder `%s'." + msgstr "No existe la carpeta «%s»." +@@ -4329,11 +4036,8 @@ msgid "Sendmail" + msgstr "Sendmail" + + #: ../camel/providers/sendmail/camel-sendmail-provider.c:39 +-msgid "" +-"For delivering mail by passing it to the \"sendmail\" program on the local " +-"system." +-msgstr "" +-"Para enviar correo pasándoselo al programa «sendmail» en el sistema local." ++msgid "For delivering mail by passing it to the \"sendmail\" program on the local system." ++msgstr "Para enviar correo pasándoselo al programa «sendmail» en el sistema local." + + #: ../camel/providers/sendmail/camel-sendmail-transport.c:114 + msgid "Could not parse recipient list" +@@ -4442,8 +4146,7 @@ msgstr "El usuario no es local; pruebe c + + #: ../camel/providers/smtp/camel-smtp-transport.c:192 + msgid "Requested action not taken: insufficient system storage" +-msgstr "" +-"Acción solicitada no realizada: la capacidad del sistema es insuficiente" ++msgstr "Acción solicitada no realizada: la capacidad del sistema es insuficiente" + + #: ../camel/providers/smtp/camel-smtp-transport.c:194 + msgid "Requested mail action aborted: exceeded storage allocation" +@@ -4497,115 +4200,108 @@ msgstr "El comando STARTTLS ha fallado: + msgid "STARTTLS command failed" + msgstr "El comando STARTTLS ha fallado" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:488 ++#: ../camel/providers/smtp/camel-smtp-transport.c:483 + #, c-format + msgid "SMTP server %s does not support requested authentication type %s." +-msgstr "" +-"El servidor SMTP %s no implementa el método de autenticación requerido %s." ++msgstr "El servidor SMTP %s no implementa el método de autenticación requerido %s." + +-#: ../camel/providers/smtp/camel-smtp-transport.c:526 ++#: ../camel/providers/smtp/camel-smtp-transport.c:521 + #, c-format + msgid "%sPlease enter the SMTP password for %s on host %s" + msgstr "%s Escriba la contraseña SMTP para %s en el servidor %s" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:545 ++#: ../camel/providers/smtp/camel-smtp-transport.c:540 + #, c-format +-msgid "" +-"Unable to authenticate to SMTP server.\n" +-"%s\n" +-"\n" +-msgstr "" +-"No se pudo autenticarme en el servidor SMTP.\n" +-"%s\n" +-"\n" ++msgid "Unable to authenticate to SMTP server.\n%s\n\n" ++msgstr "No se pudo autenticarme en el servidor SMTP.\n%s\n\n" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:669 ++#: ../camel/providers/smtp/camel-smtp-transport.c:664 + #, c-format + msgid "SMTP server %s" + msgstr "Servidor SMTP %s" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:671 ++#: ../camel/providers/smtp/camel-smtp-transport.c:666 + #, c-format + msgid "SMTP mail delivery via %s" + msgstr "Envío de correo SMTP vía %s" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:689 ++#: ../camel/providers/smtp/camel-smtp-transport.c:684 + msgid "Cannot send message: service not connected." + msgstr "No se pudo enviar el mensaje: servicio no conectado." + +-#: ../camel/providers/smtp/camel-smtp-transport.c:695 ++#: ../camel/providers/smtp/camel-smtp-transport.c:690 + msgid "Cannot send message: sender address not valid." + msgstr "No se pudo enviar el mensaje: dirección del remitente no válida." + +-#: ../camel/providers/smtp/camel-smtp-transport.c:699 ++#: ../camel/providers/smtp/camel-smtp-transport.c:694 + msgid "Sending message" + msgstr "Enviando mensaje" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:714 ++#: ../camel/providers/smtp/camel-smtp-transport.c:709 + msgid "Cannot send message: no recipients defined." + msgstr "No se pudo enviar el mensaje: no hay destinatarios." + +-#: ../camel/providers/smtp/camel-smtp-transport.c:725 ++#: ../camel/providers/smtp/camel-smtp-transport.c:720 + msgid "Cannot send message: one or more invalid recipients" + msgstr "No se pudo enviar el mensaje: uno o más destinatarios inválidos" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:894 ++#: ../camel/providers/smtp/camel-smtp-transport.c:889 + msgid "SMTP Greeting" + msgstr "Saludo del SMTP" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:920 ++#: ../camel/providers/smtp/camel-smtp-transport.c:915 + #, c-format + msgid "HELO command failed: %s" + msgstr "El comando HELO ha fallado: %s" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:937 ++#: ../camel/providers/smtp/camel-smtp-transport.c:932 + msgid "HELO command failed" + msgstr "El comando HELO ha fallado" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1003 ++#: ../camel/providers/smtp/camel-smtp-transport.c:998 + msgid "SMTP Authentication" + msgstr "Autenticación SMTP" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1009 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1004 + msgid "Error creating SASL authentication object." + msgstr "Error al crear el objeto de autenticación SASL." + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1026 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1037 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1021 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1032 + #, c-format + msgid "AUTH command failed: %s" + msgstr "El comando AUTH ha fallado: %s" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1043 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1038 + msgid "AUTH command failed" + msgstr "El comando AUTH ha fallado" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1105 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1100 + msgid "Bad authentication response from server.\n" + msgstr "Respuesta de autenticación errónea desde el servidor.\n" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1130 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1125 + #, c-format + msgid "MAIL FROM command failed: %s: mail not sent" + msgstr "El comando MAIL FROM ha fallado: %s: correo no enviado" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1147 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1142 + msgid "MAIL FROM command failed" + msgstr "El comando MAIL FROM ha fallado" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1171 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1166 + #, c-format + msgid "RCPT TO command failed: %s: mail not sent" + msgstr "El comando RCPT TO ha fallado: %s: correo no enviado" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1190 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1185 + #, c-format + msgid "RCPT TO <%s> failed" + msgstr "Falló RCPT TO <%s>" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1229 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1287 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1306 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1224 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1282 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1301 + #, c-format + msgid "DATA command failed: %s: mail not sent" + msgstr "El comando DATA ha fallado: %s: correo no enviado" +@@ -4613,107 +4309,107 @@ msgstr "El comando DATA ha fallado: %s: + #. we should have gotten instructions on how to use the DATA command: + #. * 354 Enter mail, end with "." on a line by itself + #. +-#: ../camel/providers/smtp/camel-smtp-transport.c:1246 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1322 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1241 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1317 + msgid "DATA command failed" + msgstr "El comando DATA ha fallado" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1345 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1340 + #, c-format + msgid "RSET command failed: %s" + msgstr "El comando RSET ha fallado: %s" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1361 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1356 + msgid "RSET command failed" + msgstr "El comando RSET ha fallado" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1384 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1379 + #, c-format + msgid "QUIT command failed: %s" + msgstr "El comando QUIT ha fallado: %s" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1398 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1393 + msgid "QUIT command failed" + msgstr "El comando QUIT ha fallado" + +-#: ../libedataserver/e-categories.c:242 ++#: ../libedataserver/e-categories.c:248 + msgid "Business" + msgstr "Trabajo" + +-#: ../libedataserver/e-categories.c:243 ++#: ../libedataserver/e-categories.c:249 + msgid "Competition" + msgstr "Competencia" + +-#: ../libedataserver/e-categories.c:244 ++#: ../libedataserver/e-categories.c:250 + msgid "Favorites" + msgstr "Favoritos" + +-#: ../libedataserver/e-categories.c:245 ++#: ../libedataserver/e-categories.c:251 + msgid "Gifts" + msgstr "Regalos" + +-#: ../libedataserver/e-categories.c:246 ++#: ../libedataserver/e-categories.c:252 + msgid "Goals/Objectives" + msgstr "Metas/Objetivos" + +-#: ../libedataserver/e-categories.c:247 ++#: ../libedataserver/e-categories.c:253 + msgid "Holiday" + msgstr "Fiesta" + +-#: ../libedataserver/e-categories.c:248 ++#: ../libedataserver/e-categories.c:254 + msgid "Holiday Cards" + msgstr "Tarjetas de vacaciones" + + #. important people (e.g. new business partners) you should pay attention to/observe +-#: ../libedataserver/e-categories.c:250 ++#: ../libedataserver/e-categories.c:256 + msgid "Hot Contacts" + msgstr "Contactos importantes" + +-#: ../libedataserver/e-categories.c:251 ++#: ../libedataserver/e-categories.c:257 + msgid "Ideas" + msgstr "Ideas" + +-#: ../libedataserver/e-categories.c:252 ++#: ../libedataserver/e-categories.c:258 + msgid "International" + msgstr "Internacional" + +-#: ../libedataserver/e-categories.c:253 ++#: ../libedataserver/e-categories.c:259 + msgid "Key Customer" + msgstr "Cliente clave" + +-#: ../libedataserver/e-categories.c:254 ++#: ../libedataserver/e-categories.c:260 + msgid "Miscellaneous" + msgstr "Miscelánea" + +-#: ../libedataserver/e-categories.c:255 ++#: ../libedataserver/e-categories.c:261 + msgid "Personal" + msgstr "Privado" + +-#: ../libedataserver/e-categories.c:256 ++#: ../libedataserver/e-categories.c:262 + msgid "Phone Calls" + msgstr "Llamadas de teléfono" + +-#: ../libedataserver/e-categories.c:257 ++#: ../libedataserver/e-categories.c:263 + msgid "Status" + msgstr "Estado" + +-#: ../libedataserver/e-categories.c:258 ++#: ../libedataserver/e-categories.c:264 + msgid "Strategies" + msgstr "Estrategias" + +-#: ../libedataserver/e-categories.c:259 ++#: ../libedataserver/e-categories.c:265 + msgid "Suppliers" + msgstr "Proveedores" + +-#: ../libedataserver/e-categories.c:260 ++#: ../libedataserver/e-categories.c:266 + msgid "Time & Expenses" + msgstr "Tiempo y gastos" + +-#: ../libedataserver/e-categories.c:261 ++#: ../libedataserver/e-categories.c:267 + msgid "VIP" + msgstr "VIP" + +-#: ../libedataserver/e-categories.c:262 ++#: ../libedataserver/e-categories.c:268 + msgid "Waiting" + msgstr "Esperando" + +@@ -4721,7 +4417,7 @@ msgstr "Esperando" + #. in 12-hour format. + #. strftime format of a weekday, a date and a + #. time, in 12-hour format. +-#: ../libedataserver/e-time-utils.c:1319 ../libedataserver/e-time-utils.c:1562 ++#: ../libedataserver/e-time-utils.c:1319 ../libedataserver/e-time-utils.c:1566 + msgid "%a %m/%d/%Y %I:%M:%S %p" + msgstr "%a %d/%m/%Y %I:%M:%S %p" + +@@ -4729,7 +4425,7 @@ msgstr "%a %d/%m/%Y %I:%M:%S %p" + #. in 24-hour format. + #. strftime format of a weekday, a date and a + #. time, in 24-hour format. +-#: ../libedataserver/e-time-utils.c:1324 ../libedataserver/e-time-utils.c:1553 ++#: ../libedataserver/e-time-utils.c:1324 ../libedataserver/e-time-utils.c:1557 + msgid "%a %m/%d/%Y %H:%M:%S" + msgstr "%a %d/%m/%Y %H:%M:%S" + +@@ -4737,7 +4433,7 @@ msgstr "%a %d/%m/%Y %H:%M:%S" + #. in 12-hour format, without seconds. + #. strftime format of a weekday, a date and a + #. time, in 12-hour format, without seconds. +-#: ../libedataserver/e-time-utils.c:1329 ../libedataserver/e-time-utils.c:1558 ++#: ../libedataserver/e-time-utils.c:1329 ../libedataserver/e-time-utils.c:1562 + msgid "%a %m/%d/%Y %I:%M %p" + msgstr "%a %d/%m/%Y %I:%M %p" + +@@ -4745,7 +4441,7 @@ msgstr "%a %d/%m/%Y %I:%M %p" + #. in 24-hour format, without seconds. + #. strftime format of a weekday, a date and a + #. time, in 24-hour format, without seconds. +-#: ../libedataserver/e-time-utils.c:1334 ../libedataserver/e-time-utils.c:1549 ++#: ../libedataserver/e-time-utils.c:1334 ../libedataserver/e-time-utils.c:1553 + msgid "%a %m/%d/%Y %H:%M" + msgstr "%a %d/%m/%Y %H:%M" + +@@ -4763,8 +4459,8 @@ msgstr "%a %d/%m/%Y %H" + + #. strptime format of a weekday and a date. + #. strftime format of a weekday and a date. +-#: ../libedataserver/e-time-utils.c:1347 ../libedataserver/e-time-utils.c:1440 +-#: ../libedataserver/e-time-utils.c:1544 ++#: ../libedataserver/e-time-utils.c:1347 ../libedataserver/e-time-utils.c:1443 ++#: ../libedataserver/e-time-utils.c:1548 + msgid "%a %m/%d/%Y" + msgstr "%a %d/%m/%Y" + +@@ -4804,19 +4500,19 @@ msgstr "%d/%m/%Y %H" + + #. strptime format of a weekday and a date. + #. This is the preferred date format for the locale. +-#: ../libedataserver/e-time-utils.c:1382 ../libedataserver/e-time-utils.c:1443 ++#: ../libedataserver/e-time-utils.c:1382 ../libedataserver/e-time-utils.c:1446 + msgid "%m/%d/%Y" + msgstr "%d/%m/%Y" + + #. strptime format for a time of day, in 12-hour format. + #. strftime format of a time in 12-hour format. +-#: ../libedataserver/e-time-utils.c:1488 ../libedataserver/e-time-utils.c:1607 ++#: ../libedataserver/e-time-utils.c:1492 ../libedataserver/e-time-utils.c:1611 + msgid "%I:%M:%S %p" + msgstr "%I:%M:%S %p" + + #. strptime format for a time of day, in 24-hour format. + #. strftime format of a time in 24-hour format. +-#: ../libedataserver/e-time-utils.c:1492 ../libedataserver/e-time-utils.c:1599 ++#: ../libedataserver/e-time-utils.c:1496 ../libedataserver/e-time-utils.c:1603 + msgid "%H:%M:%S" + msgstr "%H:%M:%S" + +@@ -4824,19 +4520,19 @@ msgstr "%H:%M:%S" + #. in 12-hour format. + #. strftime format of a time in 12-hour format, + #. without seconds. +-#: ../libedataserver/e-time-utils.c:1497 ../libedataserver/e-time-utils.c:1604 ++#: ../libedataserver/e-time-utils.c:1501 ../libedataserver/e-time-utils.c:1608 + msgid "%I:%M %p" + msgstr "%I:%M %p" + + #. strptime format for time of day, without seconds 24-hour format. + #. strftime format of a time in 24-hour format, + #. without seconds. +-#: ../libedataserver/e-time-utils.c:1501 ../libedataserver/e-time-utils.c:1596 ++#: ../libedataserver/e-time-utils.c:1505 ../libedataserver/e-time-utils.c:1600 + msgid "%H:%M" + msgstr "%H:%M" + + #. strptime format for hour and AM/PM, 12-hour format. +-#: ../libedataserver/e-time-utils.c:1505 ++#: ../libedataserver/e-time-utils.c:1509 + msgid "%I %p" + msgstr "%I %p" + +@@ -4844,17 +4540,14 @@ msgstr "%I %p" + msgid "Accessing LDAP Server anonymously" + msgstr "Acceder a un servidor LDAP anónimamente" + +-#: ../libedataserverui/e-book-auth-util.c:185 ++#: ../libedataserverui/e-book-auth-util.c:191 + msgid "Failed to authenticate.\n" + msgstr "Falló al autenticarme.\n" + + #: ../libedataserverui/e-categories-dialog.c:265 + #, c-format +-msgid "" +-"There is already a category '%s' in the configuration. Please use another " +-"name" +-msgstr "" +-"Ya hay una categoría «%s» en la configuración. Por favor, use otro nombre" ++msgid "There is already a category '%s' in the configuration. Please use another name" ++msgstr "Ya hay una categoría «%s» en la configuración. Por favor, use otro nombre" + + #: ../libedataserverui/e-categories-dialog.c:435 + msgid "Category" +@@ -4896,15 +4589,15 @@ msgstr "_Editar" + msgid "categories" + msgstr "categorías" + +-#: ../libedataserverui/e-name-selector-dialog.c:260 ++#: ../libedataserverui/e-name-selector-dialog.c:284 + msgid "Select Contacts from Address Book" + msgstr "Selecciona contactos de la libreta de direcciones" + +-#: ../libedataserverui/e-name-selector-dialog.c:554 ++#: ../libedataserverui/e-name-selector-dialog.c:578 + msgid "_Add" + msgstr "_Añadir" + +-#: ../libedataserverui/e-name-selector-dialog.c:579 ++#: ../libedataserverui/e-name-selector-dialog.c:603 + msgid "_Remove" + msgstr "_Quitar" + +@@ -4937,7 +4630,7 @@ msgid "C_ategory:" + msgstr "_Categoría:" + + #: ../libedataserverui/e-name-selector-dialog.glade.h:8 +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:258 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:261 + msgid "Contacts" + msgstr "Contactos" + +@@ -4950,13 +4643,13 @@ msgid "_Search:" + msgstr "_Buscar:" + + #. To Translators: This would be similiar to "Expand MyList Inline" where MyList is a Contact List +-#: ../libedataserverui/e-name-selector-entry.c:1947 ++#: ../libedataserverui/e-name-selector-entry.c:1997 + #, c-format + msgid "E_xpand %s Inline" + msgstr "E_xpandir %s en línea" + + #. Edit Contact item +-#: ../libedataserverui/e-name-selector-entry.c:1963 ++#: ../libedataserverui/e-name-selector-entry.c:2013 + #, c-format + msgid "_Edit %s" + msgstr "_Editar %s" +@@ -4966,11 +4659,21 @@ msgstr "_Editar %s" + msgid "_Delete %s" + msgstr "_Borrar %s" + +-#: ../libedataserverui/e-passwords.c:471 ++#: ../libedataserverui/e-passwords.c:472 ++#, ++msgid "_Remember this passphrase" ++msgstr "_Recordar esta contraseña codificada" ++ ++#: ../libedataserverui/e-passwords.c:473 ++#, ++msgid "_Remember this passphrase for the remainder of this session" ++msgstr "_Recordar esta contraseña codificada como recordatorio de esta sesión" ++ ++#: ../libedataserverui/e-passwords.c:476 + msgid "_Remember this password" + msgstr "_Recuerda esta contraseña" + +-#: ../libedataserverui/e-passwords.c:472 ++#: ../libedataserverui/e-passwords.c:477 + msgid "_Remember this password for the remainder of this session" + msgstr "_Recordar esta contraseña durante el resto de esta sesión" + +@@ -4983,14 +4686,14 @@ msgstr "Seleccione destino" + msgid "_Destination" + msgstr "_Destino" + +-#: ../servers/exchange/lib/e2k-autoconfig.c:1636 +-#: ../servers/exchange/storage/exchange-account.c:936 ++#: ../servers/exchange/lib/e2k-autoconfig.c:1647 ++#: ../servers/exchange/storage/exchange-account.c:932 + #, c-format + msgid "Enter password for %s" + msgstr "Introduzca su contraseña para %s" + +-#: ../servers/exchange/lib/e2k-autoconfig.c:1637 +-#: ../servers/exchange/storage/exchange-account.c:941 ++#: ../servers/exchange/lib/e2k-autoconfig.c:1648 ++#: ../servers/exchange/storage/exchange-account.c:937 + msgid "Enter password" + msgstr "Introduzca la contraseña" + +@@ -5036,14 +4739,6 @@ msgstr "Ninguno" + msgid "Custom" + msgstr "Personalizado" + +-#: ../servers/exchange/lib/e2k-user-dialog.c:144 +-msgid "Select User" +-msgstr "Seleccione usuario" +- +-#: ../servers/exchange/lib/e2k-user-dialog.c:182 +-msgid "Addressbook..." +-msgstr "Libreta de direcciones..." +- + #: ../servers/exchange/storage/e-storage.c:556 + msgid "Generic error" + msgstr "Error genérico" +@@ -5102,70 +4797,70 @@ msgstr "Esta operación no se puede real + + #. i18n: This is the title of an "other user's folders" + #. hierarchy. Eg, "John Doe's Folders". +-#: ../servers/exchange/storage/exchange-account.c:639 ++#: ../servers/exchange/storage/exchange-account.c:635 + #, c-format + msgid "%s's Folders" + msgstr "Carpetas de %s" + +-#: ../servers/exchange/storage/exchange-account.c:1242 ++#: ../servers/exchange/storage/exchange-account.c:1238 + msgid "Personal Folders" + msgstr "Carpetas pesonales" + +-#: ../servers/exchange/storage/exchange-account.c:1256 ++#: ../servers/exchange/storage/exchange-account.c:1252 + msgid "Favorite Public Folders" + msgstr "Carpetas públicas favoritas" + + #. i18n: Outlookism +-#: ../servers/exchange/storage/exchange-account.c:1273 ++#: ../servers/exchange/storage/exchange-account.c:1269 + msgid "All Public Folders" + msgstr "Todas las carpetas públicas" + + #. i18n: Outlookism +-#: ../servers/exchange/storage/exchange-account.c:1287 ++#: ../servers/exchange/storage/exchange-account.c:1283 + msgid "Global Address List" + msgstr "Lista de direcciones global" + +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:259 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:262 + msgid "Deleted Items" + msgstr "Elementos borrados" + +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:260 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:263 + msgid "Drafts" + msgstr "Borradores" + +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:262 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:265 + msgid "Journal" + msgstr "Diario" + +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:263 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:266 + msgid "Notes" + msgstr "Notas" + +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:264 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:267 + msgid "Outbox" + msgstr "Bandeja de salida" + +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:265 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:268 + msgid "Sent Items" + msgstr "Elementos enviados" + +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:266 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:269 + msgid "Tasks" + msgstr "Tareas" + +-#: ../servers/groupwise/e-gw-connection.c:164 ++#: ../servers/groupwise/e-gw-connection.c:167 + msgid "Invalid connection" + msgstr "Conexión inválida" + +-#: ../servers/groupwise/e-gw-connection.c:168 ++#: ../servers/groupwise/e-gw-connection.c:171 + msgid "Invalid response from server" + msgstr "Respuesta inválida del servidor" + +-#: ../servers/groupwise/e-gw-connection.c:170 ++#: ../servers/groupwise/e-gw-connection.c:173 + msgid "No response from the server" + msgstr "Sin respuesta del servidor" + +-#: ../servers/groupwise/e-gw-connection.c:176 ++#: ../servers/groupwise/e-gw-connection.c:179 + msgid "Bad parameter" + msgstr "Parámetro erróneo" + +@@ -5189,21 +4884,19 @@ msgstr "Servicio de registro de Evolutio + #: ../src/server.c:106 + #, c-format + msgid "Multiple segmentation faults occurred; can't display error dialog\n" +-msgstr "" +-"Han ocurrido fallos de segmentación múltiples; no se puede mostrar el " +-"diálogo de error\n" ++msgstr "Han ocurrido fallos de segmentación múltiples; no se puede mostrar el diálogo de error\n" + ++#~ msgid "Select User" ++#~ msgstr "Seleccione usuario" ++#~ msgid "Addressbook..." ++#~ msgstr "Libreta de direcciones..." + #~ msgid "Failed to create pipe to '%s': %s" + #~ msgstr "Falló al crear pipe a «%s»: %s" +- + #~ msgid "Fetching summary information for new messages" + #~ msgstr "Obteniendo información de los nuevos mensajes" +- + #~ msgid "Cannot get folder info in offline mode." + #~ msgstr "No se puede obtener la información de carpeta en modo desconectado." +- + #~ msgid "Cannot delete GroupWise folders in offline mode." + #~ msgstr "No se pueden borrar las carpetas GroupWise en modo desconectado." +- + #~ msgid "Cannot rename GroupWise folders in offline mode." + #~ msgstr "No se pueden renombrar las carpetas GroupWise en modo desconectado." +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: et.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: et.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: eu.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: eu.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: fa.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: fa.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: fi.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: fi.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: fr.gmo +diff -up /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/fr.po po/fr.po +--- /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/fr.po 2005-12-12 00:00:28.000000000 +0100 ++++ po/fr.po 2006-05-19 14:49:36.000000000 +0200 +@@ -14,71 +14,71 @@ msgid "" + msgstr "" + "Project-Id-Version: evolution-data-server 1.4.2.1\n" + "Report-Msgid-Bugs-To: \n" +-"POT-Creation-Date: 2005-12-12 01:59+0100\n" +-"PO-Revision-Date: 2005-12-12 01:51+0100\n" +-"Last-Translator: Christophe Merlet (RedFox) \n" +-"Language-Team: GNOME French Team \n" ++"POT-Creation-Date: 2006-05-04 06:53+0000\n" ++"PO-Revision-Date: 2006-05-18 16:37\n" ++"Last-Translator: Novell Language \n" ++"Language-Team: Novell Language \n" + "MIME-Version: 1.0\n" + "Content-Type: text/plain; charset=UTF-8\n" + "Content-Transfer-Encoding: 8bit\n" + +-#: ../addressbook/backends/file/e-book-backend-file.c:536 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2213 ++#: ../addressbook/backends/file/e-book-backend-file.c:538 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2225 + #: ../addressbook/backends/vcf/e-book-backend-vcf.c:484 + msgid "Loading..." + msgstr "Chargement..." + +-#: ../addressbook/backends/file/e-book-backend-file.c:538 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2172 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2192 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2211 +-#: ../addressbook/backends/ldap/e-book-backend-ldap.c:3739 ++#: ../addressbook/backends/file/e-book-backend-file.c:540 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2184 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2204 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2223 ++#: ../addressbook/backends/ldap/e-book-backend-ldap.c:4038 + #: ../addressbook/backends/vcf/e-book-backend-vcf.c:486 + msgid "Searching..." + msgstr "Recherche..." + +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2496 +-#: ../addressbook/backends/ldap/e-book-backend-ldap.c:3903 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2593 ++#: ../addressbook/backends/ldap/e-book-backend-ldap.c:4202 + #, c-format + msgid "Downloading contacts (%d)... " + msgstr "Téléchargement des contacts (%d)..." + +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2645 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2812 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2848 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2746 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2927 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2957 + #, c-format + msgid "Updating contacts cache (%d)... " + msgstr "Mise à jour du cache des contacts (%d)..." + +-#: ../addressbook/backends/ldap/e-book-backend-ldap.c:702 ++#: ../addressbook/backends/ldap/e-book-backend-ldap.c:713 + msgid "Using Distinguished Name (DN)" + msgstr "En utilisant le Nom Distinctif (DN en anglais)" + +-#: ../addressbook/backends/ldap/e-book-backend-ldap.c:705 ++#: ../addressbook/backends/ldap/e-book-backend-ldap.c:716 + msgid "Using Email Address" + msgstr "En utilisant l'adresse électronique" + +-#: ../addressbook/backends/ldap/e-book-backend-ldap.c:924 ++#: ../addressbook/backends/ldap/e-book-backend-ldap.c:935 + msgid "Reconnecting to LDAP server..." + msgstr "Reconnexion au serveur LDAP..." + +-#: ../addressbook/backends/ldap/e-book-backend-ldap.c:1503 ++#: ../addressbook/backends/ldap/e-book-backend-ldap.c:1534 + msgid "Adding contact to LDAP server..." + msgstr "Ajout du contact sur le serveur LDAP..." + +-#: ../addressbook/backends/ldap/e-book-backend-ldap.c:1637 ++#: ../addressbook/backends/ldap/e-book-backend-ldap.c:1668 + msgid "Removing contact from LDAP server..." + msgstr "Suppression du contact du serveur LDAP..." + +-#: ../addressbook/backends/ldap/e-book-backend-ldap.c:1919 ++#: ../addressbook/backends/ldap/e-book-backend-ldap.c:1988 + msgid "Modifying contact from LDAP server..." + msgstr "Modification du contact du serveur LDAP..." + +-#: ../addressbook/backends/ldap/e-book-backend-ldap.c:3601 ++#: ../addressbook/backends/ldap/e-book-backend-ldap.c:3900 + msgid "Receiving LDAP search results..." + msgstr "Réception des résultats de recherche LDAP..." + +-#: ../addressbook/backends/ldap/e-book-backend-ldap.c:3761 ++#: ../addressbook/backends/ldap/e-book-backend-ldap.c:4060 + msgid "Error performing search" + msgstr "Erreur lors de la recherche" + +@@ -95,9 +95,9 @@ msgstr "Erreur lors de la recherche" + #: ../addressbook/libebook/e-book.c:1382 ../addressbook/libebook/e-book.c:1386 + #: ../addressbook/libebook/e-book.c:1595 ../addressbook/libebook/e-book.c:1599 + #: ../addressbook/libebook/e-book.c:1836 ../addressbook/libebook/e-book.c:1840 +-#: ../addressbook/libebook/e-book.c:2076 ../addressbook/libebook/e-book.c:2080 +-#: ../addressbook/libebook/e-book.c:2292 ../addressbook/libebook/e-book.c:2296 +-#: ../addressbook/libebook/e-book.c:3392 ++#: ../addressbook/libebook/e-book.c:2077 ../addressbook/libebook/e-book.c:2081 ++#: ../addressbook/libebook/e-book.c:2293 ../addressbook/libebook/e-book.c:2297 ++#: ../addressbook/libebook/e-book.c:3393 + #, c-format + msgid "\"%s\" on book before \"%s\"" + msgstr "« %s » dans le libre avant « %s »" +@@ -106,9 +106,9 @@ msgstr "« %s » dans le libre avant + #: ../addressbook/libebook/e-book.c:631 ../addressbook/libebook/e-book.c:724 + #: ../addressbook/libebook/e-book.c:1044 ../addressbook/libebook/e-book.c:1235 + #: ../addressbook/libebook/e-book.c:1396 ../addressbook/libebook/e-book.c:1608 +-#: ../addressbook/libebook/e-book.c:1849 ../addressbook/libebook/e-book.c:2090 +-#: ../addressbook/libebook/e-book.c:2305 ../addressbook/libebook/e-book.c:2641 +-#: ../addressbook/libebook/e-book.c:2847 ++#: ../addressbook/libebook/e-book.c:1849 ../addressbook/libebook/e-book.c:2091 ++#: ../addressbook/libebook/e-book.c:2306 ../addressbook/libebook/e-book.c:2642 ++#: ../addressbook/libebook/e-book.c:2848 + msgid "book busy" + msgstr "livre occupé" + +@@ -121,56 +121,56 @@ msgstr "livre occupé" + #: ../addressbook/libebook/e-book.c:1425 ../addressbook/libebook/e-book.c:1429 + #: ../addressbook/libebook/e-book.c:1644 ../addressbook/libebook/e-book.c:1648 + #: ../addressbook/libebook/e-book.c:1896 ../addressbook/libebook/e-book.c:1900 +-#: ../addressbook/libebook/e-book.c:2122 ../addressbook/libebook/e-book.c:2126 +-#: ../addressbook/libebook/e-book.c:2333 ../addressbook/libebook/e-book.c:2337 +-#: ../addressbook/libebook/e-book.c:2582 ../addressbook/libebook/e-book.c:2669 +-#: ../addressbook/libebook/e-book.c:2673 ../addressbook/libebook/e-book.c:2875 +-#: ../addressbook/libebook/e-book.c:2879 ../addressbook/libebook/e-book.c:3401 ++#: ../addressbook/libebook/e-book.c:2123 ../addressbook/libebook/e-book.c:2127 ++#: ../addressbook/libebook/e-book.c:2334 ../addressbook/libebook/e-book.c:2338 ++#: ../addressbook/libebook/e-book.c:2583 ../addressbook/libebook/e-book.c:2670 ++#: ../addressbook/libebook/e-book.c:2674 ../addressbook/libebook/e-book.c:2876 ++#: ../addressbook/libebook/e-book.c:2880 ../addressbook/libebook/e-book.c:3402 + #, c-format + msgid "CORBA exception making \"%s\" call" + msgstr "Exception CORBA lors de l'appel à « %s »" + +-#: ../addressbook/libebook/e-book.c:2563 ++#: ../addressbook/libebook/e-book.c:2564 + #, c-format + msgid "%s: there is no current operation" + msgstr "%s : il n'y a pas d'opération courante" + +-#: ../addressbook/libebook/e-book.c:2598 ++#: ../addressbook/libebook/e-book.c:2599 + #, c-format + msgid "%s: couldn't cancel" + msgstr "%s : impossible d'annuler" + +-#: ../addressbook/libebook/e-book.c:2627 ../addressbook/libebook/e-book.c:2631 ++#: ../addressbook/libebook/e-book.c:2628 ../addressbook/libebook/e-book.c:2632 + #, c-format + msgid "\"%s\" on book after \"%s\"" + msgstr "« %s » dans le livre après « %s »" + +-#: ../addressbook/libebook/e-book.c:2697 ++#: ../addressbook/libebook/e-book.c:2698 + #, c-format + msgid "%s: cancelled" + msgstr "%s : annulée" + +-#: ../addressbook/libebook/e-book.c:3258 ++#: ../addressbook/libebook/e-book.c:3259 + #, c-format + msgid "%s: Invalid source." + msgstr "%s : Source non valide." + +-#: ../addressbook/libebook/e-book.c:3266 ../addressbook/libebook/e-book.c:3330 ++#: ../addressbook/libebook/e-book.c:3267 ../addressbook/libebook/e-book.c:3331 + #, c-format + msgid "%s: no factories available for uri `%s'" + msgstr "%s : aucune fabrique disponible pour l'uri « %s »" + +-#: ../addressbook/libebook/e-book.c:3278 ++#: ../addressbook/libebook/e-book.c:3279 + #, c-format + msgid "%s: Could not create EBookListener" + msgstr "%s : Impossible de créer EBookListener" + +-#: ../addressbook/libebook/e-book.c:3541 ++#: ../addressbook/libebook/e-book.c:3542 + #, c-format + msgid "%s: there was no self contact uid stored in gconf" + msgstr "%s : il n'y avait pas d'uid de contact personnel stockée dans gconf" + +-#: ../addressbook/libebook/e-book.c:3671 ++#: ../addressbook/libebook/e-book.c:3672 + #, c-format + msgid "%s: there was no source for uid `%s' stored in gconf." + msgstr "%s : il n'y avait pas de source pour l'uid « %s » stockée dans gconf." +@@ -610,7 +610,7 @@ msgstr "Date de naissance" + #. Make sure we have all categories + #: ../addressbook/libebook/e-contact.c:242 + #: ../calendar/backends/contacts/e-cal-backend-contacts.c:460 +-#: ../libedataserver/e-categories.c:240 ++#: ../libedataserver/e-categories.c:246 + msgid "Anniversary" + msgstr "Anniversaire" + +@@ -633,12 +633,12 @@ msgid "Book URI" + msgstr "URI du livre" + + #: ../addressbook/libebook/e-contact.c:1238 +-#: ../addressbook/libebook/e-destination.c:751 ++#: ../addressbook/libebook/e-destination.c:771 + msgid "Unnamed List" + msgstr "Liste de contacts sans nom" + + #: ../calendar/backends/contacts/e-cal-backend-contacts.c:462 +-#: ../libedataserver/e-categories.c:241 ++#: ../libedataserver/e-categories.c:247 + msgid "Birthday" + msgstr "Date de naissance" + +@@ -652,73 +652,80 @@ msgstr "Date de naissance : %s" + msgid "Anniversary: %s" + msgstr "Anniversaire : %s" + +-#: ../calendar/backends/file/e-cal-backend-file.c:203 ++#: ../calendar/backends/file/e-cal-backend-file.c:204 + msgid "Can't save calendar data: Malformed URI." + msgstr "Impossible d'enregistrer les données du calendrier : URI erroné." + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise-utils.c:871 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1437 ++#: ../calendar/backends/file/e-cal-backend-file.c:209 ++#, ++msgid "Can't save calendar data: " ++msgstr "Impossible d'enregistrer les données du calendrier :" ++ ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise-utils.c:872 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1582 + msgid "Reply Requested: by " + msgstr "Réponse requise : par" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise-utils.c:876 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1442 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise-utils.c:877 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1587 + msgid "Reply Requested: When convenient" + msgstr "Réponse requise : si nécessaire" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:191 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:193 + #, c-format + msgid "Loading %s items" + msgstr "Chargement de %s éléments" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:715 +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:254 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:719 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:260 + msgid "Calendar" + msgstr "Calendrier" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:771 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:775 + msgid "Invalid server URI" + msgstr "URI de serveur non valide" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:787 +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:796 +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:881 +-#: ../calendar/libecal/e-cal.c:5131 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:891 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:911 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:939 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:518 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:533 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:575 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1062 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:791 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:800 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:885 ++#: ../calendar/libecal/e-cal.c:5137 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:970 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:993 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1028 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:588 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:603 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:644 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:712 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:754 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1253 + #: ../camel/providers/groupwise/camel-groupwise-transport.c:178 + msgid "Authentication failed" + msgstr "L'authentification a échoué" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:837 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:841 + msgid "Could not create thread for getting deltas" + msgstr "Impossible de créer le thread pour obtenir les différences" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:862 +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:1109 +-#: ../calendar/backends/http/e-cal-backend-http.c:504 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:866 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:1113 ++#: ../calendar/backends/http/e-cal-backend-http.c:520 + #: ../calendar/backends/weather/e-cal-backend-weather.c:452 + msgid "Could not create cache file" + msgstr "Impossible de créer le fichier cache" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:875 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:879 + msgid "Could not create thread for populating cache" + msgstr "Impossible de créer la liste pour remplir le fichier cache" + +-#: ../calendar/backends/http/e-cal-backend-http.c:248 ++#: ../calendar/backends/http/e-cal-backend-http.c:259 + msgid "Redirected to Invalid URI" + msgstr "Redirigé vers un URI non valide" + +-#: ../calendar/backends/http/e-cal-backend-http.c:272 ++#: ../calendar/backends/http/e-cal-backend-http.c:283 + msgid "Bad file format." + msgstr "Mauvais format de fichier." + +-#: ../calendar/backends/http/e-cal-backend-http.c:278 ++#: ../calendar/backends/http/e-cal-backend-http.c:289 + msgid "Not a calendar." + msgstr "Ce n'est pas un calendrier." + +@@ -1062,97 +1069,96 @@ msgid "Undefined" + msgstr "Indéfinie" + + #. FIXME: Try to get the parent uri so that we dont have to ask the password again +-#: ../calendar/libecal/e-cal.c:1705 ++#: ../calendar/libecal/e-cal.c:1707 + #, c-format + msgid "Enter password for %s to enable proxy for user %s" +-msgstr "" +-"Saisissez le mot de passe de %s afin d'activer le proxy pour l'utilisateur %s" ++msgstr "Saisissez le mot de passe de %s afin d'activer le proxy pour l'utilisateur %s" + +-#: ../calendar/libecal/e-cal.c:1708 ../libedataserverui/e-book-auth-util.c:192 ++#: ../calendar/libecal/e-cal.c:1710 ../libedataserverui/e-book-auth-util.c:198 + #, c-format + msgid "Enter password for %s (user %s)" + msgstr "Saisissez le mot de passe pour %s (utilisateur %s)" + +-#: ../calendar/libecal/e-cal.c:5103 ++#: ../calendar/libecal/e-cal.c:5109 + msgid "Invalid argument" + msgstr "Argument non valide" + +-#: ../calendar/libecal/e-cal.c:5105 ++#: ../calendar/libecal/e-cal.c:5111 + msgid "Backend is busy" + msgstr "Le moteur est occupé" + +-#: ../calendar/libecal/e-cal.c:5107 ++#: ../calendar/libecal/e-cal.c:5113 + msgid "Repository is offline" + msgstr "Le dépôt est hors ligne" + +-#: ../calendar/libecal/e-cal.c:5109 ++#: ../calendar/libecal/e-cal.c:5115 + msgid "No such calendar" + msgstr "Calendrier inexistant" + +-#: ../calendar/libecal/e-cal.c:5111 ../servers/groupwise/e-gw-connection.c:169 ++#: ../calendar/libecal/e-cal.c:5117 ../servers/groupwise/e-gw-connection.c:175 + msgid "Object not found" + msgstr "Objet non trouvé" + +-#: ../calendar/libecal/e-cal.c:5113 ../servers/groupwise/e-gw-connection.c:163 ++#: ../calendar/libecal/e-cal.c:5119 ../servers/groupwise/e-gw-connection.c:169 + msgid "Invalid object" + msgstr "Objet non valide" + +-#: ../calendar/libecal/e-cal.c:5115 ++#: ../calendar/libecal/e-cal.c:5121 + msgid "URI not loaded" + msgstr "URI non chargée" + +-#: ../calendar/libecal/e-cal.c:5117 ++#: ../calendar/libecal/e-cal.c:5123 + msgid "URI already loaded" + msgstr "URI déjà chargée" + +-#: ../calendar/libecal/e-cal.c:5119 ++#: ../calendar/libecal/e-cal.c:5125 + #: ../servers/exchange/storage/e-storage.c:572 + msgid "Permission denied" + msgstr "Permission refusée" + +-#: ../calendar/libecal/e-cal.c:5121 ../servers/groupwise/e-gw-connection.c:171 ++#: ../calendar/libecal/e-cal.c:5127 ../servers/groupwise/e-gw-connection.c:177 + msgid "Unknown User" + msgstr "Utilisateur inconnu" + +-#: ../calendar/libecal/e-cal.c:5123 ++#: ../calendar/libecal/e-cal.c:5129 + msgid "Object ID already exists" + msgstr "L'ID de l'objet existe déjà" + +-#: ../calendar/libecal/e-cal.c:5125 ++#: ../calendar/libecal/e-cal.c:5131 + msgid "Protocol not supported" + msgstr "Protocole non supporté" + +-#: ../calendar/libecal/e-cal.c:5127 ++#: ../calendar/libecal/e-cal.c:5133 + msgid "Operation has been cancelled" + msgstr "L'opération a été annulée" + +-#: ../calendar/libecal/e-cal.c:5129 ++#: ../calendar/libecal/e-cal.c:5135 + msgid "Could not cancel operation" + msgstr "Impossible d'annuler l'opération" + +-#: ../calendar/libecal/e-cal.c:5133 ++#: ../calendar/libecal/e-cal.c:5139 + #: ../camel/providers/smtp/camel-smtp-transport.c:212 + msgid "Authentication required" + msgstr "Authentification requise" + +-#: ../calendar/libecal/e-cal.c:5135 ++#: ../calendar/libecal/e-cal.c:5141 + msgid "A CORBA exception has occurred" + msgstr "Une exception CORBA s'est produite" + +-#: ../calendar/libecal/e-cal.c:5137 +-#: ../camel/providers/groupwise/camel-groupwise-transport.c:217 +-#: ../camel/providers/imap/camel-imap-command.c:310 +-#: ../camel/providers/imap/camel-imap-command.c:410 +-#: ../camel/providers/imap4/camel-imap4-store.c:380 +-#: ../camel/providers/pop3/camel-pop3-store.c:533 +-#: ../camel/providers/pop3/camel-pop3-store.c:540 +-#: ../camel/providers/pop3/camel-pop3-store.c:546 ++#: ../calendar/libecal/e-cal.c:5143 ++#: ../camel/providers/groupwise/camel-groupwise-transport.c:218 ++#: ../camel/providers/imap/camel-imap-command.c:311 ++#: ../camel/providers/imap/camel-imap-command.c:411 ++#: ../camel/providers/imap4/camel-imap4-store.c:383 ++#: ../camel/providers/pop3/camel-pop3-store.c:528 ++#: ../camel/providers/pop3/camel-pop3-store.c:535 ++#: ../camel/providers/pop3/camel-pop3-store.c:541 + #: ../servers/exchange/storage/e-storage.c:586 +-#: ../servers/groupwise/e-gw-connection.c:177 ++#: ../servers/groupwise/e-gw-connection.c:183 + msgid "Unknown error" + msgstr "Erreur inconnue" + +-#: ../calendar/libecal/e-cal.c:5139 ++#: ../calendar/libecal/e-cal.c:5145 + #: ../servers/exchange/storage/e-storage.c:554 + msgid "No error" + msgstr "Aucune erreur" +@@ -1223,12 +1229,8 @@ msgstr "« %s » attend une chaîne co + + #: ../calendar/libedata-cal/e-cal-backend-sexp.c:548 + #, c-format +-msgid "" +-"\"%s\" expects the first argument to be either \"any\", \"summary\", or " +-"\"description\", or \"location\"" +-msgstr "" +-"« %s » s'attend à ce que le premier argument soit « any », « summary », " +-"« description » ou « location »" ++msgid "\"%s\" expects the first argument to be either \"any\", \"summary\", or \"description\", or \"location\"" ++msgstr "« %s » s'attend à ce que le premier argument soit « any », « summary », « description » ou « location »" + + #: ../calendar/libedata-cal/e-cal-backend-sexp.c:671 + #, c-format +@@ -1237,12 +1239,8 @@ msgstr "« %s » attend au moins un ar + + #: ../calendar/libedata-cal/e-cal-backend-sexp.c:685 + #, c-format +-msgid "" +-"\"%s\" expects all arguments to be strings or one and only one argument to " +-"be a boolean false (#f)" +-msgstr "" +-"« %s » attend tous les arguments comme chaîne ou seulement un argument comme " +-"booléen faux (#f)" ++msgid "\"%s\" expects all arguments to be strings or one and only one argument to be a boolean false (#f)" ++msgstr "« %s » attend tous les arguments comme chaîne ou seulement un argument comme booléen faux (#f)" + + #: ../camel/camel-cipher-context.c:102 + msgid "Signing is not supported by this cipher" +@@ -1284,36 +1282,24 @@ msgstr "Vous ne pouvez pas importer de c + msgid "You may not export keys with this cipher" + msgstr "Vous ne pouvez pas exporter de clé avec ce message chiffré" + +-#: ../camel/camel-data-cache.c:135 ++#: ../camel/camel-data-cache.c:136 + msgid "Unable to create cache path" + msgstr "Impossible de créer le répertoire de cache" + +-#: ../camel/camel-data-cache.c:382 ++#: ../camel/camel-data-cache.c:383 + #, c-format + msgid "Could not remove cache entry: %s: %s" + msgstr "Impossible de supprimer l'entrée du cache : %s : %s" + + #: ../camel/camel-disco-diary.c:197 + #, c-format +-msgid "" +-"Could not write log entry: %s\n" +-"Further operations on this server will not be replayed when you\n" +-"reconnect to the network." +-msgstr "" +-"Impossible d'écrire l'entrée de journal : %s.\n" +-"Des informations de ce serveur ne seront pas rejouées\n" +-"quand vous vous reconnecterez au réseau." ++msgid "Could not write log entry: %s\nFurther operations on this server will not be replayed when you\nreconnect to the network." ++msgstr "Impossible d'écrire l'entrée de journal : %s.\nDes informations de ce serveur ne seront pas rejouées\nquand vous vous reconnecterez au réseau." + + #: ../camel/camel-disco-diary.c:260 + #, c-format +-msgid "" +-"Could not open `%s':\n" +-"%s\n" +-"Changes made to this folder will not be resynchronized." +-msgstr "" +-"Impossible d'ouvrir « %s » :\n" +-"%s\n" +-"Les modifications apportées à ce dossier ne seront pas resynchronisées." ++msgid "Could not open `%s':\n%s\nChanges made to this folder will not be resynchronized." ++msgstr "Impossible d'ouvrir « %s » :\n%s\nLes modifications apportées à ce dossier ne seront pas resynchronisées." + + #: ../camel/camel-disco-diary.c:296 + msgid "Resynchronizing with server" +@@ -1332,9 +1318,8 @@ msgstr "Télécharger les nouveaux messa + msgid "Preparing folder '%s' for offline" + msgstr "Préparation du dossier « %s » pour le hors-ligne" + +-#: ../camel/camel-disco-store.c:395 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1253 +-#: ../camel/providers/imap/camel-imap-store.c:2965 ++#: ../camel/camel-disco-store.c:401 ++#: ../camel/providers/imap/camel-imap-store.c:2970 + msgid "You must be working online to complete this operation" + msgstr "Vous devez travailler en ligne pour terminer cette opération" + +@@ -1342,115 +1327,102 @@ msgstr "Vous devez travailler en ligne p + msgid "No description available" + msgstr "Aucune description disponible" + +-#: ../camel/camel-filter-driver.c:701 ../camel/camel-filter-search.c:523 +-#, c-format +-msgid "Failed to create pipe to '%s': %s" +-msgstr "La création du tube pour « %s » a échoué : %s" +- +-#: ../camel/camel-filter-driver.c:745 ++#: ../camel/camel-filter-driver.c:749 + #, c-format + msgid "Failed to create child process '%s': %s" + msgstr "La création d'un processus fils « %s » a échoué : %s" + +-#: ../camel/camel-filter-driver.c:788 ++#: ../camel/camel-filter-driver.c:791 + #, c-format + msgid "Invalid message stream received from %s: %s" + msgstr "Flux de messages non valide en provenance de %s : %s" + +-#: ../camel/camel-filter-driver.c:977 ../camel/camel-filter-driver.c:986 ++#: ../camel/camel-filter-driver.c:978 ../camel/camel-filter-driver.c:987 + msgid "Syncing folders" + msgstr "Synchronisation des dossiers" + +-#: ../camel/camel-filter-driver.c:1075 ../camel/camel-filter-driver.c:1453 ++#: ../camel/camel-filter-driver.c:1076 ../camel/camel-filter-driver.c:1454 + #, c-format + msgid "Error parsing filter: %s: %s" + msgstr "Erreur d'analyse du filtre : %s : %s" + +-#: ../camel/camel-filter-driver.c:1084 ../camel/camel-filter-driver.c:1462 ++#: ../camel/camel-filter-driver.c:1085 ../camel/camel-filter-driver.c:1463 + #, c-format + msgid "Error executing filter: %s: %s" + msgstr "Erreur d'exécution du filtre : %s : %s" + +-#: ../camel/camel-filter-driver.c:1151 ++#: ../camel/camel-filter-driver.c:1152 + msgid "Unable to open spool folder" + msgstr "Impossible d'ouvrir le dossier spool" + +-#: ../camel/camel-filter-driver.c:1160 ++#: ../camel/camel-filter-driver.c:1161 + msgid "Unable to process spool folder" + msgstr "Impossible de traiter le dossier spool" + +-#: ../camel/camel-filter-driver.c:1175 ++#: ../camel/camel-filter-driver.c:1176 + #, c-format + msgid "Getting message %d (%d%%)" + msgstr "Récupération du message %d (%d%%)" + +-#: ../camel/camel-filter-driver.c:1179 ++#: ../camel/camel-filter-driver.c:1180 + msgid "Cannot open message" + msgstr "Impossible d'ouvrir le message" + +-#: ../camel/camel-filter-driver.c:1180 ../camel/camel-filter-driver.c:1192 ++#: ../camel/camel-filter-driver.c:1181 ../camel/camel-filter-driver.c:1193 + #, c-format + msgid "Failed on message %d" + msgstr "Anomalie au message %d" + +-#: ../camel/camel-filter-driver.c:1206 ../camel/camel-filter-driver.c:1297 ++#: ../camel/camel-filter-driver.c:1207 ../camel/camel-filter-driver.c:1298 + msgid "Syncing folder" + msgstr "Synchronisation du dossier" + +-#: ../camel/camel-filter-driver.c:1210 ../camel/camel-filter-driver.c:1302 ++#: ../camel/camel-filter-driver.c:1211 ../camel/camel-filter-driver.c:1303 + msgid "Complete" + msgstr "Terminé" + +-#: ../camel/camel-filter-driver.c:1267 ++#: ../camel/camel-filter-driver.c:1268 + #, c-format + msgid "Getting message %d of %d" + msgstr "Récupération du message %d sur %d" + +-#: ../camel/camel-filter-driver.c:1282 ++#: ../camel/camel-filter-driver.c:1283 + #, c-format + msgid "Failed at message %d of %d" + msgstr "Anomalie au message %d sur %d" + +-#: ../camel/camel-filter-search.c:136 ++#: ../camel/camel-filter-search.c:137 + msgid "Failed to retrieve message" + msgstr "La récupération du message a échoué" + +-#: ../camel/camel-filter-search.c:396 ++#: ../camel/camel-filter-search.c:397 + msgid "Invalid arguments to (system-flag)" + msgstr "Arguments non valides (system-flag)" + +-#: ../camel/camel-filter-search.c:411 ++#: ../camel/camel-filter-search.c:412 + msgid "Invalid arguments to (user-tag)" + msgstr "Arguments non valides (user-tag)" + +-#: ../camel/camel-filter-search.c:559 ++#: ../camel/camel-filter-search.c:577 + #, c-format + msgid "Failed to create create child process '%s': %s" + msgstr "La création d'un processus fils « %s » a échoué : %s" + + #. A filter search is a search through your filters, ie. your filters is the corpus being searched thru. +-#: ../camel/camel-filter-search.c:682 ../camel/camel-filter-search.c:690 ++#: ../camel/camel-filter-search.c:699 ../camel/camel-filter-search.c:707 + #, c-format + msgid "Error executing filter search: %s: %s" + msgstr "Erreur lors de la recherche filtrée : %s : %s" + + #: ../camel/camel-folder-search.c:357 ../camel/camel-folder-search.c:478 + #, c-format +-msgid "" +-"Cannot parse search expression: %s:\n" +-"%s" +-msgstr "" +-"Impossible d'analyser l'expression de recherche : %s :\n" +-"%s" ++msgid "Cannot parse search expression: %s:\n%s" ++msgstr "Impossible d'analyser l'expression de recherche : %s :\n%s" + + #: ../camel/camel-folder-search.c:367 ../camel/camel-folder-search.c:488 + #, c-format +-msgid "" +-"Error executing search expression: %s:\n" +-"%s" +-msgstr "" +-"Erreur lors de l'exécution de l'expression de recherche : %s :\n" +-"%s" ++msgid "Error executing search expression: %s:\n%s" ++msgstr "Erreur lors de l'exécution de l'expression de recherche : %s :\n%s" + + #: ../camel/camel-folder-search.c:674 ../camel/camel-folder-search.c:707 + msgid "(match-all) requires a single bool result" +@@ -1464,64 +1436,58 @@ msgstr "(match-thread) n'est pas autoris + msgid "(match-threads) requires a match type string" + msgstr "(match-threads)) requiert un type de chaîne à comparer" + +-#: ../camel/camel-folder-search.c:786 ++#: ../camel/camel-folder-search.c:788 + msgid "(match-threads) expects an array result" + msgstr "(match-threads) attend un tableau en résultat" + +-#: ../camel/camel-folder-search.c:792 ++#: ../camel/camel-folder-search.c:794 + msgid "(match-threads) requires the folder set" + msgstr "(match-threads) requiert un ensemble de dossiers" + +-#: ../camel/camel-folder-search.c:881 ++#: ../camel/camel-folder-search.c:886 + #, c-format + msgid "Performing query on unknown header: %s" + msgstr "Effectue une requête sur un en-tête inconnu : %s" + +-#: ../camel/camel-folder.c:616 ++#: ../camel/camel-folder.c:615 + #, c-format + msgid "Unsupported operation: append message: for %s" + msgstr "Opération non supportée : ajout du message : pour %s" + +-#: ../camel/camel-folder.c:1238 ++#: ../camel/camel-folder.c:1237 + #, c-format + msgid "Unsupported operation: search by expression: for %s" + msgstr "Opération non supportée : recherche par expression : pour %s" + +-#: ../camel/camel-folder.c:1279 ++#: ../camel/camel-folder.c:1278 + #, c-format + msgid "Unsupported operation: search by uids: for %s" + msgstr "Opération non supportée : recherche par uids : pour %s" + +-#: ../camel/camel-folder.c:1395 ++#: ../camel/camel-folder.c:1394 + msgid "Moving messages" + msgstr "Déplacement des messages" + +-#: ../camel/camel-folder.c:1395 ++#: ../camel/camel-folder.c:1394 + msgid "Copying messages" + msgstr "Copie des messages" + +-#: ../camel/camel-folder.c:1649 ++#: ../camel/camel-folder.c:1648 + msgid "Learning junk" + msgstr "Apprend comme spam" + +-#: ../camel/camel-folder.c:1666 ++#: ../camel/camel-folder.c:1665 + msgid "Learning non-junk" + msgstr "Apprendre comme non-spam" + +-#: ../camel/camel-folder.c:1685 ++#: ../camel/camel-folder.c:1684 + msgid "Filtering new message(s)" + msgstr "Filtrage des nouveaux messages" + + #: ../camel/camel-gpg-context.c:753 + #, c-format +-msgid "" +-"Unexpected GnuPG status message encountered:\n" +-"\n" +-"%s" +-msgstr "" +-"Message de statut GnuPG inattendu rencontré : \n" +-"\n" +-"%s" ++msgid "Unexpected GnuPG status message encountered:\n\n%s" ++msgstr "Message de statut GnuPG inattendu rencontré : \n\n%s" + + #: ../camel/camel-gpg-context.c:767 + msgid "Failed to parse gpg userid hint." +@@ -1531,108 +1497,97 @@ msgstr "L'analyse de l'indication ID d'u + msgid "Failed to parse gpg passphrase request." + msgstr "L'analyse de la requête de mot de passe du GPG a échoué." + +-#: ../camel/camel-gpg-context.c:805 ++#: ../camel/camel-gpg-context.c:806 ../camel/camel-gpg-context.c:810 + #, c-format +-msgid "" +-"You need a passphrase to unlock the key for\n" +-"user: \"%s\"" +-msgstr "" +-"Vous avez besoin d'un mot de passe pour\n" +-"débloquer la clé de l'utilisateur : « %s »" ++msgid "You need a passphrase to unlock the key for\nuser: \"%s\"" ++msgstr "Vous avez besoin d'un mot de passe pour\ndébloquer la clé de l'utilisateur : « %s »" + +-#: ../camel/camel-gpg-context.c:822 ../camel/camel-gpg-context.c:1026 ++#: ../camel/camel-gpg-context.c:828 ../camel/camel-gpg-context.c:1032 + #: ../camel/providers/nntp/camel-nntp-store.c:1272 + msgid "Cancelled." + msgstr "Annulé." + +-#: ../camel/camel-gpg-context.c:840 ++#: ../camel/camel-gpg-context.c:846 + msgid "Failed to unlock secret key: 3 bad passphrases given." +-msgstr "" +-"Le déblocage de la clé secrète a échoué : 3 mots de passe incorrects ont été " +-"saisi." ++msgstr "Le déblocage de la clé secrète a échoué : 3 mots de passe incorrects ont été saisi." + +-#: ../camel/camel-gpg-context.c:846 ++#: ../camel/camel-gpg-context.c:852 + #, c-format + msgid "Unexpected response from GnuPG: %s" + msgstr "Réponse inattendue de GnuPG : %s" + +-#: ../camel/camel-gpg-context.c:898 ++#: ../camel/camel-gpg-context.c:904 + msgid "Failed to encrypt: No valid recipients specified." + msgstr "Le chiffrement a échoué : aucun destinataire valide spécifié." + + #. always called on an i/o error +-#: ../camel/camel-gpg-context.c:1164 ../camel/camel-gpg-context.c:1292 +-#: ../camel/camel-gpg-context.c:1776 ../camel/camel-gpg-context.c:1821 ++#: ../camel/camel-gpg-context.c:1170 ../camel/camel-gpg-context.c:1298 ++#: ../camel/camel-gpg-context.c:1782 ../camel/camel-gpg-context.c:1827 + #, c-format + msgid "Failed to execute gpg: %s" + msgstr "L'exécution de GPG a échoué : %s" + +-#: ../camel/camel-gpg-context.c:1260 ../camel/camel-smime-context.c:387 ++#: ../camel/camel-gpg-context.c:1266 ../camel/camel-smime-context.c:387 + #, c-format + msgid "Could not generate signing data: %s" + msgstr "Impossible de générer les données signées : %s." + +-#: ../camel/camel-gpg-context.c:1307 ../camel/camel-gpg-context.c:1496 +-#: ../camel/camel-gpg-context.c:1579 ../camel/camel-gpg-context.c:1594 +-#: ../camel/camel-gpg-context.c:1698 ../camel/camel-gpg-context.c:1713 +-#: ../camel/camel-gpg-context.c:1792 ../camel/camel-gpg-context.c:1837 ++#: ../camel/camel-gpg-context.c:1313 ../camel/camel-gpg-context.c:1502 ++#: ../camel/camel-gpg-context.c:1585 ../camel/camel-gpg-context.c:1600 ++#: ../camel/camel-gpg-context.c:1704 ../camel/camel-gpg-context.c:1719 ++#: ../camel/camel-gpg-context.c:1798 ../camel/camel-gpg-context.c:1843 + msgid "Failed to execute gpg." + msgstr "L'exécution de GPG a échoué." + +-#: ../camel/camel-gpg-context.c:1326 ++#: ../camel/camel-gpg-context.c:1332 + msgid "This is a digitally signed message part" + msgstr "Ceci est une partie de message numériquement signée" + +-#: ../camel/camel-gpg-context.c:1414 ../camel/camel-gpg-context.c:1420 +-#: ../camel/camel-gpg-context.c:1426 ../camel/camel-gpg-context.c:1443 ++#: ../camel/camel-gpg-context.c:1420 ../camel/camel-gpg-context.c:1426 ++#: ../camel/camel-gpg-context.c:1432 ../camel/camel-gpg-context.c:1449 + #: ../camel/camel-smime-context.c:690 ../camel/camel-smime-context.c:701 + #: ../camel/camel-smime-context.c:708 + msgid "Cannot verify message signature: Incorrect message format" +-msgstr "" +-"Impossible de vérifier la signature de ce message : format de message " +-"incorrect" ++msgstr "Impossible de vérifier la signature de ce message : format de message incorrect" + +-#: ../camel/camel-gpg-context.c:1481 ++#: ../camel/camel-gpg-context.c:1487 + #, c-format + msgid "Cannot verify message signature: could not create temp file: %s" +-msgstr "" +-"Impossible de vérifier la signature de ce message : impossible de créer le " +-"fichier temporaire : %s" ++msgstr "Impossible de vérifier la signature de ce message : impossible de créer le fichier temporaire : %s" + +-#: ../camel/camel-gpg-context.c:1562 ++#: ../camel/camel-gpg-context.c:1568 + #, c-format + msgid "Could not generate encrypting data: %s" + msgstr "Impossible de générer des données chiffrées : %s" + +-#: ../camel/camel-gpg-context.c:1612 ++#: ../camel/camel-gpg-context.c:1618 + msgid "This is a digitally encrypted message part" + msgstr "Ceci est une partie de message numériquement signée" + +-#: ../camel/camel-gpg-context.c:1669 ++#: ../camel/camel-gpg-context.c:1675 + msgid "Failed to decrypt MIME part: protocol error" + msgstr "Le déchiffrement de la partie MIME a échoué : erreur de protocole" + +-#: ../camel/camel-gpg-context.c:1680 ++#: ../camel/camel-gpg-context.c:1686 + msgid "Cannot decrypt message: Incorrect message format" +-msgstr "" +-"Impossible de décrypter le message : le format du message est incorrect" ++msgstr "Impossible de décrypter le message : le format du message est incorrect" + +-#: ../camel/camel-gpg-context.c:1734 ../camel/camel-smime-context.c:964 ++#: ../camel/camel-gpg-context.c:1740 ../camel/camel-smime-context.c:964 + msgid "Encrypted content" + msgstr "Contenu chiffré" + +-#: ../camel/camel-gpg-context.c:1753 ++#: ../camel/camel-gpg-context.c:1759 + msgid "Unable to parse message content" + msgstr "Impossible d'analyser le contenu du message" + +-#: ../camel/camel-gpg-context.c:1777 ../camel/camel-gpg-context.c:1822 ++#: ../camel/camel-gpg-context.c:1783 ../camel/camel-gpg-context.c:1828 + #: ../camel/camel-tcp-stream-openssl.c:631 + #: ../camel/providers/imap4/camel-imap4-engine.c:1550 + #: ../camel/providers/imap4/camel-imap4-engine.c:1589 + #: ../camel/providers/imap4/camel-imap4-engine.c:1634 + #: ../camel/providers/imap4/camel-imap4-engine.c:1690 +-#: ../camel/providers/imap4/camel-imap4-store.c:883 +-#: ../camel/providers/imap4/camel-imap4-store.c:1556 ++#: ../camel/providers/imap4/camel-imap4-store.c:881 ++#: ../camel/providers/imap4/camel-imap4-store.c:1554 + #: ../camel/providers/imap4/camel-imap4-utils.c:575 + #: ../camel/providers/smtp/camel-smtp-transport.c:160 + #: ../camel/providers/smtp/camel-smtp-transport.c:215 +@@ -1652,33 +1607,29 @@ msgstr "Impossible de cloner l'aide de v + #: ../camel/camel-lock-client.c:191 ../camel/camel-lock-client.c:214 + #, c-format + msgid "Could not lock '%s': protocol error with lock-helper" +-msgstr "" +-"Impossible de verrouiller « %s » : erreur de protocole avec l'aide de " +-"verrouillage" ++msgstr "Impossible de verrouiller « %s » : erreur de protocole avec l'aide de verrouillage" + + #: ../camel/camel-lock-client.c:204 + #, c-format + msgid "Could not lock '%s'" + msgstr "Impossible de verrouiller « %s »" + +-#: ../camel/camel-lock.c:92 ../camel/camel-lock.c:113 ++#: ../camel/camel-lock.c:95 ../camel/camel-lock.c:116 + #, c-format + msgid "Could not create lock file for %s: %s" + msgstr "Impossible de créer le fichier de verrouillage pour %s : %s" + +-#: ../camel/camel-lock.c:154 ++#: ../camel/camel-lock.c:157 + #, c-format + msgid "Timed out trying to get lock file on %s. Try again later." +-msgstr "" +-"Échéance du délai pour obtenir le fichier de verrouillage sur %s. Essayez de " +-"nouveau plus tard." ++msgstr "Échéance du délai pour obtenir le fichier de verrouillage sur %s. Essayez de nouveau plus tard." + +-#: ../camel/camel-lock.c:209 ++#: ../camel/camel-lock.c:212 + #, c-format + msgid "Failed to get lock using fcntl(2): %s" + msgstr "L'obtention du verrou avec fcntl(2) a échoué : %s" + +-#: ../camel/camel-lock.c:272 ++#: ../camel/camel-lock.c:275 + #, c-format + msgid "Failed to get lock using flock(2): %s" + msgstr "L'obtention du verrou avec flock(2) a échoué : %s" +@@ -1741,40 +1692,40 @@ msgstr "Erreur de copie du fichier tempo + msgid "parse error" + msgstr "erreur d'analyse" + +-#: ../camel/camel-net-utils.c:495 ../camel/camel-net-utils.c:657 +-#: ../camel/camel-net-utils.c:788 +-#: ../camel/providers/pop3/camel-pop3-store.c:446 +-#: ../camel/providers/pop3/camel-pop3-store.c:527 ++#: ../camel/camel-net-utils.c:497 ../camel/camel-net-utils.c:659 ++#: ../camel/camel-net-utils.c:790 ++#: ../camel/providers/pop3/camel-pop3-store.c:441 ++#: ../camel/providers/pop3/camel-pop3-store.c:522 + msgid "Cancelled" + msgstr "Annulé" + +-#: ../camel/camel-net-utils.c:514 ++#: ../camel/camel-net-utils.c:516 + msgid "cannot create thread" + msgstr "impossible de créer le fils" + +-#: ../camel/camel-net-utils.c:661 ++#: ../camel/camel-net-utils.c:663 + #, c-format + msgid "Resolving: %s" + msgstr "Résolution de : %s" + +-#: ../camel/camel-net-utils.c:683 ++#: ../camel/camel-net-utils.c:685 + msgid "Host lookup failed" + msgstr "La résolution de l'hôte a échoué" + +-#: ../camel/camel-net-utils.c:685 ++#: ../camel/camel-net-utils.c:687 + #, c-format + msgid "Host lookup failed: %s: %s" + msgstr "La résolution de l'hôte a échoué : %s : %s" + +-#: ../camel/camel-net-utils.c:792 ++#: ../camel/camel-net-utils.c:794 + msgid "Resolving address" + msgstr "Résolution de l'adresse" + +-#: ../camel/camel-net-utils.c:812 ++#: ../camel/camel-net-utils.c:814 + msgid "Name lookup failed" + msgstr "La résolution du nom a échoué" + +-#: ../camel/camel-net-utils.c:815 ++#: ../camel/camel-net-utils.c:817 + #, c-format + msgid "Name lookup failed: %s" + msgstr "La résolution du nom a échoué : %s" +@@ -1795,15 +1746,12 @@ msgstr "Fournisseur de dossier virtuel d + + #: ../camel/camel-provider.c:64 + msgid "For reading mail as a query of another set of folders" +-msgstr "" +-"Pour la lecture du courriel comme requête sur un autre ensemble de dossiers" ++msgstr "Pour la lecture du courriel comme requête sur un autre ensemble de dossiers" + + #: ../camel/camel-provider.c:188 + #, c-format + msgid "Could not load %s: Module loading not supported on this system." +-msgstr "" +-"Impossible de charger %s : le chargement du module n'est pas supporté sur ce " +-"système." ++msgstr "Impossible de charger %s : le chargement du module n'est pas supporté sur ce système." + + #: ../camel/camel-provider.c:197 + #, c-format +@@ -1815,7 +1763,7 @@ msgstr "Impossible de charger %s : %s" + msgid "Could not load %s: No initialization code in module." + msgstr "Impossible de charger %s : aucun code d'initialisation dans le module." + +-#: ../camel/camel-provider.c:377 ../camel/camel-session.c:164 ++#: ../camel/camel-provider.c:377 ../camel/camel-session.c:166 + #, c-format + msgid "No provider available for protocol `%s'" + msgstr "Aucun fournisseur disponible pour le protocole « %s »" +@@ -1826,9 +1774,7 @@ msgstr "Anonyme" + + #: ../camel/camel-sasl-anonymous.c:37 + msgid "This option will connect to the server using an anonymous login." +-msgstr "" +-"Cette option utilisera une identification anonyme pour se connecter au " +-"serveur." ++msgstr "Cette option utilisera une identification anonyme pour se connecter au serveur." + + #: ../camel/camel-sasl-anonymous.c:122 ../camel/camel-sasl-plain.c:89 + msgid "Authentication failed." +@@ -1836,55 +1782,34 @@ msgstr "L'authentification a échoué." + + #: ../camel/camel-sasl-anonymous.c:131 + #, c-format +-msgid "" +-"Invalid email address trace information:\n" +-"%s" +-msgstr "" +-"Trace d'une adresse électronique non valide :\n" +-"%s" ++msgid "Invalid email address trace information:\n%s" ++msgstr "Trace d'une adresse électronique non valide :\n%s" + + #: ../camel/camel-sasl-anonymous.c:143 + #, c-format +-msgid "" +-"Invalid opaque trace information:\n" +-"%s" +-msgstr "" +-"Information de trace opaque non valide :\n" +-"%s" ++msgid "Invalid opaque trace information:\n%s" ++msgstr "Information de trace opaque non valide :\n%s" + + #: ../camel/camel-sasl-anonymous.c:155 + #, c-format +-msgid "" +-"Invalid trace information:\n" +-"%s" +-msgstr "" +-"Information de trace non valide :\n" +-"%s" ++msgid "Invalid trace information:\n%s" ++msgstr "Information de trace non valide :\n%s" + + #: ../camel/camel-sasl-cram-md5.c:38 + msgid "CRAM-MD5" + msgstr "CRAM-MD5" + + #: ../camel/camel-sasl-cram-md5.c:40 +-msgid "" +-"This option will connect to the server using a secure CRAM-MD5 password, if " +-"the server supports it." +-msgstr "" +-"Cette option utilisera un mot de passe sécurisé CRAM-MD5 pour se connecter\n" +-"au serveur si le serveur le supporte." ++msgid "This option will connect to the server using a secure CRAM-MD5 password, if the server supports it." ++msgstr "Cette option utilisera un mot de passe sécurisé CRAM-MD5 pour se connecter\nau serveur si le serveur le supporte." + + #: ../camel/camel-sasl-digest-md5.c:48 + msgid "DIGEST-MD5" + msgstr "DIGEST-MD5" + + #: ../camel/camel-sasl-digest-md5.c:50 +-msgid "" +-"This option will connect to the server using a secure DIGEST-MD5 password, " +-"if the server supports it." +-msgstr "" +-"Cette option utilisera un mot de passe sécurisé DIGEST-MD5 pour se " +-"connecter\n" +-"au serveur si le serveur le supporte." ++msgid "This option will connect to the server using a secure DIGEST-MD5 password, if the server supports it." ++msgstr "Cette option utilisera un mot de passe sécurisé DIGEST-MD5 pour se connecter\nau serveur si le serveur le supporte." + + #: ../camel/camel-sasl-digest-md5.c:818 + msgid "Server challenge too long (>2048 octets)" +@@ -1896,8 +1821,7 @@ msgstr "Challenge serveur non valide\n" + + #: ../camel/camel-sasl-digest-md5.c:833 + msgid "Server challenge contained invalid \"Quality of Protection\" token" +-msgstr "" +-"Le challenge serveur contient le jeton non valide « Quality of Protection »." ++msgstr "Le challenge serveur contient le jeton non valide « Quality of Protection »." + + #: ../camel/camel-sasl-digest-md5.c:863 + msgid "Server response did not contain authorization data" +@@ -1917,53 +1841,31 @@ msgstr "GSSAPI" + + #: ../camel/camel-sasl-gssapi.c:59 + msgid "This option will connect to the server using Kerberos 5 authentication." +-msgstr "" +-"Cette option utilisera une authentification Kerberos 5 pour se connecter au " +-"serveur." ++msgstr "Cette option utilisera une authentification Kerberos 5 pour se connecter au serveur." + + #: ../camel/camel-sasl-gssapi.c:157 +-msgid "" +-"The specified mechanism is not supported by the provided credential, or is " +-"unrecognized by the implementation." +-msgstr "" +-"Le mécanisme spécifié n'est pas supporté par la référence fournie, ou il " +-"n'est pas reconnu par l'implémentation." ++msgid "The specified mechanism is not supported by the provided credential, or is unrecognized by the implementation." ++msgstr "Le mécanisme spécifié n'est pas supporté par la référence fournie, ou il n'est pas reconnu par l'implémentation." + + #: ../camel/camel-sasl-gssapi.c:162 + msgid "The provided target_name parameter was ill-formed." + msgstr "Le paramètre fourni target_name est mal formé." + + #: ../camel/camel-sasl-gssapi.c:165 +-msgid "" +-"The provided target_name parameter contained an invalid or unsupported type " +-"of name." +-msgstr "" +-"Le paramètre fourni target_name contient un type de noms non valide ou non " +-"supporté." ++msgid "The provided target_name parameter contained an invalid or unsupported type of name." ++msgstr "Le paramètre fourni target_name contient un type de noms non valide ou non supporté." + + #: ../camel/camel-sasl-gssapi.c:169 +-msgid "" +-"The input_token contains different channel bindings to those specified via " +-"the input_chan_bindings parameter." +-msgstr "" +-"Le paramètre input_token contient des liaisons de canal différentes de " +-"celles spécifiées via le paramètre input_chan_bindings." ++msgid "The input_token contains different channel bindings to those specified via the input_chan_bindings parameter." ++msgstr "Le paramètre input_token contient des liaisons de canal différentes de celles spécifiées via le paramètre input_chan_bindings." + + #: ../camel/camel-sasl-gssapi.c:174 +-msgid "" +-"The input_token contains an invalid signature, or a signature that could not " +-"be verified." +-msgstr "" +-"Le paramètre input_token contient une signature non valide,ou une signature " +-"qui n'a pas pu être vérifiée." ++msgid "The input_token contains an invalid signature, or a signature that could not be verified." ++msgstr "Le paramètre input_token contient une signature non valide,ou une signature qui n'a pas pu être vérifiée." + + #: ../camel/camel-sasl-gssapi.c:178 +-msgid "" +-"The supplied credentials were not valid for context initiation, or the " +-"credential handle did not reference any credentials." +-msgstr "" +-"Les références fournies ne sont pas valides pour l'initiation contextuelle " +-"ou le traitement des paramètres n'est lié à aucune référence." ++msgid "The supplied credentials were not valid for context initiation, or the credential handle did not reference any credentials." ++msgstr "Les références fournies ne sont pas valides pour l'initiation contextuelle ou le traitement des paramètres n'est lié à aucune référence." + + #: ../camel/camel-sasl-gssapi.c:183 + msgid "The supplied context handle did not refer to a valid context." +@@ -1984,7 +1886,7 @@ msgstr "Les références ont expiré." + #: ../camel/camel-sasl-gssapi.c:198 ../camel/camel-sasl-gssapi.c:246 + #: ../camel/camel-sasl-gssapi.c:282 ../camel/camel-sasl-gssapi.c:297 + #: ../camel/camel-sasl-kerberos4.c:229 +-#: ../camel/providers/imap/camel-imap-store.c:1278 ++#: ../camel/providers/imap/camel-imap-store.c:1280 + msgid "Bad authentication response from server." + msgstr "Mauvaise réponse d'authentification en provenance du serveur." + +@@ -1998,18 +1900,12 @@ msgstr "Kerberos 4" + + #: ../camel/camel-sasl-kerberos4.c:47 + msgid "This option will connect to the server using Kerberos 4 authentication." +-msgstr "" +-"Cette option utilisera l'authentification Kerberos 4 pour se connecter au " +-"serveur." ++msgstr "Cette option utilisera l'authentification Kerberos 4 pour se connecter au serveur." + + #: ../camel/camel-sasl-kerberos4.c:172 + #, c-format +-msgid "" +-"Could not get Kerberos ticket:\n" +-"%s" +-msgstr "" +-"Impossible d'obtenir l'étiquette Kerberos :\n" +-"%s" ++msgid "Could not get Kerberos ticket:\n%s" ++msgstr "Impossible d'obtenir l'étiquette Kerberos :\n%s" + + #: ../camel/camel-sasl-login.c:34 + msgid "Login" +@@ -2017,8 +1913,7 @@ msgstr "Connexion" + + #: ../camel/camel-sasl-login.c:36 ../camel/camel-sasl-plain.c:36 + msgid "This option will connect to the server using a simple password." +-msgstr "" +-"Cette option utilisera un simple mot de passe pour se connecter au serveur." ++msgstr "Cette option utilisera un simple mot de passe pour se connecter au serveur." + + #: ../camel/camel-sasl-login.c:133 + msgid "Unknown authentication state." +@@ -2029,12 +1924,8 @@ msgid "NTLM / SPA" + msgstr "NTLM / SPA" + + #: ../camel/camel-sasl-ntlm.c:34 +-msgid "" +-"This option will connect to a Windows-based server using NTLM / Secure " +-"Password Authentication." +-msgstr "" +-"Cette option se connectera à un serveur Windows via la méthode NTLM / Secure " +-"Password Authentification." ++msgid "This option will connect to a Windows-based server using NTLM / Secure Password Authentication." ++msgstr "Cette option se connectera à un serveur Windows via la méthode NTLM / Secure Password Authentification." + + #: ../camel/camel-sasl-plain.c:34 + msgid "PLAIN" +@@ -2080,14 +1971,10 @@ msgstr "L'URL « %s » nécessite un c + msgid "URL '%s' needs a path component" + msgstr "L'URL « %s » nécessite un composant « chemin »." + +-#: ../camel/camel-session.c:286 ++#: ../camel/camel-session.c:292 + #, c-format +-msgid "" +-"Could not create directory %s:\n" +-"%s" +-msgstr "" +-"Impossible de créer le répertoire %s :\n" +-"%s" ++msgid "Could not create directory %s:\n%s" ++msgstr "Impossible de créer le répertoire %s :\n%s" + + #: ../camel/camel-smime-context.c:229 + #, c-format +@@ -2217,14 +2104,11 @@ msgstr "L'importation du certificat a é + + #: ../camel/camel-smime-context.c:597 + msgid "Certificate is the only message, cannot verify certificates" +-msgstr "" +-"Message contenant un certificat uniquement, impossible de vérifier les " +-"certificats" ++msgstr "Message contenant un certificat uniquement, impossible de vérifier les certificats" + + #: ../camel/camel-smime-context.c:600 + msgid "Certificate is the only message, certificates imported and verified" +-msgstr "" +-"Message contenant un certificat uniquement, certificats importés et vérifiés" ++msgstr "Message contenant un certificat uniquement, certificats importés et vérifiés" + + #: ../camel/camel-smime-context.c:604 + msgid "Cannot find signature digests" +@@ -2353,8 +2237,7 @@ msgstr "Impossible de décrypter la sign + + #: ../camel/camel-tcp-stream-openssl.c:574 + msgid "Unable to decrypt Certificate Revocation List signature" +-msgstr "" +-"Impossible de décrypter la signature de la liste de révocations de certificat" ++msgstr "Impossible de décrypter la signature de la liste de révocations de certificat" + + #: ../camel/camel-tcp-stream-openssl.c:576 + msgid "Unable to decode issuer's public key" +@@ -2456,97 +2339,49 @@ msgstr "L'utilisation de la clé ne perm + msgid "Error in application verification" + msgstr "Erreur de vérification de l'application" + +-#: ../camel/camel-tcp-stream-openssl.c:696 ../camel/camel-tcp-stream-ssl.c:838 ++#: ../camel/camel-tcp-stream-openssl.c:696 ../camel/camel-tcp-stream-ssl.c:886 + #, c-format +-msgid "" +-"Issuer: %s\n" +-"Subject: %s\n" +-"Fingerprint: %s\n" +-"Signature: %s" +-msgstr "" +-"Émetteur : %s\n" +-"Sujet : %s\n" +-"Empreinte : %s\n" +-"Signature : %s" ++msgid "Issuer: %s\nSubject: %s\nFingerprint: %s\nSignature: %s" ++msgstr "Émetteur : %s\nSujet : %s\nEmpreinte : %s\nSignature : %s" + +-#: ../camel/camel-tcp-stream-openssl.c:702 ../camel/camel-tcp-stream-ssl.c:844 ++#: ../camel/camel-tcp-stream-openssl.c:702 ../camel/camel-tcp-stream-ssl.c:892 + msgid "GOOD" + msgstr "BON" + +-#: ../camel/camel-tcp-stream-openssl.c:702 ../camel/camel-tcp-stream-ssl.c:844 ++#: ../camel/camel-tcp-stream-openssl.c:702 ../camel/camel-tcp-stream-ssl.c:892 + msgid "BAD" + msgstr "MAUVAIS" + + #: ../camel/camel-tcp-stream-openssl.c:704 + #, c-format +-msgid "" +-"Bad certificate from %s:\n" +-"\n" +-"%s\n" +-"\n" +-"%s\n" +-"\n" +-"Do you wish to accept anyway?" +-msgstr "" +-"Mauvais certificat de %s : \n" +-"\n" +-"%s\n" +-"\n" +-"%s\n" +-"\n" +-"Désirez-vous l'accepter quand même ?" ++msgid "Bad certificate from %s:\n\n%s\n\n%s\n\nDo you wish to accept anyway?" ++msgstr "Mauvais certificat de %s : \n\n%s\n\n%s\n\nDésirez-vous l'accepter quand même ?" + + #. construct our user prompt +-#: ../camel/camel-tcp-stream-ssl.c:848 ++#: ../camel/camel-tcp-stream-ssl.c:896 + #, c-format +-msgid "" +-"SSL Certificate check for %s:\n" +-"\n" +-"%s\n" +-"\n" +-"Do you wish to accept?" +-msgstr "" +-"Vérification du certificat SSL pour %s :\n" +-"\n" +-"%s\n" +-"\n" +-"Désirez-vous accepter ?" +- +-#: ../camel/camel-tcp-stream-ssl.c:892 +-#, c-format +-msgid "" +-"Certificate problem: %s\n" +-"Issuer: %s" +-msgstr "" +-"Problème de certificat : %s\n" +-"Émetteur : %s" ++msgid "SSL Certificate check for %s:\n\n%s\n\nDo you wish to accept?" ++msgstr "Vérification du certificat SSL pour %s :\n\n%s\n\nDésirez-vous accepter ?" + +-#: ../camel/camel-tcp-stream-ssl.c:944 ++#: ../camel/camel-tcp-stream-ssl.c:940 + #, c-format +-msgid "" +-"Bad certificate domain: %s\n" +-"Issuer: %s" +-msgstr "" +-"Mauvais domaine de certificat : %s\n" +-"Émetteur : %s" ++msgid "Certificate problem: %s\nIssuer: %s" ++msgstr "Problème de certificat : %s\nÉmetteur : %s" + +-#: ../camel/camel-tcp-stream-ssl.c:962 ++#: ../camel/camel-tcp-stream-ssl.c:992 + #, c-format +-msgid "" +-"Certificate expired: %s\n" +-"Issuer: %s" +-msgstr "" +-"Certificat expiré : %s\n" +-"Émetteur : %s" ++msgid "Bad certificate domain: %s\nIssuer: %s" ++msgstr "Mauvais domaine de certificat : %s\nÉmetteur : %s" + +-#: ../camel/camel-tcp-stream-ssl.c:979 ++#: ../camel/camel-tcp-stream-ssl.c:1010 + #, c-format +-msgid "" +-"Certificate revocation list expired: %s\n" +-"Issuer: %s" +-msgstr "" +-"Liste de révocations de certificat expirée : %s\n" +-"Émetteur : %s" ++msgid "Certificate expired: %s\nIssuer: %s" ++msgstr "Certificat expiré : %s\nÉmetteur : %s" ++ ++#: ../camel/camel-tcp-stream-ssl.c:1027 ++#, c-format ++msgid "Certificate revocation list expired: %s\nIssuer: %s" ++msgstr "Liste de révocations de certificat expirée : %s\nÉmetteur : %s" + + #: ../camel/camel-url.c:293 + #, c-format +@@ -2565,8 +2400,7 @@ msgstr "Aucun message de type %s dans %s + + #: ../camel/camel-vee-folder.c:642 ../camel/camel-vee-folder.c:648 + msgid "Cannot copy or move messages into a Virtual Folder" +-msgstr "" +-"Impossible de copier ou déplacer des messages vers des dossiers virtuels." ++msgstr "Impossible de copier ou déplacer des messages vers des dossiers virtuels." + + #: ../camel/camel-vee-store.c:101 ../camel/camel-vee-store.c:344 + msgid "Unmatched" +@@ -2590,29 +2424,25 @@ msgstr "Impossible de copier des message + msgid "Cannot copy messages to the Junk folder" + msgstr "Impossible de copier des messages dans le dossier de Spam " + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:116 +-#: ../camel/providers/imap/camel-imap-folder.c:2062 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:112 ++#: ../camel/providers/imap/camel-imap-folder.c:2063 + #, c-format +-msgid "" +-"Cannot get message: %s\n" +-" %s" +-msgstr "" +-"Impossible d'obtenir le message : %s\n" +-" %s" ++msgid "Cannot get message: %s\n %s" ++msgstr "Impossible d'obtenir le message : %s\n %s" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:116 +-#: ../camel/providers/imap/camel-imap-folder.c:2062 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:112 ++#: ../camel/providers/imap/camel-imap-folder.c:2063 + #: ../camel/providers/local/camel-maildir-folder.c:245 + #: ../camel/providers/local/camel-mbox-folder.c:350 + #: ../camel/providers/local/camel-mh-folder.c:203 + msgid "No such message" + msgstr "Aucun message correspondant" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:128 +-#: ../camel/providers/imap4/camel-imap4-folder.c:787 +-#: ../camel/providers/nntp/camel-nntp-folder.c:154 +-#: ../camel/providers/nntp/camel-nntp-folder.c:230 +-#: ../camel/providers/nntp/camel-nntp-folder.c:369 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:124 ++#: ../camel/providers/imap4/camel-imap4-folder.c:788 ++#: ../camel/providers/nntp/camel-nntp-folder.c:155 ++#: ../camel/providers/nntp/camel-nntp-folder.c:231 ++#: ../camel/providers/nntp/camel-nntp-folder.c:370 + #: ../camel/providers/pop3/camel-pop3-folder.c:263 + #: ../camel/providers/pop3/camel-pop3-folder.c:431 + #: ../camel/providers/pop3/camel-pop3-folder.c:492 +@@ -2620,12 +2450,12 @@ msgstr "Aucun message correspondant" + msgid "User cancelled" + msgstr "Opération annulée" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:135 +-#: ../camel/providers/imap4/camel-imap4-folder.c:792 +-#: ../camel/providers/nntp/camel-nntp-folder.c:145 +-#: ../camel/providers/nntp/camel-nntp-folder.c:147 +-#: ../camel/providers/nntp/camel-nntp-folder.c:156 +-#: ../camel/providers/nntp/camel-nntp-folder.c:232 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:131 ++#: ../camel/providers/imap4/camel-imap4-folder.c:793 ++#: ../camel/providers/nntp/camel-nntp-folder.c:146 ++#: ../camel/providers/nntp/camel-nntp-folder.c:148 ++#: ../camel/providers/nntp/camel-nntp-folder.c:157 ++#: ../camel/providers/nntp/camel-nntp-folder.c:233 + #: ../camel/providers/pop3/camel-pop3-folder.c:434 + #: ../camel/providers/pop3/camel-pop3-folder.c:495 + #: ../camel/providers/pop3/camel-pop3-folder.c:502 +@@ -2634,39 +2464,44 @@ msgstr "Opération annulée" + msgid "Cannot get message %s: %s" + msgstr "Impossible d'obtenir le message : %s : %s" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:152 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:160 +-#: ../camel/providers/imap4/camel-imap4-folder.c:810 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:148 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:156 ++#: ../camel/providers/imap4/camel-imap4-folder.c:811 + msgid "This message is not available in offline mode." + msgstr "Ce message n'est pas disponible en mode hors-ligne." + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:171 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:178 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1400 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:167 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:174 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1545 + msgid "Could not get message" + msgstr "Impossible d'obtenir le message." + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:702 +-#: ../camel/providers/imap/camel-imap-folder.c:251 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:740 ++#: ../camel/providers/imap/camel-imap-folder.c:252 + #, c-format + msgid "Could not load summary for %s" + msgstr "Impossible de charger le résumé pour %s" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1026 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:563 +-#: ../camel/providers/imap/camel-imap-folder.c:2374 +-#: ../camel/providers/imap/camel-imap-folder.c:2444 +-#, fuzzy, c-format ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:966 ++msgid "Trash Folder Full. Please Empty." ++msgstr "Dossier Corbeille plein. Videz-le." ++ ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1129 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:632 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:744 ++#: ../camel/providers/imap/camel-imap-folder.c:2375 ++#: ../camel/providers/imap/camel-imap-folder.c:2445 ++#, , c-format + msgid "Fetching summary information for new messages in %s" +-msgstr "Récupération des informations de résumé des nouveaux messages." ++msgstr "Récupération d'informations de résumé pour les nouveaux messages dans %s" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1632 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1678 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1813 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1861 + #, c-format + msgid "Cannot append message to folder `%s': %s" + msgstr "Impossible de joindre le message au dossier `%s': %s" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1666 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1849 + #, c-format + msgid "Cannot create message: %s" + msgstr "Impossible de créer le message: %s" +@@ -2679,8 +2514,7 @@ msgstr "Impossible d'obtenir le dossier + #: ../camel/providers/groupwise/camel-groupwise-journal.c:347 + #: ../camel/providers/imap4/camel-imap4-journal.c:320 + msgid "Cannot append message in offline mode: cache unavailable" +-msgstr "" +-"Impossible de joindre le message en mode hors-ligne: cache indisponible" ++msgstr "Impossible de joindre le message en mode hors-ligne: cache indisponible" + + #: ../camel/providers/groupwise/camel-groupwise-journal.c:363 + #: ../camel/providers/imap4/camel-imap4-journal.c:336 +@@ -2708,9 +2542,7 @@ msgstr "Options" + + #: ../camel/providers/groupwise/camel-groupwise-provider.c:58 + msgid "Apply filters to new messages in Inbox on this server" +-msgstr "" +-"Appliquer les filtres aux nouveaux messages dans la boîte de réception sur " +-"ce serveur" ++msgstr "Appliquer les filtres aux nouveaux messages dans la boîte de réception sur ce serveur" + + #: ../camel/providers/groupwise/camel-groupwise-provider.c:60 + msgid "Check new messages for Junk contents" +@@ -2751,66 +2583,62 @@ msgid "Password" + msgstr "Mot de passe" + + #: ../camel/providers/groupwise/camel-groupwise-provider.c:104 +-msgid "" +-"This option will connect to the GroupWise server using a plaintext password." +-msgstr "" +-"Cette option va se connecter au serveur GroupWise en utilisant un mot de " +-"passe en clair." ++msgid "This option will connect to the GroupWise server using a plaintext password." ++msgstr "Cette option va se connecter au serveur GroupWise en utilisant un mot de passe en clair." + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:104 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:103 + msgid "Host or user not available in url" + msgstr "L'hôte ou l'utilisateur n'est pas disponible en url" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:203 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:200 + #, c-format + msgid "%sPlease enter the GroupWise password for %s@%s" + msgstr "%sSaisissez le mot de passe GroupWise pour %s@%s" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:217 +-#: ../camel/providers/imap/camel-imap-store.c:1357 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:214 ++#: ../camel/providers/imap/camel-imap-store.c:1359 + msgid "You didn't enter a password." + msgstr "Vous n'avez pas saisi de mot de passe." + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:231 +-msgid "Unable to authenticate to GroupWise server." ++#: ../camel/providers/groupwise/camel-groupwise-store.c:226 ++#, ++msgid "Unable to authenticate to GroupWise server. " + msgstr "Impossible de s'authentifier sur le serveur GroupWise." + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:298 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:304 + msgid "Some features may not work correctly with your current server version" +-msgstr "" +-"Certaines fonctionnalités peuvent ne pas fonctionner correctement avec la " +-"version actuelle de votre serveur" ++msgstr "Certaines fonctionnalités peuvent ne pas fonctionner correctement avec la version actuelle de votre serveur" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:470 +-#: ../camel/providers/imap/camel-imap-store.c:1872 +-#: ../camel/providers/imap/camel-imap-store.c:2065 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:540 ++#: ../camel/providers/imap/camel-imap-store.c:1868 ++#: ../camel/providers/imap/camel-imap-store.c:2059 + #, c-format + msgid "No such folder %s" + msgstr "Aucun dossier de type « %s »." + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1039 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1230 + msgid "Cannot create GroupWise folders in offline mode." + msgstr "Impossible de créer des dossiers GroupWise en mode hors-ligne." + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1053 +-#: ../camel/providers/imap/camel-imap-store.c:1947 +-#: ../camel/providers/imap/camel-imap-store.c:2318 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1244 ++#: ../camel/providers/imap/camel-imap-store.c:1943 ++#: ../camel/providers/imap/camel-imap-store.c:2312 + msgid "The parent folder is not allowed to contain subfolders" + msgstr "Le dossier parent n'est pas autorisé à contenir des sous-dossiers." + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1130 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1151 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1321 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1342 + #, c-format + msgid "Cannot rename Groupwise folder `%s' to `%s'" + msgstr "Impossible de renommer le le dossier GroupWise `%s' en `%s'" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1183 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1374 + #: ../camel/providers/groupwise/camel-groupwise-transport.c:121 + #, c-format + msgid "GroupWise server %s" + msgstr "Serveur GroupWise %s" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1185 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1376 + #, c-format + msgid "GroupWise service for %s on %s" + msgstr "Service GroupWise pour %s sur %s" +@@ -2824,13 +2652,11 @@ msgstr "Distribution du courrier GroupWi + msgid "Sending Message" + msgstr "Envoi du message" + +-#: ../camel/providers/groupwise/camel-groupwise-transport.c:215 +-msgid "" +-"You have exceed this account's storage limit. Your messages are queued in " +-"Outbox. Try sending after deleting/archiving some mails.\n" +-msgstr "" ++#: ../camel/providers/groupwise/camel-groupwise-transport.c:216 ++msgid "You have exceeded this account's storage limit. Your messages are queued in your Outbox. Resend by pressing Send/Receive after deleting/archiving some of your mail.\n" ++msgstr "Vous avez dépassé la limite de stockage de ce compte. Vos messages sont mis en file d'attente dans votre boîte d'envoi. Renvoyez le message en appuyant sur Envoyer/Recevoir après avoir supprimé/archivé certains de vos messages.\n" + +-#: ../camel/providers/groupwise/camel-groupwise-transport.c:217 ++#: ../camel/providers/groupwise/camel-groupwise-transport.c:218 + #: ../camel/providers/sendmail/camel-sendmail-transport.c:206 + #, c-format + msgid "Could not send message: %s" +@@ -2892,113 +2718,104 @@ msgstr "Espace de noms" + + #: ../camel/providers/hula/camel-hula-provider.c:75 + msgid "Hula" +-msgstr "" ++msgstr "Hula" + + #: ../camel/providers/hula/camel-hula-provider.c:77 +-#, fuzzy ++#, + msgid "For accessing Hula servers" +-msgstr "Pour accéder aux serveurs Novell GroupWise" ++msgstr "Pour accéder aux serveurs Hula" + + #: ../camel/providers/hula/camel-hula-provider.c:94 +-#, fuzzy ++#, + msgid "This option will connect to the Hula server using a plaintext password." +-msgstr "" +-"Cette option utilisera un mot de passe en clair pour se connecter au serveur " +-"IMAP." ++msgstr "Cette option utilisera un mot de passe en clair pour se connecter au serveur Hula." + +-#: ../camel/providers/imap/camel-imap-command.c:222 +-#: ../camel/providers/imap/camel-imap-command.c:264 +-#: ../camel/providers/imap/camel-imap-command.c:471 +-#: ../camel/providers/imap/camel-imap-store.c:3005 ++#: ../camel/providers/imap/camel-imap-command.c:223 ++#: ../camel/providers/imap/camel-imap-command.c:265 ++#: ../camel/providers/imap/camel-imap-command.c:472 ++#: ../camel/providers/imap/camel-imap-store.c:3010 + msgid "Operation cancelled" + msgstr "Opération annulée" + +-#: ../camel/providers/imap/camel-imap-command.c:309 +-#: ../camel/providers/imap/camel-imap-store.c:3008 ++#: ../camel/providers/imap/camel-imap-command.c:310 ++#: ../camel/providers/imap/camel-imap-store.c:3013 + #, c-format + msgid "Server unexpectedly disconnected: %s" + msgstr "Serveur déconnecté de manière inattendue : %s" + + #. for imap ALERT codes, account user@host + #. we might get a ']' from a BAD response since we +12, but who cares? +-#: ../camel/providers/imap/camel-imap-command.c:330 ++#: ../camel/providers/imap/camel-imap-command.c:331 + #, c-format +-msgid "" +-"Alert from IMAP server %s@%s:\n" +-"%s" +-msgstr "" +-"Alerte du serveur IMAP %s@%s : \n" +-"%s" ++msgid "Alert from IMAP server %s@%s:\n%s" ++msgstr "Alerte du serveur IMAP %s@%s : \n%s" + +-#: ../camel/providers/imap/camel-imap-command.c:399 ++#: ../camel/providers/imap/camel-imap-command.c:400 + #, c-format + msgid "Unexpected response from IMAP server: %s" + msgstr "Réponse inattendue du serveur IMAP : %s" + +-#: ../camel/providers/imap/camel-imap-command.c:409 ++#: ../camel/providers/imap/camel-imap-command.c:410 + #, c-format + msgid "IMAP command failed: %s" + msgstr "La commande IMAP a échoué : %s" + +-#: ../camel/providers/imap/camel-imap-command.c:485 ++#: ../camel/providers/imap/camel-imap-command.c:486 + msgid "Server response ended too soon." + msgstr "La réponse du serveur s'est terminée trop tôt." + +-#: ../camel/providers/imap/camel-imap-command.c:692 ++#: ../camel/providers/imap/camel-imap-command.c:693 + #, c-format + msgid "IMAP server response did not contain %s information" + msgstr "La réponse du serveur IMAP ne contient pas l'information %s" + +-#: ../camel/providers/imap/camel-imap-command.c:728 ++#: ../camel/providers/imap/camel-imap-command.c:729 + #, c-format + msgid "Unexpected OK response from IMAP server: %s" + msgstr "Réponse OK inattendue du serveur IMAP : %s" + +-#: ../camel/providers/imap/camel-imap-folder.c:232 ++#: ../camel/providers/imap/camel-imap-folder.c:233 + #, c-format + msgid "Could not create directory %s: %s" + msgstr "Impossible de créer le répertoire %s : %s" + +-#: ../camel/providers/imap/camel-imap-folder.c:336 ++#: ../camel/providers/imap/camel-imap-folder.c:337 + msgid "Folder was destroyed and recreated on server." + msgstr "Le dossier a été détruit et recréé sur le serveur." + + #. Check UIDs and flags of all messages we already know of. +-#: ../camel/providers/imap/camel-imap-folder.c:633 +-#, fuzzy, c-format ++#: ../camel/providers/imap/camel-imap-folder.c:634 ++#, , c-format + msgid "Scanning for changed messages in %s" +-msgstr "Examen des messages modifiés" ++msgstr "Analyse des messages modifiés dans %s" + +-#: ../camel/providers/imap/camel-imap-folder.c:2022 ++#: ../camel/providers/imap/camel-imap-folder.c:2023 + #, c-format + msgid "Unable to retrieve message: %s" + msgstr "Impossible de récupérer le message : %s" + +-#: ../camel/providers/imap/camel-imap-folder.c:2101 +-#: ../camel/providers/imap/camel-imap-folder.c:2716 +-#: ../camel/providers/nntp/camel-nntp-folder.c:218 ++#: ../camel/providers/imap/camel-imap-folder.c:2102 ++#: ../camel/providers/imap/camel-imap-folder.c:2717 ++#: ../camel/providers/nntp/camel-nntp-folder.c:219 + msgid "This message is not currently available" + msgstr "Ce message n'est pas disponible." + +-#: ../camel/providers/imap/camel-imap-folder.c:2552 ++#: ../camel/providers/imap/camel-imap-folder.c:2553 + #, c-format + msgid "Incomplete server response: no information provided for message %d" +-msgstr "" +-"Réponse du serveur incomplète : pas d'information fournit pour le message %d" ++msgstr "Réponse du serveur incomplète : pas d'information fournit pour le message %d" + +-#: ../camel/providers/imap/camel-imap-folder.c:2560 ++#: ../camel/providers/imap/camel-imap-folder.c:2561 + #, c-format + msgid "Incomplete server response: no UID provided for message %d" + msgstr "Réponse du serveur incomplète : aucun UID fournit pour le message %d" + +-#: ../camel/providers/imap/camel-imap-folder.c:2573 ++#: ../camel/providers/imap/camel-imap-folder.c:2574 + #, c-format +-msgid "" +-"Unexpected server response: Identical UIDs provided for messages %d and %d" +-msgstr "" +-"Réponse du serveur inattendue : UID identiques pour les messages %d et %d" ++msgid "Unexpected server response: Identical UIDs provided for messages %d and %d" ++msgstr "Réponse du serveur inattendue : UID identiques pour les messages %d et %d" + +-#: ../camel/providers/imap/camel-imap-folder.c:2754 ++#: ../camel/providers/imap/camel-imap-folder.c:2755 + msgid "Could not find message body in FETCH response." + msgstr "Impossible de trouver le corps du message dans la réponse FETCH." + +@@ -3023,9 +2840,7 @@ msgstr "La mise en cache de %s a échou + #: ../camel/providers/imap/camel-imap-provider.c:66 + #: ../camel/providers/imap4/camel-imap4-provider.c:58 + msgid "_Apply filters to new messages in INBOX on this server" +-msgstr "" +-"A_ppliquer les filtres aux nouveaux messages dans la boîte de réception sur " +-"ce serveur" ++msgstr "A_ppliquer les filtres aux nouveaux messages dans la boîte de réception sur ce serveur" + + #: ../camel/providers/imap/camel-imap-provider.c:68 + #: ../camel/providers/imap4/camel-imap4-provider.c:60 +@@ -3035,8 +2850,7 @@ msgstr "Vérifier si les nouveaux messag + #: ../camel/providers/imap/camel-imap-provider.c:70 + #: ../camel/providers/imap4/camel-imap4-provider.c:62 + msgid "Only check for Junk messa_ges in the INBOX folder" +-msgstr "" +-"Vérifier seulement la présence de _pourriels dans la boîte de réception" ++msgstr "Vérifier seulement la présence de _pourriels dans la boîte de réception" + + #: ../camel/providers/imap/camel-imap-provider.c:72 + #: ../camel/providers/imap4/camel-imap4-provider.c:64 +@@ -3054,26 +2868,24 @@ msgstr "Pour lire et stocker les courrie + #: ../camel/providers/imap/camel-imap-provider.c:98 + #: ../camel/providers/imapp/camel-imapp-provider.c:68 + msgid "This option will connect to the IMAP server using a plaintext password." +-msgstr "" +-"Cette option utilisera un mot de passe en clair pour se connecter au serveur " +-"IMAP." ++msgstr "Cette option utilisera un mot de passe en clair pour se connecter au serveur IMAP." + +-#: ../camel/providers/imap/camel-imap-store.c:440 ++#: ../camel/providers/imap/camel-imap-store.c:447 + #: ../camel/providers/imap4/camel-imap4-store.c:215 + #, c-format + msgid "IMAP server %s" + msgstr "Serveur IMAP %s" + +-#: ../camel/providers/imap/camel-imap-store.c:442 ++#: ../camel/providers/imap/camel-imap-store.c:449 + #: ../camel/providers/imap4/camel-imap4-store.c:217 + #, c-format + msgid "IMAP service for %s on %s" + msgstr "Service IMAP pour %s sur %s" + +-#: ../camel/providers/imap/camel-imap-store.c:572 +-#: ../camel/providers/imap/camel-imap-store.c:587 +-#: ../camel/providers/imap4/camel-imap4-store.c:326 +-#: ../camel/providers/imap4/camel-imap4-store.c:341 ++#: ../camel/providers/imap/camel-imap-store.c:579 ++#: ../camel/providers/imap/camel-imap-store.c:594 ++#: ../camel/providers/imap4/camel-imap4-store.c:329 ++#: ../camel/providers/imap4/camel-imap4-store.c:344 + #: ../camel/providers/nntp/camel-nntp-store.c:185 + #: ../camel/providers/nntp/camel-nntp-store.c:200 + #: ../camel/providers/pop3/camel-pop3-store.c:167 +@@ -3084,18 +2896,18 @@ msgstr "Service IMAP pour %s sur %s" + msgid "Could not connect to %s: %s" + msgstr "Impossible de se connecter à %s : %s" + +-#: ../camel/providers/imap/camel-imap-store.c:573 +-#: ../camel/providers/imap4/camel-imap4-store.c:327 ++#: ../camel/providers/imap/camel-imap-store.c:580 ++#: ../camel/providers/imap4/camel-imap4-store.c:330 + #: ../camel/providers/nntp/camel-nntp-store.c:186 + #: ../camel/providers/pop3/camel-pop3-store.c:168 + #: ../camel/providers/smtp/camel-smtp-transport.c:255 + msgid "SSL unavailable" + msgstr "SSL non disponible" + +-#: ../camel/providers/imap/camel-imap-store.c:584 +-#: ../camel/providers/imap/camel-imap-store.c:858 ++#: ../camel/providers/imap/camel-imap-store.c:591 ++#: ../camel/providers/imap/camel-imap-store.c:865 + #: ../camel/providers/imap4/camel-imap4-store.c:272 +-#: ../camel/providers/imap4/camel-imap4-store.c:338 ++#: ../camel/providers/imap4/camel-imap4-store.c:341 + #: ../camel/providers/imapp/camel-imapp-store.c:248 + #: ../camel/providers/nntp/camel-nntp-store.c:197 + #: ../camel/providers/nntp/camel-nntp-store.c:216 +@@ -3104,103 +2916,93 @@ msgstr "SSL non disponible" + msgid "Connection cancelled" + msgstr "Connexion annulée" + +-#: ../camel/providers/imap/camel-imap-store.c:692 +-#: ../camel/providers/imap/camel-imap-store.c:714 +-#: ../camel/providers/imap/camel-imap-store.c:720 +-#: ../camel/providers/imap4/camel-imap4-store.c:366 +-#: ../camel/providers/imap4/camel-imap4-store.c:379 +-#: ../camel/providers/imap4/camel-imap4-store.c:395 ++#: ../camel/providers/imap/camel-imap-store.c:702 ++#: ../camel/providers/imap/camel-imap-store.c:721 ++#: ../camel/providers/imap/camel-imap-store.c:727 ++#: ../camel/providers/imap4/camel-imap4-store.c:369 ++#: ../camel/providers/imap4/camel-imap4-store.c:382 ++#: ../camel/providers/imap4/camel-imap4-store.c:398 + #, c-format + msgid "Failed to connect to IMAP server %s in secure mode: %s" + msgstr "La connexion au serveur IMAP %s en mode sécurisé a échoué : %s" + +-#: ../camel/providers/imap/camel-imap-store.c:693 ++#: ../camel/providers/imap/camel-imap-store.c:703 + #: ../camel/providers/smtp/camel-smtp-transport.c:323 + msgid "STARTTLS not supported" + msgstr "STARTTLS non supporté" + +-#: ../camel/providers/imap/camel-imap-store.c:715 +-#: ../camel/providers/imap4/camel-imap4-store.c:367 ++#: ../camel/providers/imap/camel-imap-store.c:722 ++#: ../camel/providers/imap4/camel-imap4-store.c:370 + #: ../camel/providers/pop3/camel-pop3-store.c:244 + msgid "SSL negotiations failed" + msgstr "Les négociations SSL ont échoué" + +-#: ../camel/providers/imap/camel-imap-store.c:721 +-#: ../camel/providers/imap4/camel-imap4-store.c:396 ++#: ../camel/providers/imap/camel-imap-store.c:728 ++#: ../camel/providers/imap4/camel-imap4-store.c:399 + #: ../camel/providers/pop3/camel-pop3-store.c:250 + #: ../camel/providers/smtp/camel-smtp-transport.c:362 + msgid "SSL is not available in this build" + msgstr "SSL n'est pas disponible dans cette compilation" + +-#: ../camel/providers/imap/camel-imap-store.c:861 ++#: ../camel/providers/imap/camel-imap-store.c:868 + #: ../camel/providers/imap4/camel-imap4-store.c:275 + #, c-format + msgid "Could not connect with command \"%s\": %s" + msgstr "Impossible de se connecter avec la commande « %s » : %s" + + #. create a dummy "." parent inbox, use to scan, then put back at the top level +-#: ../camel/providers/imap/camel-imap-store.c:1050 +-#: ../camel/providers/imap/camel-imap-store.c:2414 ++#: ../camel/providers/imap/camel-imap-store.c:1052 ++#: ../camel/providers/imap/camel-imap-store.c:2408 + #: ../camel/providers/imap4/camel-imap4-store-summary.c:368 +-#: ../camel/providers/imap4/camel-imap4-store.c:1389 ++#: ../camel/providers/imap4/camel-imap4-store.c:1387 + #: ../camel/providers/local/camel-maildir-folder.c:75 + #: ../camel/providers/local/camel-maildir-store.c:217 + #: ../camel/providers/local/camel-maildir-store.c:289 + #: ../camel/providers/local/camel-maildir-store.c:511 + #: ../camel/providers/local/camel-maildir-store.c:524 +-#: ../camel/providers/local/camel-spool-store.c:460 +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:258 ++#: ../camel/providers/local/camel-spool-store.c:461 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:264 + msgid "Inbox" + msgstr "Boîte de réception" + +-#: ../camel/providers/imap/camel-imap-store.c:1310 ++#: ../camel/providers/imap/camel-imap-store.c:1312 + #, c-format + msgid "IMAP server %s does not support requested authentication type %s" +-msgstr "" +-"Le serveur IMAP %s ne supporte pas le mécanisme d'authentification de type %" +-"s." ++msgstr "Le serveur IMAP %s ne supporte pas le mécanisme d'authentification de type %s." + +-#: ../camel/providers/imap/camel-imap-store.c:1320 +-#: ../camel/providers/smtp/camel-smtp-transport.c:498 ++#: ../camel/providers/imap/camel-imap-store.c:1322 ++#: ../camel/providers/smtp/camel-smtp-transport.c:493 + #, c-format + msgid "No support for authentication type %s" + msgstr "Aucun support pour les authentifications de type %s" + +-#: ../camel/providers/imap/camel-imap-store.c:1343 ++#: ../camel/providers/imap/camel-imap-store.c:1345 + #: ../camel/providers/imapp/camel-imapp-store.c:364 + #, c-format + msgid "%sPlease enter the IMAP password for %s@%s" + msgstr "%sSaisissez le mot de passe IMAP pour %s@%s." + +-#: ../camel/providers/imap/camel-imap-store.c:1386 ++#: ../camel/providers/imap/camel-imap-store.c:1388 + #, c-format +-msgid "" +-"Unable to authenticate to IMAP server.\n" +-"%s\n" +-"\n" +-msgstr "" +-"Impossible de s'authentifier sur le serveur IMAP.\n" +-"%s\n" +-"\n" +- +-#: ../camel/providers/imap/camel-imap-store.c:1884 +-#: ../camel/providers/imap/camel-imap-store.c:2256 +-#: ../camel/providers/imap4/camel-imap4-store.c:1019 ++msgid "Unable to authenticate to IMAP server.\n%s\n\n" ++msgstr "Impossible de s'authentifier sur le serveur IMAP.\n%s\n\n" ++ ++#: ../camel/providers/imap/camel-imap-store.c:1880 ++#: ../camel/providers/imap/camel-imap-store.c:2250 ++#: ../camel/providers/imap4/camel-imap4-store.c:1017 + #, c-format +-msgid "" +-"The folder name \"%s\" is invalid because it contains the character \"%c\"" +-msgstr "" +-"Le nom de dossier « %s » n'est pas valide car il contient le caractère « %c »" ++msgid "The folder name \"%s\" is invalid because it contains the character \"%c\"" ++msgstr "Le nom de dossier « %s » n'est pas valide car il contient le caractère « %c »" + +-#: ../camel/providers/imap/camel-imap-store.c:2001 ++#: ../camel/providers/imap/camel-imap-store.c:1997 + #: ../camel/providers/local/camel-maildir-store.c:190 +-#: ../camel/providers/local/camel-mbox-store.c:201 ++#: ../camel/providers/local/camel-mbox-store.c:202 + #: ../camel/providers/local/camel-mh-store.c:249 + #, c-format + msgid "Cannot create folder `%s': folder exists." + msgstr "Impossible de créer le dossier « %s » : le dossier existe." + +-#: ../camel/providers/imap/camel-imap-store.c:2267 ++#: ../camel/providers/imap/camel-imap-store.c:2261 + #, c-format + msgid "Unknown parent folder: %s" + msgstr "Dossier parent inconnu : %s" +@@ -3224,9 +3026,7 @@ msgstr "Accueil inattendu du serveur IMA + #: ../camel/providers/imap4/camel-imap4-engine.c:432 + #, c-format + msgid "Cannot select folder `%s': Invalid mailbox name" +-msgstr "" +-"Impossible de sélectionner le dossier « %s » : nom de boîte à lettres non " +-"valide" ++msgstr "Impossible de sélectionner le dossier « %s » : nom de boîte à lettres non valide" + + #: ../camel/providers/imap4/camel-imap4-engine.c:438 + #, c-format +@@ -3241,99 +3041,79 @@ msgstr "Impossible de sélectionner le d + msgid "IMAP4 server %s unexpectedly disconnected: %s" + msgstr "Le serveur IMAP4 %s s'est déconnecté de manière inattendue : %s" + +-#: ../camel/providers/imap4/camel-imap4-folder.c:85 +-msgid "" +-"Enable Mailing-List detection required for some filter and vFolder rules" +-msgstr "" +-"L'activation de la détection des listes d'envois est requise pour certaines " +-"règles de filtres et de vFolder" ++#: ../camel/providers/imap4/camel-imap4-folder.c:86 ++msgid "Enable Mailing-List detection required for some filter and vFolder rules" ++msgstr "L'activation de la détection des listes d'envois est requise pour certaines règles de filtres et de vFolder" + +-#: ../camel/providers/imap4/camel-imap4-folder.c:398 ++#: ../camel/providers/imap4/camel-imap4-folder.c:399 + #, c-format + msgid "Cannot access folder `%s': %s" + msgstr "Impossible d'obtenir le dossier `%s': %s" + +-#: ../camel/providers/imap4/camel-imap4-folder.c:457 ++#: ../camel/providers/imap4/camel-imap4-folder.c:458 + #, c-format + msgid "Cannot sync flags to folder `%s': Unknown" +-msgstr "" +-"Impossible de synchroniser les drapeaux pour le dossier « %s » : inconnu" ++msgstr "Impossible de synchroniser les drapeaux pour le dossier « %s » : inconnu" + +-#: ../camel/providers/imap4/camel-imap4-folder.c:463 ++#: ../camel/providers/imap4/camel-imap4-folder.c:464 + #, c-format + msgid "Cannot sync flags to folder `%s': Bad command" +-msgstr "" +-"Impossible de synchroniser les drapeaux pour le dossier « %s » : commande " +-"incorrecte" ++msgstr "Impossible de synchroniser les drapeaux pour le dossier « %s » : commande incorrecte" + +-#: ../camel/providers/imap4/camel-imap4-folder.c:603 ++#: ../camel/providers/imap4/camel-imap4-folder.c:604 + #, c-format + msgid "Cannot expunge folder `%s': Unknown" + msgstr "Impossible de purger le dossier « %s » : inconnu" + +-#: ../camel/providers/imap4/camel-imap4-folder.c:608 ++#: ../camel/providers/imap4/camel-imap4-folder.c:609 + #, c-format + msgid "Cannot expunge folder `%s': Bad command" + msgstr "Impossible de purger le dossier « %s » : commande incorrecte" + +-#: ../camel/providers/imap4/camel-imap4-folder.c:864 ++#: ../camel/providers/imap4/camel-imap4-folder.c:865 + #, c-format + msgid "Cannot get message %s from folder `%s': No such message" +-msgstr "" +-"Impossible d'obtenir le message %s du dossier « %s » : aucun message " +-"correspondant" ++msgstr "Impossible d'obtenir le message %s du dossier « %s » : aucun message correspondant" + +-#: ../camel/providers/imap4/camel-imap4-folder.c:869 ++#: ../camel/providers/imap4/camel-imap4-folder.c:870 + #, c-format + msgid "Cannot get message %s from folder `%s': Bad command" +-msgstr "" +-"Impossible d'obtenir le message %s du dossier « %s » : commande incorrecte" ++msgstr "Impossible d'obtenir le message %s du dossier « %s » : commande incorrecte" + +-#: ../camel/providers/imap4/camel-imap4-folder.c:913 ++#: ../camel/providers/imap4/camel-imap4-folder.c:914 + #, c-format + msgid "Cannot append message to folder `%s': Folder is read-only" +-msgstr "" +-"Impossible d'ajouter le message au dossier « %s » : le dossier est en " +-"lecture seule" ++msgstr "Impossible d'ajouter le message au dossier « %s » : le dossier est en lecture seule" + +-#: ../camel/providers/imap4/camel-imap4-folder.c:1006 ++#: ../camel/providers/imap4/camel-imap4-folder.c:1007 + #, c-format + msgid "Cannot append message to folder `%s': Unknown error" + msgstr "Impossible d'ajouter le message au dossier « %s » : erreur inconnue" + +-#: ../camel/providers/imap4/camel-imap4-folder.c:1035 ++#: ../camel/providers/imap4/camel-imap4-folder.c:1036 + #, c-format + msgid "Cannot append message to folder `%s': Bad command" +-msgstr "" +-"Impossible d'ajouter le message au dossier « %s » : commande incorrecte" ++msgstr "Impossible d'ajouter le message au dossier « %s » : commande incorrecte" + +-#: ../camel/providers/imap4/camel-imap4-folder.c:1155 ++#: ../camel/providers/imap4/camel-imap4-folder.c:1156 + #, c-format + msgid "Cannot move messages from folder `%s' to folder `%s': Unknown" +-msgstr "" +-"Impossible de déplacer les messages à partir du dossier « %s » vers le " +-"dossier « %s » : inconnu" ++msgstr "Impossible de déplacer les messages à partir du dossier « %s » vers le dossier « %s » : inconnu" + +-#: ../camel/providers/imap4/camel-imap4-folder.c:1159 ++#: ../camel/providers/imap4/camel-imap4-folder.c:1160 + #, c-format + msgid "Cannot copy messages from folder `%s' to folder `%s': Unknown" +-msgstr "" +-"Impossible de copier les messages à partir du dossier « %s » vers le dossier " +-"« %s » : inconnu" ++msgstr "Impossible de copier les messages à partir du dossier « %s » vers le dossier « %s » : inconnu" + +-#: ../camel/providers/imap4/camel-imap4-folder.c:1167 ++#: ../camel/providers/imap4/camel-imap4-folder.c:1168 + #, c-format + msgid "Cannot move messages from folder `%s' to folder `%s': Bad command" +-msgstr "" +-"Impossible de déplacer les messages à partir du dossier « %s » vers le " +-"dossier « %s » : commande incorrect" ++msgstr "Impossible de déplacer les messages à partir du dossier « %s » vers le dossier « %s » : commande incorrect" + +-#: ../camel/providers/imap4/camel-imap4-folder.c:1171 ++#: ../camel/providers/imap4/camel-imap4-folder.c:1172 + #, c-format + msgid "Cannot copy messages from folder `%s' to folder `%s': Bad command" +-msgstr "" +-"Impossible de copier les messages à partir du dossier « %s » vers le dossier " +-"« %s » : commande incorrecte" ++msgstr "Impossible de copier les messages à partir du dossier « %s » vers le dossier « %s » : commande incorrecte" + + #: ../camel/providers/imap4/camel-imap4-provider.c:71 + msgid "IMAP4rev1" +@@ -3344,144 +3124,124 @@ msgid "For reading and storing mail on I + msgstr "Pour lire et stocker les courriels sur des serveurs IMAPv4rev1." + + #: ../camel/providers/imap4/camel-imap4-provider.c:90 +-msgid "" +-"This option will connect to the IMAPv4rev1 server using a plaintext password." +-msgstr "" +-"Cette option utilisera un mot de passe en clair pour se connecter au serveur " +-"IMAPv4rev1." ++msgid "This option will connect to the IMAPv4rev1 server using a plaintext password." ++msgstr "Cette option utilisera un mot de passe en clair pour se connecter au serveur IMAPv4rev1." + +-#: ../camel/providers/imap4/camel-imap4-store.c:483 ++#: ../camel/providers/imap4/camel-imap4-store.c:481 + #, c-format +-msgid "" +-"Cannot authenticate to IMAP server %s using the %s authentication mechanism" +-msgstr "" +-"Impossible de se connecter au serveur IMAP %s en utilisant le mécanisme " +-"d'authentification %s" ++msgid "Cannot authenticate to IMAP server %s using the %s authentication mechanism" ++msgstr "Impossible de se connecter au serveur IMAP %s en utilisant le mécanisme d'authentification %s" + +-#: ../camel/providers/imap4/camel-imap4-store.c:532 ++#: ../camel/providers/imap4/camel-imap4-store.c:530 + #, c-format + msgid "%sPlease enter the IMAP password for %s on host %s" + msgstr "%sSaisissez le mot de passe IMAP pour %s sur l'hôte %s" + +-#: ../camel/providers/imap4/camel-imap4-store.c:599 ++#: ../camel/providers/imap4/camel-imap4-store.c:597 + #, c-format + msgid "Cannot authenticate to IMAP server %s using %s" + msgstr "Impossible de s'authentifier sur le serveur IMAP %s en utilisant %s" + +-#: ../camel/providers/imap4/camel-imap4-store.c:761 +-#: ../camel/providers/imap4/camel-imap4-store.c:1029 ++#: ../camel/providers/imap4/camel-imap4-store.c:759 ++#: ../camel/providers/imap4/camel-imap4-store.c:1027 + msgid "Cannot create IMAP folders in offline mode." + msgstr "Impossible de créer des dossier IMAP en mode hors-ligne" + +-#: ../camel/providers/imap4/camel-imap4-store.c:800 ++#: ../camel/providers/imap4/camel-imap4-store.c:798 + #, c-format + msgid "Cannot get folder `%s' on IMAP server %s: Unknown" +-msgstr "" +-"Impossible d'obtenir le dossier « %s » sur le serveur IMAP %s : inconnu" ++msgstr "Impossible d'obtenir le dossier « %s » sur le serveur IMAP %s : inconnu" + +-#: ../camel/providers/imap4/camel-imap4-store.c:881 +-#, fuzzy, c-format ++#: ../camel/providers/imap4/camel-imap4-store.c:879 ++#, , c-format + msgid "Cannot get LIST information for `%s' on IMAP server %s: %s" +-msgstr "" +-"Impossible de recevoir les informations %s pour le motif « %s » sur le " +-"serveur IMAP %s : %s" ++msgstr "Impossible d'obtenir des informations LIST pour « %s » sur le serveur IMAP %s : %s" + +-#: ../camel/providers/imap4/camel-imap4-store.c:883 +-#: ../camel/providers/imap4/camel-imap4-store.c:1556 ++#: ../camel/providers/imap4/camel-imap4-store.c:881 ++#: ../camel/providers/imap4/camel-imap4-store.c:1554 + msgid "Bad command" + msgstr "Commande incorrecte" + +-#: ../camel/providers/imap4/camel-imap4-store.c:962 ++#: ../camel/providers/imap4/camel-imap4-store.c:960 + #, c-format + msgid "Cannot create folder `%s': Invalid mailbox name" +-msgstr "" +-"Impossible de créer le dossier « %s » : nom de boîte à lettres non valide" ++msgstr "Impossible de créer le dossier « %s » : nom de boîte à lettres non valide" + +-#: ../camel/providers/imap4/camel-imap4-store.c:967 ++#: ../camel/providers/imap4/camel-imap4-store.c:965 + #, c-format + msgid "Cannot create folder `%s': Bad command" + msgstr "Impossible de créer le dossier « %s » : commande incorrecte" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1073 ++#: ../camel/providers/imap4/camel-imap4-store.c:1071 + #, c-format + msgid "Cannot delete folder `%s': Special folder" + msgstr "Impossible de supprimer le dossier « %s » : dossier spécial" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1080 ++#: ../camel/providers/imap4/camel-imap4-store.c:1078 + msgid "Cannot delete IMAP folders in offline mode." + msgstr "Impossible de supprimer des dossier IMAP en mode hors-ligne" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1139 ++#: ../camel/providers/imap4/camel-imap4-store.c:1137 + #, c-format + msgid "Cannot delete folder `%s': Invalid mailbox name" +-msgstr "" +-"Impossible de supprimer le dossier « %s » : nom de boîte à lettres non valide" ++msgstr "Impossible de supprimer le dossier « %s » : nom de boîte à lettres non valide" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1144 ++#: ../camel/providers/imap4/camel-imap4-store.c:1142 + #, c-format + msgid "Cannot delete folder `%s': Bad command" + msgstr "Impossible de supprimer le dossier « %s » : commande incorrecte" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1164 ++#: ../camel/providers/imap4/camel-imap4-store.c:1162 + #, c-format + msgid "Cannot rename folder `%s' to `%s': Special folder" + msgstr "Impossible de renommer le dossier « %s » en « %s » : dossier spécial" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1171 ++#: ../camel/providers/imap4/camel-imap4-store.c:1169 + msgid "Cannot rename IMAP folders in offline mode." + msgstr "Impossible de renommer des dossier IMAP en mode hors-ligne" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1202 ++#: ../camel/providers/imap4/camel-imap4-store.c:1200 + #, c-format + msgid "Cannot rename folder `%s' to `%s': Invalid mailbox name" +-msgstr "" +-"Impossible de renommer le dossier  « %s » en « %s » : nom de boîte à lettres " +-"non valide" ++msgstr "Impossible de renommer le dossier  « %s » en « %s » : nom de boîte à lettres non valide" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1207 ++#: ../camel/providers/imap4/camel-imap4-store.c:1205 + #, c-format + msgid "Cannot rename folder `%s' to `%s': Bad command" +-msgstr "" +-"Impossible de renommer le le dossier « %s » en « %s » : commande incorrecte" ++msgstr "Impossible de renommer le le dossier « %s » en « %s » : commande incorrecte" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1554 ++#: ../camel/providers/imap4/camel-imap4-store.c:1552 + #, c-format + msgid "Cannot get %s information for pattern `%s' on IMAP server %s: %s" +-msgstr "" +-"Impossible de recevoir les informations %s pour le motif « %s » sur le " +-"serveur IMAP %s : %s" ++msgstr "Impossible de recevoir les informations %s pour le motif « %s » sur le serveur IMAP %s : %s" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1594 ++#: ../camel/providers/imap4/camel-imap4-store.c:1592 + msgid "Cannot subscribe to IMAP folders in offline mode." + msgstr "Impossible de s'abonner à des des dossier IMAP en mode hors-ligne" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1639 ++#: ../camel/providers/imap4/camel-imap4-store.c:1637 + #, c-format + msgid "Cannot subscribe to folder `%s': Invalid mailbox name" +-msgstr "" +-"Impossible de s'abonner au dossier « %s » : nom de boîte à lettres non valide" ++msgstr "Impossible de s'abonner au dossier « %s » : nom de boîte à lettres non valide" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1644 ++#: ../camel/providers/imap4/camel-imap4-store.c:1642 + #, c-format + msgid "Cannot subscribe to folder `%s': Bad command" + msgstr "Impossible de s'abonner au dossier « %s » : commande incorrecte " + +-#: ../camel/providers/imap4/camel-imap4-store.c:1666 ++#: ../camel/providers/imap4/camel-imap4-store.c:1664 + msgid "Cannot unsubscribe from IMAP folders in offline mode." + msgstr "Impossible de se désabonner à des dossier IMAP en mode hors-ligne" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1711 ++#: ../camel/providers/imap4/camel-imap4-store.c:1709 + #, c-format + msgid "Cannot unsubscribe from folder `%s': Invalid mailbox name" +-msgstr "" +-"Impossible de se désabonner pour le dossier « %s » : nom de boîte à lettres " +-"non valide" ++msgstr "Impossible de se désabonner pour le dossier « %s » : nom de boîte à lettres non valide" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1716 ++#: ../camel/providers/imap4/camel-imap4-store.c:1714 + #, c-format + msgid "Cannot unsubscribe from folder `%s': Bad command" +-msgstr "" +-"Impossible de se désabonner pour le dossier « %s » : commande incorrecte" ++msgstr "Impossible de se désabonner pour le dossier « %s » : commande incorrecte" + + #: ../camel/providers/imap4/camel-imap4-summary.c:1472 + msgid "Scanning for changed messages" +@@ -3515,17 +3275,8 @@ msgid "IMAP+" + msgstr "IMAP+" + + #: ../camel/providers/imapp/camel-imapp-provider.c:50 +-msgid "" +-"Experimental IMAP 4(.1) client\n" +-"This is untested and unsupported code, you want to use plain imap instead.\n" +-"\n" +-" !!! DO NOT USE THIS FOR PRODUCTION EMAIL !!!\n" +-msgstr "" +-"Client IMAP 4(.1) expérimental\n" +-"C'est du code non testé et non supporté, vous devriez utiliser IMAP clair à " +-"la place.\n" +-"\n" +-" !!! NE PAS UTILISEZ EN PRODUCTION !!!\n" ++msgid "Experimental IMAP 4(.1) client\nThis is untested and unsupported code, you want to use plain imap instead.\n\n !!! DO NOT USE THIS FOR PRODUCTION EMAIL !!!\n" ++msgstr "Client IMAP 4(.1) expérimental\nC'est du code non testé et non supporté, vous devriez utiliser IMAP clair à la place.\n\n !!! NE PAS UTILISEZ EN PRODUCTION !!!\n" + + #: ../camel/providers/imapp/camel-imapp-store.c:251 + #, c-format +@@ -3577,18 +3328,14 @@ msgid "Local delivery" + msgstr "Distribution locale" + + #: ../camel/providers/local/camel-local-provider.c:73 +-msgid "" +-"For retrieving (moving) local mail from standard mbox formated spools into " +-"folders managed by Evolution." +-msgstr "" +-"Pour récupérer (déplacer) le courriel local se trouvant dans des boîtes aux " +-"lettres au format standard mbox vers des dossiers gérés par Evolution. " ++#, ++msgid "For retrieving (moving) local mail from standard mbox-formatted spools into folders managed by Evolution." ++msgstr "Pour récupérer (déplacer) du courriel local provenant de fichiers de spool au format standard mbox dans les dossiers gérés par Evolution." + + #: ../camel/providers/local/camel-local-provider.c:87 + #: ../camel/providers/local/camel-local-provider.c:106 + msgid "Apply filters to new messages in INBOX" +-msgstr "" +-"Appliquer les filtres aux nouveaux messages dans la boîte de réception." ++msgstr "Appliquer les filtres aux nouveaux messages dans la boîte de réception." + + #: ../camel/providers/local/camel-local-provider.c:94 + msgid "Maildir-format mail directories" +@@ -3607,67 +3354,62 @@ msgid "Standard Unix mbox spool or direc + msgstr "Répertoire ou ensemble de boîtes aux lettres standard Unix mbox" + + #: ../camel/providers/local/camel-local-provider.c:115 +-msgid "" +-"For reading and storing local mail in external standard mbox spool files.\n" +-"May also be used to read a tree of Elm, Pine, or Mutt style folders." +-msgstr "" +-"Pour lire et stocker le courriel local dans des fichiers externes au format " +-"standard mbox.\n" +-"Peut également être utilisé pour lire un arbre de dossiers Elm, Pine ou Mutt." +- +-#: ../camel/providers/local/camel-local-store.c:155 +-#: ../camel/providers/local/camel-local-store.c:266 +-#: ../camel/providers/local/camel-mbox-store.c:344 +-#: ../camel/providers/local/camel-spool-store.c:125 ++msgid "For reading and storing local mail in external standard mbox spool files.\nMay also be used to read a tree of Elm, Pine, or Mutt style folders." ++msgstr "Pour lire et stocker le courriel local dans des fichiers externes au format standard mbox.\nPeut également être utilisé pour lire un arbre de dossiers Elm, Pine ou Mutt." ++ ++#: ../camel/providers/local/camel-local-store.c:156 ++#: ../camel/providers/local/camel-local-store.c:267 ++#: ../camel/providers/local/camel-mbox-store.c:345 ++#: ../camel/providers/local/camel-spool-store.c:126 + #, c-format + msgid "Store root %s is not an absolute path" + msgstr "La racine de stockage %s n'est pas un chemin absolu" + +-#: ../camel/providers/local/camel-local-store.c:162 ++#: ../camel/providers/local/camel-local-store.c:163 + #, c-format + msgid "Store root %s is not a regular directory" + msgstr "La racine de stockage %s n'est pas un répertoire normal" + +-#: ../camel/providers/local/camel-local-store.c:171 +-#: ../camel/providers/local/camel-local-store.c:179 +-#: ../camel/providers/local/camel-local-store.c:277 ++#: ../camel/providers/local/camel-local-store.c:172 ++#: ../camel/providers/local/camel-local-store.c:180 ++#: ../camel/providers/local/camel-local-store.c:278 + #, c-format + msgid "Cannot get folder: %s: %s" + msgstr "Impossible d'obtenir le dossier : %s : %s" + +-#: ../camel/providers/local/camel-local-store.c:191 ++#: ../camel/providers/local/camel-local-store.c:192 + msgid "Local stores do not have an inbox" + msgstr "Le stockage local n'a pas de boîte de réception" + +-#: ../camel/providers/local/camel-local-store.c:237 ++#: ../camel/providers/local/camel-local-store.c:238 + #, c-format + msgid "Local mail file %s" + msgstr "Fichier de courriel local %s" + +-#: ../camel/providers/local/camel-local-store.c:355 ++#: ../camel/providers/local/camel-local-store.c:356 + #, c-format + msgid "Could not rename folder %s to %s: %s" + msgstr "Impossible de renommer le dossier %s vers %s : %s" + +-#: ../camel/providers/local/camel-local-store.c:420 ++#: ../camel/providers/local/camel-local-store.c:421 + #, c-format + msgid "Could not rename '%s': %s" + msgstr "Impossible de renommer « %s » : %s" + +-#: ../camel/providers/local/camel-local-store.c:445 +-#: ../camel/providers/local/camel-mbox-store.c:273 ++#: ../camel/providers/local/camel-local-store.c:446 ++#: ../camel/providers/local/camel-mbox-store.c:274 + #, c-format + msgid "Could not delete folder summary file `%s': %s" + msgstr "Impossible de supprimer le fichier de résumé de dossier « %s » : %s" + +-#: ../camel/providers/local/camel-local-store.c:455 +-#: ../camel/providers/local/camel-mbox-store.c:285 ++#: ../camel/providers/local/camel-local-store.c:456 ++#: ../camel/providers/local/camel-mbox-store.c:286 + #, c-format + msgid "Could not delete folder index file `%s': %s" + msgstr "Impossible de supprimer le fichier d'index de dossier « %s » : %s" + +-#: ../camel/providers/local/camel-local-store.c:478 +-#: ../camel/providers/local/camel-mbox-store.c:309 ++#: ../camel/providers/local/camel-local-store.c:479 ++#: ../camel/providers/local/camel-mbox-store.c:310 + #, c-format + msgid "Could not delete folder meta file `%s': %s" + msgstr "Impossible de supprimer le meta fichier dossier « %s » : %s" +@@ -3701,12 +3443,8 @@ msgstr "Impossible d'ajouter le message + #: ../camel/providers/local/camel-mh-folder.c:213 + #: ../camel/providers/local/camel-mh-folder.c:222 + #, c-format +-msgid "" +-"Cannot get message: %s from folder %s\n" +-" %s" +-msgstr "" +-"Impossible d'obtenir le message : %s du dossier %s\n" +-" %s." ++msgid "Cannot get message: %s from folder %s\n %s" ++msgstr "Impossible d'obtenir le message : %s du dossier %s\n %s." + + #: ../camel/providers/local/camel-maildir-folder.c:268 + msgid "Invalid message contents" +@@ -3714,21 +3452,21 @@ msgstr "Contenu de message non valide" + + #: ../camel/providers/local/camel-maildir-store.c:146 + #: ../camel/providers/local/camel-maildir-store.c:171 +-#: ../camel/providers/local/camel-mbox-store.c:173 +-#: ../camel/providers/local/camel-mbox-store.c:185 ++#: ../camel/providers/local/camel-mbox-store.c:174 ++#: ../camel/providers/local/camel-mbox-store.c:186 + #, c-format + msgid "Cannot create folder `%s': %s" + msgstr "Impossible de créer le dossier « %s » : %s" + + #: ../camel/providers/local/camel-maildir-store.c:159 +-#: ../camel/providers/local/camel-mbox-store.c:144 ++#: ../camel/providers/local/camel-mbox-store.c:145 + #: ../camel/providers/local/camel-mh-store.c:217 + #, c-format + msgid "Cannot get folder `%s': %s" + msgstr "Impossible d'obtenir le dossier « %s » : %s" + + #: ../camel/providers/local/camel-maildir-store.c:163 +-#: ../camel/providers/local/camel-mbox-store.c:152 ++#: ../camel/providers/local/camel-mbox-store.c:153 + #: ../camel/providers/local/camel-mh-store.c:224 + #, c-format + msgid "Cannot get folder `%s': folder does not exist." +@@ -3737,8 +3475,7 @@ msgstr "Impossible d'obtenir le dossier + #: ../camel/providers/local/camel-maildir-store.c:187 + #, c-format + msgid "Cannot get folder `%s': not a maildir directory." +-msgstr "" +-"Impossible d'obtenir le dossier « %s » : ce n'est pas un répertoire maildir." ++msgstr "Impossible d'obtenir le dossier « %s » : ce n'est pas un répertoire maildir." + + #: ../camel/providers/local/camel-maildir-store.c:232 + #: ../camel/providers/local/camel-maildir-store.c:270 +@@ -3752,8 +3489,8 @@ msgid "not a maildir directory" + msgstr "n'est pas un répertoire maildir" + + #: ../camel/providers/local/camel-maildir-store.c:436 +-#: ../camel/providers/local/camel-spool-store.c:327 +-#: ../camel/providers/local/camel-spool-store.c:341 ++#: ../camel/providers/local/camel-spool-store.c:328 ++#: ../camel/providers/local/camel-spool-store.c:342 + #, c-format + msgid "Could not scan folder `%s': %s" + msgstr "Impossible d'examiner le dossier « %s » : %s" +@@ -3809,63 +3546,57 @@ msgstr "Le dossier semble irrévocableme + msgid "Message construction failed." + msgstr "La construction du message a échoué." + +-#: ../camel/providers/local/camel-mbox-store.c:163 +-#: ../camel/providers/local/camel-mbox-store.c:350 ++#: ../camel/providers/local/camel-mbox-store.c:164 ++#: ../camel/providers/local/camel-mbox-store.c:351 + msgid "Cannot create a folder by this name." + msgstr "Impossible de créer un dossier avec ce nom." + +-#: ../camel/providers/local/camel-mbox-store.c:195 ++#: ../camel/providers/local/camel-mbox-store.c:196 + #, c-format + msgid "Cannot get folder `%s': not a regular file." +-msgstr "" +-"Impossible d'obtenir le dossier « %s » : il ne s'agit pas d'un fichier " +-"normal." ++msgstr "Impossible d'obtenir le dossier « %s » : il ne s'agit pas d'un fichier normal." + +-#: ../camel/providers/local/camel-mbox-store.c:225 +-#: ../camel/providers/local/camel-mbox-store.c:236 +-#: ../camel/providers/local/camel-mbox-store.c:259 +-#, c-format +-msgid "" +-"Could not delete folder `%s':\n" +-"%s" +-msgstr "" +-"Impossible de supprimer le dossier « %s » :\n" +-"%s." ++#: ../camel/providers/local/camel-mbox-store.c:226 ++#: ../camel/providers/local/camel-mbox-store.c:237 ++#: ../camel/providers/local/camel-mbox-store.c:260 ++#, c-format ++msgid "Could not delete folder `%s':\n%s" ++msgstr "Impossible de supprimer le dossier « %s » :\n%s." + +-#: ../camel/providers/local/camel-mbox-store.c:244 ++#: ../camel/providers/local/camel-mbox-store.c:245 + #, c-format + msgid "`%s' is not a regular file." + msgstr "« %s » n'est pas un fichier normal." + +-#: ../camel/providers/local/camel-mbox-store.c:251 ++#: ../camel/providers/local/camel-mbox-store.c:252 + #, c-format + msgid "Folder `%s' is not empty. Not deleted." + msgstr "Le dossier « %s » n'est pas vide. Non supprimé." + +-#: ../camel/providers/local/camel-mbox-store.c:363 ++#: ../camel/providers/local/camel-mbox-store.c:364 + #, c-format + msgid "Cannot create directory `%s': %s." + msgstr "Impossible de créer le répertoire « %s » : %s." + +-#: ../camel/providers/local/camel-mbox-store.c:377 ++#: ../camel/providers/local/camel-mbox-store.c:378 + #, c-format + msgid "Cannot create folder: %s: %s" + msgstr "Impossible de créer le dossier : %s : %s" + +-#: ../camel/providers/local/camel-mbox-store.c:379 ++#: ../camel/providers/local/camel-mbox-store.c:380 + msgid "Folder already exists" + msgstr "Le dossier existe déjà" + +-#: ../camel/providers/local/camel-mbox-store.c:470 ++#: ../camel/providers/local/camel-mbox-store.c:471 + msgid "The new folder name is illegal." + msgstr "Le nouveau nom du dossier n'est pas valide." + +-#: ../camel/providers/local/camel-mbox-store.c:483 ++#: ../camel/providers/local/camel-mbox-store.c:484 + #, c-format + msgid "Could not rename `%s': `%s': %s" + msgstr "Impossible de renommer « %s » : « %s » : %s" + +-#: ../camel/providers/local/camel-mbox-store.c:558 ++#: ../camel/providers/local/camel-mbox-store.c:559 + #, c-format + msgid "Could not rename '%s' to %s: %s" + msgstr "Impossible de renommer « %s » en %s : %s" +@@ -3878,9 +3609,7 @@ msgstr "Impossible d'ouvrir le dossier  + #: ../camel/providers/local/camel-mbox-summary.c:469 + #, c-format + msgid "Fatal mail parser error near position %ld in folder %s" +-msgstr "" +-"Erreur fatale d'analyse du courriel près de la position %ld dans le dossier %" +-"s" ++msgstr "Erreur fatale d'analyse du courriel près de la position %ld dans le dossier %s" + + #: ../camel/providers/local/camel-mbox-summary.c:525 + #, c-format +@@ -3927,8 +3656,7 @@ msgstr "Impossible de stocker le dossier + #: ../camel/providers/local/camel-mbox-summary.c:936 + #: ../camel/providers/local/camel-mbox-summary.c:944 + msgid "Summary and folder mismatch, even after a sync" +-msgstr "" +-"Le résumé et le dossier ne correspondent pas, même après la synchronisation" ++msgstr "Le résumé et le dossier ne correspondent pas, même après la synchronisation" + + #: ../camel/providers/local/camel-mbox-summary.c:870 + #: ../camel/providers/local/camel-spool-summary.c:336 +@@ -3971,68 +3699,60 @@ msgstr "Impossible d'obtenir le dossier + msgid "Cannot open MH directory path: %s: %s" + msgstr "Impossible d'ouvrir le répertoire format MH : %s : %s" + +-#: ../camel/providers/local/camel-spool-store.c:131 ++#: ../camel/providers/local/camel-spool-store.c:132 + #, c-format + msgid "Spool `%s' cannot be opened: %s" + msgstr "Impossible d'ouvrir le spool « %s » : %s" + +-#: ../camel/providers/local/camel-spool-store.c:143 ++#: ../camel/providers/local/camel-spool-store.c:144 + #, c-format + msgid "Spool `%s' is not a regular file or directory" + msgstr "Le spool « %s » n'est pas un fichier ou un répertoire normal" + +-#: ../camel/providers/local/camel-spool-store.c:162 ++#: ../camel/providers/local/camel-spool-store.c:163 + #, c-format + msgid "Folder `%s/%s' does not exist." + msgstr "Le dossier « %s/%s » n'existe pas." + +-#: ../camel/providers/local/camel-spool-store.c:172 ++#: ../camel/providers/local/camel-spool-store.c:173 + #, c-format +-msgid "" +-"Could not open folder `%s':\n" +-"%s" +-msgstr "" +-"Impossible d'ouvrir le dossier « %s » :\n" +-"%s." ++msgid "Could not open folder `%s':\n%s" ++msgstr "Impossible d'ouvrir le dossier « %s » :\n%s." + +-#: ../camel/providers/local/camel-spool-store.c:176 ++#: ../camel/providers/local/camel-spool-store.c:177 + #, c-format + msgid "Folder `%s' does not exist." + msgstr "Le dossier « %s » n'existe pas." + +-#: ../camel/providers/local/camel-spool-store.c:181 ++#: ../camel/providers/local/camel-spool-store.c:182 + #, c-format +-msgid "" +-"Could not create folder `%s':\n" +-"%s" +-msgstr "" +-"Impossible de créer le dossier « %s » :\n" +-"%s." ++msgid "Could not create folder `%s':\n%s" ++msgstr "Impossible de créer le dossier « %s » :\n%s." + +-#: ../camel/providers/local/camel-spool-store.c:189 ++#: ../camel/providers/local/camel-spool-store.c:190 + #, c-format + msgid "`%s' is not a mailbox file." + msgstr "« %s » n'est pas un fichier de boîte à lettres." + +-#: ../camel/providers/local/camel-spool-store.c:206 ++#: ../camel/providers/local/camel-spool-store.c:207 + msgid "Store does not support an INBOX" + msgstr "Le stockage ne supporte pas de boîte de réception." + +-#: ../camel/providers/local/camel-spool-store.c:218 ++#: ../camel/providers/local/camel-spool-store.c:219 + #, c-format + msgid "Spool mail file %s" + msgstr "Fichier de spool de courriels %s" + +-#: ../camel/providers/local/camel-spool-store.c:218 ++#: ../camel/providers/local/camel-spool-store.c:219 + #, c-format + msgid "Spool folder tree %s" + msgstr "Arbre de dossier spool %s" + +-#: ../camel/providers/local/camel-spool-store.c:226 ++#: ../camel/providers/local/camel-spool-store.c:227 + msgid "Spool folders cannot be renamed" + msgstr "Les dossiers spool ne peuvent être renommés" + +-#: ../camel/providers/local/camel-spool-store.c:234 ++#: ../camel/providers/local/camel-spool-store.c:235 + msgid "Spool folders cannot be deleted" + msgstr "Les dossiers spool ne peuvent être supprimés" + +@@ -4052,42 +3772,34 @@ msgstr "Impossible de synchroniser le do + #: ../camel/providers/local/camel-spool-summary.c:263 + #: ../camel/providers/local/camel-spool-summary.c:276 + #, c-format +-msgid "" +-"Could not sync spool folder %s: %s\n" +-"Folder may be corrupt, copy saved in `%s'" +-msgstr "" +-"Impossible de synchroniser le dossier spool %s : %s\n" +-"Le dossier est peut-être corrompu, une copie a été enregistrée dans « %s »" ++msgid "Could not sync spool folder %s: %s\nFolder may be corrupt, copy saved in `%s'" ++msgstr "Impossible de synchroniser le dossier spool %s : %s\nLe dossier est peut-être corrompu, une copie a été enregistrée dans « %s »" + +-#: ../camel/providers/nntp/camel-nntp-folder.c:174 +-#: ../camel/providers/nntp/camel-nntp-folder.c:206 ++#: ../camel/providers/nntp/camel-nntp-folder.c:175 ++#: ../camel/providers/nntp/camel-nntp-folder.c:207 + #, c-format + msgid "Internal error: uid in invalid format: %s" + msgstr "Erreur interne : format d'uid non valide : %s" + +-#: ../camel/providers/nntp/camel-nntp-folder.c:326 +-#: ../camel/providers/nntp/camel-nntp-folder.c:329 +-#: ../camel/providers/nntp/camel-nntp-folder.c:371 +-#: ../camel/providers/nntp/camel-nntp-folder.c:373 ++#: ../camel/providers/nntp/camel-nntp-folder.c:327 ++#: ../camel/providers/nntp/camel-nntp-folder.c:330 ++#: ../camel/providers/nntp/camel-nntp-folder.c:372 ++#: ../camel/providers/nntp/camel-nntp-folder.c:374 + #, c-format + msgid "Posting failed: %s" + msgstr "L'envoi a échoué : %s" + +-#: ../camel/providers/nntp/camel-nntp-folder.c:391 ++#: ../camel/providers/nntp/camel-nntp-folder.c:392 + msgid "You cannot post NNTP messages while working offline!" +-msgstr "" +-"Vous ne pouver pas poster des messages NNTP pendant que vous êtes hors-ligne." ++msgstr "Vous ne pouver pas poster des messages NNTP pendant que vous êtes hors-ligne." + +-#: ../camel/providers/nntp/camel-nntp-folder.c:402 ++#: ../camel/providers/nntp/camel-nntp-folder.c:403 + msgid "You cannot copy messages from a NNTP folder!" + msgstr "Vous ne pouvez pas copier de messages à partir d'un dossier NNTP." + + #: ../camel/providers/nntp/camel-nntp-provider.c:44 +-msgid "" +-"Show folders in short notation (e.g. c.o.linux rather than comp.os.linux)" +-msgstr "" +-"Afficher les dossiers en notation abrégée (ex. c.o.linux plutôt que comp.os." +-"linux)" ++msgid "Show folders in short notation (e.g. c.o.linux rather than comp.os.linux)" ++msgstr "Afficher les dossiers en notation abrégée (ex. c.o.linux plutôt que comp.os.linux)" + + #: ../camel/providers/nntp/camel-nntp-provider.c:46 + msgid "In the subscription dialog, show relative folder names" +@@ -4099,17 +3811,11 @@ msgstr "Nouvelles USENET" + + #: ../camel/providers/nntp/camel-nntp-provider.c:55 + msgid "This is a provider for reading from and posting to USENET newsgroups." +-msgstr "" +-"C'est un fournisseur pour la lecture et la publication dans les groupes de " +-"discussion USENET." ++msgstr "C'est un fournisseur pour la lecture et la publication dans les groupes de discussion USENET." + + #: ../camel/providers/nntp/camel-nntp-provider.c:74 +-msgid "" +-"This option will authenticate with the NNTP server using a plaintext " +-"password." +-msgstr "" +-"Cette option utilisera un mot de passe en clair pour l'authentification au " +-"serveur NNTP." ++msgid "This option will authenticate with the NNTP server using a plaintext password." ++msgstr "Cette option utilisera un mot de passe en clair pour l'authentification au serveur NNTP." + + #: ../camel/providers/nntp/camel-nntp-store.c:219 + #, c-format +@@ -4128,41 +3834,20 @@ msgstr "Nouvelles USENET via %s" + + #: ../camel/providers/nntp/camel-nntp-store.c:798 + #, c-format +-msgid "" +-"Error retrieving newsgroups:\n" +-"\n" +-"%s" +-msgstr "" +-"Erreur lors de récupérations des groupes de discussion :\n" +-"\n" +-"%s" ++msgid "Error retrieving newsgroups:\n\n%s" ++msgstr "Erreur lors de récupérations des groupes de discussion :\n\n%s" + + #: ../camel/providers/nntp/camel-nntp-store.c:892 +-msgid "" +-"You cannot subscribe to this newsgroup:\n" +-"\n" +-"No such newsgroup. The selected item is a probably a parent folder." +-msgstr "" +-"Vous ne pouvez pas vous abonner à ce groupe de discussion :\n" +-"\n" +-"Le groupe de discussion n'a pas été trouvé. L'élément sélectionné est " +-"probablement un dossier parent." ++msgid "You cannot subscribe to this newsgroup:\n\nNo such newsgroup. The selected item is a probably a parent folder." ++msgstr "Vous ne pouvez pas vous abonner à ce groupe de discussion :\n\nLe groupe de discussion n'a pas été trouvé. L'élément sélectionné est probablement un dossier parent." + + #: ../camel/providers/nntp/camel-nntp-store.c:924 +-msgid "" +-"You cannot unsubscribe to this newsgroup:\n" +-"\n" +-"newsgroup does not exist!" +-msgstr "" +-"Vous ne pouvez pas vous abonner à ce groupe de discussion :\n" +-"\n" +-"le groupe de discussion n'existe pas !" ++msgid "You cannot unsubscribe to this newsgroup:\n\nnewsgroup does not exist!" ++msgstr "Vous ne pouvez pas vous abonner à ce groupe de discussion :\n\nle groupe de discussion n'existe pas !" + + #: ../camel/providers/nntp/camel-nntp-store.c:949 + msgid "You cannot create a folder in a News store: subscribe instead." +-msgstr "" +-"Impossible de créer un dossier dans un emplacement de nouvelles : abonnez-" +-"vous à la place." ++msgstr "Impossible de créer un dossier dans un emplacement de nouvelles : abonnez-vous à la place." + + #: ../camel/providers/nntp/camel-nntp-store.c:957 + msgid "You cannot rename a folder in a News store." +@@ -4170,9 +3855,7 @@ msgstr "Impossible de renommer un dossie + + #: ../camel/providers/nntp/camel-nntp-store.c:965 + msgid "You cannot remove a folder in a News store: unsubscribe instead." +-msgstr "" +-"Impossible de supprimer un dossier dans un emplacement de nouvelles : " +-"désabonnez-vous à la place." ++msgstr "Impossible de supprimer un dossier dans un emplacement de nouvelles : désabonnez-vous à la place." + + #: ../camel/providers/nntp/camel-nntp-store.c:1146 + msgid "Authentication requested but no username provided" +@@ -4275,33 +3958,22 @@ msgstr "POP" + + #: ../camel/providers/pop3/camel-pop3-provider.c:57 + msgid "For connecting to and downloading mail from POP servers." +-msgstr "" +-"Pour la connexion et le téléchargement du courriel depuis des serveurs POP." ++msgstr "Pour la connexion et le téléchargement du courriel depuis des serveurs POP." + + #: ../camel/providers/pop3/camel-pop3-provider.c:74 +-msgid "" +-"This option will connect to the POP server using a plaintext password. This " +-"is the only option supported by many POP servers." +-msgstr "" +-"Cette option utilisera un mot de passe en clair pour se connecter au serveur " +-"POP. C'est la seule option supportée par la plupart des serveurs POP." ++msgid "This option will connect to the POP server using a plaintext password. This is the only option supported by many POP servers." ++msgstr "Cette option utilisera un mot de passe en clair pour se connecter au serveur POP. C'est la seule option supportée par la plupart des serveurs POP." + + #: ../camel/providers/pop3/camel-pop3-provider.c:84 +-msgid "" +-"This option will connect to the POP server using an encrypted password via " +-"the APOP protocol. This may not work for all users even on servers that " +-"claim to support it." +-msgstr "" +-"Cette option utilisera un mot de passe chiffré via le protocole APOP pour se " +-"connecter au serveur POP. Cela peut ne pas fonctionner pour tous les " +-"utilisateurs même si le serveur prétend pouvoir le supporter." ++msgid "This option will connect to the POP server using an encrypted password via the APOP protocol. This may not work for all users even on servers that claim to support it." ++msgstr "Cette option utilisera un mot de passe chiffré via le protocole APOP pour se connecter au serveur POP. Cela peut ne pas fonctionner pour tous les utilisateurs même si le serveur prétend pouvoir le supporter." + + #: ../camel/providers/pop3/camel-pop3-store.c:202 + #, c-format + msgid "Failed to read a valid greeting from POP server %s" + msgstr "La lecture d'un accueil valide du serveur POP %s a échoué" + +-#: ../camel/providers/pop3/camel-pop3-store.c:216 ++#: ../camel/providers/pop3/camel-pop3-store.c:219 + #: ../camel/providers/pop3/camel-pop3-store.c:233 + #: ../camel/providers/pop3/camel-pop3-store.c:243 + #: ../camel/providers/pop3/camel-pop3-store.c:249 +@@ -4309,66 +3981,53 @@ msgstr "La lecture d'un accueil valide d + msgid "Failed to connect to POP server %s in secure mode: %s" + msgstr "La connexion au serveur POP %s en mode sécurisé a échoué : %s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:217 ++#: ../camel/providers/pop3/camel-pop3-store.c:220 + msgid "STLS not supported" + msgstr "STLS non supporté." + +-#: ../camel/providers/pop3/camel-pop3-store.c:361 ++#: ../camel/providers/pop3/camel-pop3-store.c:356 + #, c-format + msgid "Could not connect to POP server %s" + msgstr "Impossible de se connecter au serveur POP %s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:402 +-#: ../camel/providers/pop3/camel-pop3-store.c:516 ++#: ../camel/providers/pop3/camel-pop3-store.c:397 ++#: ../camel/providers/pop3/camel-pop3-store.c:511 + #, c-format +-msgid "" +-"Unable to connect to POP server %s: No support for requested authentication " +-"mechanism." +-msgstr "" +-"Impossible de se connecter au serveur POP %s : aucun support pour le " +-"mécanisme d'authentification demandé." ++msgid "Unable to connect to POP server %s: No support for requested authentication mechanism." ++msgstr "Impossible de se connecter au serveur POP %s : aucun support pour le mécanisme d'authentification demandé." + +-#: ../camel/providers/pop3/camel-pop3-store.c:418 ++#: ../camel/providers/pop3/camel-pop3-store.c:413 + #, c-format + msgid "SASL `%s' Login failed for POP server %s: %s" + msgstr "L'identification SASL « %s » a échouée pour le serveur POP %s : %s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:430 ++#: ../camel/providers/pop3/camel-pop3-store.c:425 + #, c-format + msgid "Cannot login to POP server %s: SASL Protocol error" +-msgstr "" +-"Identification sur le serveur POP %s impossible : erreur de protocole SASL" ++msgstr "Identification sur le serveur POP %s impossible : erreur de protocole SASL" + +-#: ../camel/providers/pop3/camel-pop3-store.c:449 ++#: ../camel/providers/pop3/camel-pop3-store.c:444 + #, c-format + msgid "Failed to authenticate on POP server %s: %s" + msgstr "L'authentification sur le serveur POP %s a échoué : %s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:475 ++#: ../camel/providers/pop3/camel-pop3-store.c:470 + #, c-format + msgid "%sPlease enter the POP password for %s on host %s" + msgstr "%sSaisissez le mot de passe POP pour %s sur l'hôte %s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:530 +-#: ../camel/providers/pop3/camel-pop3-store.c:543 ++#: ../camel/providers/pop3/camel-pop3-store.c:525 ++#: ../camel/providers/pop3/camel-pop3-store.c:538 + #, c-format +-msgid "" +-"Unable to connect to POP server %s.\n" +-"Error sending password: %s" +-msgstr "" +-"Impossible de se connecter au serveur POP %s.\n" +-"Erreur lors de l'envoi du mot de passe : %s" ++msgid "Unable to connect to POP server %s.\nError sending password: %s" ++msgstr "Impossible de se connecter au serveur POP %s.\nErreur lors de l'envoi du mot de passe : %s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:537 ++#: ../camel/providers/pop3/camel-pop3-store.c:532 + #, c-format +-msgid "" +-"Unable to connect to POP server %s.\n" +-"Error sending username: %s" +-msgstr "" +-"Impossible de se connecter au serveur POP %s.\n" +-"Erreur lors de l'envoi du nom d'utilisateur : %s" ++msgid "Unable to connect to POP server %s.\nError sending username: %s" ++msgstr "Impossible de se connecter au serveur POP %s.\nErreur lors de l'envoi du nom d'utilisateur : %s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:643 ++#: ../camel/providers/pop3/camel-pop3-store.c:638 + #, c-format + msgid "No such folder `%s'." + msgstr "Aucun dossier de type « %s »." +@@ -4378,11 +4037,8 @@ msgid "Sendmail" + msgstr "Sendmail" + + #: ../camel/providers/sendmail/camel-sendmail-provider.c:39 +-msgid "" +-"For delivering mail by passing it to the \"sendmail\" program on the local " +-"system." +-msgstr "" +-"Pour délivrer le courriel via le programme « sendmail » du système local." ++msgid "For delivering mail by passing it to the \"sendmail\" program on the local system." ++msgstr "Pour délivrer le courriel via le programme « sendmail » du système local." + + #: ../camel/providers/sendmail/camel-sendmail-transport.c:114 + msgid "Could not parse recipient list" +@@ -4427,8 +4083,7 @@ msgstr "SMTP" + + #: ../camel/providers/smtp/camel-smtp-provider.c:40 + msgid "For delivering mail by connecting to a remote mailhub using SMTP." +-msgstr "" +-"Pour la distribution du courriel via un distributeur distant utilisant SMTP." ++msgstr "Pour la distribution du courriel via un distributeur distant utilisant SMTP." + + #: ../camel/providers/smtp/camel-smtp-transport.c:162 + msgid "Syntax error, command unrecognized" +@@ -4476,8 +4131,7 @@ msgstr "Utilisateur non local ; transfe + + #: ../camel/providers/smtp/camel-smtp-transport.c:184 + msgid "Requested mail action not taken: mailbox unavailable" +-msgstr "" +-"Opération courriel demandée non effectuée : boîte à lettres non disponible" ++msgstr "Opération courriel demandée non effectuée : boîte à lettres non disponible" + + #: ../camel/providers/smtp/camel-smtp-transport.c:186 + msgid "Requested action not taken: mailbox unavailable" +@@ -4497,8 +4151,7 @@ msgstr "Opération demandée non effectu + + #: ../camel/providers/smtp/camel-smtp-transport.c:194 + msgid "Requested mail action aborted: exceeded storage allocation" +-msgstr "" +-"Opération courriel demandée abandonnée : allocation de stockage excessif" ++msgstr "Opération courriel demandée abandonnée : allocation de stockage excessif" + + #: ../camel/providers/smtp/camel-smtp-transport.c:196 + msgid "Requested action not taken: mailbox name not allowed" +@@ -4548,117 +4201,108 @@ msgstr "La commande STARTTLS a échoué + msgid "STARTTLS command failed" + msgstr "La commande STARTTLS a échoué" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:488 ++#: ../camel/providers/smtp/camel-smtp-transport.c:483 + #, c-format + msgid "SMTP server %s does not support requested authentication type %s." +-msgstr "" +-"Le serveur SMTP %s ne supporte pas le type d'authentification demandé %s." ++msgstr "Le serveur SMTP %s ne supporte pas le type d'authentification demandé %s." + +-#: ../camel/providers/smtp/camel-smtp-transport.c:526 ++#: ../camel/providers/smtp/camel-smtp-transport.c:521 + #, c-format + msgid "%sPlease enter the SMTP password for %s on host %s" + msgstr "%sSaisissez le mot de passe SMTP pour %s sur l'hôte %s" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:545 ++#: ../camel/providers/smtp/camel-smtp-transport.c:540 + #, c-format +-msgid "" +-"Unable to authenticate to SMTP server.\n" +-"%s\n" +-"\n" +-msgstr "" +-"Authentification impossible sur le serveur SMTP.\n" +-"%s\n" +-"\n" ++msgid "Unable to authenticate to SMTP server.\n%s\n\n" ++msgstr "Authentification impossible sur le serveur SMTP.\n%s\n\n" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:669 ++#: ../camel/providers/smtp/camel-smtp-transport.c:664 + #, c-format + msgid "SMTP server %s" + msgstr "Serveur SMTP %s" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:671 ++#: ../camel/providers/smtp/camel-smtp-transport.c:666 + #, c-format + msgid "SMTP mail delivery via %s" + msgstr "Distribution du courriel SMTP via %s" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:689 ++#: ../camel/providers/smtp/camel-smtp-transport.c:684 + msgid "Cannot send message: service not connected." + msgstr "Impossible d'envoyer le message : service non connecté." + +-#: ../camel/providers/smtp/camel-smtp-transport.c:695 ++#: ../camel/providers/smtp/camel-smtp-transport.c:690 + msgid "Cannot send message: sender address not valid." +-msgstr "" +-"Impossible d'envoyer le message : l'adresse de l'expéditeur n'est pas valide." ++msgstr "Impossible d'envoyer le message : l'adresse de l'expéditeur n'est pas valide." + +-#: ../camel/providers/smtp/camel-smtp-transport.c:699 ++#: ../camel/providers/smtp/camel-smtp-transport.c:694 + msgid "Sending message" + msgstr "Envoi du message" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:714 ++#: ../camel/providers/smtp/camel-smtp-transport.c:709 + msgid "Cannot send message: no recipients defined." + msgstr "Impossible d'envoyer le message : aucun destinataire n'est défini." + +-#: ../camel/providers/smtp/camel-smtp-transport.c:725 ++#: ../camel/providers/smtp/camel-smtp-transport.c:720 + msgid "Cannot send message: one or more invalid recipients" +-msgstr "" +-"Impossible d'envoyer le message : un ou plusieurs destinataires non valides." ++msgstr "Impossible d'envoyer le message : un ou plusieurs destinataires non valides." + +-#: ../camel/providers/smtp/camel-smtp-transport.c:894 ++#: ../camel/providers/smtp/camel-smtp-transport.c:889 + msgid "SMTP Greeting" + msgstr "Accueil SMTP" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:920 ++#: ../camel/providers/smtp/camel-smtp-transport.c:915 + #, c-format + msgid "HELO command failed: %s" + msgstr "La commande HELO a échoué : %s" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:937 ++#: ../camel/providers/smtp/camel-smtp-transport.c:932 + msgid "HELO command failed" + msgstr "La commande HELO a échoué" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1003 ++#: ../camel/providers/smtp/camel-smtp-transport.c:998 + msgid "SMTP Authentication" + msgstr "Authentification SMTP" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1009 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1004 + msgid "Error creating SASL authentication object." + msgstr "Erreur lors de la création de l'objet authentification SASL" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1026 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1037 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1021 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1032 + #, c-format + msgid "AUTH command failed: %s" + msgstr "La commande AUTH a échoué : %s" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1043 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1038 + msgid "AUTH command failed" + msgstr "La commande AUTH a échoué" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1105 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1100 + msgid "Bad authentication response from server.\n" + msgstr "Mauvaise réponse d'authentification du serveur.\n" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1130 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1125 + #, c-format + msgid "MAIL FROM command failed: %s: mail not sent" + msgstr "La commande MAIL FROM a échoué : %s : courriel non envoyé" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1147 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1142 + msgid "MAIL FROM command failed" + msgstr "La commande MAIL FROM a échoué" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1171 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1166 + #, c-format + msgid "RCPT TO command failed: %s: mail not sent" + msgstr "La commande RCPT TO a échoué : %s : courriel non envoyé" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1190 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1185 + #, c-format + msgid "RCPT TO <%s> failed" + msgstr "RCPT TO <%s> a échoué" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1229 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1287 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1306 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1224 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1282 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1301 + #, c-format + msgid "DATA command failed: %s: mail not sent" + msgstr "La commande DATA a échoué : %s : courriel non envoyé" +@@ -4666,107 +4310,107 @@ msgstr "La commande DATA a échoué : % + #. we should have gotten instructions on how to use the DATA command: + #. * 354 Enter mail, end with "." on a line by itself + #. +-#: ../camel/providers/smtp/camel-smtp-transport.c:1246 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1322 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1241 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1317 + msgid "DATA command failed" + msgstr "La commande DATA a échoué" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1345 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1340 + #, c-format + msgid "RSET command failed: %s" + msgstr "La commande RSET a échoué : %s" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1361 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1356 + msgid "RSET command failed" + msgstr "La commande RSET a échoué" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1384 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1379 + #, c-format + msgid "QUIT command failed: %s" + msgstr "La commande QUIT a échoué : %s" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1398 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1393 + msgid "QUIT command failed" + msgstr "La commande QUIT a échoué" + +-#: ../libedataserver/e-categories.c:242 ++#: ../libedataserver/e-categories.c:248 + msgid "Business" + msgstr "Bureau" + +-#: ../libedataserver/e-categories.c:243 ++#: ../libedataserver/e-categories.c:249 + msgid "Competition" + msgstr "Compétition" + +-#: ../libedataserver/e-categories.c:244 ++#: ../libedataserver/e-categories.c:250 + msgid "Favorites" + msgstr "Favoris" + +-#: ../libedataserver/e-categories.c:245 ++#: ../libedataserver/e-categories.c:251 + msgid "Gifts" + msgstr "Cadeaux" + +-#: ../libedataserver/e-categories.c:246 ++#: ../libedataserver/e-categories.c:252 + msgid "Goals/Objectives" + msgstr "Buts/Objectifs" + +-#: ../libedataserver/e-categories.c:247 ++#: ../libedataserver/e-categories.c:253 + msgid "Holiday" + msgstr "Vacance" + +-#: ../libedataserver/e-categories.c:248 ++#: ../libedataserver/e-categories.c:254 + msgid "Holiday Cards" + msgstr "Cartes postales" + + #. important people (e.g. new business partners) you should pay attention to/observe +-#: ../libedataserver/e-categories.c:250 ++#: ../libedataserver/e-categories.c:256 + msgid "Hot Contacts" + msgstr "Contacts fréquents" + +-#: ../libedataserver/e-categories.c:251 ++#: ../libedataserver/e-categories.c:257 + msgid "Ideas" + msgstr "Idées" + +-#: ../libedataserver/e-categories.c:252 ++#: ../libedataserver/e-categories.c:258 + msgid "International" + msgstr "International" + +-#: ../libedataserver/e-categories.c:253 ++#: ../libedataserver/e-categories.c:259 + msgid "Key Customer" + msgstr "Client clé" + +-#: ../libedataserver/e-categories.c:254 ++#: ../libedataserver/e-categories.c:260 + msgid "Miscellaneous" + msgstr "Divers" + +-#: ../libedataserver/e-categories.c:255 ++#: ../libedataserver/e-categories.c:261 + msgid "Personal" + msgstr "Personnel" + +-#: ../libedataserver/e-categories.c:256 ++#: ../libedataserver/e-categories.c:262 + msgid "Phone Calls" + msgstr "Appels téléphoniques" + +-#: ../libedataserver/e-categories.c:257 ++#: ../libedataserver/e-categories.c:263 + msgid "Status" + msgstr "État" + +-#: ../libedataserver/e-categories.c:258 ++#: ../libedataserver/e-categories.c:264 + msgid "Strategies" + msgstr "Stratégies" + +-#: ../libedataserver/e-categories.c:259 ++#: ../libedataserver/e-categories.c:265 + msgid "Suppliers" + msgstr "Fournisseurs" + +-#: ../libedataserver/e-categories.c:260 ++#: ../libedataserver/e-categories.c:266 + msgid "Time & Expenses" + msgstr "Temps & Dépenses" + +-#: ../libedataserver/e-categories.c:261 ++#: ../libedataserver/e-categories.c:267 + msgid "VIP" + msgstr "VIP" + +-#: ../libedataserver/e-categories.c:262 ++#: ../libedataserver/e-categories.c:268 + msgid "Waiting" + msgstr "En attente" + +@@ -4774,7 +4418,7 @@ msgstr "En attente" + #. in 12-hour format. + #. strftime format of a weekday, a date and a + #. time, in 12-hour format. +-#: ../libedataserver/e-time-utils.c:1319 ../libedataserver/e-time-utils.c:1562 ++#: ../libedataserver/e-time-utils.c:1319 ../libedataserver/e-time-utils.c:1566 + msgid "%a %m/%d/%Y %I:%M:%S %p" + msgstr "%a %d/%m/%Y %I:%M:%S %p" + +@@ -4782,7 +4426,7 @@ msgstr "%a %d/%m/%Y %I:%M:%S %p" + #. in 24-hour format. + #. strftime format of a weekday, a date and a + #. time, in 24-hour format. +-#: ../libedataserver/e-time-utils.c:1324 ../libedataserver/e-time-utils.c:1553 ++#: ../libedataserver/e-time-utils.c:1324 ../libedataserver/e-time-utils.c:1557 + msgid "%a %m/%d/%Y %H:%M:%S" + msgstr "%a %d/%m/%Y %H:%M:%S" + +@@ -4790,7 +4434,7 @@ msgstr "%a %d/%m/%Y %H:%M:%S" + #. in 12-hour format, without seconds. + #. strftime format of a weekday, a date and a + #. time, in 12-hour format, without seconds. +-#: ../libedataserver/e-time-utils.c:1329 ../libedataserver/e-time-utils.c:1558 ++#: ../libedataserver/e-time-utils.c:1329 ../libedataserver/e-time-utils.c:1562 + msgid "%a %m/%d/%Y %I:%M %p" + msgstr "%a %d/%m/%Y %I:%M %p" + +@@ -4798,7 +4442,7 @@ msgstr "%a %d/%m/%Y %I:%M %p" + #. in 24-hour format, without seconds. + #. strftime format of a weekday, a date and a + #. time, in 24-hour format, without seconds. +-#: ../libedataserver/e-time-utils.c:1334 ../libedataserver/e-time-utils.c:1549 ++#: ../libedataserver/e-time-utils.c:1334 ../libedataserver/e-time-utils.c:1553 + msgid "%a %m/%d/%Y %H:%M" + msgstr "%a %d/%m/%Y %H:%M" + +@@ -4816,8 +4460,8 @@ msgstr "%a %d/%m/%Y %H" + + #. strptime format of a weekday and a date. + #. strftime format of a weekday and a date. +-#: ../libedataserver/e-time-utils.c:1347 ../libedataserver/e-time-utils.c:1440 +-#: ../libedataserver/e-time-utils.c:1544 ++#: ../libedataserver/e-time-utils.c:1347 ../libedataserver/e-time-utils.c:1443 ++#: ../libedataserver/e-time-utils.c:1548 + msgid "%a %m/%d/%Y" + msgstr "%a %d/%m/%Y" + +@@ -4857,19 +4501,19 @@ msgstr "%d/%m/%Y %H" + + #. strptime format of a weekday and a date. + #. This is the preferred date format for the locale. +-#: ../libedataserver/e-time-utils.c:1382 ../libedataserver/e-time-utils.c:1443 ++#: ../libedataserver/e-time-utils.c:1382 ../libedataserver/e-time-utils.c:1446 + msgid "%m/%d/%Y" + msgstr "%d/%m/%Y" + + #. strptime format for a time of day, in 12-hour format. + #. strftime format of a time in 12-hour format. +-#: ../libedataserver/e-time-utils.c:1488 ../libedataserver/e-time-utils.c:1607 ++#: ../libedataserver/e-time-utils.c:1492 ../libedataserver/e-time-utils.c:1611 + msgid "%I:%M:%S %p" + msgstr "%I:%M:%S %p" + + #. strptime format for a time of day, in 24-hour format. + #. strftime format of a time in 24-hour format. +-#: ../libedataserver/e-time-utils.c:1492 ../libedataserver/e-time-utils.c:1599 ++#: ../libedataserver/e-time-utils.c:1496 ../libedataserver/e-time-utils.c:1603 + msgid "%H:%M:%S" + msgstr "%H:%M:%S" + +@@ -4877,19 +4521,19 @@ msgstr "%H:%M:%S" + #. in 12-hour format. + #. strftime format of a time in 12-hour format, + #. without seconds. +-#: ../libedataserver/e-time-utils.c:1497 ../libedataserver/e-time-utils.c:1604 ++#: ../libedataserver/e-time-utils.c:1501 ../libedataserver/e-time-utils.c:1608 + msgid "%I:%M %p" + msgstr "%I:%M %p" + + #. strptime format for time of day, without seconds 24-hour format. + #. strftime format of a time in 24-hour format, + #. without seconds. +-#: ../libedataserver/e-time-utils.c:1501 ../libedataserver/e-time-utils.c:1596 ++#: ../libedataserver/e-time-utils.c:1505 ../libedataserver/e-time-utils.c:1600 + msgid "%H:%M" + msgstr "%H:%M" + + #. strptime format for hour and AM/PM, 12-hour format. +-#: ../libedataserver/e-time-utils.c:1505 ++#: ../libedataserver/e-time-utils.c:1509 + msgid "%I %p" + msgstr "%I %p" + +@@ -4897,18 +4541,14 @@ msgstr "%I %p" + msgid "Accessing LDAP Server anonymously" + msgstr "Connexion anonyme au serveur LDAP" + +-#: ../libedataserverui/e-book-auth-util.c:185 ++#: ../libedataserverui/e-book-auth-util.c:191 + msgid "Failed to authenticate.\n" + msgstr "L'authentification a échoué.\n" + + #: ../libedataserverui/e-categories-dialog.c:265 + #, c-format +-msgid "" +-"There is already a category '%s' in the configuration. Please use another " +-"name" +-msgstr "" +-"Il y a déjà une catégorie « %s » dans la configuration. Utilisez un nom " +-"différent" ++msgid "There is already a category '%s' in the configuration. Please use another name" ++msgstr "Il y a déjà une catégorie « %s » dans la configuration. Utilisez un nom différent" + + #: ../libedataserverui/e-categories-dialog.c:435 + msgid "Category" +@@ -4950,15 +4590,15 @@ msgstr "_Éditer" + msgid "categories" + msgstr "catégories" + +-#: ../libedataserverui/e-name-selector-dialog.c:260 ++#: ../libedataserverui/e-name-selector-dialog.c:284 + msgid "Select Contacts from Address Book" + msgstr "Sélectionnez les contacts dans le carnet d'adresses" + +-#: ../libedataserverui/e-name-selector-dialog.c:553 ++#: ../libedataserverui/e-name-selector-dialog.c:578 + msgid "_Add" + msgstr "_Ajouter" + +-#: ../libedataserverui/e-name-selector-dialog.c:578 ++#: ../libedataserverui/e-name-selector-dialog.c:603 + msgid "_Remove" + msgstr "_Supprimer" + +@@ -4987,12 +4627,12 @@ msgid "Address _Book:" + msgstr "_Carnet d'adresses :" + + #: ../libedataserverui/e-name-selector-dialog.glade.h:7 +-#, fuzzy ++#, + msgid "C_ategory:" +-msgstr "Catégorie" ++msgstr "C_atégorie :" + + #: ../libedataserverui/e-name-selector-dialog.glade.h:8 +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:255 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:261 + msgid "Contacts" + msgstr "Contacts" + +@@ -5004,17 +4644,38 @@ msgstr "Rechercher" + msgid "_Search:" + msgstr "_Rechercher :" + ++#. To Translators: This would be similiar to "Expand MyList Inline" where MyList is a Contact List ++#: ../libedataserverui/e-name-selector-entry.c:1997 ++#, c-format ++msgid "E_xpand %s Inline" ++msgstr "Déve_lopper %s en ligne" ++ + #. Edit Contact item +-#: ../libedataserverui/e-name-selector-entry.c:1830 ++#: ../libedataserverui/e-name-selector-entry.c:2013 + #, c-format + msgid "_Edit %s" + msgstr "_Éditer %s" + +-#: ../libedataserverui/e-passwords.c:471 ++#: ../libedataserverui/e-name-selector-list.c:480 ++#, , c-format ++msgid "_Delete %s" ++msgstr "_Supprimer %s" ++ ++#: ../libedataserverui/e-passwords.c:472 ++#, ++msgid "_Remember this passphrase" ++msgstr "_Se souvenir de cette phrase secrète" ++ ++#: ../libedataserverui/e-passwords.c:473 ++#, ++msgid "_Remember this passphrase for the remainder of this session" ++msgstr "_Se souvenir de cette phrase secrète uniquement pour la session en cours" ++ ++#: ../libedataserverui/e-passwords.c:476 + msgid "_Remember this password" + msgstr "_Se souvenir du mot de passe" + +-#: ../libedataserverui/e-passwords.c:472 ++#: ../libedataserverui/e-passwords.c:477 + msgid "_Remember this password for the remainder of this session" + msgstr "_Se souvenir de mot de passe uniquement pour la session en cours" + +@@ -5027,14 +4688,14 @@ msgstr "Sélectionnez la destination" + msgid "_Destination" + msgstr "_Destination" + +-#: ../servers/exchange/lib/e2k-autoconfig.c:1574 +-#: ../servers/exchange/storage/exchange-account.c:939 ++#: ../servers/exchange/lib/e2k-autoconfig.c:1647 ++#: ../servers/exchange/storage/exchange-account.c:932 + #, c-format + msgid "Enter password for %s" + msgstr "Saisissez le mot de passe pour %s" + +-#: ../servers/exchange/lib/e2k-autoconfig.c:1575 +-#: ../servers/exchange/storage/exchange-account.c:944 ++#: ../servers/exchange/lib/e2k-autoconfig.c:1648 ++#: ../servers/exchange/storage/exchange-account.c:937 + msgid "Enter password" + msgstr "Saisissez le mot de passe" + +@@ -5080,14 +4741,6 @@ msgstr "Aucun" + msgid "Custom" + msgstr "Spécifique" + +-#: ../servers/exchange/lib/e2k-user-dialog.c:144 +-msgid "Select User" +-msgstr "Sélection de l'utilisateur" +- +-#: ../servers/exchange/lib/e2k-user-dialog.c:182 +-msgid "Addressbook..." +-msgstr "Carnet d'adresses..." +- + #: ../servers/exchange/storage/e-storage.c:556 + msgid "Generic error" + msgstr "Erreur générique" +@@ -5134,8 +4787,7 @@ msgstr "Le dossier spécifié ne peut pa + + #: ../servers/exchange/storage/e-storage.c:580 + msgid "Cannot make a folder a child of one of its descendants" +-msgstr "" +-"Impossible de transformer un dossier en fils de l'un de ses descendants" ++msgstr "Impossible de transformer un dossier en fils de l'un de ses descendants" + + #: ../servers/exchange/storage/e-storage.c:582 + msgid "Cannot create a folder with that name" +@@ -5147,70 +4799,70 @@ msgstr "Cette opération ne peut pas êt + + #. i18n: This is the title of an "other user's folders" + #. hierarchy. Eg, "John Doe's Folders". +-#: ../servers/exchange/storage/exchange-account.c:642 ++#: ../servers/exchange/storage/exchange-account.c:635 + #, c-format + msgid "%s's Folders" + msgstr "Dossiers de %s" + +-#: ../servers/exchange/storage/exchange-account.c:1301 ++#: ../servers/exchange/storage/exchange-account.c:1238 + msgid "Personal Folders" + msgstr "Dossiers personnels" + +-#: ../servers/exchange/storage/exchange-account.c:1315 ++#: ../servers/exchange/storage/exchange-account.c:1252 + msgid "Favorite Public Folders" + msgstr "Dossiers public favoris" + + #. i18n: Outlookism +-#: ../servers/exchange/storage/exchange-account.c:1332 ++#: ../servers/exchange/storage/exchange-account.c:1269 + msgid "All Public Folders" + msgstr "Tous les dossiers publics" + + #. i18n: Outlookism +-#: ../servers/exchange/storage/exchange-account.c:1346 ++#: ../servers/exchange/storage/exchange-account.c:1283 + msgid "Global Address List" + msgstr "Liste globale d'adresses" + +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:256 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:262 + msgid "Deleted Items" + msgstr "Documents supprimés" + +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:257 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:263 + msgid "Drafts" + msgstr "Brouillons" + +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:259 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:265 + msgid "Journal" + msgstr "Journal" + +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:260 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:266 + msgid "Notes" + msgstr "Notes" + +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:261 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:267 + msgid "Outbox" + msgstr "Boîte d'envoi" + +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:262 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:268 + msgid "Sent Items" + msgstr "Documents envoyés" + +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:263 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:269 + msgid "Tasks" + msgstr "Tâches" + +-#: ../servers/groupwise/e-gw-connection.c:161 ++#: ../servers/groupwise/e-gw-connection.c:167 + msgid "Invalid connection" + msgstr "Connexion non valide" + +-#: ../servers/groupwise/e-gw-connection.c:165 ++#: ../servers/groupwise/e-gw-connection.c:171 + msgid "Invalid response from server" + msgstr "Réponse non valide du serveur" + +-#: ../servers/groupwise/e-gw-connection.c:167 ++#: ../servers/groupwise/e-gw-connection.c:173 + msgid "No response from the server" + msgstr "Aucune réponse du serveur" + +-#: ../servers/groupwise/e-gw-connection.c:173 ++#: ../servers/groupwise/e-gw-connection.c:179 + msgid "Bad parameter" + msgstr "Paramètre erroné" + +@@ -5234,6 +4886,11 @@ msgstr "Service enregistreur de Evolutio + #: ../src/server.c:106 + #, c-format + msgid "Multiple segmentation faults occurred; can't display error dialog\n" +-msgstr "" +-"Plusieurs erreurs de segmentation se sont produites ; impossible d'afficher " +-"la boîte de dialogue d'erreur\n" ++msgstr "Plusieurs erreurs de segmentation se sont produites ; impossible d'afficher la boîte de dialogue d'erreur\n" ++ ++#~ msgid "Failed to create pipe to '%s': %s" ++#~ msgstr "La création du tube pour « %s » a échoué : %s" ++#~ msgid "Select User" ++#~ msgstr "Sélection de l'utilisateur" ++#~ msgid "Addressbook..." ++#~ msgstr "Carnet d'adresses..." +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: ga.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: ga.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: gl.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: gl.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: gu.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: gu.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: he.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: he.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: hi.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: hi.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: hr.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: hr.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: hu.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: hu.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: id.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: id.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: is.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: is.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: it.gmo +diff -up /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/it.po po/it.po +--- /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/it.po 2006-03-13 06:12:17.000000000 +0100 ++++ po/it.po 2006-05-19 14:49:56.000000000 +0200 +@@ -17,39 +17,39 @@ msgid "" + msgstr "" + "Project-Id-Version: evolution-data-server\n" + "Report-Msgid-Bugs-To: \n" +-"POT-Creation-Date: 2006-01-30 13:54+0100\n" +-"PO-Revision-Date: 2006-03-11 16:45+0100\n" +-"Last-Translator: Marco Ciampa \n" +-"Language-Team: \n" ++"POT-Creation-Date: 2006-05-04 06:53+0000\n" ++"PO-Revision-Date: 2006-05-17 14:47\n" ++"Last-Translator: Novell Language \n" ++"Language-Team: Novell Language \n" + "MIME-Version: 1.0\n" + "Content-Type: text/plain; charset=UTF-8\n" + "Content-Transfer-Encoding: 8bit\n" + +-#: ../addressbook/backends/file/e-book-backend-file.c:536 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2213 ++#: ../addressbook/backends/file/e-book-backend-file.c:538 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2225 + #: ../addressbook/backends/vcf/e-book-backend-vcf.c:484 + msgid "Loading..." + msgstr "Caricamento..." + +-#: ../addressbook/backends/file/e-book-backend-file.c:538 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2172 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2192 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2211 ++#: ../addressbook/backends/file/e-book-backend-file.c:540 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2184 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2204 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2223 + #: ../addressbook/backends/ldap/e-book-backend-ldap.c:4038 + #: ../addressbook/backends/vcf/e-book-backend-vcf.c:486 + msgid "Searching..." + msgstr "Ricerca..." + +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2496 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2593 + #: ../addressbook/backends/ldap/e-book-backend-ldap.c:4202 + #, c-format + msgid "Downloading contacts (%d)... " + msgstr "Scaricamento contatti (%d)... " + + # LF +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2645 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2812 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2848 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2746 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2927 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2957 + #, c-format + msgid "Updating contacts cache (%d)... " + msgstr "Aggiornamento cache contatti (%d)... " +@@ -655,7 +655,7 @@ msgstr "Data di nascita" + #. Make sure we have all categories + #: ../addressbook/libebook/e-contact.c:242 + #: ../calendar/backends/contacts/e-cal-backend-contacts.c:460 +-#: ../libedataserver/e-categories.c:240 ++#: ../libedataserver/e-categories.c:246 + msgid "Anniversary" + msgstr "Anniversario" + +@@ -692,7 +692,7 @@ msgstr "Elenco senza nome" + # o il giorno in cui ricorre (compleanno) ? -Luca + # + #: ../calendar/backends/contacts/e-cal-backend-contacts.c:462 +-#: ../libedataserver/e-categories.c:241 ++#: ../libedataserver/e-categories.c:247 + msgid "Birthday" + msgstr "Compleanno" + +@@ -707,61 +707,68 @@ msgstr "Compleanno: %s" + msgid "Anniversary: %s" + msgstr "Anniversario: %s" + +-#: ../calendar/backends/file/e-cal-backend-file.c:203 ++#: ../calendar/backends/file/e-cal-backend-file.c:204 + msgid "Can't save calendar data: Malformed URI." + msgstr "Impossibile salvare i dati del calendario: URI mal formulata." + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise-utils.c:871 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1467 ++#: ../calendar/backends/file/e-cal-backend-file.c:209 ++#, ++msgid "Can't save calendar data: " ++msgstr "Can't save calendar data: " ++ ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise-utils.c:872 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1582 + msgid "Reply Requested: by " + msgstr "Risposta richiesta: da " + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise-utils.c:876 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1472 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise-utils.c:877 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1587 + msgid "Reply Requested: When convenient" + msgstr "Risposta richiesta: se conveniente" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:191 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:193 + #, c-format + msgid "Loading %s items" + msgstr "Caricamento %s voci" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:718 +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:257 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:719 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:260 + msgid "Calendar" + msgstr "Calendario" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:774 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:775 + msgid "Invalid server URI" + msgstr "URI del server non valido" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:790 +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:799 +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:884 +-#: ../calendar/libecal/e-cal.c:5131 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:902 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:922 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:950 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:574 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:589 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:630 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1120 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:791 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:800 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:885 ++#: ../calendar/libecal/e-cal.c:5137 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:970 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:993 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1028 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:588 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:603 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:644 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:712 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:754 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1253 + #: ../camel/providers/groupwise/camel-groupwise-transport.c:178 + msgid "Authentication failed" + msgstr "Autenticazione fallita" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:840 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:841 + msgid "Could not create thread for getting deltas" + msgstr "Impossibile creare il thread per ottenere le differenze" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:865 +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:1112 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:866 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:1113 + #: ../calendar/backends/http/e-cal-backend-http.c:520 + #: ../calendar/backends/weather/e-cal-backend-weather.c:452 + msgid "Could not create cache file" + msgstr "Impossibile creare il file cache" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:878 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:879 + msgid "Could not create thread for populating cache" + msgstr "Impossibile creare il thread per popolare la cache" + +@@ -1116,97 +1123,97 @@ msgid "Undefined" + msgstr "Non definita" + + #. FIXME: Try to get the parent uri so that we dont have to ask the password again +-#: ../calendar/libecal/e-cal.c:1705 ++#: ../calendar/libecal/e-cal.c:1707 + #, c-format + msgid "Enter password for %s to enable proxy for user %s" + msgstr "Inserire password per %s per abilitare il proxy per l'utente %s" + +-#: ../calendar/libecal/e-cal.c:1708 ../libedataserverui/e-book-auth-util.c:198 ++#: ../calendar/libecal/e-cal.c:1710 ../libedataserverui/e-book-auth-util.c:198 + #, c-format + msgid "Enter password for %s (user %s)" + msgstr "Inserire password per %s (utente %s)" + +-#: ../calendar/libecal/e-cal.c:5103 ++#: ../calendar/libecal/e-cal.c:5109 + msgid "Invalid argument" + msgstr "Argomento non valido" + +-#: ../calendar/libecal/e-cal.c:5105 ++#: ../calendar/libecal/e-cal.c:5111 + msgid "Backend is busy" + msgstr "Il backend è occupato" + + # LF +-#: ../calendar/libecal/e-cal.c:5107 ++#: ../calendar/libecal/e-cal.c:5113 + msgid "Repository is offline" + msgstr "Il repository è fuori rete" + +-#: ../calendar/libecal/e-cal.c:5109 ++#: ../calendar/libecal/e-cal.c:5115 + msgid "No such calendar" + msgstr "Non è presente alcun calendario" + +-#: ../calendar/libecal/e-cal.c:5111 ../servers/groupwise/e-gw-connection.c:172 ++#: ../calendar/libecal/e-cal.c:5117 ../servers/groupwise/e-gw-connection.c:175 + msgid "Object not found" + msgstr "Oggetto non trovato" + +-#: ../calendar/libecal/e-cal.c:5113 ../servers/groupwise/e-gw-connection.c:166 ++#: ../calendar/libecal/e-cal.c:5119 ../servers/groupwise/e-gw-connection.c:169 + msgid "Invalid object" + msgstr "Oggetto non valido" + +-#: ../calendar/libecal/e-cal.c:5115 ++#: ../calendar/libecal/e-cal.c:5121 + msgid "URI not loaded" + msgstr "URI non caricato" + +-#: ../calendar/libecal/e-cal.c:5117 ++#: ../calendar/libecal/e-cal.c:5123 + msgid "URI already loaded" + msgstr "URI già caricato" + +-#: ../calendar/libecal/e-cal.c:5119 ++#: ../calendar/libecal/e-cal.c:5125 + #: ../servers/exchange/storage/e-storage.c:572 + msgid "Permission denied" + msgstr "Permesso negato" + +-#: ../calendar/libecal/e-cal.c:5121 ../servers/groupwise/e-gw-connection.c:174 ++#: ../calendar/libecal/e-cal.c:5127 ../servers/groupwise/e-gw-connection.c:177 + msgid "Unknown User" + msgstr "Utente sconosciuto" + +-#: ../calendar/libecal/e-cal.c:5123 ++#: ../calendar/libecal/e-cal.c:5129 + msgid "Object ID already exists" + msgstr "ID dell'oggetto esiste già" + +-#: ../calendar/libecal/e-cal.c:5125 ++#: ../calendar/libecal/e-cal.c:5131 + msgid "Protocol not supported" + msgstr "Protocollo non supportato" + +-#: ../calendar/libecal/e-cal.c:5127 ++#: ../calendar/libecal/e-cal.c:5133 + msgid "Operation has been cancelled" + msgstr "L'operazione è stata annullata" + +-#: ../calendar/libecal/e-cal.c:5129 ++#: ../calendar/libecal/e-cal.c:5135 + msgid "Could not cancel operation" + msgstr "Impossibila annullare l'operazione" + +-#: ../calendar/libecal/e-cal.c:5133 ++#: ../calendar/libecal/e-cal.c:5139 + #: ../camel/providers/smtp/camel-smtp-transport.c:212 + msgid "Authentication required" + msgstr "Autenticazione richiesta" + +-#: ../calendar/libecal/e-cal.c:5135 ++#: ../calendar/libecal/e-cal.c:5141 + msgid "A CORBA exception has occurred" + msgstr "È occorsa un'eccezione CORBA" + +-#: ../calendar/libecal/e-cal.c:5137 ++#: ../calendar/libecal/e-cal.c:5143 + #: ../camel/providers/groupwise/camel-groupwise-transport.c:218 + #: ../camel/providers/imap/camel-imap-command.c:311 + #: ../camel/providers/imap/camel-imap-command.c:411 + #: ../camel/providers/imap4/camel-imap4-store.c:383 +-#: ../camel/providers/pop3/camel-pop3-store.c:533 +-#: ../camel/providers/pop3/camel-pop3-store.c:540 +-#: ../camel/providers/pop3/camel-pop3-store.c:546 ++#: ../camel/providers/pop3/camel-pop3-store.c:528 ++#: ../camel/providers/pop3/camel-pop3-store.c:535 ++#: ../camel/providers/pop3/camel-pop3-store.c:541 + #: ../servers/exchange/storage/e-storage.c:586 +-#: ../servers/groupwise/e-gw-connection.c:180 ++#: ../servers/groupwise/e-gw-connection.c:183 + msgid "Unknown error" + msgstr "Errore sconosciuto" + +-#: ../calendar/libecal/e-cal.c:5139 ++#: ../calendar/libecal/e-cal.c:5145 + #: ../servers/exchange/storage/e-storage.c:554 + msgid "No error" + msgstr "Nessun errore" +@@ -1239,8 +1246,7 @@ msgstr "\"%s\" prevede che il primo argo + #: ../calendar/libedata-cal/e-cal-backend-sexp.c:119 + #, c-format + msgid "\"%s\" expects the first argument to be an ISO 8601 date/time string" +-msgstr "" +-"\"%s\" prevede che il primo argomento sia una stringa data/ora ISO 8601" ++msgstr "\"%s\" prevede che il primo argomento sia una stringa data/ora ISO 8601" + + #: ../calendar/libedata-cal/e-cal-backend-sexp.c:158 + #: ../calendar/libedata-cal/e-cal-backend-sexp.c:359 +@@ -1278,12 +1284,8 @@ msgstr "\"%s\" prevede che il secondo ar + + #: ../calendar/libedata-cal/e-cal-backend-sexp.c:548 + #, c-format +-msgid "" +-"\"%s\" expects the first argument to be either \"any\", \"summary\", or " +-"\"description\", or \"location\"" +-msgstr "" +-"\"%s\" prevede che il primo argomento sia \"any\", \"summary\", \"description" +-"\" o \"location\"" ++msgid "\"%s\" expects the first argument to be either \"any\", \"summary\", or \"description\", or \"location\"" ++msgstr "\"%s\" prevede che il primo argomento sia \"any\", \"summary\", \"description\" o \"location\"" + + #: ../calendar/libedata-cal/e-cal-backend-sexp.c:671 + #, c-format +@@ -1292,12 +1294,8 @@ msgstr "\"%s\" prevede almeno un argomen + + #: ../calendar/libedata-cal/e-cal-backend-sexp.c:685 + #, c-format +-msgid "" +-"\"%s\" expects all arguments to be strings or one and only one argument to " +-"be a boolean false (#f)" +-msgstr "" +-"\"%s\" prevede che tutti gli argomenti siano stringhe o uno e soltanto uno " +-"falso booleano (#f)" ++msgid "\"%s\" expects all arguments to be strings or one and only one argument to be a boolean false (#f)" ++msgstr "\"%s\" prevede che tutti gli argomenti siano stringhe o uno e soltanto uno falso booleano (#f)" + + # LF + # +@@ -1371,25 +1369,13 @@ msgstr "Impossibile rimuovere la voce ca + # LF + #: ../camel/camel-disco-diary.c:197 + #, c-format +-msgid "" +-"Could not write log entry: %s\n" +-"Further operations on this server will not be replayed when you\n" +-"reconnect to the network." +-msgstr "" +-"Impossibile scrivere la voce di registro: %s\n" +-"Ulteriori operazioni su questo server non saranno replicate\n" +-"quando ci si riconnette alla rete." ++msgid "Could not write log entry: %s\nFurther operations on this server will not be replayed when you\nreconnect to the network." ++msgstr "Impossibile scrivere la voce di registro: %s\nUlteriori operazioni su questo server non saranno replicate\nquando ci si riconnette alla rete." + + #: ../camel/camel-disco-diary.c:260 + #, c-format +-msgid "" +-"Could not open `%s':\n" +-"%s\n" +-"Changes made to this folder will not be resynchronized." +-msgstr "" +-"Impossibile aprire \"%s\":\n" +-"%s\n" +-"Le modifiche fatte a questa cartella non saranno risincronizzate." ++msgid "Could not open `%s':\n%s\nChanges made to this folder will not be resynchronized." ++msgstr "Impossibile aprire \"%s\":\n%s\nLe modifiche fatte a questa cartella non saranno risincronizzate." + + #: ../camel/camel-disco-diary.c:296 + msgid "Resynchronizing with server" +@@ -1416,8 +1402,7 @@ msgstr "Preparazione cartella \"%s\" per + # Umoristica: se in linea --> i ciccioni non possono completare + # questa operazione :-) -Luca + #: ../camel/camel-disco-store.c:401 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1311 +-#: ../camel/providers/imap/camel-imap-store.c:2964 ++#: ../camel/providers/imap/camel-imap-store.c:2970 + msgid "You must be working online to complete this operation" + msgstr "È necessario non essere fuori rete per completare questa operazione" + +@@ -1527,22 +1512,14 @@ msgstr "Errore nell'eseguire la ricerca + # LF + #: ../camel/camel-folder-search.c:357 ../camel/camel-folder-search.c:478 + #, c-format +-msgid "" +-"Cannot parse search expression: %s:\n" +-"%s" +-msgstr "" +-"Impossibile analizzare l'espressione di ricerca: %s:\n" +-"%s" ++msgid "Cannot parse search expression: %s:\n%s" ++msgstr "Impossibile analizzare l'espressione di ricerca: %s:\n%s" + + # LF + #: ../camel/camel-folder-search.c:367 ../camel/camel-folder-search.c:488 + #, c-format +-msgid "" +-"Error executing search expression: %s:\n" +-"%s" +-msgstr "" +-"Errore nell'eseguire l'espressione di ricerca: %s:\n" +-"%s" ++msgid "Error executing search expression: %s:\n%s" ++msgstr "Errore nell'eseguire l'espressione di ricerca: %s:\n%s" + + #: ../camel/camel-folder-search.c:674 ../camel/camel-folder-search.c:707 + msgid "(match-all) requires a single bool result" +@@ -1624,14 +1601,8 @@ msgstr "Filtraggio nuovi messaggi" + + #: ../camel/camel-gpg-context.c:753 + #, c-format +-msgid "" +-"Unexpected GnuPG status message encountered:\n" +-"\n" +-"%s" +-msgstr "" +-"È stato riscontrato un messaggio di stato GnuPG inaspettato:\n" +-"\n" +-"%s" ++msgid "Unexpected GnuPG status message encountered:\n\n%s" ++msgstr "È stato riscontrato un messaggio di stato GnuPG inaspettato:\n\n%s" + + # LF + #: ../camel/camel-gpg-context.c:767 +@@ -1643,114 +1614,105 @@ msgstr "Analisi userid hint gpg fallita. + msgid "Failed to parse gpg passphrase request." + msgstr "Analisi richiesta passphrase gpg fallita." + +-#: ../camel/camel-gpg-context.c:805 ++#: ../camel/camel-gpg-context.c:806 ../camel/camel-gpg-context.c:810 + #, c-format +-msgid "" +-"You need a passphrase to unlock the key for\n" +-"user: \"%s\"" +-msgstr "" +-"È necessaria una passphrase per sbloccare la chiave\n" +-"per l'utente: \"%s\"" ++msgid "You need a passphrase to unlock the key for\nuser: \"%s\"" ++msgstr "È necessaria una passphrase per sbloccare la chiave\nper l'utente: \"%s\"" + +-#: ../camel/camel-gpg-context.c:822 ../camel/camel-gpg-context.c:1026 ++#: ../camel/camel-gpg-context.c:828 ../camel/camel-gpg-context.c:1032 + #: ../camel/providers/nntp/camel-nntp-store.c:1272 + msgid "Cancelled." + msgstr "Annullato." + + # LF +-#: ../camel/camel-gpg-context.c:840 ++#: ../camel/camel-gpg-context.c:846 + msgid "Failed to unlock secret key: 3 bad passphrases given." +-msgstr "" +-"Sblocco della chiave segreta fallito: sono state fornite 3 passphrases " +-"errate." ++msgstr "Sblocco della chiave segreta fallito: sono state fornite 3 passphrases errate." + +-#: ../camel/camel-gpg-context.c:846 ++#: ../camel/camel-gpg-context.c:852 + #, c-format + msgid "Unexpected response from GnuPG: %s" + msgstr "Risposta inaspettata da GnuPG: %s" + + # LF +-#: ../camel/camel-gpg-context.c:898 ++#: ../camel/camel-gpg-context.c:904 + msgid "Failed to encrypt: No valid recipients specified." + msgstr "Cifratura fallita: nessun destinatario valido specificato." + + # LF + #. always called on an i/o error +-#: ../camel/camel-gpg-context.c:1164 ../camel/camel-gpg-context.c:1292 +-#: ../camel/camel-gpg-context.c:1776 ../camel/camel-gpg-context.c:1821 ++#: ../camel/camel-gpg-context.c:1170 ../camel/camel-gpg-context.c:1298 ++#: ../camel/camel-gpg-context.c:1782 ../camel/camel-gpg-context.c:1827 + #, c-format + msgid "Failed to execute gpg: %s" + msgstr "Esecuzione di gpg fallita: %s" + +-#: ../camel/camel-gpg-context.c:1260 ../camel/camel-smime-context.c:387 ++#: ../camel/camel-gpg-context.c:1266 ../camel/camel-smime-context.c:387 + #, c-format + msgid "Could not generate signing data: %s" + msgstr "Impossibile generare i dati per la firma: %s" + +-#: ../camel/camel-gpg-context.c:1307 ../camel/camel-gpg-context.c:1496 +-#: ../camel/camel-gpg-context.c:1579 ../camel/camel-gpg-context.c:1594 +-#: ../camel/camel-gpg-context.c:1698 ../camel/camel-gpg-context.c:1713 +-#: ../camel/camel-gpg-context.c:1792 ../camel/camel-gpg-context.c:1837 ++#: ../camel/camel-gpg-context.c:1313 ../camel/camel-gpg-context.c:1502 ++#: ../camel/camel-gpg-context.c:1585 ../camel/camel-gpg-context.c:1600 ++#: ../camel/camel-gpg-context.c:1704 ../camel/camel-gpg-context.c:1719 ++#: ../camel/camel-gpg-context.c:1798 ../camel/camel-gpg-context.c:1843 + msgid "Failed to execute gpg." + msgstr "Esecuzione di gpg fallita." + + # LF +-#: ../camel/camel-gpg-context.c:1326 ++#: ../camel/camel-gpg-context.c:1332 + msgid "This is a digitally signed message part" + msgstr "Questa è una parte del messaggio firmata digitalmente" + +-#: ../camel/camel-gpg-context.c:1414 ../camel/camel-gpg-context.c:1420 +-#: ../camel/camel-gpg-context.c:1426 ../camel/camel-gpg-context.c:1443 ++#: ../camel/camel-gpg-context.c:1420 ../camel/camel-gpg-context.c:1426 ++#: ../camel/camel-gpg-context.c:1432 ../camel/camel-gpg-context.c:1449 + #: ../camel/camel-smime-context.c:690 ../camel/camel-smime-context.c:701 + #: ../camel/camel-smime-context.c:708 + msgid "Cannot verify message signature: Incorrect message format" +-msgstr "" +-"Impossibile verificare la firma del messaggio: formato messaggio non valido" ++msgstr "Impossibile verificare la firma del messaggio: formato messaggio non valido" + +-#: ../camel/camel-gpg-context.c:1481 ++#: ../camel/camel-gpg-context.c:1487 + #, c-format + msgid "Cannot verify message signature: could not create temp file: %s" +-msgstr "" +-"Impossibile verificare la firma del messaggio: impossibile creare un file " +-"temporaneo: %s" ++msgstr "Impossibile verificare la firma del messaggio: impossibile creare un file temporaneo: %s" + +-#: ../camel/camel-gpg-context.c:1562 ++#: ../camel/camel-gpg-context.c:1568 + #, c-format + msgid "Could not generate encrypting data: %s" + msgstr "Impossibile generare i dati per la crittografia: %s" + + # LF +-#: ../camel/camel-gpg-context.c:1612 ++#: ../camel/camel-gpg-context.c:1618 + msgid "This is a digitally encrypted message part" + msgstr "Questa è una parte del messaggio cifrata digitalmente" + + # LF + # + # forse decrittografazione andrebbe rivisto... -Luca +-#: ../camel/camel-gpg-context.c:1669 ++#: ../camel/camel-gpg-context.c:1675 + msgid "Failed to decrypt MIME part: protocol error" + msgstr "Decrittografazione della parte MIME fallita: errore di protocollo" + +-#: ../camel/camel-gpg-context.c:1680 ++#: ../camel/camel-gpg-context.c:1686 + msgid "Cannot decrypt message: Incorrect message format" + msgstr "Impossibile decifrare il messaggio: formato del messaggio non valido" + +-#: ../camel/camel-gpg-context.c:1734 ../camel/camel-smime-context.c:964 ++#: ../camel/camel-gpg-context.c:1740 ../camel/camel-smime-context.c:964 + msgid "Encrypted content" + msgstr "Contenuto cifrato" + +-#: ../camel/camel-gpg-context.c:1753 ++#: ../camel/camel-gpg-context.c:1759 + msgid "Unable to parse message content" + msgstr "Impossibile elaborare il contenuto del messaggio" + +-#: ../camel/camel-gpg-context.c:1777 ../camel/camel-gpg-context.c:1822 ++#: ../camel/camel-gpg-context.c:1783 ../camel/camel-gpg-context.c:1828 + #: ../camel/camel-tcp-stream-openssl.c:631 + #: ../camel/providers/imap4/camel-imap4-engine.c:1550 + #: ../camel/providers/imap4/camel-imap4-engine.c:1589 + #: ../camel/providers/imap4/camel-imap4-engine.c:1634 + #: ../camel/providers/imap4/camel-imap4-engine.c:1690 +-#: ../camel/providers/imap4/camel-imap4-store.c:886 +-#: ../camel/providers/imap4/camel-imap4-store.c:1559 ++#: ../camel/providers/imap4/camel-imap4-store.c:881 ++#: ../camel/providers/imap4/camel-imap4-store.c:1554 + #: ../camel/providers/imap4/camel-imap4-utils.c:575 + #: ../camel/providers/smtp/camel-smtp-transport.c:160 + #: ../camel/providers/smtp/camel-smtp-transport.c:215 +@@ -1785,9 +1747,7 @@ msgstr "Impossibile creare il file di bl + #: ../camel/camel-lock.c:157 + #, c-format + msgid "Timed out trying to get lock file on %s. Try again later." +-msgstr "" +-"Tempo scaduto nel tentativo di prendere il file di lock %s. Riprovare più " +-"tardi." ++msgstr "Tempo scaduto nel tentativo di prendere il file di lock %s. Riprovare più tardi." + + # LF + #: ../camel/camel-lock.c:212 +@@ -1864,43 +1824,43 @@ msgstr "Errore nel copiare il file temp + msgid "parse error" + msgstr "errore di analisi" + +-#: ../camel/camel-net-utils.c:495 ../camel/camel-net-utils.c:657 +-#: ../camel/camel-net-utils.c:788 +-#: ../camel/providers/pop3/camel-pop3-store.c:446 +-#: ../camel/providers/pop3/camel-pop3-store.c:527 ++#: ../camel/camel-net-utils.c:497 ../camel/camel-net-utils.c:659 ++#: ../camel/camel-net-utils.c:790 ++#: ../camel/providers/pop3/camel-pop3-store.c:441 ++#: ../camel/providers/pop3/camel-pop3-store.c:522 + msgid "Cancelled" + msgstr "Annullato" + +-#: ../camel/camel-net-utils.c:514 ++#: ../camel/camel-net-utils.c:516 + msgid "cannot create thread" + msgstr "impossibile creare il thread" + + # LF +-#: ../camel/camel-net-utils.c:661 ++#: ../camel/camel-net-utils.c:663 + #, c-format + msgid "Resolving: %s" + msgstr "Risoluzione: %s" + + # LF +-#: ../camel/camel-net-utils.c:683 ++#: ../camel/camel-net-utils.c:685 + msgid "Host lookup failed" + msgstr "Ricerca dell'host fallita" + + # LF +-#: ../camel/camel-net-utils.c:685 ++#: ../camel/camel-net-utils.c:687 + #, c-format + msgid "Host lookup failed: %s: %s" + msgstr "Ricerca dell'host fallita: %s: %s" + +-#: ../camel/camel-net-utils.c:792 ++#: ../camel/camel-net-utils.c:794 + msgid "Resolving address" + msgstr "Risoluzione indirizzo" + +-#: ../camel/camel-net-utils.c:812 ++#: ../camel/camel-net-utils.c:814 + msgid "Name lookup failed" + msgstr "Ricerca del nome fallita" + +-#: ../camel/camel-net-utils.c:815 ++#: ../camel/camel-net-utils.c:817 + #, c-format + msgid "Name lookup failed: %s" + msgstr "Ricerca del nome fallita: %s" +@@ -1929,9 +1889,7 @@ msgstr "Per leggere la posta come una ri + #: ../camel/camel-provider.c:188 + #, c-format + msgid "Could not load %s: Module loading not supported on this system." +-msgstr "" +-"Impossibile caricare %s: il sistema in uso non supporta il caricamento dei " +-"moduli." ++msgstr "Impossibile caricare %s: il sistema in uso non supporta il caricamento dei moduli." + + #: ../camel/camel-provider.c:197 + #, c-format +@@ -1963,30 +1921,18 @@ msgstr "Autenticazione non riuscita" + + #: ../camel/camel-sasl-anonymous.c:131 + #, c-format +-msgid "" +-"Invalid email address trace information:\n" +-"%s" +-msgstr "" +-"Informazioni di percorso di indirizzo email non valide:\n" +-"%s" ++msgid "Invalid email address trace information:\n%s" ++msgstr "Informazioni di percorso di indirizzo email non valide:\n%s" + + #: ../camel/camel-sasl-anonymous.c:143 + #, c-format +-msgid "" +-"Invalid opaque trace information:\n" +-"%s" +-msgstr "" +-"Informazioni di percorso opaco non valide:\n" +-"%s" ++msgid "Invalid opaque trace information:\n%s" ++msgstr "Informazioni di percorso opaco non valide:\n%s" + + #: ../camel/camel-sasl-anonymous.c:155 + #, c-format +-msgid "" +-"Invalid trace information:\n" +-"%s" +-msgstr "" +-"Informazioni di percorso non valide:\n" +-"%s" ++msgid "Invalid trace information:\n%s" ++msgstr "Informazioni di percorso non valide:\n%s" + + #: ../camel/camel-sasl-cram-md5.c:38 + msgid "CRAM-MD5" +@@ -1994,12 +1940,8 @@ msgstr "CRAM-MD5" + + # LF + #: ../camel/camel-sasl-cram-md5.c:40 +-msgid "" +-"This option will connect to the server using a secure CRAM-MD5 password, if " +-"the server supports it." +-msgstr "" +-"Opzione per connessioni al server usando una password CRAM-MD5 sicura, se il " +-"server la supporta." ++msgid "This option will connect to the server using a secure CRAM-MD5 password, if the server supports it." ++msgstr "Opzione per connessioni al server usando una password CRAM-MD5 sicura, se il server la supporta." + + #: ../camel/camel-sasl-digest-md5.c:48 + msgid "DIGEST-MD5" +@@ -2007,12 +1949,8 @@ msgstr "DIGEST-MD5" + + # LF + #: ../camel/camel-sasl-digest-md5.c:50 +-msgid "" +-"This option will connect to the server using a secure DIGEST-MD5 password, " +-"if the server supports it." +-msgstr "" +-"Opzione per connessioni al server usando una password sicura DIGEST-MD5, se " +-"il server la supporta." ++msgid "This option will connect to the server using a secure DIGEST-MD5 password, if the server supports it." ++msgstr "Opzione per connessioni al server usando una password sicura DIGEST-MD5, se il server la supporta." + + #: ../camel/camel-sasl-digest-md5.c:818 + msgid "Server challenge too long (>2048 octets)" +@@ -2024,8 +1962,7 @@ msgstr "Server challenge non valido\n" + + #: ../camel/camel-sasl-digest-md5.c:833 + msgid "Server challenge contained invalid \"Quality of Protection\" token" +-msgstr "" +-"Il server challenge conteneva un token \"Quality of Protection\" non valido" ++msgstr "Il server challenge conteneva un token \"Quality of Protection\" non valido" + + #: ../camel/camel-sasl-digest-md5.c:863 + msgid "Server response did not contain authorization data" +@@ -2046,52 +1983,31 @@ msgstr "GSSAPI" + # LF + #: ../camel/camel-sasl-gssapi.c:59 + msgid "This option will connect to the server using Kerberos 5 authentication." +-msgstr "" +-"Opzione per connessioni al server usando Kerberos 5 per l'autenticazione." ++msgstr "Opzione per connessioni al server usando Kerberos 5 per l'autenticazione." + + #: ../camel/camel-sasl-gssapi.c:157 +-msgid "" +-"The specified mechanism is not supported by the provided credential, or is " +-"unrecognized by the implementation." +-msgstr "" +-"Il meccanismo specificato non è supportato dalle credenziali fornite o non è " +-"stato riconosciuto dalla implementazione." ++msgid "The specified mechanism is not supported by the provided credential, or is unrecognized by the implementation." ++msgstr "Il meccanismo specificato non è supportato dalle credenziali fornite o non è stato riconosciuto dalla implementazione." + + #: ../camel/camel-sasl-gssapi.c:162 + msgid "The provided target_name parameter was ill-formed." + msgstr "Il parametro target_name fornito era malformulato." + + #: ../camel/camel-sasl-gssapi.c:165 +-msgid "" +-"The provided target_name parameter contained an invalid or unsupported type " +-"of name." +-msgstr "" +-"Il parametro target_name fornito conteneva un tipo di nome non valido o non " +-"supportato." ++msgid "The provided target_name parameter contained an invalid or unsupported type of name." ++msgstr "Il parametro target_name fornito conteneva un tipo di nome non valido o non supportato." + + #: ../camel/camel-sasl-gssapi.c:169 +-msgid "" +-"The input_token contains different channel bindings to those specified via " +-"the input_chan_bindings parameter." +-msgstr "" +-"I'input_token contiene connessioni di canale diverse da quelle specificate " +-"attraverso il parametro input_chan_bindings." ++msgid "The input_token contains different channel bindings to those specified via the input_chan_bindings parameter." ++msgstr "I'input_token contiene connessioni di canale diverse da quelle specificate attraverso il parametro input_chan_bindings." + + #: ../camel/camel-sasl-gssapi.c:174 +-msgid "" +-"The input_token contains an invalid signature, or a signature that could not " +-"be verified." +-msgstr "" +-"L'input_token contiene una firma non valida o una firma che non può essere " +-"verificata." ++msgid "The input_token contains an invalid signature, or a signature that could not be verified." ++msgstr "L'input_token contiene una firma non valida o una firma che non può essere verificata." + + #: ../camel/camel-sasl-gssapi.c:178 +-msgid "" +-"The supplied credentials were not valid for context initiation, or the " +-"credential handle did not reference any credentials." +-msgstr "" +-"Le credenziali fornite non erano valide per l'inizializzazione del contenuto " +-"o l'handle delle credenziali non si riferisce a nessuna credenziale." ++msgid "The supplied credentials were not valid for context initiation, or the credential handle did not reference any credentials." ++msgstr "Le credenziali fornite non erano valide per l'inizializzazione del contenuto o l'handle delle credenziali non si riferisce a nessuna credenziale." + + #: ../camel/camel-sasl-gssapi.c:183 + msgid "The supplied context handle did not refer to a valid context." +@@ -2112,7 +2028,7 @@ msgstr "Le credenziali di riferimento so + #: ../camel/camel-sasl-gssapi.c:198 ../camel/camel-sasl-gssapi.c:246 + #: ../camel/camel-sasl-gssapi.c:282 ../camel/camel-sasl-gssapi.c:297 + #: ../camel/camel-sasl-kerberos4.c:229 +-#: ../camel/providers/imap/camel-imap-store.c:1285 ++#: ../camel/providers/imap/camel-imap-store.c:1280 + msgid "Bad authentication response from server." + msgstr "Risposta di autenticazione dal server errata." + +@@ -2127,17 +2043,12 @@ msgstr "Kerberos 4" + # F + #: ../camel/camel-sasl-kerberos4.c:47 + msgid "This option will connect to the server using Kerberos 4 authentication." +-msgstr "" +-"Opzione per connessioni al server usando Kerberos 4 per l'autenticazione." ++msgstr "Opzione per connessioni al server usando Kerberos 4 per l'autenticazione." + + #: ../camel/camel-sasl-kerberos4.c:172 + #, c-format +-msgid "" +-"Could not get Kerberos ticket:\n" +-"%s" +-msgstr "" +-"Impossibile avere il ticket di Kerberos:\n" +-" %s" ++msgid "Could not get Kerberos ticket:\n%s" ++msgstr "Impossibile avere il ticket di Kerberos:\n %s" + + #: ../camel/camel-sasl-login.c:34 + msgid "Login" +@@ -2158,12 +2069,8 @@ msgstr "NTLM / SPA" + + # LF + #: ../camel/camel-sasl-ntlm.c:34 +-msgid "" +-"This option will connect to a Windows-based server using NTLM / Secure " +-"Password Authentication." +-msgstr "" +-"Opzione per connessioni ad un server di tipo Windows usando NTLM / Secure " +-"Password Authentication." ++msgid "This option will connect to a Windows-based server using NTLM / Secure Password Authentication." ++msgstr "Opzione per connessioni ad un server di tipo Windows usando NTLM / Secure Password Authentication." + + #: ../camel/camel-sasl-plain.c:34 + msgid "PLAIN" +@@ -2213,12 +2120,8 @@ msgstr "URL \"%s\" necessita di un compo + + #: ../camel/camel-session.c:292 + #, c-format +-msgid "" +-"Could not create directory %s:\n" +-"%s" +-msgstr "" +-"Impossibile creare la directory %s:\n" +-"%s" ++msgid "Could not create directory %s:\n%s" ++msgstr "Impossibile creare la directory %s:\n%s" + + #: ../camel/camel-smime-context.c:229 + #, c-format +@@ -2433,9 +2336,7 @@ msgstr "esportazione chiavi: non impleme + #: ../camel/camel-store.c:214 + #: ../camel/providers/groupwise/camel-groupwise-transport.c:168 + msgid "Cannot get folder: Invalid operation on this store" +-msgstr "" +-"Impossibile ricevere la cartella: operazione non supportata in questo " +-"archivio" ++msgstr "Impossibile ricevere la cartella: operazione non supportata in questo archivio" + + # ####################### + #: ../camel/camel-store.c:246 +@@ -2445,8 +2346,7 @@ msgstr "Impossibile creare la cartella \ + + #: ../camel/camel-store.c:310 + msgid "Cannot create folder: Invalid operation on this store" +-msgstr "" +-"Impossibile creare una cartella: operazione non supportata in questo archivio" ++msgstr "Impossibile creare una cartella: operazione non supportata in questo archivio" + + #: ../camel/camel-store.c:338 + #, c-format +@@ -2597,16 +2497,8 @@ msgstr "Errore nella verifica dell'appli + + #: ../camel/camel-tcp-stream-openssl.c:696 ../camel/camel-tcp-stream-ssl.c:886 + #, c-format +-msgid "" +-"Issuer: %s\n" +-"Subject: %s\n" +-"Fingerprint: %s\n" +-"Signature: %s" +-msgstr "" +-"Mittente: %s\n" +-"Oggetto: %s\n" +-"Impronta digitale: %s\n" +-"Firma: %s" ++msgid "Issuer: %s\nSubject: %s\nFingerprint: %s\nSignature: %s" ++msgstr "Mittente: %s\nOggetto: %s\nImpronta digitale: %s\nFirma: %s" + + #: ../camel/camel-tcp-stream-openssl.c:702 ../camel/camel-tcp-stream-ssl.c:892 + msgid "GOOD" +@@ -2618,73 +2510,34 @@ msgstr "MALE" + + #: ../camel/camel-tcp-stream-openssl.c:704 + #, c-format +-msgid "" +-"Bad certificate from %s:\n" +-"\n" +-"%s\n" +-"\n" +-"%s\n" +-"\n" +-"Do you wish to accept anyway?" +-msgstr "" +-"Certificato non corretto da %s:\n" +-"\n" +-"%s\n" +-"\n" +-"%s\n" +-"\n" +-"Accettare comunque?" ++msgid "Bad certificate from %s:\n\n%s\n\n%s\n\nDo you wish to accept anyway?" ++msgstr "Certificato non corretto da %s:\n\n%s\n\n%s\n\nAccettare comunque?" + + #. construct our user prompt + #: ../camel/camel-tcp-stream-ssl.c:896 + #, c-format +-msgid "" +-"SSL Certificate check for %s:\n" +-"\n" +-"%s\n" +-"\n" +-"Do you wish to accept?" +-msgstr "" +-"Controllo certificato SSL per %s:\n" +-"\n" +-"%s\n" +-"Si desidera accettare?" ++msgid "SSL Certificate check for %s:\n\n%s\n\nDo you wish to accept?" ++msgstr "Controllo certificato SSL per %s:\n\n%s\n\nSi desidera accettare?" + + #: ../camel/camel-tcp-stream-ssl.c:940 + #, c-format +-msgid "" +-"Certificate problem: %s\n" +-"Issuer: %s" +-msgstr "" +-"Problema di certificato: %s\n" +-"Emittente: %s" ++msgid "Certificate problem: %s\nIssuer: %s" ++msgstr "Problema di certificato: %s\nEmittente: %s" + + #: ../camel/camel-tcp-stream-ssl.c:992 + #, c-format +-msgid "" +-"Bad certificate domain: %s\n" +-"Issuer: %s" +-msgstr "" +-"Errato dominio del certificato: %s\n" +-"Emittente: %s" ++msgid "Bad certificate domain: %s\nIssuer: %s" ++msgstr "Errato dominio del certificato: %s\nEmittente: %s" + + #: ../camel/camel-tcp-stream-ssl.c:1010 + #, c-format +-msgid "" +-"Certificate expired: %s\n" +-"Issuer: %s" +-msgstr "" +-"Certificato scaduto: %s\n" +-"Emittente: %s" ++msgid "Certificate expired: %s\nIssuer: %s" ++msgstr "Certificato scaduto: %s\nEmittente: %s" + + #: ../camel/camel-tcp-stream-ssl.c:1027 + #, c-format +-msgid "" +-"Certificate revocation list expired: %s\n" +-"Issuer: %s" +-msgstr "" +-"L'elenco revoche dei certificati è scaduto: %s\n" +-"Emittente: %s" ++msgid "Certificate revocation list expired: %s\nIssuer: %s" ++msgstr "L'elenco revoche dei certificati è scaduto: %s\nEmittente: %s" + + #: ../camel/camel-url.c:293 + #, c-format +@@ -2728,17 +2581,13 @@ msgstr "Impossibile copiare messaggi nel + msgid "Cannot copy messages to the Junk folder" + msgstr "Impossibile copiare messaggi nella cartella della posta indesiderata" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:116 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:112 + #: ../camel/providers/imap/camel-imap-folder.c:2063 + #, c-format +-msgid "" +-"Cannot get message: %s\n" +-" %s" +-msgstr "" +-"Impossibile ricevere il messaggio: %s\n" +-"%s" ++msgid "Cannot get message: %s\n %s" ++msgstr "Impossibile ricevere il messaggio: %s\n%s" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:116 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:112 + #: ../camel/providers/imap/camel-imap-folder.c:2063 + #: ../camel/providers/local/camel-maildir-folder.c:245 + #: ../camel/providers/local/camel-mbox-folder.c:350 +@@ -2746,7 +2595,7 @@ msgstr "" + msgid "No such message" + msgstr "Messaggio assente" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:128 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:124 + #: ../camel/providers/imap4/camel-imap4-folder.c:788 + #: ../camel/providers/nntp/camel-nntp-folder.c:155 + #: ../camel/providers/nntp/camel-nntp-folder.c:231 +@@ -2758,7 +2607,7 @@ msgstr "Messaggio assente" + msgid "User cancelled" + msgstr "Utente cancellato" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:135 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:131 + #: ../camel/providers/imap4/camel-imap4-folder.c:793 + #: ../camel/providers/nntp/camel-nntp-folder.c:146 + #: ../camel/providers/nntp/camel-nntp-folder.c:148 +@@ -2773,40 +2622,45 @@ msgid "Cannot get message %s: %s" + msgstr "Impossibile ricevere il messaggio: %s: %s" + + # LF +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:152 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:160 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:148 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:156 + #: ../camel/providers/imap4/camel-imap4-folder.c:811 + msgid "This message is not available in offline mode." + msgstr "Questo messaggio non è disponibile in modalità fuori rete." + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:171 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:178 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1430 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:167 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:174 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1545 + msgid "Could not get message" + msgstr "Impossibile ricevere il messaggio." + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:707 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:740 + #: ../camel/providers/imap/camel-imap-folder.c:252 + #, c-format + msgid "Could not load summary for %s" + msgstr "Impossibile caricare il sommario di %s" + ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:966 ++msgid "Trash Folder Full. Please Empty." ++msgstr "Trash Folder Full. Please Empty." ++ + # LF +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1037 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:618 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1129 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:632 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:744 + #: ../camel/providers/imap/camel-imap-folder.c:2375 + #: ../camel/providers/imap/camel-imap-folder.c:2445 + #, c-format + msgid "Fetching summary information for new messages in %s" + msgstr "Recupero informazioni di sommario per nuovi messaggi in %s" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1668 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1716 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1813 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1861 + #, c-format + msgid "Cannot append message to folder `%s': %s" + msgstr "Impossibile accodare il messaggio alla cartella \"%s\": %s" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1704 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1849 + #, c-format + msgid "Cannot create message: %s" + msgstr "Impossibile creare il messaggio: %s" +@@ -2893,65 +2747,63 @@ msgstr "Password" + + # LF + #: ../camel/providers/groupwise/camel-groupwise-provider.c:104 +-msgid "" +-"This option will connect to the GroupWise server using a plaintext password." ++msgid "This option will connect to the GroupWise server using a plaintext password." + msgstr "Opzione per connessioni al server GroupWise usando una password di testo semplice." + + #: ../camel/providers/groupwise/camel-groupwise-store.c:103 + msgid "Host or user not available in url" + msgstr "Host o utente non disponibile nell'url" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:198 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:200 + #, c-format + msgid "%sPlease enter the GroupWise password for %s@%s" + msgstr "%sInserire la password GroupWise per %s@%s" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:212 +-#: ../camel/providers/imap/camel-imap-store.c:1364 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:214 ++#: ../camel/providers/imap/camel-imap-store.c:1359 + msgid "You didn't enter a password." + msgstr "Non è stata inserita la password." + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:224 +-msgid "Unable to authenticate to GroupWise server." +-msgstr "Impossibile utenticarsi al server GroupWise." ++#: ../camel/providers/groupwise/camel-groupwise-store.c:226 ++#, ++msgid "Unable to authenticate to GroupWise server. " ++msgstr "Unable to authenticate to GroupWise server. " + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:298 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:304 + msgid "Some features may not work correctly with your current server version" +-msgstr "" +-"Alcune caratteristiche potrebbero non funzionare correttamente con la " +-"versione del server corrente" ++msgstr "Alcune caratteristiche potrebbero non funzionare correttamente con la versione del server corrente" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:526 +-#: ../camel/providers/imap/camel-imap-store.c:1873 +-#: ../camel/providers/imap/camel-imap-store.c:2064 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:540 ++#: ../camel/providers/imap/camel-imap-store.c:1868 ++#: ../camel/providers/imap/camel-imap-store.c:2059 + #, c-format + msgid "No such folder %s" + msgstr "Non è presente la cartella %s" + + # LF +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1097 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1230 + msgid "Cannot create GroupWise folders in offline mode." + msgstr "Impossibile creare cartelle GroupWise in modalità fuori rete." + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1111 +-#: ../camel/providers/imap/camel-imap-store.c:1948 +-#: ../camel/providers/imap/camel-imap-store.c:2317 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1244 ++#: ../camel/providers/imap/camel-imap-store.c:1943 ++#: ../camel/providers/imap/camel-imap-store.c:2312 + msgid "The parent folder is not allowed to contain subfolders" + msgstr "Alla cartella madre non è permesso contenere sottocartelle" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1188 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1209 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1321 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1342 + #, c-format + msgid "Cannot rename Groupwise folder `%s' to `%s'" + msgstr "Impossibile rinominare la cartella \"%s\" in \"%s\"" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1241 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1374 + #: ../camel/providers/groupwise/camel-groupwise-transport.c:121 + #, c-format + msgid "GroupWise server %s" + msgstr "Server GroupWise %s" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1243 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1376 + #, c-format + msgid "GroupWise service for %s on %s" + msgstr "Servizio GroupWise per %s su %s" +@@ -2967,10 +2819,7 @@ msgstr "Invio messaggio" + + # LF + #: ../camel/providers/groupwise/camel-groupwise-transport.c:216 +-msgid "" +-"You have exceeded this account's storage limit. Your messages are queued in " +-"your Outbox. Resend by pressing Send/Receive after deleting/archiving some " +-"of your mail.\n" ++msgid "You have exceeded this account's storage limit. Your messages are queued in your Outbox. Resend by pressing Send/Receive after deleting/archiving some of your mail.\n" + msgstr "È stato superato il limite di memorizzazione per questo account. I messaggi sono stati accodati nella cartella della posta in uscita. Per inviarli premere \"Invia/Ricevi\" dopo l'eliminazione o l'archiviazione della posta.\n" + + #: ../camel/providers/groupwise/camel-groupwise-transport.c:218 +@@ -3048,19 +2897,18 @@ msgstr "Per accedere ai server Hula" + # LF + #: ../camel/providers/hula/camel-hula-provider.c:94 + msgid "This option will connect to the Hula server using a plaintext password." +-msgstr "" +-"Opzione per connessioni al server Hula usando una password di testo semplice." ++msgstr "Opzione per connessioni al server Hula usando una password di testo semplice." + + #: ../camel/providers/imap/camel-imap-command.c:223 + #: ../camel/providers/imap/camel-imap-command.c:265 + #: ../camel/providers/imap/camel-imap-command.c:472 +-#: ../camel/providers/imap/camel-imap-store.c:3004 ++#: ../camel/providers/imap/camel-imap-store.c:3010 + msgid "Operation cancelled" + msgstr "Operazione annullata" + + # LF + #: ../camel/providers/imap/camel-imap-command.c:310 +-#: ../camel/providers/imap/camel-imap-store.c:3007 ++#: ../camel/providers/imap/camel-imap-store.c:3013 + #, c-format + msgid "Server unexpectedly disconnected: %s" + msgstr "Disconnessione inattesa del server: %s" +@@ -3069,12 +2917,8 @@ msgstr "Disconnessione inattesa del serv + #. we might get a ']' from a BAD response since we +12, but who cares? + #: ../camel/providers/imap/camel-imap-command.c:331 + #, c-format +-msgid "" +-"Alert from IMAP server %s@%s:\n" +-"%s" +-msgstr "" +-"Avvertenza dal server IMAP %s@%s:\n" +-"%s" ++msgid "Alert from IMAP server %s@%s:\n%s" ++msgstr "Avvertenza dal server IMAP %s@%s:\n%s" + + #: ../camel/providers/imap/camel-imap-command.c:400 + #, c-format +@@ -3132,23 +2976,17 @@ msgstr "Questo messaggio non è al momen + #: ../camel/providers/imap/camel-imap-folder.c:2553 + #, c-format + msgid "Incomplete server response: no information provided for message %d" +-msgstr "" +-"Risposta del server incompleta: non è stata fornita nessuna informazione per " +-"il messaggio %d" ++msgstr "Risposta del server incompleta: non è stata fornita nessuna informazione per il messaggio %d" + + #: ../camel/providers/imap/camel-imap-folder.c:2561 + #, c-format + msgid "Incomplete server response: no UID provided for message %d" +-msgstr "" +-"Risposta del server incompleta: non è stato fornito nessun UID per il " +-"messaggio %d" ++msgstr "Risposta del server incompleta: non è stato fornito nessun UID per il messaggio %d" + + #: ../camel/providers/imap/camel-imap-folder.c:2574 + #, c-format +-msgid "" +-"Unexpected server response: Identical UIDs provided for messages %d and %d" +-msgstr "" +-"Risposta del server inaspettata: UID identici forniti per i messaggi %d e %d" ++msgid "Unexpected server response: Identical UIDs provided for messages %d and %d" ++msgstr "Risposta del server inaspettata: UID identici forniti per i messaggi %d e %d" + + #: ../camel/providers/imap/camel-imap-folder.c:2755 + msgid "Could not find message body in FETCH response." +@@ -3262,7 +3100,7 @@ msgid "Connection cancelled" + msgstr "Connessione annullata" + + # LF +-#: ../camel/providers/imap/camel-imap-store.c:699 ++#: ../camel/providers/imap/camel-imap-store.c:702 + #: ../camel/providers/imap/camel-imap-store.c:721 + #: ../camel/providers/imap/camel-imap-store.c:727 + #: ../camel/providers/imap4/camel-imap4-store.c:369 +@@ -3272,7 +3110,7 @@ msgstr "Connessione annullata" + msgid "Failed to connect to IMAP server %s in secure mode: %s" + msgstr "Connessione al server IMAP %s in modalità sicura fallita: %s" + +-#: ../camel/providers/imap/camel-imap-store.c:700 ++#: ../camel/providers/imap/camel-imap-store.c:703 + #: ../camel/providers/smtp/camel-smtp-transport.c:323 + msgid "STARTTLS not supported" + msgstr "STARTTLS non supportata" +@@ -3299,60 +3137,51 @@ msgid "Could not connect with command \" + msgstr "Impossibile connettersi con il comando \"%s\": %s" + + #. create a dummy "." parent inbox, use to scan, then put back at the top level +-#: ../camel/providers/imap/camel-imap-store.c:1057 +-#: ../camel/providers/imap/camel-imap-store.c:2413 ++#: ../camel/providers/imap/camel-imap-store.c:1052 ++#: ../camel/providers/imap/camel-imap-store.c:2408 + #: ../camel/providers/imap4/camel-imap4-store-summary.c:368 +-#: ../camel/providers/imap4/camel-imap4-store.c:1392 ++#: ../camel/providers/imap4/camel-imap4-store.c:1387 + #: ../camel/providers/local/camel-maildir-folder.c:75 + #: ../camel/providers/local/camel-maildir-store.c:217 + #: ../camel/providers/local/camel-maildir-store.c:289 + #: ../camel/providers/local/camel-maildir-store.c:511 + #: ../camel/providers/local/camel-maildir-store.c:524 + #: ../camel/providers/local/camel-spool-store.c:461 +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:261 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:264 + msgid "Inbox" + msgstr "In arrivo" + +-#: ../camel/providers/imap/camel-imap-store.c:1317 ++#: ../camel/providers/imap/camel-imap-store.c:1312 + #, c-format + msgid "IMAP server %s does not support requested authentication type %s" + msgstr "Il server IMAP %s non supporta il tipo di autenticazione richiesto %s " + +-#: ../camel/providers/imap/camel-imap-store.c:1327 +-#: ../camel/providers/smtp/camel-smtp-transport.c:498 ++#: ../camel/providers/imap/camel-imap-store.c:1322 ++#: ../camel/providers/smtp/camel-smtp-transport.c:493 + #, c-format + msgid "No support for authentication type %s" + msgstr "Nessun supporto per il tipo di autenticazione %s" + +-#: ../camel/providers/imap/camel-imap-store.c:1350 ++#: ../camel/providers/imap/camel-imap-store.c:1345 + #: ../camel/providers/imapp/camel-imapp-store.c:364 + #, c-format + msgid "%sPlease enter the IMAP password for %s@%s" + msgstr "%sInserire la password IMAP per %s@%s" + + # LF +-#: ../camel/providers/imap/camel-imap-store.c:1393 ++#: ../camel/providers/imap/camel-imap-store.c:1388 + #, c-format +-msgid "" +-"Unable to authenticate to IMAP server.\n" +-"%s\n" +-"\n" +-msgstr "" +-"Impossibile effettuare l'autenticazione sul server IMAP.\n" +-"%s\n" +-"\n" +- +-#: ../camel/providers/imap/camel-imap-store.c:1885 +-#: ../camel/providers/imap/camel-imap-store.c:2255 +-#: ../camel/providers/imap4/camel-imap4-store.c:1022 ++msgid "Unable to authenticate to IMAP server.\n%s\n\n" ++msgstr "Impossibile effettuare l'autenticazione sul server IMAP.\n%s\n\n" ++ ++#: ../camel/providers/imap/camel-imap-store.c:1880 ++#: ../camel/providers/imap/camel-imap-store.c:2250 ++#: ../camel/providers/imap4/camel-imap4-store.c:1017 + #, c-format +-msgid "" +-"The folder name \"%s\" is invalid because it contains the character \"%c\"" +-msgstr "" +-"Il nome della cartella \"%s\" non è valido perché contiene il carattere \"%c" +-"\"" ++msgid "The folder name \"%s\" is invalid because it contains the character \"%c\"" ++msgstr "Il nome della cartella \"%s\" non è valido perché contiene il carattere \"%c\"" + +-#: ../camel/providers/imap/camel-imap-store.c:2002 ++#: ../camel/providers/imap/camel-imap-store.c:1997 + #: ../camel/providers/local/camel-maildir-store.c:190 + #: ../camel/providers/local/camel-mbox-store.c:202 + #: ../camel/providers/local/camel-mh-store.c:249 +@@ -3360,7 +3189,7 @@ msgstr "" + msgid "Cannot create folder `%s': folder exists." + msgstr "Impossibile creare la cartella: \"%s\": la cartella esiste." + +-#: ../camel/providers/imap/camel-imap-store.c:2266 ++#: ../camel/providers/imap/camel-imap-store.c:2261 + #, c-format + msgid "Unknown parent folder: %s" + msgstr "Cartella madre sconosciuta: %s" +@@ -3405,11 +3234,8 @@ msgstr "Disconnessione inattesa del serv + + # LF + #: ../camel/providers/imap4/camel-imap4-folder.c:86 +-msgid "" +-"Enable Mailing-List detection required for some filter and vFolder rules" +-msgstr "" +-"Abilitazione del rilevamento mailing-list richiesto per alcune regole di " +-"filtri e cartelle virtuali" ++msgid "Enable Mailing-List detection required for some filter and vFolder rules" ++msgstr "Abilitazione del rilevamento mailing-list richiesto per alcune regole di filtri e cartelle virtuali" + + #: ../camel/providers/imap4/camel-imap4-folder.c:399 + #, c-format +@@ -3424,8 +3250,7 @@ msgstr "Impossibile sincronizzare le fla + #: ../camel/providers/imap4/camel-imap4-folder.c:464 + #, c-format + msgid "Cannot sync flags to folder `%s': Bad command" +-msgstr "" +-"Impossibile sincronizzare le flags alla cartella \"%s\": comando errato" ++msgstr "Impossibile sincronizzare le flags alla cartella \"%s\": comando errato" + + #: ../camel/providers/imap4/camel-imap4-folder.c:604 + #, c-format +@@ -3441,27 +3266,22 @@ msgstr "Impossibile ripulire la cartella + #: ../camel/providers/imap4/camel-imap4-folder.c:865 + #, c-format + msgid "Cannot get message %s from folder `%s': No such message" +-msgstr "" +-"Impossibile ricevere il messaggio %s dalla cartella \"%s\": nessun messaggio" ++msgstr "Impossibile ricevere il messaggio %s dalla cartella \"%s\": nessun messaggio" + + #: ../camel/providers/imap4/camel-imap4-folder.c:870 + #, c-format + msgid "Cannot get message %s from folder `%s': Bad command" +-msgstr "" +-"Impossibile ricevere il messaggio %s dalla cartella \"%s\": comando errato" ++msgstr "Impossibile ricevere il messaggio %s dalla cartella \"%s\": comando errato" + + #: ../camel/providers/imap4/camel-imap4-folder.c:914 + #, c-format + msgid "Cannot append message to folder `%s': Folder is read-only" +-msgstr "" +-"Impossibile accodare il messaggio alla cartella \"%s\": la cartella è a sola " +-"lettura" ++msgstr "Impossibile accodare il messaggio alla cartella \"%s\": la cartella è a sola lettura" + + #: ../camel/providers/imap4/camel-imap4-folder.c:1007 + #, c-format + msgid "Cannot append message to folder `%s': Unknown error" +-msgstr "" +-"Impossibile accodare il messaggio alla cartella \"%s\": errore sconosciuto" ++msgstr "Impossibile accodare il messaggio alla cartella \"%s\": errore sconosciuto" + + #: ../camel/providers/imap4/camel-imap4-folder.c:1036 + #, c-format +@@ -3471,30 +3291,22 @@ msgstr "Impossibile accodare il messaggi + #: ../camel/providers/imap4/camel-imap4-folder.c:1156 + #, c-format + msgid "Cannot move messages from folder `%s' to folder `%s': Unknown" +-msgstr "" +-"Impossibile spostare messaggi dalla cartella \"%s\" alla cartella \"%s\": " +-"motivo sconosciuto" ++msgstr "Impossibile spostare messaggi dalla cartella \"%s\" alla cartella \"%s\": motivo sconosciuto" + + #: ../camel/providers/imap4/camel-imap4-folder.c:1160 + #, c-format + msgid "Cannot copy messages from folder `%s' to folder `%s': Unknown" +-msgstr "" +-"Impossibile copiare messaggi dalla cartella \"%s\" alla cartella \"%s\": " +-"motivo sconosciuto" ++msgstr "Impossibile copiare messaggi dalla cartella \"%s\" alla cartella \"%s\": motivo sconosciuto" + + #: ../camel/providers/imap4/camel-imap4-folder.c:1168 + #, c-format + msgid "Cannot move messages from folder `%s' to folder `%s': Bad command" +-msgstr "" +-"Impossibile spostare messaggi dalla cartella \"%s\" alla cartella \"%s\": " +-"comando errato" ++msgstr "Impossibile spostare messaggi dalla cartella \"%s\" alla cartella \"%s\": comando errato" + + #: ../camel/providers/imap4/camel-imap4-folder.c:1172 + #, c-format + msgid "Cannot copy messages from folder `%s' to folder `%s': Bad command" +-msgstr "" +-"Impossibile copiare messaggi dalla cartella \"%s\" alla cartella \"%s\": " +-"comando errato" ++msgstr "Impossibile copiare messaggi dalla cartella \"%s\" alla cartella \"%s\": comando errato" + + #: ../camel/providers/imap4/camel-imap4-provider.c:71 + msgid "IMAP4rev1" +@@ -3506,102 +3318,94 @@ msgstr "Per leggere e memorizzare la pos + + # LF + #: ../camel/providers/imap4/camel-imap4-provider.c:90 +-msgid "" +-"This option will connect to the IMAPv4rev1 server using a plaintext password." ++msgid "This option will connect to the IMAPv4rev1 server using a plaintext password." + msgstr "Opzione per connessioni al server IMAPv4rev1 usando una password in testo semplice." + + # LF +-#: ../camel/providers/imap4/camel-imap4-store.c:486 ++#: ../camel/providers/imap4/camel-imap4-store.c:481 + #, c-format +-msgid "" +-"Cannot authenticate to IMAP server %s using the %s authentication mechanism" +-msgstr "" +-"Impossibile effettuare l'autenticazione sul server IMAP %s usando il " +-"meccanismo di autenticazione %s" ++msgid "Cannot authenticate to IMAP server %s using the %s authentication mechanism" ++msgstr "Impossibile effettuare l'autenticazione sul server IMAP %s usando il meccanismo di autenticazione %s" + + # LF +-#: ../camel/providers/imap4/camel-imap4-store.c:535 ++#: ../camel/providers/imap4/camel-imap4-store.c:530 + #, c-format + msgid "%sPlease enter the IMAP password for %s on host %s" + msgstr "%sInserire la password IMAP per %s sull'host %s" + +-#: ../camel/providers/imap4/camel-imap4-store.c:602 ++#: ../camel/providers/imap4/camel-imap4-store.c:597 + #, c-format + msgid "Cannot authenticate to IMAP server %s using %s" + msgstr "Impossibile autenticarsi al server IMAP %s usando %s" + + # LF +-#: ../camel/providers/imap4/camel-imap4-store.c:764 +-#: ../camel/providers/imap4/camel-imap4-store.c:1032 ++#: ../camel/providers/imap4/camel-imap4-store.c:759 ++#: ../camel/providers/imap4/camel-imap4-store.c:1027 + msgid "Cannot create IMAP folders in offline mode." + msgstr "Impossibile creare cartelle IMAP in modalità fuori rete." + +-#: ../camel/providers/imap4/camel-imap4-store.c:803 ++#: ../camel/providers/imap4/camel-imap4-store.c:798 + #, c-format + msgid "Cannot get folder `%s' on IMAP server %s: Unknown" +-msgstr "" +-"Impossibile ricevere la cartella \"%s\" sul server IMAP %s: motivo " +-"sconosciuto" ++msgstr "Impossibile ricevere la cartella \"%s\" sul server IMAP %s: motivo sconosciuto" + + # LF +-#: ../camel/providers/imap4/camel-imap4-store.c:884 ++#: ../camel/providers/imap4/camel-imap4-store.c:879 + #, c-format + msgid "Cannot get LIST information for `%s' on IMAP server %s: %s" +-msgstr "" +-"Impossibile ricevere informazioni LIST per \"%s\" sul server IMAP %s: %s" ++msgstr "Impossibile ricevere informazioni LIST per \"%s\" sul server IMAP %s: %s" + +-#: ../camel/providers/imap4/camel-imap4-store.c:886 +-#: ../camel/providers/imap4/camel-imap4-store.c:1559 ++#: ../camel/providers/imap4/camel-imap4-store.c:881 ++#: ../camel/providers/imap4/camel-imap4-store.c:1554 + msgid "Bad command" + msgstr "Comando errato" + +-#: ../camel/providers/imap4/camel-imap4-store.c:965 ++#: ../camel/providers/imap4/camel-imap4-store.c:960 + #, c-format + msgid "Cannot create folder `%s': Invalid mailbox name" + msgstr "Impossibile creare la cartella \"%s\": nome mailbox non valido" + +-#: ../camel/providers/imap4/camel-imap4-store.c:970 ++#: ../camel/providers/imap4/camel-imap4-store.c:965 + #, c-format + msgid "Cannot create folder `%s': Bad command" + msgstr "Impossibile creare la cartella \"%s\": comando errato" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1076 ++#: ../camel/providers/imap4/camel-imap4-store.c:1071 + #, c-format + msgid "Cannot delete folder `%s': Special folder" + msgstr "Impossibile eliminare la cartella \"%s\": cartella speciale" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1083 ++#: ../camel/providers/imap4/camel-imap4-store.c:1078 + msgid "Cannot delete IMAP folders in offline mode." + msgstr "Impossibile eliminare cartelle IMAP in modalità fuori rete." + +-#: ../camel/providers/imap4/camel-imap4-store.c:1142 ++#: ../camel/providers/imap4/camel-imap4-store.c:1137 + #, c-format + msgid "Cannot delete folder `%s': Invalid mailbox name" + msgstr "Impossibile eliminare la cartella \"%s\": nome mailbox non valido" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1147 ++#: ../camel/providers/imap4/camel-imap4-store.c:1142 + #, c-format + msgid "Cannot delete folder `%s': Bad command" + msgstr "Impossibile eliminare la cartella \"%s\": comando errato" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1167 ++#: ../camel/providers/imap4/camel-imap4-store.c:1162 + #, c-format + msgid "Cannot rename folder `%s' to `%s': Special folder" + msgstr "Impossibile rinominare la cartella \"%s\" in \"%s\": cartella speciale" + + # LF +-#: ../camel/providers/imap4/camel-imap4-store.c:1174 ++#: ../camel/providers/imap4/camel-imap4-store.c:1169 + msgid "Cannot rename IMAP folders in offline mode." + msgstr "Impossibile rinominare cartelle IMAP in modalità fuori rete." + + # LF +-#: ../camel/providers/imap4/camel-imap4-store.c:1205 ++#: ../camel/providers/imap4/camel-imap4-store.c:1200 + #, c-format + msgid "Cannot rename folder `%s' to `%s': Invalid mailbox name" +-msgstr "" +-"Impossibile rinominare la cartella \"%s\" in \"%s\": nome mailbox non valido" ++msgstr "Impossibile rinominare la cartella \"%s\" in \"%s\": nome mailbox non valido" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1210 ++#: ../camel/providers/imap4/camel-imap4-store.c:1205 + #, c-format + msgid "Cannot rename folder `%s' to `%s': Bad command" + msgstr "Impossibile rinominare la cartella \"%s\" in \"%s\": comando errato" +@@ -3609,56 +3413,43 @@ msgstr "Impossibile rinominare la cartel + # ############## + # + # andrebbe controllato cosa sono i singoli %s +-#: ../camel/providers/imap4/camel-imap4-store.c:1557 ++#: ../camel/providers/imap4/camel-imap4-store.c:1552 + #, c-format + msgid "Cannot get %s information for pattern `%s' on IMAP server %s: %s" +-msgstr "" +-"Impossibile ricevere %s informazioni per il pattern \"%s\" sul server IMAP %" +-"s: %s" ++msgstr "Impossibile ricevere %s informazioni per il pattern \"%s\" sul server IMAP %s: %s" + + # LF +-#: ../camel/providers/imap4/camel-imap4-store.c:1597 ++#: ../camel/providers/imap4/camel-imap4-store.c:1592 + msgid "Cannot subscribe to IMAP folders in offline mode." +-msgstr "" +-"Impossibile effettuare la sottoscrizione alla cartelle IMAP in modalità " +-"fuori rete." ++msgstr "Impossibile effettuare la sottoscrizione alla cartelle IMAP in modalità fuori rete." + +-#: ../camel/providers/imap4/camel-imap4-store.c:1642 ++#: ../camel/providers/imap4/camel-imap4-store.c:1637 + #, c-format + msgid "Cannot subscribe to folder `%s': Invalid mailbox name" +-msgstr "" +-"Impossibile effettuare la sottoscrizione alla cartella \"%s\": nome mailbox " +-"non valido" ++msgstr "Impossibile effettuare la sottoscrizione alla cartella \"%s\": nome mailbox non valido" + + # LF +-#: ../camel/providers/imap4/camel-imap4-store.c:1647 ++#: ../camel/providers/imap4/camel-imap4-store.c:1642 + #, c-format + msgid "Cannot subscribe to folder `%s': Bad command" +-msgstr "" +-"Impossibile effettuare lo sottoscrizione alla cartella: \"%s\": comando " +-"errato" ++msgstr "Impossibile effettuare lo sottoscrizione alla cartella: \"%s\": comando errato" + + # LF +-#: ../camel/providers/imap4/camel-imap4-store.c:1669 ++#: ../camel/providers/imap4/camel-imap4-store.c:1664 + msgid "Cannot unsubscribe from IMAP folders in offline mode." +-msgstr "" +-"Impossibile annullare la sottoscrizione alle cartelle IMAP in modalità fuori " +-"rete." ++msgstr "Impossibile annullare la sottoscrizione alle cartelle IMAP in modalità fuori rete." + + # LF +-#: ../camel/providers/imap4/camel-imap4-store.c:1714 ++#: ../camel/providers/imap4/camel-imap4-store.c:1709 + #, c-format + msgid "Cannot unsubscribe from folder `%s': Invalid mailbox name" +-msgstr "" +-"Impossibile annullare la sottoscrizione alla cartella \"%s\": nome mailbox " +-"non valido" ++msgstr "Impossibile annullare la sottoscrizione alla cartella \"%s\": nome mailbox non valido" + + # LF +-#: ../camel/providers/imap4/camel-imap4-store.c:1719 ++#: ../camel/providers/imap4/camel-imap4-store.c:1714 + #, c-format + msgid "Cannot unsubscribe from folder `%s': Bad command" +-msgstr "" +-"Impossibile annullare la sottoscrizione alla cartella \"%s\": comando errato" ++msgstr "Impossibile annullare la sottoscrizione alla cartella \"%s\": comando errato" + + # LF + #: ../camel/providers/imap4/camel-imap4-summary.c:1472 +@@ -3698,16 +3489,8 @@ msgid "IMAP+" + msgstr "IMAP+" + + #: ../camel/providers/imapp/camel-imapp-provider.c:50 +-msgid "" +-"Experimental IMAP 4(.1) client\n" +-"This is untested and unsupported code, you want to use plain imap instead.\n" +-"\n" +-" !!! DO NOT USE THIS FOR PRODUCTION EMAIL !!!\n" +-msgstr "" +-"Client IMAP 4(.1) sperimentale\n" +-"Codice non controllato e non supportato, usare invece imap normale.\n" +-"\n" +-"!!! NON USARE PER LA GESTIONE NORMALE DELLA POSTA !!!\n" ++msgid "Experimental IMAP 4(.1) client\nThis is untested and unsupported code, you want to use plain imap instead.\n\n !!! DO NOT USE THIS FOR PRODUCTION EMAIL !!!\n" ++msgstr "Client IMAP 4(.1) sperimentale\nCodice non controllato e non supportato, usare invece imap normale.\n\n!!! NON USARE PER LA GESTIONE NORMALE DELLA POSTA !!!\n" + + #: ../camel/providers/imapp/camel-imapp-store.c:251 + #, c-format +@@ -3763,12 +3546,8 @@ msgstr "Consegne locali" + + # LF + #: ../camel/providers/local/camel-local-provider.c:73 +-msgid "" +-"For retrieving (moving) local mail from standard mbox-formatted spools into " +-"folders managed by Evolution." +-msgstr "" +-"Per ricezione (spostamento) della posta locale dallo spool nel formato " +-"standard mbox nelle cartelle gestite da Evolution." ++msgid "For retrieving (moving) local mail from standard mbox-formatted spools into folders managed by Evolution." ++msgstr "Per ricezione (spostamento) della posta locale dallo spool nel formato standard mbox nelle cartelle gestite da Evolution." + + #: ../camel/providers/local/camel-local-provider.c:87 + #: ../camel/providers/local/camel-local-provider.c:106 +@@ -3792,13 +3571,8 @@ msgid "Standard Unix mbox spool or direc + msgstr "Spool o directory Unix standard mbox" + + #: ../camel/providers/local/camel-local-provider.c:115 +-msgid "" +-"For reading and storing local mail in external standard mbox spool files.\n" +-"May also be used to read a tree of Elm, Pine, or Mutt style folders." +-msgstr "" +-"Per leggere e memorizzare la posta in file di spool esterni standard mbox.\n" +-"Può anche essere usata per leggere un albero di cartelle stile Elm, Pine o " +-"Mutt." ++msgid "For reading and storing local mail in external standard mbox spool files.\nMay also be used to read a tree of Elm, Pine, or Mutt style folders." ++msgstr "Per leggere e memorizzare la posta in file di spool esterni standard mbox.\nPuò anche essere usata per leggere un albero di cartelle stile Elm, Pine o Mutt." + + #: ../camel/providers/local/camel-local-store.c:156 + #: ../camel/providers/local/camel-local-store.c:267 +@@ -3864,8 +3638,7 @@ msgstr "Impossibile aggiornare il sommar + + #: ../camel/providers/local/camel-local-summary.c:467 + msgid "Unable to add message to summary: unknown reason" +-msgstr "" +-"Impossibile trovare messaggi da aggiungere al sommario: motivo sconosciuto" ++msgstr "Impossibile trovare messaggi da aggiungere al sommario: motivo sconosciuto" + + #: ../camel/providers/local/camel-maildir-folder.c:215 + msgid "Maildir append message cancelled" +@@ -3887,12 +3660,8 @@ msgstr "Impossibile accodare il messaggi + #: ../camel/providers/local/camel-mh-folder.c:213 + #: ../camel/providers/local/camel-mh-folder.c:222 + #, c-format +-msgid "" +-"Cannot get message: %s from folder %s\n" +-" %s" +-msgstr "" +-"Impossibile ricevere il messaggio: %s dalla cartella: %s\n" +-" %s" ++msgid "Cannot get message: %s from folder %s\n %s" ++msgstr "Impossibile ricevere il messaggio: %s dalla cartella: %s\n %s" + + #: ../camel/providers/local/camel-maildir-folder.c:268 + msgid "Invalid message contents" +@@ -4012,12 +3781,8 @@ msgstr "Impossibile ricevere la cartella + #: ../camel/providers/local/camel-mbox-store.c:237 + #: ../camel/providers/local/camel-mbox-store.c:260 + #, c-format +-msgid "" +-"Could not delete folder `%s':\n" +-"%s" +-msgstr "" +-"Impossibile eliminare la cartella \"%s\":\n" +-"%s" ++msgid "Could not delete folder `%s':\n%s" ++msgstr "Impossibile eliminare la cartella \"%s\":\n%s" + + #: ../camel/providers/local/camel-mbox-store.c:245 + #, c-format +@@ -4117,8 +3882,7 @@ msgstr "Impossibile memorizzare la carte + #: ../camel/providers/local/camel-mbox-summary.c:936 + #: ../camel/providers/local/camel-mbox-summary.c:944 + msgid "Summary and folder mismatch, even after a sync" +-msgstr "" +-"Sommario e cartella non corrispondono, nemmeno dopo una sincronizzazione" ++msgstr "Sommario e cartella non corrispondono, nemmeno dopo una sincronizzazione" + + #: ../camel/providers/local/camel-mbox-summary.c:870 + #: ../camel/providers/local/camel-spool-summary.c:336 +@@ -4181,12 +3945,8 @@ msgstr "La cartella \"%s/%s\" non esiste + + #: ../camel/providers/local/camel-spool-store.c:173 + #, c-format +-msgid "" +-"Could not open folder `%s':\n" +-"%s" +-msgstr "" +-"Impossibile aprire la cartella \"%s\":\n" +-"%s " ++msgid "Could not open folder `%s':\n%s" ++msgstr "Impossibile aprire la cartella \"%s\":\n%s " + + #: ../camel/providers/local/camel-spool-store.c:177 + #, c-format +@@ -4195,12 +3955,8 @@ msgstr "La cartella \"%s\" non esiste." + + #: ../camel/providers/local/camel-spool-store.c:182 + #, c-format +-msgid "" +-"Could not create folder `%s':\n" +-"%s" +-msgstr "" +-"Impossibile creare la cartella \"%s\":\n" +-"%s" ++msgid "Could not create folder `%s':\n%s" ++msgstr "Impossibile creare la cartella \"%s\":\n%s" + + # LF + #: ../camel/providers/local/camel-spool-store.c:190 +@@ -4246,12 +4002,8 @@ msgstr "Impossibile sincronizzare cartel + #: ../camel/providers/local/camel-spool-summary.c:263 + #: ../camel/providers/local/camel-spool-summary.c:276 + #, c-format +-msgid "" +-"Could not sync spool folder %s: %s\n" +-"Folder may be corrupt, copy saved in `%s'" +-msgstr "" +-"Impossibile sincronizzare cartella spool %s: %s\n" +-"La cartella potrebbe essere corrotta, copia salvata in \"%s\"" ++msgid "Could not sync spool folder %s: %s\nFolder may be corrupt, copy saved in `%s'" ++msgstr "Impossibile sincronizzare cartella spool %s: %s\nLa cartella potrebbe essere corrotta, copia salvata in \"%s\"" + + #: ../camel/providers/nntp/camel-nntp-folder.c:175 + #: ../camel/providers/nntp/camel-nntp-folder.c:207 +@@ -4273,25 +4025,19 @@ msgstr "Pubblicazione fallita: %s" + # post -> pubblicare + #: ../camel/providers/nntp/camel-nntp-folder.c:392 + msgid "You cannot post NNTP messages while working offline!" +-msgstr "" +-"Impossibile pubblicare messaggi NNTP durante una sessione di lavoro fuori " +-"rete!" ++msgstr "Impossibile pubblicare messaggi NNTP durante una sessione di lavoro fuori rete!" + + #: ../camel/providers/nntp/camel-nntp-folder.c:403 + msgid "You cannot copy messages from a NNTP folder!" + msgstr "Impossibile copiare messaggi da una cartella NNTP!" + + #: ../camel/providers/nntp/camel-nntp-provider.c:44 +-msgid "" +-"Show folders in short notation (e.g. c.o.linux rather than comp.os.linux)" +-msgstr "" +-"Mostrare le cartelle in formato corto (cioè c.o.linux invece che comp.os." +-"linux)" ++msgid "Show folders in short notation (e.g. c.o.linux rather than comp.os.linux)" ++msgstr "Mostrare le cartelle in formato corto (cioè c.o.linux invece che comp.os.linux)" + + #: ../camel/providers/nntp/camel-nntp-provider.c:46 + msgid "In the subscription dialog, show relative folder names" +-msgstr "" +-"Nel dialogo per la sottoscrizione, mostrare i nomi relativi delle cartelle" ++msgstr "Nel dialogo per la sottoscrizione, mostrare i nomi relativi delle cartelle" + + #: ../camel/providers/nntp/camel-nntp-provider.c:53 + msgid "USENET news" +@@ -4303,9 +4049,7 @@ msgstr "Questo è un provider per la let + + # LF + #: ../camel/providers/nntp/camel-nntp-provider.c:74 +-msgid "" +-"This option will authenticate with the NNTP server using a plaintext " +-"password." ++msgid "This option will authenticate with the NNTP server using a plaintext password." + msgstr "Opzione per l'autenticazione con il server NNTP usando una password in testo semplice." + + #: ../camel/providers/nntp/camel-nntp-store.c:219 +@@ -4326,36 +4070,18 @@ msgstr "News USENET via %s" + + #: ../camel/providers/nntp/camel-nntp-store.c:798 + #, c-format +-msgid "" +-"Error retrieving newsgroups:\n" +-"\n" +-"%s" +-msgstr "" +-"Errore nella ricezione dei gruppi:\n" +-"\n" +-"%s" ++msgid "Error retrieving newsgroups:\n\n%s" ++msgstr "Errore nella ricezione dei gruppi:\n\n%s" + + # LF + #: ../camel/providers/nntp/camel-nntp-store.c:892 +-msgid "" +-"You cannot subscribe to this newsgroup:\n" +-"\n" +-"No such newsgroup. The selected item is a probably a parent folder." +-msgstr "" +-"Impossibile effettuare la sottoscrizione a questo newsgroup:\n" +-"\n" +-"nessun newsgroup disponibile. La voce selezionata è probabilmente una cartella genitore." ++msgid "You cannot subscribe to this newsgroup:\n\nNo such newsgroup. The selected item is a probably a parent folder." ++msgstr "Impossibile effettuare la sottoscrizione a questo newsgroup:\n\nnessun newsgroup disponibile. La voce selezionata è probabilmente una cartella genitore." + + # LF + #: ../camel/providers/nntp/camel-nntp-store.c:924 +-msgid "" +-"You cannot unsubscribe to this newsgroup:\n" +-"\n" +-"newsgroup does not exist!" +-msgstr "" +-"Impossibile annullare la sottoscrizione a questo newsgroup:\n" +-"\n" +-"il newsgroup non esiste!" ++msgid "You cannot unsubscribe to this newsgroup:\n\nnewsgroup does not exist!" ++msgstr "Impossibile annullare la sottoscrizione a questo newsgroup:\n\nil newsgroup non esiste!" + + # LF + # +@@ -4363,9 +4089,7 @@ msgstr "" + # magazzino ?? + #: ../camel/providers/nntp/camel-nntp-store.c:949 + msgid "You cannot create a folder in a News store: subscribe instead." +-msgstr "" +-"Impossibile creare una cartella in un magazzino di news: piuttosto " +-"effettuare una sottoscrizione." ++msgstr "Impossibile creare una cartella in un magazzino di news: piuttosto effettuare una sottoscrizione." + + # LF + # +@@ -4381,9 +4105,7 @@ msgstr "Impossibile rinominare una carte + # magazzino ?? + #: ../camel/providers/nntp/camel-nntp-store.c:965 + msgid "You cannot remove a folder in a News store: unsubscribe instead." +-msgstr "" +-"Impossibile rimuovere una cartella in un magazzino news: piuttosto annullare " +-"la sottoscrizione." ++msgstr "Impossibile rimuovere una cartella in un magazzino news: piuttosto annullare la sottoscrizione." + + #: ../camel/providers/nntp/camel-nntp-store.c:1146 + msgid "Authentication requested but no username provided" +@@ -4494,17 +4216,12 @@ msgstr "Per connettersi e scaricare la p + + # LF + #: ../camel/providers/pop3/camel-pop3-provider.c:74 +-msgid "" +-"This option will connect to the POP server using a plaintext password. This " +-"is the only option supported by many POP servers." ++msgid "This option will connect to the POP server using a plaintext password. This is the only option supported by many POP servers." + msgstr "Opzione per connessioni al server POP usando una password in testo semplice. Questa è la sola opzione supportata da molti server POP." + + # LF + #: ../camel/providers/pop3/camel-pop3-provider.c:84 +-msgid "" +-"This option will connect to the POP server using an encrypted password via " +-"the APOP protocol. This may not work for all users even on servers that " +-"claim to support it." ++msgid "This option will connect to the POP server using an encrypted password via the APOP protocol. This may not work for all users even on servers that claim to support it." + msgstr "Opzione per connessioni al server POP usando una password cifrata attraverso il protocollo APOP. Potrebbe non funzionare per tutti gli utenti anche su server che affermano di supportarlo. " + + # LF +@@ -4514,7 +4231,7 @@ msgid "Failed to read a valid greeting f + msgstr "Lettura di un messaggio di benvenuto valido dal server POP %s fallita" + + # LF +-#: ../camel/providers/pop3/camel-pop3-store.c:216 ++#: ../camel/providers/pop3/camel-pop3-store.c:219 + #: ../camel/providers/pop3/camel-pop3-store.c:233 + #: ../camel/providers/pop3/camel-pop3-store.c:243 + #: ../camel/providers/pop3/camel-pop3-store.c:249 +@@ -4522,71 +4239,58 @@ msgstr "Lettura di un messaggio di benve + msgid "Failed to connect to POP server %s in secure mode: %s" + msgstr "Connessione al server POP %s in modalità sicura fallita: %s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:217 ++#: ../camel/providers/pop3/camel-pop3-store.c:220 + msgid "STLS not supported" + msgstr "STLS non supportata" + +-#: ../camel/providers/pop3/camel-pop3-store.c:361 ++#: ../camel/providers/pop3/camel-pop3-store.c:356 + #, c-format + msgid "Could not connect to POP server %s" + msgstr "Impossibile connettersi al server POP %s" + + # LF +-#: ../camel/providers/pop3/camel-pop3-store.c:402 +-#: ../camel/providers/pop3/camel-pop3-store.c:516 ++#: ../camel/providers/pop3/camel-pop3-store.c:397 ++#: ../camel/providers/pop3/camel-pop3-store.c:511 + #, c-format +-msgid "" +-"Unable to connect to POP server %s: No support for requested authentication " +-"mechanism." +-msgstr "" +-"Impossibile connettersi al server POP %s: non c'è alcun supporto per il " +-"meccanismo di autenticazione richiesto." ++msgid "Unable to connect to POP server %s: No support for requested authentication mechanism." ++msgstr "Impossibile connettersi al server POP %s: non c'è alcun supporto per il meccanismo di autenticazione richiesto." + + # LF +-#: ../camel/providers/pop3/camel-pop3-store.c:418 ++#: ../camel/providers/pop3/camel-pop3-store.c:413 + #, c-format + msgid "SASL `%s' Login failed for POP server %s: %s" + msgstr "Login SASL \"%s\" fallito per il server POP %s: %s" + + # LF +-#: ../camel/providers/pop3/camel-pop3-store.c:430 ++#: ../camel/providers/pop3/camel-pop3-store.c:425 + #, c-format + msgid "Cannot login to POP server %s: SASL Protocol error" +-msgstr "" +-"Impossibile effettuare il login sul server POP %s: errore di protocollo SASL" ++msgstr "Impossibile effettuare il login sul server POP %s: errore di protocollo SASL" + + # LF +-#: ../camel/providers/pop3/camel-pop3-store.c:449 ++#: ../camel/providers/pop3/camel-pop3-store.c:444 + #, c-format + msgid "Failed to authenticate on POP server %s: %s" + msgstr "Autenticazione sul server POP %s fallita: %s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:475 ++#: ../camel/providers/pop3/camel-pop3-store.c:470 + #, c-format + msgid "%sPlease enter the POP password for %s on host %s" + msgstr "%sInserire la password POP per %s sull'host %s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:530 +-#: ../camel/providers/pop3/camel-pop3-store.c:543 ++#: ../camel/providers/pop3/camel-pop3-store.c:525 ++#: ../camel/providers/pop3/camel-pop3-store.c:538 + #, c-format +-msgid "" +-"Unable to connect to POP server %s.\n" +-"Error sending password: %s" +-msgstr "" +-"Impossibile connettersi al server POP %s.\n" +-"Errore nell'invio della password: %s" ++msgid "Unable to connect to POP server %s.\nError sending password: %s" ++msgstr "Impossibile connettersi al server POP %s.\nErrore nell'invio della password: %s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:537 ++#: ../camel/providers/pop3/camel-pop3-store.c:532 + #, c-format +-msgid "" +-"Unable to connect to POP server %s.\n" +-"Error sending username: %s" +-msgstr "" +-"Impossibile connettersi al server POP %s.\n" +-"Errore nell'invio del nome utente: %s" ++msgid "Unable to connect to POP server %s.\nError sending username: %s" ++msgstr "Impossibile connettersi al server POP %s.\nErrore nell'invio del nome utente: %s" + + # LF +-#: ../camel/providers/pop3/camel-pop3-store.c:643 ++#: ../camel/providers/pop3/camel-pop3-store.c:638 + #, c-format + msgid "No such folder `%s'." + msgstr "Nessuna cartella \"%s\"." +@@ -4596,12 +4300,8 @@ msgid "Sendmail" + msgstr "Sendmail" + + #: ../camel/providers/sendmail/camel-sendmail-provider.c:39 +-msgid "" +-"For delivering mail by passing it to the \"sendmail\" program on the local " +-"system." +-msgstr "" +-"Per consegnare la posta passandola al programma \"sendmail\" sul sistema " +-"locale." ++msgid "For delivering mail by passing it to the \"sendmail\" program on the local system." ++msgstr "Per consegnare la posta passandola al programma \"sendmail\" sul sistema locale." + + # LF + #: ../camel/providers/sendmail/camel-sendmail-transport.c:114 +@@ -4651,8 +4351,7 @@ msgstr "SMTP" + # ############ + #: ../camel/providers/smtp/camel-smtp-provider.c:40 + msgid "For delivering mail by connecting to a remote mailhub using SMTP." +-msgstr "" +-"Per consegnare la posta connettendosi a un mail hub remoto usando SMTP." ++msgstr "Per consegnare la posta connettendosi a un mail hub remoto usando SMTP." + + #: ../camel/providers/smtp/camel-smtp-transport.c:162 + msgid "Syntax error, command unrecognized" +@@ -4750,8 +4449,7 @@ msgstr "Il meccanismo di autenticazione + + #: ../camel/providers/smtp/camel-smtp-transport.c:208 + msgid "Encryption required for requested authentication mechanism" +-msgstr "" +-"È richiesta la crittografia per il meccanismo di autenticazione richiesto" ++msgstr "È richiesta la crittografia per il meccanismo di autenticazione richiesto" + + # LF + #: ../camel/providers/smtp/camel-smtp-transport.c:210 +@@ -4779,122 +4477,116 @@ msgstr "Comando STARTTLS fallito: %s" + msgid "STARTTLS command failed" + msgstr "Comando STARTTLP fallito" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:488 ++#: ../camel/providers/smtp/camel-smtp-transport.c:483 + #, c-format + msgid "SMTP server %s does not support requested authentication type %s." + msgstr "Il server SMTP %s non supporta il tipo di autenticazione richiesto %s." + + # LF +-#: ../camel/providers/smtp/camel-smtp-transport.c:526 ++#: ../camel/providers/smtp/camel-smtp-transport.c:521 + #, c-format + msgid "%sPlease enter the SMTP password for %s on host %s" + msgstr "%sInserire la password SMTP per %s sull'host %s" + + # LF +-#: ../camel/providers/smtp/camel-smtp-transport.c:545 ++#: ../camel/providers/smtp/camel-smtp-transport.c:540 + #, c-format +-msgid "" +-"Unable to authenticate to SMTP server.\n" +-"%s\n" +-"\n" +-msgstr "" +-"Impossibile effettuare l'autenticazione sul server SMTP.\n" +-"%s\n" +-"\n" ++msgid "Unable to authenticate to SMTP server.\n%s\n\n" ++msgstr "Impossibile effettuare l'autenticazione sul server SMTP.\n%s\n\n" + + # LF +-#: ../camel/providers/smtp/camel-smtp-transport.c:669 ++#: ../camel/providers/smtp/camel-smtp-transport.c:664 + #, c-format + msgid "SMTP server %s" + msgstr "Server SMTP %s" + + # LF +-#: ../camel/providers/smtp/camel-smtp-transport.c:671 ++#: ../camel/providers/smtp/camel-smtp-transport.c:666 + #, c-format + msgid "SMTP mail delivery via %s" + msgstr "Posta SMTP consegnata attraverso %s" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:689 ++#: ../camel/providers/smtp/camel-smtp-transport.c:684 + msgid "Cannot send message: service not connected." + msgstr "Impossibile inviare il messaggio: servizio non connesso." + + # LF +-#: ../camel/providers/smtp/camel-smtp-transport.c:695 ++#: ../camel/providers/smtp/camel-smtp-transport.c:690 + msgid "Cannot send message: sender address not valid." + msgstr "Impossibile inviare il messaggio: indirizzo mittente non valido." + +-#: ../camel/providers/smtp/camel-smtp-transport.c:699 ++#: ../camel/providers/smtp/camel-smtp-transport.c:694 + msgid "Sending message" + msgstr "Invio messaggio" + + # LF +-#: ../camel/providers/smtp/camel-smtp-transport.c:714 ++#: ../camel/providers/smtp/camel-smtp-transport.c:709 + msgid "Cannot send message: no recipients defined." + msgstr "Impossibile inviare il messaggio: nessun destinatario definito." + +-#: ../camel/providers/smtp/camel-smtp-transport.c:725 ++#: ../camel/providers/smtp/camel-smtp-transport.c:720 + msgid "Cannot send message: one or more invalid recipients" + msgstr "Impossibile inviare il messaggio: uno o più destinatari non validi" + + # LF +-#: ../camel/providers/smtp/camel-smtp-transport.c:894 ++#: ../camel/providers/smtp/camel-smtp-transport.c:889 + msgid "SMTP Greeting" + msgstr "Messaggio di benvenuto SMTP" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:920 ++#: ../camel/providers/smtp/camel-smtp-transport.c:915 + #, c-format + msgid "HELO command failed: %s" + msgstr "Comando HELO fallito: %s" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:937 ++#: ../camel/providers/smtp/camel-smtp-transport.c:932 + msgid "HELO command failed" + msgstr "Comando HELO fallito" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1003 ++#: ../camel/providers/smtp/camel-smtp-transport.c:998 + msgid "SMTP Authentication" + msgstr "Autenticazione SMTP" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1009 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1004 + msgid "Error creating SASL authentication object." + msgstr "Errore nel creare un oggetto di autenticazione SASL." + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1026 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1037 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1021 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1032 + #, c-format + msgid "AUTH command failed: %s" + msgstr "Comando AUTH fallito: %s" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1043 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1038 + msgid "AUTH command failed" + msgstr "Comando AUTH fallito" + + # LF +-#: ../camel/providers/smtp/camel-smtp-transport.c:1105 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1100 + msgid "Bad authentication response from server.\n" + msgstr "Risposta di autenticazione errata dal server.\n" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1130 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1125 + #, c-format + msgid "MAIL FROM command failed: %s: mail not sent" + msgstr "Comando MAIL FROM fallito: %s: posta non inviata" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1147 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1142 + msgid "MAIL FROM command failed" + msgstr "Comando MAIL FROM fallito" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1171 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1166 + #, c-format + msgid "RCPT TO command failed: %s: mail not sent" + msgstr "Comando RCPT TO fallito: %s: posta non inviata" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1190 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1185 + #, c-format + msgid "RCPT TO <%s> failed" + msgstr "RCPT TO <%s> fallito" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1229 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1287 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1306 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1224 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1282 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1301 + #, c-format + msgid "DATA command failed: %s: mail not sent" + msgstr "Comando DATA fallito: %s: posta non inviata" +@@ -4902,107 +4594,107 @@ msgstr "Comando DATA fallito: %s: posta + #. we should have gotten instructions on how to use the DATA command: + #. * 354 Enter mail, end with "." on a line by itself + #. +-#: ../camel/providers/smtp/camel-smtp-transport.c:1246 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1322 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1241 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1317 + msgid "DATA command failed" + msgstr "Comando DATA fallito" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1345 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1340 + #, c-format + msgid "RSET command failed: %s" + msgstr "Comando RSET fallito: %s" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1361 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1356 + msgid "RSET command failed" +-msgstr "Comando RSET fallito: %s" ++msgstr "Comando RSET fallito:" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1384 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1379 + #, c-format + msgid "QUIT command failed: %s" + msgstr "Comando QUIT fallito: %s" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1398 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1393 + msgid "QUIT command failed" + msgstr "Comando QUIT fallito" + +-#: ../libedataserver/e-categories.c:242 ++#: ../libedataserver/e-categories.c:248 + msgid "Business" + msgstr "Affari" + +-#: ../libedataserver/e-categories.c:243 ++#: ../libedataserver/e-categories.c:249 + msgid "Competition" + msgstr "Competizione" + +-#: ../libedataserver/e-categories.c:244 ++#: ../libedataserver/e-categories.c:250 + msgid "Favorites" + msgstr "Favoriti" + +-#: ../libedataserver/e-categories.c:245 ++#: ../libedataserver/e-categories.c:251 + msgid "Gifts" + msgstr "Regali" + +-#: ../libedataserver/e-categories.c:246 ++#: ../libedataserver/e-categories.c:252 + msgid "Goals/Objectives" + msgstr "Obbiettivi" + +-#: ../libedataserver/e-categories.c:247 ++#: ../libedataserver/e-categories.c:253 + msgid "Holiday" + msgstr "Vacanze" + +-#: ../libedataserver/e-categories.c:248 ++#: ../libedataserver/e-categories.c:254 + msgid "Holiday Cards" + msgstr "Cartoline" + + #. important people (e.g. new business partners) you should pay attention to/observe +-#: ../libedataserver/e-categories.c:250 ++#: ../libedataserver/e-categories.c:256 + msgid "Hot Contacts" + msgstr "Contatti importanti" + +-#: ../libedataserver/e-categories.c:251 ++#: ../libedataserver/e-categories.c:257 + msgid "Ideas" + msgstr "Idee" + +-#: ../libedataserver/e-categories.c:252 ++#: ../libedataserver/e-categories.c:258 + msgid "International" + msgstr "Internazionale" + +-#: ../libedataserver/e-categories.c:253 ++#: ../libedataserver/e-categories.c:259 + msgid "Key Customer" + msgstr "Cliente importante" + +-#: ../libedataserver/e-categories.c:254 ++#: ../libedataserver/e-categories.c:260 + msgid "Miscellaneous" + msgstr "Varie" + +-#: ../libedataserver/e-categories.c:255 ++#: ../libedataserver/e-categories.c:261 + msgid "Personal" + msgstr "Personale" + +-#: ../libedataserver/e-categories.c:256 ++#: ../libedataserver/e-categories.c:262 + msgid "Phone Calls" + msgstr "Chiamate telefoniche" + +-#: ../libedataserver/e-categories.c:257 ++#: ../libedataserver/e-categories.c:263 + msgid "Status" + msgstr "Stato" + +-#: ../libedataserver/e-categories.c:258 ++#: ../libedataserver/e-categories.c:264 + msgid "Strategies" + msgstr "Strategie" + +-#: ../libedataserver/e-categories.c:259 ++#: ../libedataserver/e-categories.c:265 + msgid "Suppliers" + msgstr "Fornitori" + +-#: ../libedataserver/e-categories.c:260 ++#: ../libedataserver/e-categories.c:266 + msgid "Time & Expenses" + msgstr "Tempo e spese" + +-#: ../libedataserver/e-categories.c:261 ++#: ../libedataserver/e-categories.c:267 + msgid "VIP" + msgstr "VIP" + +-#: ../libedataserver/e-categories.c:262 ++#: ../libedataserver/e-categories.c:268 + msgid "Waiting" + msgstr "In attesa" + +@@ -5010,7 +4702,7 @@ msgstr "In attesa" + #. in 12-hour format. + #. strftime format of a weekday, a date and a + #. time, in 12-hour format. +-#: ../libedataserver/e-time-utils.c:1319 ../libedataserver/e-time-utils.c:1562 ++#: ../libedataserver/e-time-utils.c:1319 ../libedataserver/e-time-utils.c:1566 + msgid "%a %m/%d/%Y %I:%M:%S %p" + msgstr "%a %d/%m/%Y %I.%M.%S %p" + +@@ -5018,7 +4710,7 @@ msgstr "%a %d/%m/%Y %I.%M.%S %p" + #. in 24-hour format. + #. strftime format of a weekday, a date and a + #. time, in 24-hour format. +-#: ../libedataserver/e-time-utils.c:1324 ../libedataserver/e-time-utils.c:1553 ++#: ../libedataserver/e-time-utils.c:1324 ../libedataserver/e-time-utils.c:1557 + msgid "%a %m/%d/%Y %H:%M:%S" + msgstr "%a %d/%m/%Y %k.%M.%S" + +@@ -5026,7 +4718,7 @@ msgstr "%a %d/%m/%Y %k.%M.%S" + #. in 12-hour format, without seconds. + #. strftime format of a weekday, a date and a + #. time, in 12-hour format, without seconds. +-#: ../libedataserver/e-time-utils.c:1329 ../libedataserver/e-time-utils.c:1558 ++#: ../libedataserver/e-time-utils.c:1329 ../libedataserver/e-time-utils.c:1562 + msgid "%a %m/%d/%Y %I:%M %p" + msgstr "%a %d/%m/%Y %I.%M %p" + +@@ -5034,7 +4726,7 @@ msgstr "%a %d/%m/%Y %I.%M %p" + #. in 24-hour format, without seconds. + #. strftime format of a weekday, a date and a + #. time, in 24-hour format, without seconds. +-#: ../libedataserver/e-time-utils.c:1334 ../libedataserver/e-time-utils.c:1549 ++#: ../libedataserver/e-time-utils.c:1334 ../libedataserver/e-time-utils.c:1553 + msgid "%a %m/%d/%Y %H:%M" + msgstr "%a %d/%m/%Y %k.%M" + +@@ -5052,8 +4744,8 @@ msgstr "%a %d/%m/%Y %k" + + #. strptime format of a weekday and a date. + #. strftime format of a weekday and a date. +-#: ../libedataserver/e-time-utils.c:1347 ../libedataserver/e-time-utils.c:1440 +-#: ../libedataserver/e-time-utils.c:1544 ++#: ../libedataserver/e-time-utils.c:1347 ../libedataserver/e-time-utils.c:1443 ++#: ../libedataserver/e-time-utils.c:1548 + msgid "%a %m/%d/%Y" + msgstr "%a %d/%m/%Y" + +@@ -5093,19 +4785,19 @@ msgstr "%d/%m/%Y %k" + + #. strptime format of a weekday and a date. + #. This is the preferred date format for the locale. +-#: ../libedataserver/e-time-utils.c:1382 ../libedataserver/e-time-utils.c:1443 ++#: ../libedataserver/e-time-utils.c:1382 ../libedataserver/e-time-utils.c:1446 + msgid "%m/%d/%Y" + msgstr "%d/%m/%Y" + + #. strptime format for a time of day, in 12-hour format. + #. strftime format of a time in 12-hour format. +-#: ../libedataserver/e-time-utils.c:1488 ../libedataserver/e-time-utils.c:1607 ++#: ../libedataserver/e-time-utils.c:1492 ../libedataserver/e-time-utils.c:1611 + msgid "%I:%M:%S %p" + msgstr "%I.%M.%S %p" + + #. strptime format for a time of day, in 24-hour format. + #. strftime format of a time in 24-hour format. +-#: ../libedataserver/e-time-utils.c:1492 ../libedataserver/e-time-utils.c:1599 ++#: ../libedataserver/e-time-utils.c:1496 ../libedataserver/e-time-utils.c:1603 + msgid "%H:%M:%S" + msgstr "%k.%M.%S" + +@@ -5113,19 +4805,19 @@ msgstr "%k.%M.%S" + #. in 12-hour format. + #. strftime format of a time in 12-hour format, + #. without seconds. +-#: ../libedataserver/e-time-utils.c:1497 ../libedataserver/e-time-utils.c:1604 ++#: ../libedataserver/e-time-utils.c:1501 ../libedataserver/e-time-utils.c:1608 + msgid "%I:%M %p" + msgstr "%I.%M %p" + + #. strptime format for time of day, without seconds 24-hour format. + #. strftime format of a time in 24-hour format, + #. without seconds. +-#: ../libedataserver/e-time-utils.c:1501 ../libedataserver/e-time-utils.c:1596 ++#: ../libedataserver/e-time-utils.c:1505 ../libedataserver/e-time-utils.c:1600 + msgid "%H:%M" + msgstr "%k.%M" + + #. strptime format for hour and AM/PM, 12-hour format. +-#: ../libedataserver/e-time-utils.c:1505 ++#: ../libedataserver/e-time-utils.c:1509 + msgid "%I %p" + msgstr "%I %p" + +@@ -5140,11 +4832,8 @@ msgstr "Autenticazione fallita.\n" + + #: ../libedataserverui/e-categories-dialog.c:265 + #, c-format +-msgid "" +-"There is already a category '%s' in the configuration. Please use another " +-"name" +-msgstr "" +-"Esiste già una categoria \"%s\" nella configuazione. Usare un'altro nome" ++msgid "There is already a category '%s' in the configuration. Please use another name" ++msgstr "Esiste già una categoria \"%s\" nella configuazione. Usare un'altro nome" + + #: ../libedataserverui/e-categories-dialog.c:435 + msgid "Category" +@@ -5186,15 +4875,15 @@ msgstr "_Modifica" + msgid "categories" + msgstr "categorie" + +-#: ../libedataserverui/e-name-selector-dialog.c:260 ++#: ../libedataserverui/e-name-selector-dialog.c:284 + msgid "Select Contacts from Address Book" + msgstr "Seleziona contatti dalla rubrica" + +-#: ../libedataserverui/e-name-selector-dialog.c:554 ++#: ../libedataserverui/e-name-selector-dialog.c:578 + msgid "_Add" + msgstr "A_ggiungi" + +-#: ../libedataserverui/e-name-selector-dialog.c:579 ++#: ../libedataserverui/e-name-selector-dialog.c:603 + msgid "_Remove" + msgstr "_Rimuovi" + +@@ -5228,7 +4917,7 @@ msgid "C_ategory:" + msgstr "C_ategoria:" + + #: ../libedataserverui/e-name-selector-dialog.glade.h:8 +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:258 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:261 + msgid "Contacts" + msgstr "Contatti" + +@@ -5242,13 +4931,13 @@ msgstr "C_erca:" + + # LF + #. To Translators: This would be similiar to "Expand MyList Inline" where MyList is a Contact List +-#: ../libedataserverui/e-name-selector-entry.c:1947 ++#: ../libedataserverui/e-name-selector-entry.c:1997 + #, c-format + msgid "E_xpand %s Inline" + msgstr "E_spandere %s in linea" + + #. Edit Contact item +-#: ../libedataserverui/e-name-selector-entry.c:1963 ++#: ../libedataserverui/e-name-selector-entry.c:2013 + #, c-format + msgid "_Edit %s" + msgstr "_Modifica %s" +@@ -5262,12 +4951,24 @@ msgid "_Delete %s" + msgstr "Eli_mina %s" + + # LF +-#: ../libedataserverui/e-passwords.c:471 ++#: ../libedataserverui/e-passwords.c:472 ++#, ++msgid "_Remember this passphrase" ++msgstr "_Remember this passphrase" ++ ++# LF ++#: ../libedataserverui/e-passwords.c:473 ++#, ++msgid "_Remember this passphrase for the remainder of this session" ++msgstr "_Remember this passphrase for the remainder of this session" ++ ++# LF ++#: ../libedataserverui/e-passwords.c:476 + msgid "_Remember this password" + msgstr "_Ricordare questa password" + + # LF +-#: ../libedataserverui/e-passwords.c:472 ++#: ../libedataserverui/e-passwords.c:477 + msgid "_Remember this password for the remainder of this session" + msgstr "_Ricordare questa password per il resto della sessione in corso" + +@@ -5280,14 +4981,14 @@ msgstr "Seleziona la destinazione" + msgid "_Destination" + msgstr "_Destinazione" + +-#: ../servers/exchange/lib/e2k-autoconfig.c:1636 +-#: ../servers/exchange/storage/exchange-account.c:936 ++#: ../servers/exchange/lib/e2k-autoconfig.c:1647 ++#: ../servers/exchange/storage/exchange-account.c:932 + #, c-format + msgid "Enter password for %s" + msgstr "Inserire password per %s" + +-#: ../servers/exchange/lib/e2k-autoconfig.c:1637 +-#: ../servers/exchange/storage/exchange-account.c:941 ++#: ../servers/exchange/lib/e2k-autoconfig.c:1648 ++#: ../servers/exchange/storage/exchange-account.c:937 + msgid "Enter password" + msgstr "Inserire password" + +@@ -5361,18 +5062,6 @@ msgstr "Nessuno" + msgid "Custom" + msgstr "Personalizzato" + +-# LF +-# +-# Mi sa che è "Selezione utente", titolo di finestra.. +-# dovrei controllare nel codice... +-#: ../servers/exchange/lib/e2k-user-dialog.c:144 +-msgid "Select User" +-msgstr "Seleziona utente" +- +-#: ../servers/exchange/lib/e2k-user-dialog.c:182 +-msgid "Addressbook..." +-msgstr "Rubrica..." +- + #: ../servers/exchange/storage/e-storage.c:556 + msgid "Generic error" + msgstr "Errore generico" +@@ -5433,12 +5122,12 @@ msgstr "Questa operazione non può esser + + #. i18n: This is the title of an "other user's folders" + #. hierarchy. Eg, "John Doe's Folders". +-#: ../servers/exchange/storage/exchange-account.c:639 ++#: ../servers/exchange/storage/exchange-account.c:635 + #, c-format + msgid "%s's Folders" + msgstr "Cartelle di %s" + +-#: ../servers/exchange/storage/exchange-account.c:1242 ++#: ../servers/exchange/storage/exchange-account.c:1238 + msgid "Personal Folders" + msgstr "Cartelle personali" + +@@ -5453,7 +5142,7 @@ msgstr "Cartelle personali" + # Direi che "Cartelle pubbliche preferite" va bene + # + # PS spero di non infrangere il (C) di MS ricopiando qui le traduzioni :-( +-#: ../servers/exchange/storage/exchange-account.c:1256 ++#: ../servers/exchange/storage/exchange-account.c:1252 + msgid "Favorite Public Folders" + msgstr "Cartelle pubbliche preferite" + +@@ -5461,7 +5150,7 @@ msgstr "Cartelle pubbliche preferite" + # + # Traduzione di outlook/exchange + #. i18n: Outlookism +-#: ../servers/exchange/storage/exchange-account.c:1273 ++#: ../servers/exchange/storage/exchange-account.c:1269 + msgid "All Public Folders" + msgstr "Tutte le cartelle pubbliche" + +@@ -5469,7 +5158,7 @@ msgstr "Tutte le cartelle pubbliche" + # + # Traduzione di outlook/exchange + #. i18n: Outlookism +-#: ../servers/exchange/storage/exchange-account.c:1287 ++#: ../servers/exchange/storage/exchange-account.c:1283 + msgid "Global Address List" + msgstr "Elenco indirizzi globale" + +@@ -5478,33 +5167,33 @@ msgstr "Elenco indirizzi globale" + # Era 'Oggetti eliminati', ma essendo, credo, il nome + # di una cartella exchange/outlook, è meglio usare + # la traduzione MS 'Posta eliminata' +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:259 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:262 + msgid "Deleted Items" + msgstr "Posta eliminata" + + # LF + # + # Traduzione in outlook/echange +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:260 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:263 + msgid "Drafts" + msgstr "Bozze" + + # LF + # + # Traduzione in outlook/exchange +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:262 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:265 + msgid "Journal" + msgstr "Diario" + + # LF + # + # Era 'Note', ma la traduzione in outlook/exhcange è 'Note' +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:263 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:266 + msgid "Notes" + msgstr "Note" + + # Conforme a glossario MS per outlook/exchange +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:264 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:267 + msgid "Outbox" + msgstr "Posta in uscita" + +@@ -5513,7 +5202,7 @@ msgstr "Posta in uscita" + # Era 'Oggetti inviati', ma essendo, credo, il nome + # di una cartella exchange/outlook, è meglio usare + # la traduzione MS 'Posta inviata' +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:265 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:268 + msgid "Sent Items" + msgstr "Posta inviata" + +@@ -5523,23 +5212,23 @@ msgstr "Posta inviata" + # Cambiamo solo qui per coerenza con outlook/echange (ovviamente + # apparirà solo negli storage tipo exchange) o lasciamo compiti + # per coerenza con il resto di evolution? +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:266 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:269 + msgid "Tasks" + msgstr "Compiti" + +-#: ../servers/groupwise/e-gw-connection.c:164 ++#: ../servers/groupwise/e-gw-connection.c:167 + msgid "Invalid connection" + msgstr "Connessione non valida" + +-#: ../servers/groupwise/e-gw-connection.c:168 ++#: ../servers/groupwise/e-gw-connection.c:171 + msgid "Invalid response from server" + msgstr "Risposta non valida dal server" + +-#: ../servers/groupwise/e-gw-connection.c:170 ++#: ../servers/groupwise/e-gw-connection.c:173 + msgid "No response from the server" + msgstr "Nessuna risposta dal server" + +-#: ../servers/groupwise/e-gw-connection.c:176 ++#: ../servers/groupwise/e-gw-connection.c:179 + msgid "Bad parameter" + msgstr "Parametro errato" + +@@ -5565,6 +5254,13 @@ msgstr "Servizio di log di Evolution Dat + #: ../src/server.c:106 + #, c-format + msgid "Multiple segmentation faults occurred; can't display error dialog\n" +-msgstr "" +-"Più di un errore di tipo segmentation fault: impossibile mostrare una " +-"finestra di errore\n" ++msgstr "Più di un errore di tipo segmentation fault: impossibile mostrare una finestra di errore\n" ++ ++# LF ++# ++# Mi sa che è "Selezione utente", titolo di finestra.. ++# dovrei controllare nel codice... ++#~ msgid "Select User" ++#~ msgstr "Seleziona utente" ++#~ msgid "Addressbook..." ++#~ msgstr "Rubrica..." +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: ja.gmo +diff -up /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/ja.po po/ja.po +--- /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/ja.po 2006-02-07 15:07:39.000000000 +0100 ++++ po/ja.po 2006-05-19 14:50:16.000000000 +0200 +@@ -9,38 +9,38 @@ msgid "" + msgstr "" + "Project-Id-Version: evolution-data-server HEAD\n" + "Report-Msgid-Bugs-To: \n" +-"POT-Creation-Date: 2006-02-07 23:03+0900\n" +-"PO-Revision-Date: 2006-02-07 23:02+0900\n" +-"Last-Translator: Takeshi AIHANA \n" +-"Language-Team: Japanese \n" ++"POT-Creation-Date: 2006-05-04 06:53+0000\n" ++"PO-Revision-Date: 2006-05-19 11:36\n" ++"Last-Translator: Novell Language \n" ++"Language-Team: Novell Language \n" + "MIME-Version: 1.0\n" + "Content-Type: text/plain; charset=UTF-8\n" + "Content-Transfer-Encoding: 8bit\n" + +-#: ../addressbook/backends/file/e-book-backend-file.c:536 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2213 ++#: ../addressbook/backends/file/e-book-backend-file.c:538 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2225 + #: ../addressbook/backends/vcf/e-book-backend-vcf.c:484 + msgid "Loading..." + msgstr "読み込み中..." + +-#: ../addressbook/backends/file/e-book-backend-file.c:538 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2172 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2192 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2211 ++#: ../addressbook/backends/file/e-book-backend-file.c:540 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2184 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2204 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2223 + #: ../addressbook/backends/ldap/e-book-backend-ldap.c:4038 + #: ../addressbook/backends/vcf/e-book-backend-vcf.c:486 + msgid "Searching..." + msgstr "検索中..." + +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2496 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2593 + #: ../addressbook/backends/ldap/e-book-backend-ldap.c:4202 + #, c-format + msgid "Downloading contacts (%d)... " + msgstr "連絡先 (%d 個) のダウンロード中..." + +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2645 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2812 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2848 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2746 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2927 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2957 + #, c-format + msgid "Updating contacts cache (%d)... " + msgstr "連絡先のキャッシュ情報 (%d 個) の更新中..." +@@ -95,7 +95,7 @@ msgstr "検索中にエラーが発生 + #: ../addressbook/libebook/e-book.c:3393 + #, c-format + msgid "\"%s\" on book before \"%s\"" +-msgstr "\"%2$s\" の前にあるブックの \"%1$s\"" ++msgstr "\"%s\" の前にあるブックの \"%s\"" + + #: ../addressbook/libebook/e-book.c:270 ../addressbook/libebook/e-book.c:486 + #: ../addressbook/libebook/e-book.c:631 ../addressbook/libebook/e-book.c:724 +@@ -138,7 +138,7 @@ msgstr "%s: キャンセルできませ + #: ../addressbook/libebook/e-book.c:2628 ../addressbook/libebook/e-book.c:2632 + #, c-format + msgid "\"%s\" on book after \"%s\"" +-msgstr "\"%2$s\" の次にあるブックの \"%1$s\"" ++msgstr "\"%s\" の次にあるブックの \"%s\"" + + #: ../addressbook/libebook/e-book.c:2698 + #, c-format +@@ -605,7 +605,7 @@ msgstr "誕生日" + #. Make sure we have all categories + #: ../addressbook/libebook/e-contact.c:242 + #: ../calendar/backends/contacts/e-cal-backend-contacts.c:460 +-#: ../libedataserver/e-categories.c:240 ++#: ../libedataserver/e-categories.c:246 + msgid "Anniversary" + msgstr "記念日" + +@@ -633,7 +633,7 @@ msgid "Unnamed List" + msgstr "名前なしの一覧" + + #: ../calendar/backends/contacts/e-cal-backend-contacts.c:462 +-#: ../libedataserver/e-categories.c:241 ++#: ../libedataserver/e-categories.c:247 + msgid "Birthday" + msgstr "誕生日" + +@@ -647,61 +647,68 @@ msgstr "誕生日: %s" + msgid "Anniversary: %s" + msgstr "記念日: %s" + +-#: ../calendar/backends/file/e-cal-backend-file.c:203 ++#: ../calendar/backends/file/e-cal-backend-file.c:204 + msgid "Can't save calendar data: Malformed URI." + msgstr "カレンダのデータを保存できません: URI が間違っています。" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise-utils.c:871 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1467 ++#: ../calendar/backends/file/e-cal-backend-file.c:209 ++#, ++msgid "Can't save calendar data: " ++msgstr "カレンダのデータを保存できません:" ++ ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise-utils.c:872 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1582 + msgid "Reply Requested: by " + msgstr "返信要求: by " + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise-utils.c:876 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1472 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise-utils.c:877 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1587 + msgid "Reply Requested: When convenient" + msgstr "返信要求: When convenient" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:191 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:193 + #, c-format + msgid "Loading %s items" + msgstr "\"%s\" アイテムの読み込み" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:718 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:719 + #: ../servers/exchange/storage/exchange-hierarchy-foreign.c:260 + msgid "Calendar" + msgstr "カレンダ" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:774 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:775 + msgid "Invalid server URI" + msgstr "サーバ URI が不正です" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:790 +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:799 +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:884 +-#: ../calendar/libecal/e-cal.c:5131 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:902 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:922 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:950 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:574 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:589 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:630 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1120 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:791 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:800 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:885 ++#: ../calendar/libecal/e-cal.c:5137 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:970 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:993 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1028 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:588 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:603 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:644 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:712 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:754 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1253 + #: ../camel/providers/groupwise/camel-groupwise-transport.c:178 + msgid "Authentication failed" + msgstr "認証に失敗しました" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:840 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:841 + msgid "Could not create thread for getting deltas" + msgstr "差分を取得するためのスレッドを生成できませんでした" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:865 +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:1112 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:866 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:1113 + #: ../calendar/backends/http/e-cal-backend-http.c:520 + #: ../calendar/backends/weather/e-cal-backend-weather.c:452 + msgid "Could not create cache file" + msgstr "キャッシュ・ファイルを生成できませんでした" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:878 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:879 + msgid "Could not create thread for populating cache" + msgstr "キャッシュを生成するためのスレッドを生成できませんでした" + +@@ -1056,96 +1063,96 @@ msgid "Undefined" + msgstr "未定義" + + #. FIXME: Try to get the parent uri so that we dont have to ask the password again +-#: ../calendar/libecal/e-cal.c:1705 ++#: ../calendar/libecal/e-cal.c:1707 + #, c-format + msgid "Enter password for %s to enable proxy for user %s" + msgstr "%s のパスワードを入力して、ユーザ %s のプロキシを有効にして下さい" + +-#: ../calendar/libecal/e-cal.c:1708 ../libedataserverui/e-book-auth-util.c:198 ++#: ../calendar/libecal/e-cal.c:1710 ../libedataserverui/e-book-auth-util.c:198 + #, c-format + msgid "Enter password for %s (user %s)" + msgstr "%s (ユーザ %s) のパスワードを入力して下さい" + +-#: ../calendar/libecal/e-cal.c:5103 ++#: ../calendar/libecal/e-cal.c:5109 + msgid "Invalid argument" + msgstr "不正な引数" + +-#: ../calendar/libecal/e-cal.c:5105 ++#: ../calendar/libecal/e-cal.c:5111 + msgid "Backend is busy" + msgstr "バックエンドが処理中です" + +-#: ../calendar/libecal/e-cal.c:5107 ++#: ../calendar/libecal/e-cal.c:5113 + msgid "Repository is offline" + msgstr "リポジトリはオフラインです" + +-#: ../calendar/libecal/e-cal.c:5109 ++#: ../calendar/libecal/e-cal.c:5115 + msgid "No such calendar" + msgstr "そのようなカレンダはありません" + +-#: ../calendar/libecal/e-cal.c:5111 ../servers/groupwise/e-gw-connection.c:172 ++#: ../calendar/libecal/e-cal.c:5117 ../servers/groupwise/e-gw-connection.c:175 + msgid "Object not found" + msgstr "オブジェクトが見つかりません" + +-#: ../calendar/libecal/e-cal.c:5113 ../servers/groupwise/e-gw-connection.c:166 ++#: ../calendar/libecal/e-cal.c:5119 ../servers/groupwise/e-gw-connection.c:169 + msgid "Invalid object" + msgstr "オブジェクトが不正です" + +-#: ../calendar/libecal/e-cal.c:5115 ++#: ../calendar/libecal/e-cal.c:5121 + msgid "URI not loaded" + msgstr "URI を読み込んでいません" + +-#: ../calendar/libecal/e-cal.c:5117 ++#: ../calendar/libecal/e-cal.c:5123 + msgid "URI already loaded" + msgstr "URL は既に読み込み済みです" + +-#: ../calendar/libecal/e-cal.c:5119 ++#: ../calendar/libecal/e-cal.c:5125 + #: ../servers/exchange/storage/e-storage.c:572 + msgid "Permission denied" + msgstr "権限がありません" + +-#: ../calendar/libecal/e-cal.c:5121 ../servers/groupwise/e-gw-connection.c:174 ++#: ../calendar/libecal/e-cal.c:5127 ../servers/groupwise/e-gw-connection.c:177 + msgid "Unknown User" + msgstr "ユーザを特定できません" + +-#: ../calendar/libecal/e-cal.c:5123 ++#: ../calendar/libecal/e-cal.c:5129 + msgid "Object ID already exists" + msgstr "既にオブジェクト ID が存在しています" + +-#: ../calendar/libecal/e-cal.c:5125 ++#: ../calendar/libecal/e-cal.c:5131 + msgid "Protocol not supported" + msgstr "プロトコルはサポートされていません" + +-#: ../calendar/libecal/e-cal.c:5127 ++#: ../calendar/libecal/e-cal.c:5133 + msgid "Operation has been cancelled" + msgstr "操作をキャンセルしました" + +-#: ../calendar/libecal/e-cal.c:5129 ++#: ../calendar/libecal/e-cal.c:5135 + msgid "Could not cancel operation" + msgstr "操作をキャンセルできませんでした" + +-#: ../calendar/libecal/e-cal.c:5133 ++#: ../calendar/libecal/e-cal.c:5139 + #: ../camel/providers/smtp/camel-smtp-transport.c:212 + msgid "Authentication required" + msgstr "認証を必要としています" + +-#: ../calendar/libecal/e-cal.c:5135 ++#: ../calendar/libecal/e-cal.c:5141 + msgid "A CORBA exception has occurred" + msgstr "CORBA 例外が発生しました" + +-#: ../calendar/libecal/e-cal.c:5137 ++#: ../calendar/libecal/e-cal.c:5143 + #: ../camel/providers/groupwise/camel-groupwise-transport.c:218 + #: ../camel/providers/imap/camel-imap-command.c:311 + #: ../camel/providers/imap/camel-imap-command.c:411 + #: ../camel/providers/imap4/camel-imap4-store.c:383 +-#: ../camel/providers/pop3/camel-pop3-store.c:533 +-#: ../camel/providers/pop3/camel-pop3-store.c:540 +-#: ../camel/providers/pop3/camel-pop3-store.c:546 ++#: ../camel/providers/pop3/camel-pop3-store.c:528 ++#: ../camel/providers/pop3/camel-pop3-store.c:535 ++#: ../camel/providers/pop3/camel-pop3-store.c:541 + #: ../servers/exchange/storage/e-storage.c:586 +-#: ../servers/groupwise/e-gw-connection.c:180 ++#: ../servers/groupwise/e-gw-connection.c:183 + msgid "Unknown error" + msgstr "エラーを特定できません" + +-#: ../calendar/libecal/e-cal.c:5139 ++#: ../calendar/libecal/e-cal.c:5145 + #: ../servers/exchange/storage/e-storage.c:554 + msgid "No error" + msgstr "エラーはありません" +@@ -1178,8 +1185,7 @@ msgstr "\"%s\" は最初の引数とし + #: ../calendar/libedata-cal/e-cal-backend-sexp.c:119 + #, c-format + msgid "\"%s\" expects the first argument to be an ISO 8601 date/time string" +-msgstr "" +-"\"%s\" は最初の引数として \"ISO 8601 日付/時刻\" の文字列を必要とします" ++msgstr "\"%s\" は最初の引数として \"ISO 8601 日付/時刻\" の文字列を必要とします" + + #: ../calendar/libedata-cal/e-cal-backend-sexp.c:158 + #: ../calendar/libedata-cal/e-cal-backend-sexp.c:359 +@@ -1217,12 +1223,8 @@ msgstr "\"%s\" は二番目の引数と + + #: ../calendar/libedata-cal/e-cal-backend-sexp.c:548 + #, c-format +-msgid "" +-"\"%s\" expects the first argument to be either \"any\", \"summary\", or " +-"\"description\", or \"location\"" +-msgstr "" +-"\"%s\" は最初の引数として \"any\", \"summary\" または \"description\"、" +-"\"location\" のいずれか一つ引数を必要とします" ++msgid "\"%s\" expects the first argument to be either \"any\", \"summary\", or \"description\", or \"location\"" ++msgstr "\"%s\" は最初の引数として \"any\", \"summary\" または \"description\"、\"location\" のいずれか一つ引数を必要とします" + + #: ../calendar/libedata-cal/e-cal-backend-sexp.c:671 + #, c-format +@@ -1231,11 +1233,8 @@ msgstr "\"%s\" は少なくとも引数 + + #: ../calendar/libedata-cal/e-cal-backend-sexp.c:685 + #, c-format +-msgid "" +-"\"%s\" expects all arguments to be strings or one and only one argument to " +-"be a boolean false (#f)" +-msgstr "" +-"\"%s\" は全てまたは一つが文字列で、論理値 FAULSE (#f) を一つだけ必要とします" ++msgid "\"%s\" expects all arguments to be strings or one and only one argument to be a boolean false (#f)" ++msgstr "\"%s\" は全てまたは一つが文字列で、論理値 FAULSE (#f) を一つだけ必要とします" + + #: ../camel/camel-cipher-context.c:102 + msgid "Signing is not supported by this cipher" +@@ -1288,25 +1287,13 @@ msgstr "キャッシュ・エントリ + + #: ../camel/camel-disco-diary.c:197 + #, c-format +-msgid "" +-"Could not write log entry: %s\n" +-"Further operations on this server will not be replayed when you\n" +-"reconnect to the network." +-msgstr "" +-"ログエントリを書き込めませんでした: %s\n" +-"ネットワークに再接続しても、このサーバにおける\n" +-"それ以降の操作を再現しません。" ++msgid "Could not write log entry: %s\nFurther operations on this server will not be replayed when you\nreconnect to the network." ++msgstr "ログエントリを書き込めませんでした: %s\nネットワークに再接続しても、このサーバにおける\nそれ以降の操作を再現しません。" + + #: ../camel/camel-disco-diary.c:260 + #, c-format +-msgid "" +-"Could not open `%s':\n" +-"%s\n" +-"Changes made to this folder will not be resynchronized." +-msgstr "" +-"'%s' が開けませんでした:\n" +-"%s\n" +-"このフォルダに対する変更は再同期されません。" ++msgid "Could not open `%s':\n%s\nChanges made to this folder will not be resynchronized." ++msgstr "'%s' が開けませんでした:\n%s\nこのフォルダに対する変更は再同期されません。" + + #: ../camel/camel-disco-diary.c:296 + msgid "Resynchronizing with server" +@@ -1326,8 +1313,7 @@ msgid "Preparing folder '%s' for offline + msgstr "オフライン用の準備フォルダ '%s'" + + #: ../camel/camel-disco-store.c:401 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1311 +-#: ../camel/providers/imap/camel-imap-store.c:2964 ++#: ../camel/providers/imap/camel-imap-store.c:2970 + msgid "You must be working online to complete this operation" + msgstr "この動作を完了するためにオンラインで作業して下さい" + +@@ -1424,21 +1410,13 @@ msgstr "フィルタ検索実行中に + + #: ../camel/camel-folder-search.c:357 ../camel/camel-folder-search.c:478 + #, c-format +-msgid "" +-"Cannot parse search expression: %s:\n" +-"%s" +-msgstr "" +-"正規表現の構文を解析できません: %s:\n" +-"%s" ++msgid "Cannot parse search expression: %s:\n%s" ++msgstr "正規表現の構文を解析できません: %s:\n%s" + + #: ../camel/camel-folder-search.c:367 ../camel/camel-folder-search.c:488 + #, c-format +-msgid "" +-"Error executing search expression: %s:\n" +-"%s" +-msgstr "" +-"正規表現での検索を実行中にエラー: %s:\n" +-"%s" ++msgid "Error executing search expression: %s:\n%s" ++msgstr "正規表現での検索を実行中にエラー: %s:\n%s" + + #: ../camel/camel-folder-search.c:674 ../camel/camel-folder-search.c:707 + msgid "(match-all) requires a single bool result" +@@ -1502,14 +1480,8 @@ msgstr "新しいメッセージのフ + + #: ../camel/camel-gpg-context.c:753 + #, c-format +-msgid "" +-"Unexpected GnuPG status message encountered:\n" +-"\n" +-"%s" +-msgstr "" +-"GnuPG に予期しないステータス・メッセージがあります:\n" +-"\n" +-"%s" ++msgid "Unexpected GnuPG status message encountered:\n\n%s" ++msgstr "GnuPG に予期しないステータス・メッセージがあります:\n\n%s" + + #: ../camel/camel-gpg-context.c:767 + msgid "Failed to parse gpg userid hint." +@@ -1521,12 +1493,8 @@ msgstr "GnuPG のパスワード要求 + + #: ../camel/camel-gpg-context.c:806 ../camel/camel-gpg-context.c:810 + #, c-format +-msgid "" +-"You need a passphrase to unlock the key for\n" +-"user: \"%s\"" +-msgstr "" +-"次のユーザのキーを解除するパスワードが必要です:\n" +-" \"%s\"" ++msgid "You need a passphrase to unlock the key for\nuser: \"%s\"" ++msgstr "次のユーザのキーを解除するパスワードが必要です:\n \"%s\"" + + #: ../camel/camel-gpg-context.c:828 ../camel/camel-gpg-context.c:1032 + #: ../camel/providers/nntp/camel-nntp-store.c:1272 +@@ -1574,16 +1542,12 @@ msgstr "このメッセージにはデ + #: ../camel/camel-smime-context.c:690 ../camel/camel-smime-context.c:701 + #: ../camel/camel-smime-context.c:708 + msgid "Cannot verify message signature: Incorrect message format" +-msgstr "" +-"このメッセージ署名の整合性を確認できません: メッセージの書式が正しくありませ" +-"ん" ++msgstr "このメッセージ署名の整合性を確認できません: メッセージの書式が正しくありません" + + #: ../camel/camel-gpg-context.c:1487 + #, c-format + msgid "Cannot verify message signature: could not create temp file: %s" +-msgstr "" +-"このメッセージの整合性を確認できません: 作業用ファイルを作成できませんでし" +-"た: %s" ++msgstr "このメッセージの整合性を確認できません: 作業用ファイルを作成できませんでした: %s" + + #: ../camel/camel-gpg-context.c:1568 + #, c-format +@@ -1616,8 +1580,8 @@ msgstr "メッセージの内容を解 + #: ../camel/providers/imap4/camel-imap4-engine.c:1589 + #: ../camel/providers/imap4/camel-imap4-engine.c:1634 + #: ../camel/providers/imap4/camel-imap4-engine.c:1690 +-#: ../camel/providers/imap4/camel-imap4-store.c:886 +-#: ../camel/providers/imap4/camel-imap4-store.c:1559 ++#: ../camel/providers/imap4/camel-imap4-store.c:881 ++#: ../camel/providers/imap4/camel-imap4-store.c:1554 + #: ../camel/providers/imap4/camel-imap4-utils.c:575 + #: ../camel/providers/smtp/camel-smtp-transport.c:160 + #: ../camel/providers/smtp/camel-smtp-transport.c:215 +@@ -1652,8 +1616,7 @@ msgstr "%s のロック・ファイル + #: ../camel/camel-lock.c:157 + #, c-format + msgid "Timed out trying to get lock file on %s. Try again later." +-msgstr "" +-"%s のロック・ファイルを取得中にタイムアウトしました。後でやり直して下さい。" ++msgstr "%s のロック・ファイルを取得中にタイムアウトしました。後でやり直して下さい。" + + #: ../camel/camel-lock.c:212 + #, c-format +@@ -1725,8 +1688,8 @@ msgstr "解析エラー" + + #: ../camel/camel-net-utils.c:497 ../camel/camel-net-utils.c:659 + #: ../camel/camel-net-utils.c:790 +-#: ../camel/providers/pop3/camel-pop3-store.c:446 +-#: ../camel/providers/pop3/camel-pop3-store.c:527 ++#: ../camel/providers/pop3/camel-pop3-store.c:441 ++#: ../camel/providers/pop3/camel-pop3-store.c:522 + msgid "Cancelled" + msgstr "キャンセル済み" + +@@ -1782,9 +1745,7 @@ msgstr "その他のフォルダ・セ + #: ../camel/camel-provider.c:188 + #, c-format + msgid "Could not load %s: Module loading not supported on this system." +-msgstr "" +-"%s を読み込めませんでした: このシステムではモジュールの読み込みをサポートして" +-"いません。" ++msgstr "%s を読み込めませんでした: このシステムではモジュールの読み込みをサポートしていません。" + + #: ../camel/camel-provider.c:197 + #, c-format +@@ -1815,54 +1776,34 @@ msgstr "認証に失敗しました" + + #: ../camel/camel-sasl-anonymous.c:131 + #, c-format +-msgid "" +-"Invalid email address trace information:\n" +-"%s" +-msgstr "" +-"無効な E-メール・アドレスのトレース情報:\n" +-"%s" ++msgid "Invalid email address trace information:\n%s" ++msgstr "無効な E-メール・アドレスのトレース情報:\n%s" + + #: ../camel/camel-sasl-anonymous.c:143 + #, c-format +-msgid "" +-"Invalid opaque trace information:\n" +-"%s" +-msgstr "" +-"無効で不可解なトレース情報:\n" +-"%s" ++msgid "Invalid opaque trace information:\n%s" ++msgstr "無効で不可解なトレース情報:\n%s" + + #: ../camel/camel-sasl-anonymous.c:155 + #, c-format +-msgid "" +-"Invalid trace information:\n" +-"%s" +-msgstr "" +-"無効なトレース情報:\n" +-"%s" ++msgid "Invalid trace information:\n%s" ++msgstr "無効なトレース情報:\n%s" + + #: ../camel/camel-sasl-cram-md5.c:38 + msgid "CRAM-MD5" + msgstr "CRAM-MD5" + + #: ../camel/camel-sasl-cram-md5.c:40 +-msgid "" +-"This option will connect to the server using a secure CRAM-MD5 password, if " +-"the server supports it." +-msgstr "" +-"サーバがサポートしている場合、このオプションはセキュリティ保護された CRAM-" +-"MD5 認証を使ってサーバへ接続します。" ++msgid "This option will connect to the server using a secure CRAM-MD5 password, if the server supports it." ++msgstr "サーバがサポートしている場合、このオプションはセキュリティ保護された CRAM-MD5 認証を使ってサーバへ接続します。" + + #: ../camel/camel-sasl-digest-md5.c:48 + msgid "DIGEST-MD5" + msgstr "DIGEST-MD5" + + #: ../camel/camel-sasl-digest-md5.c:50 +-msgid "" +-"This option will connect to the server using a secure DIGEST-MD5 password, " +-"if the server supports it." +-msgstr "" +-"サーバがサポートしている場合、このオプションはセキュリティ保護された DIGEST-" +-"MD5 を使ってサーバへ接続します。" ++msgid "This option will connect to the server using a secure DIGEST-MD5 password, if the server supports it." ++msgstr "サーバがサポートしている場合、このオプションはセキュリティ保護された DIGEST-MD5 を使ってサーバへ接続します。" + + #: ../camel/camel-sasl-digest-md5.c:818 + msgid "Server challenge too long (>2048 octets)" +@@ -1874,9 +1815,7 @@ msgstr "無効です\n" + + #: ../camel/camel-sasl-digest-md5.c:833 + msgid "Server challenge contained invalid \"Quality of Protection\" token" +-msgstr "" +-"サーバ要求におかしな \"保護品質 (QOP: Quality of Protection)\" のトークンが含" +-"まれています" ++msgstr "サーバ要求におかしな \"保護品質 (QOP: Quality of Protection)\" のトークンが含まれています" + + #: ../camel/camel-sasl-digest-md5.c:863 + msgid "Server response did not contain authorization data" +@@ -1899,50 +1838,32 @@ msgid "This option will connect to the s + msgstr "このオプションは Kerberos 5 認証を使ってサーバに接続します。" + + #: ../camel/camel-sasl-gssapi.c:157 +-msgid "" +-"The specified mechanism is not supported by the provided credential, or is " +-"unrecognized by the implementation." +-msgstr "" +-"指定したメカニズムが提供された証明書ではサポートされていないか、その実装で認" +-"識されていません。" ++msgid "The specified mechanism is not supported by the provided credential, or is unrecognized by the implementation." ++msgstr "指定したメカニズムが提供された証明書ではサポートされていないか、その実装で認識されていません。" + + #: ../camel/camel-sasl-gssapi.c:162 + msgid "The provided target_name parameter was ill-formed." + msgstr "指定した引数 target_name の形式が間違っています。" + + #: ../camel/camel-sasl-gssapi.c:165 +-msgid "" +-"The provided target_name parameter contained an invalid or unsupported type " +-"of name." +-msgstr "" +-"指定した引数 target_name に不正なあるいは未サポートの名前の種類があります。" ++msgid "The provided target_name parameter contained an invalid or unsupported type of name." ++msgstr "指定した引数 target_name に不正なあるいは未サポートの名前の種類があります。" + + #: ../camel/camel-sasl-gssapi.c:169 +-msgid "" +-"The input_token contains different channel bindings to those specified via " +-"the input_chan_bindings parameter." +-msgstr "" +-"input_token に引数 input_chan_bindigs を介して指定された別のチャンネルのビン" +-"ディングがあります。" ++msgid "The input_token contains different channel bindings to those specified via the input_chan_bindings parameter." ++msgstr "input_token に引数 input_chan_bindigs を介して指定された別のチャンネルのビンディングがあります。" + + #: ../camel/camel-sasl-gssapi.c:174 +-msgid "" +-"The input_token contains an invalid signature, or a signature that could not " +-"be verified." ++msgid "The input_token contains an invalid signature, or a signature that could not be verified." + msgstr "input_token に不正な署名があるか、またはその署名が正しくありません。" + + #: ../camel/camel-sasl-gssapi.c:178 +-msgid "" +-"The supplied credentials were not valid for context initiation, or the " +-"credential handle did not reference any credentials." +-msgstr "" +-"指定した証明書でコンテキストの初期化はできないか、または証明書のハンドルが任" +-"意の証明書を参照していませんでした。" ++msgid "The supplied credentials were not valid for context initiation, or the credential handle did not reference any credentials." ++msgstr "指定した証明書でコンテキストの初期化はできないか、または証明書のハンドルが任意の証明書を参照していませんでした。" + + #: ../camel/camel-sasl-gssapi.c:183 + msgid "The supplied context handle did not refer to a valid context." +-msgstr "" +-"指定したコンテキストのハンドルが正しいコンテキストを参照していませんでした。" ++msgstr "指定したコンテキストのハンドルが正しいコンテキストを参照していませんでした。" + + #: ../camel/camel-sasl-gssapi.c:186 + msgid "The consistency checks performed on the input_token failed." +@@ -1959,7 +1880,7 @@ msgstr "参照している証明書の + #: ../camel/camel-sasl-gssapi.c:198 ../camel/camel-sasl-gssapi.c:246 + #: ../camel/camel-sasl-gssapi.c:282 ../camel/camel-sasl-gssapi.c:297 + #: ../camel/camel-sasl-kerberos4.c:229 +-#: ../camel/providers/imap/camel-imap-store.c:1285 ++#: ../camel/providers/imap/camel-imap-store.c:1280 + msgid "Bad authentication response from server." + msgstr "サーバから間違った認証応答がありました。" + +@@ -1977,12 +1898,8 @@ msgstr "このオプションは Kerbero + + #: ../camel/camel-sasl-kerberos4.c:172 + #, c-format +-msgid "" +-"Could not get Kerberos ticket:\n" +-"%s" +-msgstr "" +-"Kerberos チケットを取得できませんでした:\n" +-"%s" ++msgid "Could not get Kerberos ticket:\n%s" ++msgstr "Kerberos チケットを取得できませんでした:\n%s" + + #: ../camel/camel-sasl-login.c:34 + msgid "Login" +@@ -2001,12 +1918,8 @@ msgid "NTLM / SPA" + msgstr "NTLM / SPA" + + #: ../camel/camel-sasl-ntlm.c:34 +-msgid "" +-"This option will connect to a Windows-based server using NTLM / Secure " +-"Password Authentication." +-msgstr "" +-"このオプションは NTLM/セキュリティ保護されたパスワード認証を使って Windows " +-"サーバに接続します。" ++msgid "This option will connect to a Windows-based server using NTLM / Secure Password Authentication." ++msgstr "このオプションは NTLM/セキュリティ保護されたパスワード認証を使って Windows サーバに接続します。" + + #: ../camel/camel-sasl-plain.c:34 + msgid "PLAIN" +@@ -2054,12 +1967,8 @@ msgstr "URL '%s' はパス・コンポ + + #: ../camel/camel-session.c:292 + #, c-format +-msgid "" +-"Could not create directory %s:\n" +-"%s" +-msgstr "" +-"フォルダ %s を作成できませんでした:\n" +-"%s" ++msgid "Could not create directory %s:\n%s" ++msgstr "フォルダ %s を作成できませんでした:\n%s" + + #: ../camel/camel-smime-context.c:229 + #, c-format +@@ -2426,16 +2335,8 @@ msgstr "アプリケーションの検 + + #: ../camel/camel-tcp-stream-openssl.c:696 ../camel/camel-tcp-stream-ssl.c:886 + #, c-format +-msgid "" +-"Issuer: %s\n" +-"Subject: %s\n" +-"Fingerprint: %s\n" +-"Signature: %s" +-msgstr "" +-"発行者: %s\n" +-"タイトル: %s\n" +-"指紋: %s\n" +-"署名: %s" ++msgid "Issuer: %s\nSubject: %s\nFingerprint: %s\nSignature: %s" ++msgstr "発行者: %s\nタイトル: %s\n指紋: %s\n署名: %s" + + #: ../camel/camel-tcp-stream-openssl.c:702 ../camel/camel-tcp-stream-ssl.c:892 + msgid "GOOD" +@@ -2447,74 +2348,34 @@ msgstr "BAD" + + #: ../camel/camel-tcp-stream-openssl.c:704 + #, c-format +-msgid "" +-"Bad certificate from %s:\n" +-"\n" +-"%s\n" +-"\n" +-"%s\n" +-"\n" +-"Do you wish to accept anyway?" +-msgstr "" +-"%s からおかしな証明書です:\n" +-"\n" +-"%s\n" +-"\n" +-"%s\n" +-"\n" +-"受諾してみますか?" ++msgid "Bad certificate from %s:\n\n%s\n\n%s\n\nDo you wish to accept anyway?" ++msgstr "%s からおかしな証明書です:\n\n%s\n\n%s\n\n受諾してみますか?" + + #. construct our user prompt + #: ../camel/camel-tcp-stream-ssl.c:896 + #, c-format +-msgid "" +-"SSL Certificate check for %s:\n" +-"\n" +-"%s\n" +-"\n" +-"Do you wish to accept?" +-msgstr "" +-"%s の SSL 証明書のチェック:\n" +-"\n" +-"%s\n" +-"\n" +-"受諾してみますか?" ++msgid "SSL Certificate check for %s:\n\n%s\n\nDo you wish to accept?" ++msgstr "%s の SSL 証明書のチェック:\n\n%s\n\n受諾してみますか?" + + #: ../camel/camel-tcp-stream-ssl.c:940 + #, c-format +-msgid "" +-"Certificate problem: %s\n" +-"Issuer: %s" +-msgstr "" +-"認証問題: %s\n" +-"発行者: %s" ++msgid "Certificate problem: %s\nIssuer: %s" ++msgstr "認証問題: %s\n発行者: %s" + + #: ../camel/camel-tcp-stream-ssl.c:992 + #, c-format +-msgid "" +-"Bad certificate domain: %s\n" +-"Issuer: %s" +-msgstr "" +-"おかしな認証ドメイン: %s\n" +-"発行者: %s" ++msgid "Bad certificate domain: %s\nIssuer: %s" ++msgstr "おかしな認証ドメイン: %s\n発行者: %s" + + #: ../camel/camel-tcp-stream-ssl.c:1010 + #, c-format +-msgid "" +-"Certificate expired: %s\n" +-"Issuer: %s" +-msgstr "" +-"証明書の有効期限切れ: %s\n" +-"発行者: %s" ++msgid "Certificate expired: %s\nIssuer: %s" ++msgstr "証明書の有効期限切れ: %s\n発行者: %s" + + #: ../camel/camel-tcp-stream-ssl.c:1027 + #, c-format +-msgid "" +-"Certificate revocation list expired: %s\n" +-"Issuer: %s" +-msgstr "" +-"証明書取り消し一覧の期限切れ: %s\n" +-"発行者: %s" ++msgid "Certificate revocation list expired: %s\nIssuer: %s" ++msgstr "証明書取り消し一覧の期限切れ: %s\n発行者: %s" + + #: ../camel/camel-url.c:293 + #, c-format +@@ -2557,17 +2418,13 @@ msgstr "ゴミ箱フォルダへメッ + msgid "Cannot copy messages to the Junk folder" + msgstr "ジャンク・フォルダへメッセージをコピーできません" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:116 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:112 + #: ../camel/providers/imap/camel-imap-folder.c:2063 + #, c-format +-msgid "" +-"Cannot get message: %s\n" +-" %s" +-msgstr "" +-"メッセージを取得できません: %s\n" +-" %s" ++msgid "Cannot get message: %s\n %s" ++msgstr "メッセージを取得できません: %s\n %s" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:116 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:112 + #: ../camel/providers/imap/camel-imap-folder.c:2063 + #: ../camel/providers/local/camel-maildir-folder.c:245 + #: ../camel/providers/local/camel-mbox-folder.c:350 +@@ -2575,7 +2432,7 @@ msgstr "" + msgid "No such message" + msgstr "そのようなメッセージはありません" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:128 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:124 + #: ../camel/providers/imap4/camel-imap4-folder.c:788 + #: ../camel/providers/nntp/camel-nntp-folder.c:155 + #: ../camel/providers/nntp/camel-nntp-folder.c:231 +@@ -2587,7 +2444,7 @@ msgstr "そのようなメッセージ + msgid "User cancelled" + msgstr "ユーザが取り消しました" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:135 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:131 + #: ../camel/providers/imap4/camel-imap4-folder.c:793 + #: ../camel/providers/nntp/camel-nntp-folder.c:146 + #: ../camel/providers/nntp/camel-nntp-folder.c:148 +@@ -2601,39 +2458,44 @@ msgstr "ユーザが取り消しまし + msgid "Cannot get message %s: %s" + msgstr "メッセージ %s を取得できません: %s" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:152 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:160 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:148 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:156 + #: ../camel/providers/imap4/camel-imap4-folder.c:811 + msgid "This message is not available in offline mode." + msgstr "このメッセージはオフライン・モードでは利用できません。" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:171 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:178 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1430 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:167 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:174 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1545 + msgid "Could not get message" + msgstr "メッセージを取得できませんでした" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:707 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:740 + #: ../camel/providers/imap/camel-imap-folder.c:252 + #, c-format + msgid "Could not load summary for %s" + msgstr "%s のサマリをロードできませんでした" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1037 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:618 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:966 ++msgid "Trash Folder Full. Please Empty." ++msgstr "ごみ箱フォルダが一杯です。空にしてください。" ++ ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1129 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:632 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:744 + #: ../camel/providers/imap/camel-imap-folder.c:2375 + #: ../camel/providers/imap/camel-imap-folder.c:2445 + #, c-format + msgid "Fetching summary information for new messages in %s" + msgstr "%s にある新着メッセージのサマリ情報の同期中" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1668 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1716 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1813 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1861 + #, c-format + msgid "Cannot append message to folder `%s': %s" + msgstr "フォルダ '%s' へメッセージを追加できません: %s" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1704 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1849 + #, c-format + msgid "Cannot create message: %s" + msgstr "メッセージを作成できません: %s" +@@ -2646,8 +2508,7 @@ msgstr "フォルダのコンテナ %s + #: ../camel/providers/groupwise/camel-groupwise-journal.c:347 + #: ../camel/providers/imap4/camel-imap4-journal.c:320 + msgid "Cannot append message in offline mode: cache unavailable" +-msgstr "" +-"オフライン・モードではメッセージを追加できません: キャッシュを利用できません" ++msgstr "オフライン・モードではメッセージを追加できません: キャッシュを利用できません" + + #: ../camel/providers/groupwise/camel-groupwise-journal.c:363 + #: ../camel/providers/imap4/camel-imap4-journal.c:336 +@@ -2716,66 +2577,62 @@ msgid "Password" + msgstr "パスワード" + + #: ../camel/providers/groupwise/camel-groupwise-provider.c:104 +-msgid "" +-"This option will connect to the GroupWise server using a plaintext password." +-msgstr "" +-"このオプションはプレイン・テキストのパスワードを使って IMAP サーバに接続しま" +-"す" ++msgid "This option will connect to the GroupWise server using a plaintext password." ++msgstr "このオプションはプレイン・テキストのパスワードを使って IMAP サーバに接続します" + + #: ../camel/providers/groupwise/camel-groupwise-store.c:103 + msgid "Host or user not available in url" + msgstr "ホスト名またはユーザ名は URI で指定できません" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:198 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:200 + #, c-format + msgid "%sPlease enter the GroupWise password for %s@%s" + msgstr "%s %s@%s の GroupWise パスワードを入力して下さい" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:212 +-#: ../camel/providers/imap/camel-imap-store.c:1364 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:214 ++#: ../camel/providers/imap/camel-imap-store.c:1359 + msgid "You didn't enter a password." + msgstr "パスワードを入力していません" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:224 +-msgid "Unable to authenticate to GroupWise server." +-msgstr "GroupWise サーバへ認証できません。" ++#: ../camel/providers/groupwise/camel-groupwise-store.c:226 ++#, ++msgid "Unable to authenticate to GroupWise server. " ++msgstr "GroupWiseサーバに認証できません。" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:298 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:304 + msgid "Some features may not work correctly with your current server version" +-msgstr "" +-"お使いのサーバのバージョンでは、いくつかの機能が正しく動作しないかもしれませ" +-"ん" ++msgstr "お使いのサーバのバージョンでは、いくつかの機能が正しく動作しないかもしれません" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:526 +-#: ../camel/providers/imap/camel-imap-store.c:1873 +-#: ../camel/providers/imap/camel-imap-store.c:2064 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:540 ++#: ../camel/providers/imap/camel-imap-store.c:1868 ++#: ../camel/providers/imap/camel-imap-store.c:2059 + #, c-format + msgid "No such folder %s" + msgstr "そのようなフォルダ %s はありません" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1097 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1230 + msgid "Cannot create GroupWise folders in offline mode." + msgstr "オフライン・モードでは GroupWise フォルダを生成できません。" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1111 +-#: ../camel/providers/imap/camel-imap-store.c:1948 +-#: ../camel/providers/imap/camel-imap-store.c:2317 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1244 ++#: ../camel/providers/imap/camel-imap-store.c:1943 ++#: ../camel/providers/imap/camel-imap-store.c:2312 + msgid "The parent folder is not allowed to contain subfolders" + msgstr "親フォルダには複数のサブフォルダを含めることはできません" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1188 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1209 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1321 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1342 + #, c-format + msgid "Cannot rename Groupwise folder `%s' to `%s'" + msgstr "GroupWise のフォルダ名 '%s' を '%s' に変更できません" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1241 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1374 + #: ../camel/providers/groupwise/camel-groupwise-transport.c:121 + #, c-format + msgid "GroupWise server %s" + msgstr "GroupWise サーバ %s" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1243 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1376 + #, c-format + msgid "GroupWise service for %s on %s" + msgstr "%s の %s にある GroupWise サービス" +@@ -2790,14 +2647,8 @@ msgid "Sending Message" + msgstr "メッセージの送信" + + #: ../camel/providers/groupwise/camel-groupwise-transport.c:216 +-msgid "" +-"You have exceeded this account's storage limit. Your messages are queued in " +-"your Outbox. Resend by pressing Send/Receive after deleting/archiving some " +-"of your mail.\n" +-msgstr "" +-"このアカウントで利用できるディスク容量を超えました。送信したメッセージは送信" +-"箱に保存されます。まずはメールを削除したりアーカイブにまとめる等してから、[送" +-"受信] ボタンを押してメッセージを送信して下さい。\n" ++msgid "You have exceeded this account's storage limit. Your messages are queued in your Outbox. Resend by pressing Send/Receive after deleting/archiving some of your mail.\n" ++msgstr "このアカウントで利用できるディスク容量を超えました。送信したメッセージは送信箱に保存されます。まずはメールを削除したりアーカイブにまとめる等してから、[送受信] ボタンを押してメッセージを送信して下さい。\n" + + #: ../camel/providers/groupwise/camel-groupwise-transport.c:218 + #: ../camel/providers/sendmail/camel-sendmail-transport.c:206 +@@ -2869,19 +2720,17 @@ msgstr "Hula サーバへのアクセス + + #: ../camel/providers/hula/camel-hula-provider.c:94 + msgid "This option will connect to the Hula server using a plaintext password." +-msgstr "" +-"このオプションはプレイン・テキストのパスワードを使って Hula サーバに接続しま" +-"す" ++msgstr "このオプションはプレイン・テキストのパスワードを使って Hula サーバに接続します" + + #: ../camel/providers/imap/camel-imap-command.c:223 + #: ../camel/providers/imap/camel-imap-command.c:265 + #: ../camel/providers/imap/camel-imap-command.c:472 +-#: ../camel/providers/imap/camel-imap-store.c:3004 ++#: ../camel/providers/imap/camel-imap-store.c:3010 + msgid "Operation cancelled" + msgstr "処理がキャンセルされました" + + #: ../camel/providers/imap/camel-imap-command.c:310 +-#: ../camel/providers/imap/camel-imap-store.c:3007 ++#: ../camel/providers/imap/camel-imap-store.c:3013 + #, c-format + msgid "Server unexpectedly disconnected: %s" + msgstr "突然サーバが接続を切りました: %s" +@@ -2890,12 +2739,8 @@ msgstr "突然サーバが接続を切 + #. we might get a ']' from a BAD response since we +12, but who cares? + #: ../camel/providers/imap/camel-imap-command.c:331 + #, c-format +-msgid "" +-"Alert from IMAP server %s@%s:\n" +-"%s" +-msgstr "" +-"IMAP サーバ %s@%s からの警告:\n" +-"%s" ++msgid "Alert from IMAP server %s@%s:\n%s" ++msgstr "IMAP サーバ %s@%s からの警告:\n%s" + + #: ../camel/providers/imap/camel-imap-command.c:400 + #, c-format +@@ -2959,10 +2804,8 @@ msgstr "不完全なサーバの応答: + + #: ../camel/providers/imap/camel-imap-folder.c:2574 + #, c-format +-msgid "" +-"Unexpected server response: Identical UIDs provided for messages %d and %d" +-msgstr "" +-"予期しないサーバの応答: メッセージ %d と %d に対して同じ UID が提供されました" ++msgid "Unexpected server response: Identical UIDs provided for messages %d and %d" ++msgstr "予期しないサーバの応答: メッセージ %d と %d に対して同じ UID が提供されました" + + #: ../camel/providers/imap/camel-imap-folder.c:2755 + msgid "Could not find message body in FETCH response." +@@ -3017,9 +2860,7 @@ msgstr "IMAP サーバのメールを読 + #: ../camel/providers/imap/camel-imap-provider.c:98 + #: ../camel/providers/imapp/camel-imapp-provider.c:68 + msgid "This option will connect to the IMAP server using a plaintext password." +-msgstr "" +-"このオプションはプレイン・テキストのパスワードを使って IMAP サーバに接続しま" +-"す" ++msgstr "このオプションはプレイン・テキストのパスワードを使って IMAP サーバに接続します" + + #: ../camel/providers/imap/camel-imap-store.c:447 + #: ../camel/providers/imap4/camel-imap4-store.c:215 +@@ -3067,7 +2908,7 @@ msgstr "SSL は無効です" + msgid "Connection cancelled" + msgstr "接続をキャンセルしました" + +-#: ../camel/providers/imap/camel-imap-store.c:699 ++#: ../camel/providers/imap/camel-imap-store.c:702 + #: ../camel/providers/imap/camel-imap-store.c:721 + #: ../camel/providers/imap/camel-imap-store.c:727 + #: ../camel/providers/imap4/camel-imap4-store.c:369 +@@ -3075,10 +2916,9 @@ msgstr "接続をキャンセルしま + #: ../camel/providers/imap4/camel-imap4-store.c:398 + #, c-format + msgid "Failed to connect to IMAP server %s in secure mode: %s" +-msgstr "" +-"セキュリティ保護されたモードで IMAP サーバ %s への接続に失敗しました: %s" ++msgstr "セキュリティ保護されたモードで IMAP サーバ %s への接続に失敗しました: %s" + +-#: ../camel/providers/imap/camel-imap-store.c:700 ++#: ../camel/providers/imap/camel-imap-store.c:703 + #: ../camel/providers/smtp/camel-smtp-transport.c:323 + msgid "STARTTLS not supported" + msgstr "STARTTLS 拡張はサポートしていません。" +@@ -3103,10 +2943,10 @@ msgid "Could not connect with command \" + msgstr "コマンド \"%s\" で接続できませんでした: %s" + + #. create a dummy "." parent inbox, use to scan, then put back at the top level +-#: ../camel/providers/imap/camel-imap-store.c:1057 +-#: ../camel/providers/imap/camel-imap-store.c:2413 ++#: ../camel/providers/imap/camel-imap-store.c:1052 ++#: ../camel/providers/imap/camel-imap-store.c:2408 + #: ../camel/providers/imap4/camel-imap4-store-summary.c:368 +-#: ../camel/providers/imap4/camel-imap4-store.c:1392 ++#: ../camel/providers/imap4/camel-imap4-store.c:1387 + #: ../camel/providers/local/camel-maildir-folder.c:75 + #: ../camel/providers/local/camel-maildir-store.c:217 + #: ../camel/providers/local/camel-maildir-store.c:289 +@@ -3117,43 +2957,36 @@ msgstr "コマンド \"%s\" で接続で + msgid "Inbox" + msgstr "受信箱" + +-#: ../camel/providers/imap/camel-imap-store.c:1317 ++#: ../camel/providers/imap/camel-imap-store.c:1312 + #, c-format + msgid "IMAP server %s does not support requested authentication type %s" + msgstr "IMAP サーバ %s は要求した認証タイプ %s をサポートしていません" + +-#: ../camel/providers/imap/camel-imap-store.c:1327 +-#: ../camel/providers/smtp/camel-smtp-transport.c:498 ++#: ../camel/providers/imap/camel-imap-store.c:1322 ++#: ../camel/providers/smtp/camel-smtp-transport.c:493 + #, c-format + msgid "No support for authentication type %s" + msgstr "認証タイプ %s をサポートしていません" + +-#: ../camel/providers/imap/camel-imap-store.c:1350 ++#: ../camel/providers/imap/camel-imap-store.c:1345 + #: ../camel/providers/imapp/camel-imapp-store.c:364 + #, c-format + msgid "%sPlease enter the IMAP password for %s@%s" + msgstr "%s %s@%s の IMAP パスワードを入力して下さい" + +-#: ../camel/providers/imap/camel-imap-store.c:1393 ++#: ../camel/providers/imap/camel-imap-store.c:1388 + #, c-format +-msgid "" +-"Unable to authenticate to IMAP server.\n" +-"%s\n" +-"\n" +-msgstr "" +-"IMAP サーバへ認証できません。\n" +-"%s\n" +-"\n" +- +-#: ../camel/providers/imap/camel-imap-store.c:1885 +-#: ../camel/providers/imap/camel-imap-store.c:2255 +-#: ../camel/providers/imap4/camel-imap4-store.c:1022 ++msgid "Unable to authenticate to IMAP server.\n%s\n\n" ++msgstr "IMAP サーバへ認証できません。\n%s\n\n" ++ ++#: ../camel/providers/imap/camel-imap-store.c:1880 ++#: ../camel/providers/imap/camel-imap-store.c:2250 ++#: ../camel/providers/imap4/camel-imap4-store.c:1017 + #, c-format +-msgid "" +-"The folder name \"%s\" is invalid because it contains the character \"%c\"" ++msgid "The folder name \"%s\" is invalid because it contains the character \"%c\"" + msgstr "フォルダ名 \"%s\" に文字 \"%c\"を含めることはできません" + +-#: ../camel/providers/imap/camel-imap-store.c:2002 ++#: ../camel/providers/imap/camel-imap-store.c:1997 + #: ../camel/providers/local/camel-maildir-store.c:190 + #: ../camel/providers/local/camel-mbox-store.c:202 + #: ../camel/providers/local/camel-mh-store.c:249 +@@ -3161,7 +2994,7 @@ msgstr "フォルダ名 \"%s\" に文字 + msgid "Cannot create folder `%s': folder exists." + msgstr "フォルダ '%s' を作成できません: フォルダが存在します" + +-#: ../camel/providers/imap/camel-imap-store.c:2266 ++#: ../camel/providers/imap/camel-imap-store.c:2261 + #, c-format + msgid "Unknown parent folder: %s" + msgstr "親フォルダを特定できません: %s" +@@ -3201,11 +3034,8 @@ msgid "IMAP4 server %s unexpectedly disc + msgstr "突然 IMAP4 サーバ %s が接続を切りました: %s" + + #: ../camel/providers/imap4/camel-imap4-folder.c:86 +-msgid "" +-"Enable Mailing-List detection required for some filter and vFolder rules" +-msgstr "" +-"フィルタのルールや仮想フォルダのルールに必要なメーリング・リストの検出を有効" +-"にする" ++msgid "Enable Mailing-List detection required for some filter and vFolder rules" ++msgstr "フィルタのルールや仮想フォルダのルールに必要なメーリング・リストの検出を有効にする" + + #: ../camel/providers/imap4/camel-imap4-folder.c:399 + #, c-format +@@ -3235,15 +3065,12 @@ msgstr "フォルダ '%s' を抹消で + #: ../camel/providers/imap4/camel-imap4-folder.c:865 + #, c-format + msgid "Cannot get message %s from folder `%s': No such message" +-msgstr "" +-"メッセージ %s をフォルダ '%s' から取得できません: そのようなメッセージはあり" +-"ません" ++msgstr "メッセージ %s をフォルダ '%s' から取得できません: そのようなメッセージはありません" + + #: ../camel/providers/imap4/camel-imap4-folder.c:870 + #, c-format + msgid "Cannot get message %s from folder `%s': Bad command" +-msgstr "" +-"メッセージ %s をフォルダ '%s' から取得できません: コマンドが間違っています" ++msgstr "メッセージ %s をフォルダ '%s' から取得できません: コマンドが間違っています" + + #: ../camel/providers/imap4/camel-imap4-folder.c:914 + #, c-format +@@ -3263,28 +3090,22 @@ msgstr "フォルダ '%s' へメッセ + #: ../camel/providers/imap4/camel-imap4-folder.c:1156 + #, c-format + msgid "Cannot move messages from folder `%s' to folder `%s': Unknown" +-msgstr "" +-"フォルダ '%s' からフォルダ '%s' へメッセージを移動できません: 不明なエラー" ++msgstr "フォルダ '%s' からフォルダ '%s' へメッセージを移動できません: 不明なエラー" + + #: ../camel/providers/imap4/camel-imap4-folder.c:1160 + #, c-format + msgid "Cannot copy messages from folder `%s' to folder `%s': Unknown" +-msgstr "" +-"フォルダ '%s' からフォルダ '%s' へメッセージをコピーできません: 不明なエラー" ++msgstr "フォルダ '%s' からフォルダ '%s' へメッセージをコピーできません: 不明なエラー" + + #: ../camel/providers/imap4/camel-imap4-folder.c:1168 + #, c-format + msgid "Cannot move messages from folder `%s' to folder `%s': Bad command" +-msgstr "" +-"フォルダ '%s' からフォルダ '%s' へメッセージを移動できません: コマンドが間" +-"違っています" ++msgstr "フォルダ '%s' からフォルダ '%s' へメッセージを移動できません: コマンドが間違っています" + + #: ../camel/providers/imap4/camel-imap4-folder.c:1172 + #, c-format + msgid "Cannot copy messages from folder `%s' to folder `%s': Bad command" +-msgstr "" +-"フォルダ '%s' からフォルダ '%s' へメッセージをコピーできません: コマンドが間" +-"違っています" ++msgstr "フォルダ '%s' からフォルダ '%s' へメッセージをコピーできません: コマンドが間違っています" + + #: ../camel/providers/imap4/camel-imap4-provider.c:71 + msgid "IMAP4rev1" +@@ -3295,126 +3116,121 @@ msgid "For reading and storing mail on I + msgstr "IMAP サーバにあるメールを読んだり保存します" + + #: ../camel/providers/imap4/camel-imap4-provider.c:90 +-msgid "" +-"This option will connect to the IMAPv4rev1 server using a plaintext password." +-msgstr "" +-"このオプションはプレイン・テキストのパスワードを使って IMAPv4rev1 サーバに接" +-"続します" ++msgid "This option will connect to the IMAPv4rev1 server using a plaintext password." ++msgstr "このオプションはプレイン・テキストのパスワードを使って IMAPv4rev1 サーバに接続します" + +-#: ../camel/providers/imap4/camel-imap4-store.c:486 ++#: ../camel/providers/imap4/camel-imap4-store.c:481 + #, c-format +-msgid "" +-"Cannot authenticate to IMAP server %s using the %s authentication mechanism" ++msgid "Cannot authenticate to IMAP server %s using the %s authentication mechanism" + msgstr "IMAP サーバ %s に対して認証方式 %s を使って認証できませんでした" + +-#: ../camel/providers/imap4/camel-imap4-store.c:535 ++#: ../camel/providers/imap4/camel-imap4-store.c:530 + #, c-format + msgid "%sPlease enter the IMAP password for %s on host %s" + msgstr "%s%s@%s の IMAP パスワードを入力して下さい。" + +-#: ../camel/providers/imap4/camel-imap4-store.c:602 ++#: ../camel/providers/imap4/camel-imap4-store.c:597 + #, c-format + msgid "Cannot authenticate to IMAP server %s using %s" + msgstr "IMAP サーバ %s で %s を使った認証を行えません" + +-#: ../camel/providers/imap4/camel-imap4-store.c:764 +-#: ../camel/providers/imap4/camel-imap4-store.c:1032 ++#: ../camel/providers/imap4/camel-imap4-store.c:759 ++#: ../camel/providers/imap4/camel-imap4-store.c:1027 + msgid "Cannot create IMAP folders in offline mode." + msgstr "オフライン・モードでは IMAP フォルダを作成できません。" + +-#: ../camel/providers/imap4/camel-imap4-store.c:803 ++#: ../camel/providers/imap4/camel-imap4-store.c:798 + #, c-format + msgid "Cannot get folder `%s' on IMAP server %s: Unknown" + msgstr "フォルダ '%s' を IMAP サーバ %s から取得できません: 不明なエラー" + +-#: ../camel/providers/imap4/camel-imap4-store.c:884 ++#: ../camel/providers/imap4/camel-imap4-store.c:879 + #, c-format + msgid "Cannot get LIST information for `%s' on IMAP server %s: %s" +-msgstr "IMAP サーバ %2$s にある '%1$s' の LIST 情報を取得できません: %3$s" ++msgstr "IMAP サーバ %s にある`%s' の LIST 情報を取得できません: %s" + +-#: ../camel/providers/imap4/camel-imap4-store.c:886 +-#: ../camel/providers/imap4/camel-imap4-store.c:1559 ++#: ../camel/providers/imap4/camel-imap4-store.c:881 ++#: ../camel/providers/imap4/camel-imap4-store.c:1554 + msgid "Bad command" + msgstr "コマンドが間違っています" + +-#: ../camel/providers/imap4/camel-imap4-store.c:965 ++#: ../camel/providers/imap4/camel-imap4-store.c:960 + #, c-format + msgid "Cannot create folder `%s': Invalid mailbox name" + msgstr "フォルダ '%s' を作成できません: mailbox の名前が不正です" + +-#: ../camel/providers/imap4/camel-imap4-store.c:970 ++#: ../camel/providers/imap4/camel-imap4-store.c:965 + #, c-format + msgid "Cannot create folder `%s': Bad command" + msgstr "フォルダ '%s' を作成できません: コマンドが間違っています" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1076 ++#: ../camel/providers/imap4/camel-imap4-store.c:1071 + #, c-format + msgid "Cannot delete folder `%s': Special folder" + msgstr "フォルダ '%s' を削除できません: 特別なフォルダです" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1083 ++#: ../camel/providers/imap4/camel-imap4-store.c:1078 + msgid "Cannot delete IMAP folders in offline mode." + msgstr "オフライン・モードでは IMAP フォルダを削除できません。" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1142 ++#: ../camel/providers/imap4/camel-imap4-store.c:1137 + #, c-format + msgid "Cannot delete folder `%s': Invalid mailbox name" + msgstr "フォルダ '%s' を削除できません: mailbox の名前が不正です" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1147 ++#: ../camel/providers/imap4/camel-imap4-store.c:1142 + #, c-format + msgid "Cannot delete folder `%s': Bad command" + msgstr "フォルダ '%s' を削除できません: コマンドが間違っています" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1167 ++#: ../camel/providers/imap4/camel-imap4-store.c:1162 + #, c-format + msgid "Cannot rename folder `%s' to `%s': Special folder" + msgstr "フォルダ名 '%s' を '%s' に変更できません: 特別なフォルダです" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1174 ++#: ../camel/providers/imap4/camel-imap4-store.c:1169 + msgid "Cannot rename IMAP folders in offline mode." + msgstr "オフライン・モードでは IMAP のフォルダ名を変更できません。" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1205 ++#: ../camel/providers/imap4/camel-imap4-store.c:1200 + #, c-format + msgid "Cannot rename folder `%s' to `%s': Invalid mailbox name" + msgstr "フォルダ名 '%s' を '%s' に変更できません: mailbox の名前が不正です" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1210 ++#: ../camel/providers/imap4/camel-imap4-store.c:1205 + #, c-format + msgid "Cannot rename folder `%s' to `%s': Bad command" + msgstr "フォルダ名 '%s' を '%s' に変更できません: コマンドが間違っています" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1557 ++#: ../camel/providers/imap4/camel-imap4-store.c:1552 + #, c-format + msgid "Cannot get %s information for pattern `%s' on IMAP server %s: %s" +-msgstr "" +-"%s 情報 (パターン '%s' に対する IMAP サーバ %s: %s 上の) を取得できません" ++msgstr "%s 情報 (パターン '%s' に対する IMAP サーバ %s: %s 上の) を取得できません" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1597 ++#: ../camel/providers/imap4/camel-imap4-store.c:1592 + msgid "Cannot subscribe to IMAP folders in offline mode." + msgstr "オフライン・モードでは IMAP フォルダを購読できません。" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1642 ++#: ../camel/providers/imap4/camel-imap4-store.c:1637 + #, c-format + msgid "Cannot subscribe to folder `%s': Invalid mailbox name" + msgstr "フォルダ '%s' を購読できません: mailbox の名前が不正です" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1647 ++#: ../camel/providers/imap4/camel-imap4-store.c:1642 + #, c-format + msgid "Cannot subscribe to folder `%s': Bad command" + msgstr "フォルダ '%s' を購読できません: コマンドが間違っています" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1669 ++#: ../camel/providers/imap4/camel-imap4-store.c:1664 + msgid "Cannot unsubscribe from IMAP folders in offline mode." + msgstr "オフライン・モードでは IMAP フォルダの購読を停止できません。" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1714 ++#: ../camel/providers/imap4/camel-imap4-store.c:1709 + #, c-format + msgid "Cannot unsubscribe from folder `%s': Invalid mailbox name" + msgstr "フォルダ '%s' の購読を停止できません: mailbox の名前が不正です" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1719 ++#: ../camel/providers/imap4/camel-imap4-store.c:1714 + #, c-format + msgid "Cannot unsubscribe from folder `%s': Bad command" + msgstr "フォルダ '%s' の購読を停止できません: コマンドが間違っています" +@@ -3451,17 +3267,8 @@ msgid "IMAP+" + msgstr "IMAP+" + + #: ../camel/providers/imapp/camel-imapp-provider.c:50 +-msgid "" +-"Experimental IMAP 4(.1) client\n" +-"This is untested and unsupported code, you want to use plain imap instead.\n" +-"\n" +-" !!! DO NOT USE THIS FOR PRODUCTION EMAIL !!!\n" +-msgstr "" +-"IMAP 4(.1) クライアント (開発版)\n" +-"これは未テスト/未サポートのコードなので、代わりに標準 IMAP を使用して下さ" +-"い。\n" +-"\n" +-" !!! 重要なメールには利用しないで下さい !!!\n" ++msgid "Experimental IMAP 4(.1) client\nThis is untested and unsupported code, you want to use plain imap instead.\n\n !!! DO NOT USE THIS FOR PRODUCTION EMAIL !!!\n" ++msgstr "IMAP 4(.1) クライアント (開発版)\nこれは未テスト/未サポートのコードなので、代わりに標準 IMAP を使用して下さい。\n\n !!! 重要なメールには利用しないで下さい !!!\n" + + #: ../camel/providers/imapp/camel-imapp-store.c:251 + #, c-format +@@ -3513,12 +3320,8 @@ msgid "Local delivery" + msgstr "ローカルの配信" + + #: ../camel/providers/local/camel-local-provider.c:73 +-msgid "" +-"For retrieving (moving) local mail from standard mbox-formatted spools into " +-"folders managed by Evolution." +-msgstr "" +-"ローカル・メールを収集して標準 mbox 形式のスプールから Evolution が管理する" +-"フォルダに移動します" ++msgid "For retrieving (moving) local mail from standard mbox-formatted spools into folders managed by Evolution." ++msgstr "ローカル・メールを収集して標準 mbox 形式のスプールから Evolution が管理するフォルダに移動します" + + #: ../camel/providers/local/camel-local-provider.c:87 + #: ../camel/providers/local/camel-local-provider.c:106 +@@ -3542,13 +3345,8 @@ msgid "Standard Unix mbox spool or direc + msgstr "標準的な UNIX の mbox 形式のスプールまたはフォルダ" + + #: ../camel/providers/local/camel-local-provider.c:115 +-msgid "" +-"For reading and storing local mail in external standard mbox spool files.\n" +-"May also be used to read a tree of Elm, Pine, or Mutt style folders." +-msgstr "" +-"外部の標準 mbox 形式のスプール・ファイルにあるローカル・メールを読み込みんだ" +-"り格納します\n" +-"(Elm, Pine, Mutt 形式のフォルダの読み込みにも対応)" ++msgid "For reading and storing local mail in external standard mbox spool files.\nMay also be used to read a tree of Elm, Pine, or Mutt style folders." ++msgstr "外部の標準 mbox 形式のスプール・ファイルにあるローカル・メールを読み込みんだり格納します\n(Elm, Pine, Mutt 形式のフォルダの読み込みにも対応)" + + #: ../camel/providers/local/camel-local-store.c:156 + #: ../camel/providers/local/camel-local-store.c:267 +@@ -3636,12 +3434,8 @@ msgstr "Maildir 形式のフォルダへ + #: ../camel/providers/local/camel-mh-folder.c:213 + #: ../camel/providers/local/camel-mh-folder.c:222 + #, c-format +-msgid "" +-"Cannot get message: %s from folder %s\n" +-" %s" +-msgstr "" +-"メッセージ %s をフォルダ %s から取得できません\n" +-" %s" ++msgid "Cannot get message: %s from folder %s\n %s" ++msgstr "メッセージ %s をフォルダ %s から取得できません\n %s" + + #: ../camel/providers/local/camel-maildir-folder.c:268 + msgid "Invalid message contents" +@@ -3757,12 +3551,8 @@ msgstr "フォルダ '%s' を取得で + #: ../camel/providers/local/camel-mbox-store.c:237 + #: ../camel/providers/local/camel-mbox-store.c:260 + #, c-format +-msgid "" +-"Could not delete folder `%s':\n" +-"%s" +-msgstr "" +-"フォルダ '%s' を削除できませんでした:\n" +-"%s" ++msgid "Could not delete folder `%s':\n%s" ++msgstr "フォルダ '%s' を削除できませんでした:\n%s" + + #: ../camel/providers/local/camel-mbox-store.c:245 + #, c-format +@@ -3917,12 +3707,8 @@ msgstr "フォルダ '%s/%s' があり + + #: ../camel/providers/local/camel-spool-store.c:173 + #, c-format +-msgid "" +-"Could not open folder `%s':\n" +-"%s" +-msgstr "" +-"フォルダ '%s' を開けませんでした:\n" +-"%s" ++msgid "Could not open folder `%s':\n%s" ++msgstr "フォルダ '%s' を開けませんでした:\n%s" + + #: ../camel/providers/local/camel-spool-store.c:177 + #, c-format +@@ -3931,12 +3717,8 @@ msgstr "フォルダ '%s' がありま + + #: ../camel/providers/local/camel-spool-store.c:182 + #, c-format +-msgid "" +-"Could not create folder `%s':\n" +-"%s" +-msgstr "" +-"フォルダ '%s' を作成できませんでした:\n" +-"%s" ++msgid "Could not create folder `%s':\n%s" ++msgstr "フォルダ '%s' を作成できませんでした:\n%s" + + #: ../camel/providers/local/camel-spool-store.c:190 + #, c-format +@@ -3981,12 +3763,8 @@ msgstr "スプール・フォルダ %s + #: ../camel/providers/local/camel-spool-summary.c:263 + #: ../camel/providers/local/camel-spool-summary.c:276 + #, c-format +-msgid "" +-"Could not sync spool folder %s: %s\n" +-"Folder may be corrupt, copy saved in `%s'" +-msgstr "" +-"スプール・フォルダ %s を同期できませんでした: %s\n" +-"フォルダが壊れている可能性があります。コピーを '%s' に保存しました。" ++msgid "Could not sync spool folder %s: %s\nFolder may be corrupt, copy saved in `%s'" ++msgstr "スプール・フォルダ %s を同期できませんでした: %s\nフォルダが壊れている可能性があります。コピーを '%s' に保存しました。" + + #: ../camel/providers/nntp/camel-nntp-folder.c:175 + #: ../camel/providers/nntp/camel-nntp-folder.c:207 +@@ -4011,8 +3789,7 @@ msgid "You cannot copy messages from a N + msgstr "NNTP フォルダからメッセージのコピーはできません!" + + #: ../camel/providers/nntp/camel-nntp-provider.c:44 +-msgid "" +-"Show folders in short notation (e.g. c.o.linux rather than comp.os.linux)" ++msgid "Show folders in short notation (e.g. c.o.linux rather than comp.os.linux)" + msgstr "短い表記でフォルダを表示する (例: \"comp.os.linux\" => \"c.o.linux\")" + + #: ../camel/providers/nntp/camel-nntp-provider.c:46 +@@ -4028,12 +3805,8 @@ msgid "This is a provider for reading fr + msgstr "USENET のニュースグループを購読したり投稿します" + + #: ../camel/providers/nntp/camel-nntp-provider.c:74 +-msgid "" +-"This option will authenticate with the NNTP server using a plaintext " +-"password." +-msgstr "" +-"このオプションはプレイン・テキストのパスワードを使って NNTP サーバで認証しま" +-"す。" ++msgid "This option will authenticate with the NNTP server using a plaintext password." ++msgstr "このオプションはプレイン・テキストのパスワードを使って NNTP サーバで認証します。" + + #: ../camel/providers/nntp/camel-nntp-store.c:219 + #, c-format +@@ -4052,40 +3825,20 @@ msgstr "%s 経由の USENET ニュース + + #: ../camel/providers/nntp/camel-nntp-store.c:798 + #, c-format +-msgid "" +-"Error retrieving newsgroups:\n" +-"\n" +-"%s" +-msgstr "" +-"ニュースグループの取得でエラー:\n" +-"\n" +-"%s" ++msgid "Error retrieving newsgroups:\n\n%s" ++msgstr "ニュースグループの取得でエラー:\n\n%s" + + #: ../camel/providers/nntp/camel-nntp-store.c:892 +-msgid "" +-"You cannot subscribe to this newsgroup:\n" +-"\n" +-"No such newsgroup. The selected item is a probably a parent folder." +-msgstr "" +-"このニュースグループは購読できません:\n" +-"\n" +-"そのようなニュースグループはありません。選択したアイテムは親フォルダのものか" +-"もしれません。" ++msgid "You cannot subscribe to this newsgroup:\n\nNo such newsgroup. The selected item is a probably a parent folder." ++msgstr "このニュースグループは購読できません:\n\nそのようなニュースグループはありません。選択したアイテムは親フォルダのものかもしれません。" + + #: ../camel/providers/nntp/camel-nntp-store.c:924 +-msgid "" +-"You cannot unsubscribe to this newsgroup:\n" +-"\n" +-"newsgroup does not exist!" +-msgstr "" +-"このニュースグループの購読を停止できません:\n" +-"\n" +-"ニュースグループがありません!" ++msgid "You cannot unsubscribe to this newsgroup:\n\nnewsgroup does not exist!" ++msgstr "このニュースグループの購読を停止できません:\n\nニュースグループがありません!" + + #: ../camel/providers/nntp/camel-nntp-store.c:949 + msgid "You cannot create a folder in a News store: subscribe instead." +-msgstr "" +-"ニュース・ストアにフォルダを生成できません: 代わりに購読を申請して下さい。" ++msgstr "ニュース・ストアにフォルダを生成できません: 代わりに購読を申請して下さい。" + + #: ../camel/providers/nntp/camel-nntp-store.c:957 + msgid "You cannot rename a folder in a News store." +@@ -4093,8 +3846,7 @@ msgstr "ニュース格納場所のフ + + #: ../camel/providers/nntp/camel-nntp-store.c:965 + msgid "You cannot remove a folder in a News store: unsubscribe instead." +-msgstr "" +-"ニュース格納場所のフォルダを削除できません: 代わりに購読を停止して下さい。" ++msgstr "ニュース格納場所のフォルダを削除できません: 代わりに購読を停止して下さい。" + + #: ../camel/providers/nntp/camel-nntp-store.c:1146 + msgid "Authentication requested but no username provided" +@@ -4200,95 +3952,73 @@ msgid "For connecting to and downloading + msgstr "POP サーバに接続したりメールを読んだりします" + + #: ../camel/providers/pop3/camel-pop3-provider.c:74 +-msgid "" +-"This option will connect to the POP server using a plaintext password. This " +-"is the only option supported by many POP servers." +-msgstr "" +-"このオプションはプレイン・テキストのパスワードを使って POP サーバへ接続しま" +-"す。これは多くの POP サーバでサポートされるオプションです。" ++msgid "This option will connect to the POP server using a plaintext password. This is the only option supported by many POP servers." ++msgstr "このオプションはプレイン・テキストのパスワードを使って POP サーバへ接続します。これは多くの POP サーバでサポートされるオプションです。" + + #: ../camel/providers/pop3/camel-pop3-provider.c:84 +-msgid "" +-"This option will connect to the POP server using an encrypted password via " +-"the APOP protocol. This may not work for all users even on servers that " +-"claim to support it." +-msgstr "" +-"このオプションは APOP プロトコル経由で暗号化されたパスワードを使って POP サー" +-"バへ接続します。これは公平なサポートを要求するサーバで、全てのユーザが正常に" +-"動作するわけではありません。" ++msgid "This option will connect to the POP server using an encrypted password via the APOP protocol. This may not work for all users even on servers that claim to support it." ++msgstr "このオプションは APOP プロトコル経由で暗号化されたパスワードを使って POP サーバへ接続します。これは公平なサポートを要求するサーバで、全てのユーザが正常に動作するわけではありません。" + + #: ../camel/providers/pop3/camel-pop3-store.c:202 + #, c-format + msgid "Failed to read a valid greeting from POP server %s" + msgstr "POP サーバ %s から妥当な挨拶の読み込みが失敗しました" + +-#: ../camel/providers/pop3/camel-pop3-store.c:216 ++#: ../camel/providers/pop3/camel-pop3-store.c:219 + #: ../camel/providers/pop3/camel-pop3-store.c:233 + #: ../camel/providers/pop3/camel-pop3-store.c:243 + #: ../camel/providers/pop3/camel-pop3-store.c:249 + #, c-format + msgid "Failed to connect to POP server %s in secure mode: %s" +-msgstr "" +-"セキュリティ保護されたモードで POP サーバ %s への接続に失敗しました: %s" ++msgstr "セキュリティ保護されたモードで POP サーバ %s への接続に失敗しました: %s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:217 ++#: ../camel/providers/pop3/camel-pop3-store.c:220 + msgid "STLS not supported" + msgstr "STLS 拡張はサポートしていません。" + +-#: ../camel/providers/pop3/camel-pop3-store.c:361 ++#: ../camel/providers/pop3/camel-pop3-store.c:356 + #, c-format + msgid "Could not connect to POP server %s" + msgstr "POP サーバ %s へ接続できませんでした" + +-#: ../camel/providers/pop3/camel-pop3-store.c:402 +-#: ../camel/providers/pop3/camel-pop3-store.c:516 ++#: ../camel/providers/pop3/camel-pop3-store.c:397 ++#: ../camel/providers/pop3/camel-pop3-store.c:511 + #, c-format +-msgid "" +-"Unable to connect to POP server %s: No support for requested authentication " +-"mechanism." +-msgstr "" +-"POP サーバ %s へ接続できません: 要求された認証方式をサポートしていません。" ++msgid "Unable to connect to POP server %s: No support for requested authentication mechanism." ++msgstr "POP サーバ %s へ接続できません: 要求された認証方式をサポートしていません。" + +-#: ../camel/providers/pop3/camel-pop3-store.c:418 ++#: ../camel/providers/pop3/camel-pop3-store.c:413 + #, c-format + msgid "SASL `%s' Login failed for POP server %s: %s" + msgstr "SASL '%s' の POP サーバ %s へのログインに失敗: %s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:430 ++#: ../camel/providers/pop3/camel-pop3-store.c:425 + #, c-format + msgid "Cannot login to POP server %s: SASL Protocol error" + msgstr "POP サーバ %s へログインできません: SASL プロトコル・エラー" + +-#: ../camel/providers/pop3/camel-pop3-store.c:449 ++#: ../camel/providers/pop3/camel-pop3-store.c:444 + #, c-format + msgid "Failed to authenticate on POP server %s: %s" + msgstr "POP サーバ %s で認証に失敗しました: %s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:475 ++#: ../camel/providers/pop3/camel-pop3-store.c:470 + #, c-format + msgid "%sPlease enter the POP password for %s on host %s" + msgstr "%s%s@%s の POP パスワードを入力して下さい。" + +-#: ../camel/providers/pop3/camel-pop3-store.c:530 +-#: ../camel/providers/pop3/camel-pop3-store.c:543 ++#: ../camel/providers/pop3/camel-pop3-store.c:525 ++#: ../camel/providers/pop3/camel-pop3-store.c:538 + #, c-format +-msgid "" +-"Unable to connect to POP server %s.\n" +-"Error sending password: %s" +-msgstr "" +-"POP サーバ %s に接続できません。\n" +-"パスワードの送信中にエラー: %s" ++msgid "Unable to connect to POP server %s.\nError sending password: %s" ++msgstr "POP サーバ %s に接続できません。\nパスワードの送信中にエラー: %s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:537 ++#: ../camel/providers/pop3/camel-pop3-store.c:532 + #, c-format +-msgid "" +-"Unable to connect to POP server %s.\n" +-"Error sending username: %s" +-msgstr "" +-"POP サーバ %s に接続できません。\n" +-"ユーザ名の送信中にエラー: %s" ++msgid "Unable to connect to POP server %s.\nError sending username: %s" ++msgstr "POP サーバ %s に接続できません。\nユーザ名の送信中にエラー: %s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:643 ++#: ../camel/providers/pop3/camel-pop3-store.c:638 + #, c-format + msgid "No such folder `%s'." + msgstr "そのようなフォルダ '%s' はありません" +@@ -4298,11 +4028,8 @@ msgid "Sendmail" + msgstr "Sendmail" + + #: ../camel/providers/sendmail/camel-sendmail-provider.c:39 +-msgid "" +-"For delivering mail by passing it to the \"sendmail\" program on the local " +-"system." +-msgstr "" +-"メールを配送するためにローカルシステムの \"sendmail\" プログラムへ渡します" ++msgid "For delivering mail by passing it to the \"sendmail\" program on the local system." ++msgstr "メールを配送するためにローカルシステムの \"sendmail\" プログラムへ渡します" + + #: ../camel/providers/sendmail/camel-sendmail-transport.c:114 + msgid "Could not parse recipient list" +@@ -4454,8 +4181,7 @@ msgstr "Welcome 応答エラー" + #: ../camel/providers/smtp/camel-smtp-transport.c:361 + #, c-format + msgid "Failed to connect to SMTP server %s in secure mode: %s" +-msgstr "" +-"セキュリティ保護されたモードで SMTP サーバ %s への接続に失敗しました: %s" ++msgstr "セキュリティ保護されたモードで SMTP サーバ %s への接続に失敗しました: %s" + + #: ../camel/providers/smtp/camel-smtp-transport.c:331 + #, c-format +@@ -4466,114 +4192,108 @@ msgstr "STARTTLS コマンドが失敗 + msgid "STARTTLS command failed" + msgstr "STARTTLS コマンドが失敗しました" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:488 ++#: ../camel/providers/smtp/camel-smtp-transport.c:483 + #, c-format + msgid "SMTP server %s does not support requested authentication type %s." + msgstr "SMTP サーバ %s は要求した認証方式 %s をサポートしていません" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:526 ++#: ../camel/providers/smtp/camel-smtp-transport.c:521 + #, c-format + msgid "%sPlease enter the SMTP password for %s on host %s" + msgstr "%s%s@%s の SMTP パスワードを入力して下さい。" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:545 ++#: ../camel/providers/smtp/camel-smtp-transport.c:540 + #, c-format +-msgid "" +-"Unable to authenticate to SMTP server.\n" +-"%s\n" +-"\n" +-msgstr "" +-"SMTP サーバに認証できません。\n" +-"%s\n" +-"\n" ++msgid "Unable to authenticate to SMTP server.\n%s\n\n" ++msgstr "SMTP サーバに認証できません。\n%s\n\n" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:669 ++#: ../camel/providers/smtp/camel-smtp-transport.c:664 + #, c-format + msgid "SMTP server %s" + msgstr "SMTP サーバ %s" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:671 ++#: ../camel/providers/smtp/camel-smtp-transport.c:666 + #, c-format + msgid "SMTP mail delivery via %s" + msgstr "%s 経由で SMTP メールを配信します" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:689 ++#: ../camel/providers/smtp/camel-smtp-transport.c:684 + msgid "Cannot send message: service not connected." + msgstr "メッセージを送信できません: サービスが接続されていません" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:695 ++#: ../camel/providers/smtp/camel-smtp-transport.c:690 + msgid "Cannot send message: sender address not valid." + msgstr "メッセージを送信できません: 差出人のアドレスが正しくありません" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:699 ++#: ../camel/providers/smtp/camel-smtp-transport.c:694 + msgid "Sending message" + msgstr "メッセージの送信中" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:714 ++#: ../camel/providers/smtp/camel-smtp-transport.c:709 + msgid "Cannot send message: no recipients defined." + msgstr "メッセージを送信できません: 宛先が定義されていません" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:725 ++#: ../camel/providers/smtp/camel-smtp-transport.c:720 + msgid "Cannot send message: one or more invalid recipients" + msgstr "メッセージを送信できません: 不正な応答が一つ以上あります" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:894 ++#: ../camel/providers/smtp/camel-smtp-transport.c:889 + msgid "SMTP Greeting" + msgstr "SMTP 接続中" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:920 ++#: ../camel/providers/smtp/camel-smtp-transport.c:915 + #, c-format + msgid "HELO command failed: %s" + msgstr "HELO コマンドが失敗しました: %s" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:937 ++#: ../camel/providers/smtp/camel-smtp-transport.c:932 + msgid "HELO command failed" + msgstr "HELO コマンドが失敗しました" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1003 ++#: ../camel/providers/smtp/camel-smtp-transport.c:998 + msgid "SMTP Authentication" + msgstr "SMTP 認証" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1009 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1004 + msgid "Error creating SASL authentication object." + msgstr "SASL 認証オブジェクトの生成中にエラーが発生しました" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1026 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1037 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1021 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1032 + #, c-format + msgid "AUTH command failed: %s" + msgstr "AUTH コマンドが失敗しました: %s" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1043 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1038 + msgid "AUTH command failed" + msgstr "AUTH コマンドが失敗しました" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1105 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1100 + msgid "Bad authentication response from server.\n" + msgstr "サーバから間違った認証応答がありました\n" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1130 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1125 + #, c-format + msgid "MAIL FROM command failed: %s: mail not sent" + msgstr "MAIL FROM コマンドが失敗しました: %s: メールを送信しません" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1147 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1142 + msgid "MAIL FROM command failed" + msgstr "MAIL FROM コマンドが失敗しました" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1171 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1166 + #, c-format + msgid "RCPT TO command failed: %s: mail not sent" + msgstr "RCPT TO コマンドが失敗しました: %s: メールを送信しません" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1190 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1185 + #, c-format + msgid "RCPT TO <%s> failed" + msgstr "RCPT TO <%s> コマンドが失敗しました" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1229 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1287 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1306 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1224 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1282 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1301 + #, c-format + msgid "DATA command failed: %s: mail not sent" + msgstr "DATA コマンドが失敗しました: %s: メールを送信しません" +@@ -4581,107 +4301,107 @@ msgstr "DATA コマンドが失敗しま + #. we should have gotten instructions on how to use the DATA command: + #. * 354 Enter mail, end with "." on a line by itself + #. +-#: ../camel/providers/smtp/camel-smtp-transport.c:1246 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1322 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1241 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1317 + msgid "DATA command failed" + msgstr "DATA コマンドが失敗しました" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1345 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1340 + #, c-format + msgid "RSET command failed: %s" + msgstr "RSET コマンドが失敗しました: %s" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1361 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1356 + msgid "RSET command failed" + msgstr "RSET コマンドが失敗しました" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1384 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1379 + #, c-format + msgid "QUIT command failed: %s" + msgstr "QUIT コマンドが失敗しました: %s" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1398 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1393 + msgid "QUIT command failed" + msgstr "QUIT コマンドが失敗しました" + +-#: ../libedataserver/e-categories.c:242 ++#: ../libedataserver/e-categories.c:248 + msgid "Business" + msgstr "仕事" + +-#: ../libedataserver/e-categories.c:243 ++#: ../libedataserver/e-categories.c:249 + msgid "Competition" + msgstr "競合他社" + +-#: ../libedataserver/e-categories.c:244 ++#: ../libedataserver/e-categories.c:250 + msgid "Favorites" + msgstr "お気に入り" + +-#: ../libedataserver/e-categories.c:245 ++#: ../libedataserver/e-categories.c:251 + msgid "Gifts" + msgstr "贈り物" + +-#: ../libedataserver/e-categories.c:246 ++#: ../libedataserver/e-categories.c:252 + msgid "Goals/Objectives" + msgstr "目標/ゴール" + +-#: ../libedataserver/e-categories.c:247 ++#: ../libedataserver/e-categories.c:253 + msgid "Holiday" + msgstr "休日" + +-#: ../libedataserver/e-categories.c:248 ++#: ../libedataserver/e-categories.c:254 + msgid "Holiday Cards" + msgstr "クリスマス・カード" + + #. important people (e.g. new business partners) you should pay attention to/observe +-#: ../libedataserver/e-categories.c:250 ++#: ../libedataserver/e-categories.c:256 + msgid "Hot Contacts" + msgstr "最新の連絡先" + +-#: ../libedataserver/e-categories.c:251 ++#: ../libedataserver/e-categories.c:257 + msgid "Ideas" + msgstr "アイディア" + +-#: ../libedataserver/e-categories.c:252 ++#: ../libedataserver/e-categories.c:258 + msgid "International" + msgstr "国際" + +-#: ../libedataserver/e-categories.c:253 ++#: ../libedataserver/e-categories.c:259 + msgid "Key Customer" + msgstr "重要な顧客" + +-#: ../libedataserver/e-categories.c:254 ++#: ../libedataserver/e-categories.c:260 + msgid "Miscellaneous" + msgstr "その他" + +-#: ../libedataserver/e-categories.c:255 ++#: ../libedataserver/e-categories.c:261 + msgid "Personal" + msgstr "個人" + +-#: ../libedataserver/e-categories.c:256 ++#: ../libedataserver/e-categories.c:262 + msgid "Phone Calls" + msgstr "携帯電話" + +-#: ../libedataserver/e-categories.c:257 ++#: ../libedataserver/e-categories.c:263 + msgid "Status" + msgstr "状態" + +-#: ../libedataserver/e-categories.c:258 ++#: ../libedataserver/e-categories.c:264 + msgid "Strategies" + msgstr "戦略" + +-#: ../libedataserver/e-categories.c:259 ++#: ../libedataserver/e-categories.c:265 + msgid "Suppliers" + msgstr "サプライヤー" + +-#: ../libedataserver/e-categories.c:260 ++#: ../libedataserver/e-categories.c:266 + msgid "Time & Expenses" + msgstr "時間と経費" + +-#: ../libedataserver/e-categories.c:261 ++#: ../libedataserver/e-categories.c:267 + msgid "VIP" + msgstr "重要人物" + +-#: ../libedataserver/e-categories.c:262 ++#: ../libedataserver/e-categories.c:268 + msgid "Waiting" + msgstr "給仕" + +@@ -4689,7 +4409,7 @@ msgstr "給仕" + #. in 12-hour format. + #. strftime format of a weekday, a date and a + #. time, in 12-hour format. +-#: ../libedataserver/e-time-utils.c:1319 ../libedataserver/e-time-utils.c:1562 ++#: ../libedataserver/e-time-utils.c:1319 ../libedataserver/e-time-utils.c:1566 + msgid "%a %m/%d/%Y %I:%M:%S %p" + msgstr "%Y/%m/%d (%a) %p%l:%M:%S" + +@@ -4697,7 +4417,7 @@ msgstr "%Y/%m/%d (%a) %p%l:%M:%S" + #. in 24-hour format. + #. strftime format of a weekday, a date and a + #. time, in 24-hour format. +-#: ../libedataserver/e-time-utils.c:1324 ../libedataserver/e-time-utils.c:1553 ++#: ../libedataserver/e-time-utils.c:1324 ../libedataserver/e-time-utils.c:1557 + msgid "%a %m/%d/%Y %H:%M:%S" + msgstr "%Y/%m/%d (%a) %k:%M:%S" + +@@ -4705,7 +4425,7 @@ msgstr "%Y/%m/%d (%a) %k:%M:%S" + #. in 12-hour format, without seconds. + #. strftime format of a weekday, a date and a + #. time, in 12-hour format, without seconds. +-#: ../libedataserver/e-time-utils.c:1329 ../libedataserver/e-time-utils.c:1558 ++#: ../libedataserver/e-time-utils.c:1329 ../libedataserver/e-time-utils.c:1562 + msgid "%a %m/%d/%Y %I:%M %p" + msgstr "%Y/%m/%d (%a) %p%l:%M" + +@@ -4713,7 +4433,7 @@ msgstr "%Y/%m/%d (%a) %p%l:%M" + #. in 24-hour format, without seconds. + #. strftime format of a weekday, a date and a + #. time, in 24-hour format, without seconds. +-#: ../libedataserver/e-time-utils.c:1334 ../libedataserver/e-time-utils.c:1549 ++#: ../libedataserver/e-time-utils.c:1334 ../libedataserver/e-time-utils.c:1553 + msgid "%a %m/%d/%Y %H:%M" + msgstr "%Y/%m/%d (%a) %k:%M" + +@@ -4731,8 +4451,8 @@ msgstr "%Y/%m/%d (%a) %k時" + + #. strptime format of a weekday and a date. + #. strftime format of a weekday and a date. +-#: ../libedataserver/e-time-utils.c:1347 ../libedataserver/e-time-utils.c:1440 +-#: ../libedataserver/e-time-utils.c:1544 ++#: ../libedataserver/e-time-utils.c:1347 ../libedataserver/e-time-utils.c:1443 ++#: ../libedataserver/e-time-utils.c:1548 + msgid "%a %m/%d/%Y" + msgstr "%Y/%m/%d (%a)" + +@@ -4772,19 +4492,19 @@ msgstr "%Y/%m/%d %k時" + + #. strptime format of a weekday and a date. + #. This is the preferred date format for the locale. +-#: ../libedataserver/e-time-utils.c:1382 ../libedataserver/e-time-utils.c:1443 ++#: ../libedataserver/e-time-utils.c:1382 ../libedataserver/e-time-utils.c:1446 + msgid "%m/%d/%Y" + msgstr "%Y/%m/%d" + + #. strptime format for a time of day, in 12-hour format. + #. strftime format of a time in 12-hour format. +-#: ../libedataserver/e-time-utils.c:1488 ../libedataserver/e-time-utils.c:1607 ++#: ../libedataserver/e-time-utils.c:1492 ../libedataserver/e-time-utils.c:1611 + msgid "%I:%M:%S %p" + msgstr "%p%l:%M:%S" + + #. strptime format for a time of day, in 24-hour format. + #. strftime format of a time in 24-hour format. +-#: ../libedataserver/e-time-utils.c:1492 ../libedataserver/e-time-utils.c:1599 ++#: ../libedataserver/e-time-utils.c:1496 ../libedataserver/e-time-utils.c:1603 + msgid "%H:%M:%S" + msgstr "%k:%M:%S" + +@@ -4792,19 +4512,19 @@ msgstr "%k:%M:%S" + #. in 12-hour format. + #. strftime format of a time in 12-hour format, + #. without seconds. +-#: ../libedataserver/e-time-utils.c:1497 ../libedataserver/e-time-utils.c:1604 ++#: ../libedataserver/e-time-utils.c:1501 ../libedataserver/e-time-utils.c:1608 + msgid "%I:%M %p" + msgstr "%p%l:%M" + + #. strptime format for time of day, without seconds 24-hour format. + #. strftime format of a time in 24-hour format, + #. without seconds. +-#: ../libedataserver/e-time-utils.c:1501 ../libedataserver/e-time-utils.c:1596 ++#: ../libedataserver/e-time-utils.c:1505 ../libedataserver/e-time-utils.c:1600 + msgid "%H:%M" + msgstr "%k:%M" + + #. strptime format for hour and AM/PM, 12-hour format. +-#: ../libedataserver/e-time-utils.c:1505 ++#: ../libedataserver/e-time-utils.c:1509 + msgid "%I %p" + msgstr "%p%l時" + +@@ -4818,9 +4538,7 @@ msgstr "認証に失敗しました。\n + + #: ../libedataserverui/e-categories-dialog.c:265 + #, c-format +-msgid "" +-"There is already a category '%s' in the configuration. Please use another " +-"name" ++msgid "There is already a category '%s' in the configuration. Please use another name" + msgstr "設定の中にカテゴリ '%s' が存在します。別の名前を指定して下さい。" + + #: ../libedataserverui/e-categories-dialog.c:435 +@@ -4863,15 +4581,15 @@ msgstr "編集(_E)" + msgid "categories" + msgstr "カテゴリ" + +-#: ../libedataserverui/e-name-selector-dialog.c:260 ++#: ../libedataserverui/e-name-selector-dialog.c:284 + msgid "Select Contacts from Address Book" + msgstr "アドレス帳から連絡先の選択" + +-#: ../libedataserverui/e-name-selector-dialog.c:554 ++#: ../libedataserverui/e-name-selector-dialog.c:578 + msgid "_Add" + msgstr "追加(_A)" + +-#: ../libedataserverui/e-name-selector-dialog.c:579 ++#: ../libedataserverui/e-name-selector-dialog.c:603 + msgid "_Remove" + msgstr "削除(_R)" + +@@ -4917,13 +4635,13 @@ msgid "_Search:" + msgstr "検索(_S):" + + #. To Translators: This would be similiar to "Expand MyList Inline" where MyList is a Contact List +-#: ../libedataserverui/e-name-selector-entry.c:1947 ++#: ../libedataserverui/e-name-selector-entry.c:1997 + #, c-format + msgid "E_xpand %s Inline" + msgstr "%s をインラインで展開する(_X)" + + #. Edit Contact item +-#: ../libedataserverui/e-name-selector-entry.c:1963 ++#: ../libedataserverui/e-name-selector-entry.c:2013 + #, c-format + msgid "_Edit %s" + msgstr "%s の編集(_E)" +@@ -4933,11 +4651,21 @@ msgstr "%s の編集(_E)" + msgid "_Delete %s" + msgstr "%s の削除(_D)" + +-#: ../libedataserverui/e-passwords.c:471 ++#: ../libedataserverui/e-passwords.c:472 ++#, ++msgid "_Remember this passphrase" ++msgstr "このパスフレーズを記憶する(_R)" ++ ++#: ../libedataserverui/e-passwords.c:473 ++#, ++msgid "_Remember this passphrase for the remainder of this session" ++msgstr "このパスフレーズをこのセッションのリマインダとして記憶する(_R)" ++ ++#: ../libedataserverui/e-passwords.c:476 + msgid "_Remember this password" + msgstr "このパスワードを記憶する(_R)" + +-#: ../libedataserverui/e-passwords.c:472 ++#: ../libedataserverui/e-passwords.c:477 + msgid "_Remember this password for the remainder of this session" + msgstr "このパスワードをこのセッション用に保存する(_R)" + +@@ -4950,13 +4678,13 @@ msgstr "転送先の選択" + msgid "_Destination" + msgstr "転送先(_D)" + +-#: ../servers/exchange/lib/e2k-autoconfig.c:1636 ++#: ../servers/exchange/lib/e2k-autoconfig.c:1647 + #: ../servers/exchange/storage/exchange-account.c:932 + #, c-format + msgid "Enter password for %s" + msgstr "%s のパスワードを入力して下さい" + +-#: ../servers/exchange/lib/e2k-autoconfig.c:1637 ++#: ../servers/exchange/lib/e2k-autoconfig.c:1648 + #: ../servers/exchange/storage/exchange-account.c:937 + msgid "Enter password" + msgstr "パスワードの入力" +@@ -5003,14 +4731,6 @@ msgstr "なし" + msgid "Custom" + msgstr "カスタム" + +-#: ../servers/exchange/lib/e2k-user-dialog.c:144 +-msgid "Select User" +-msgstr "ユーザの選択" +- +-#: ../servers/exchange/lib/e2k-user-dialog.c:182 +-msgid "Addressbook..." +-msgstr "アドレス帳..." +- + #: ../servers/exchange/storage/e-storage.c:556 + msgid "Generic error" + msgstr "一般的なエラー" +@@ -5120,19 +4840,19 @@ msgstr "アイテムを送信しまし + msgid "Tasks" + msgstr "タスク" + +-#: ../servers/groupwise/e-gw-connection.c:164 ++#: ../servers/groupwise/e-gw-connection.c:167 + msgid "Invalid connection" + msgstr "接続が不正です" + +-#: ../servers/groupwise/e-gw-connection.c:168 ++#: ../servers/groupwise/e-gw-connection.c:171 + msgid "Invalid response from server" + msgstr "サーバから不正な応答です" + +-#: ../servers/groupwise/e-gw-connection.c:170 ++#: ../servers/groupwise/e-gw-connection.c:173 + msgid "No response from the server" + msgstr "サーバから応答がありません" + +-#: ../servers/groupwise/e-gw-connection.c:176 ++#: ../servers/groupwise/e-gw-connection.c:179 + msgid "Bad parameter" + msgstr "パラメータが無効です" + +@@ -5156,6 +4876,9 @@ msgstr "Evolution データ・サーバ + #: ../src/server.c:106 + #, c-format + msgid "Multiple segmentation faults occurred; can't display error dialog\n" +-msgstr "" +-"複数のセグメンテーション・フォルトが発生しました: エラー・ダイアログを表示で" +-"きません\n" ++msgstr "複数のセグメンテーション・フォルトが発生しました: エラー・ダイアログを表示できません\n" ++ ++#~ msgid "Select User" ++#~ msgstr "ユーザの選択" ++#~ msgid "Addressbook..." ++#~ msgstr "アドレス帳..." +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: ko.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: ko.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: ku.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: ku.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: lt.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: lt.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: lv.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: lv.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: mk.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: mk.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: ml.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: ml.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: mn.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: mn.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: ms.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: ms.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: nb.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: nb.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: ne.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: ne.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: nl.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: nl.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: nn.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: nn.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: pa.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: pa.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: pl.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: pl.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: pt.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: pt.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: pt_BR.gmo +diff -up /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/pt_BR.po po/pt_BR.po +--- /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/pt_BR.po 2006-03-13 06:12:17.000000000 +0100 ++++ po/pt_BR.po 2006-05-19 14:50:40.000000000 +0200 +@@ -8,38 +8,38 @@ msgid "" + msgstr "" + "Project-Id-Version: evolution-data-server\n" + "Report-Msgid-Bugs-To: \n" +-"POT-Creation-Date: 2006-03-11 14:12+0100\n" +-"PO-Revision-Date: 2006-03-11 15:40-0300\n" +-"Last-Translator: Alexandre Folle de Menezes \n" +-"Language-Team: Brazilian Portuguese \n" ++"POT-Creation-Date: 2006-05-04 06:53+0000\n" ++"PO-Revision-Date: 2006-05-18 16:25\n" ++"Last-Translator: Novell Language \n" ++"Language-Team: Novell Language \n" + "MIME-Version: 1.0\n" + "Content-Type: text/plain; charset=UTF-8\n" + "Content-Transfer-Encoding: 8bit\n" + +-#: ../addressbook/backends/file/e-book-backend-file.c:536 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2213 ++#: ../addressbook/backends/file/e-book-backend-file.c:538 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2225 + #: ../addressbook/backends/vcf/e-book-backend-vcf.c:484 + msgid "Loading..." + msgstr "Carregando..." + +-#: ../addressbook/backends/file/e-book-backend-file.c:538 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2172 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2192 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2211 ++#: ../addressbook/backends/file/e-book-backend-file.c:540 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2184 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2204 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2223 + #: ../addressbook/backends/ldap/e-book-backend-ldap.c:4038 + #: ../addressbook/backends/vcf/e-book-backend-vcf.c:486 + msgid "Searching..." + msgstr "Pesquisando..." + +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2496 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2593 + #: ../addressbook/backends/ldap/e-book-backend-ldap.c:4202 + #, c-format + msgid "Downloading contacts (%d)... " + msgstr "Baixando contatos (%d)... " + +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2645 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2812 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2848 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2746 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2927 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2957 + #, c-format + msgid "Updating contacts cache (%d)... " + msgstr "Atualizando o cache de contatos (%d)... " +@@ -646,61 +646,68 @@ msgstr "Aniversário: %s" + msgid "Anniversary: %s" + msgstr "Bodas: %s" + +-#: ../calendar/backends/file/e-cal-backend-file.c:203 ++#: ../calendar/backends/file/e-cal-backend-file.c:204 + msgid "Can't save calendar data: Malformed URI." + msgstr "Impossível salvar dados da agenda: URI malformada." + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise-utils.c:871 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1467 ++#: ../calendar/backends/file/e-cal-backend-file.c:209 ++#, ++msgid "Can't save calendar data: " ++msgstr "Impossível gravar dados do calendário: " ++ ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise-utils.c:872 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1582 + msgid "Reply Requested: by " + msgstr "Resposta Solicitada: por " + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise-utils.c:876 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1472 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise-utils.c:877 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1587 + msgid "Reply Requested: When convenient" + msgstr "Resposta Solicitada: Quando conveniente" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:191 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:193 + #, c-format + msgid "Loading %s items" + msgstr "Carregando %s itens" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:718 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:719 + #: ../servers/exchange/storage/exchange-hierarchy-foreign.c:260 + msgid "Calendar" + msgstr "Agenda" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:774 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:775 + msgid "Invalid server URI" + msgstr "URI de servidor inválida" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:790 +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:799 +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:884 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:791 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:800 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:885 + #: ../calendar/libecal/e-cal.c:5137 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:902 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:922 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:950 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:574 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:589 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:630 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1120 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:970 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:993 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1028 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:588 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:603 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:644 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:712 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:754 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1253 + #: ../camel/providers/groupwise/camel-groupwise-transport.c:178 + msgid "Authentication failed" + msgstr "A autenticação falhou" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:840 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:841 + msgid "Could not create thread for getting deltas" + msgstr "Não foi possível criar thread para obter deltas" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:865 +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:1112 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:866 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:1113 + #: ../calendar/backends/http/e-cal-backend-http.c:520 + #: ../calendar/backends/weather/e-cal-backend-weather.c:452 + msgid "Could not create cache file" + msgstr "Não foi possível criar arquivo de cache" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:878 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:879 + msgid "Could not create thread for populating cache" + msgstr "Não foi possível criar thread para ocupar o cache" + +@@ -1063,7 +1070,7 @@ msgstr "Entre com a senha de %s para hab + #: ../calendar/libecal/e-cal.c:1710 ../libedataserverui/e-book-auth-util.c:198 + #, c-format + msgid "Enter password for %s (user %s)" +-msgstr "Entrar com a senha para %s (usuário %s)" ++msgstr "Digite a senha para %s (usuário %s)" + + #: ../calendar/libecal/e-cal.c:5109 + msgid "Invalid argument" +@@ -1081,11 +1088,11 @@ msgstr "O repositório está desconectad + msgid "No such calendar" + msgstr "Não existe tal agenda" + +-#: ../calendar/libecal/e-cal.c:5117 ../servers/groupwise/e-gw-connection.c:172 ++#: ../calendar/libecal/e-cal.c:5117 ../servers/groupwise/e-gw-connection.c:175 + msgid "Object not found" + msgstr "O objeto não foi encontrado" + +-#: ../calendar/libecal/e-cal.c:5119 ../servers/groupwise/e-gw-connection.c:166 ++#: ../calendar/libecal/e-cal.c:5119 ../servers/groupwise/e-gw-connection.c:169 + msgid "Invalid object" + msgstr "Objeto inválido" + +@@ -1102,7 +1109,7 @@ msgstr "URI já foi carregada" + msgid "Permission denied" + msgstr "Permissão negada" + +-#: ../calendar/libecal/e-cal.c:5127 ../servers/groupwise/e-gw-connection.c:174 ++#: ../calendar/libecal/e-cal.c:5127 ../servers/groupwise/e-gw-connection.c:177 + msgid "Unknown User" + msgstr "Usuário Desconhecido" + +@@ -1136,11 +1143,11 @@ msgstr "Ocorreu uma exceção CORBA" + #: ../camel/providers/imap/camel-imap-command.c:311 + #: ../camel/providers/imap/camel-imap-command.c:411 + #: ../camel/providers/imap4/camel-imap4-store.c:383 +-#: ../camel/providers/pop3/camel-pop3-store.c:533 +-#: ../camel/providers/pop3/camel-pop3-store.c:540 +-#: ../camel/providers/pop3/camel-pop3-store.c:546 ++#: ../camel/providers/pop3/camel-pop3-store.c:528 ++#: ../camel/providers/pop3/camel-pop3-store.c:535 ++#: ../camel/providers/pop3/camel-pop3-store.c:541 + #: ../servers/exchange/storage/e-storage.c:586 +-#: ../servers/groupwise/e-gw-connection.c:180 ++#: ../servers/groupwise/e-gw-connection.c:183 + msgid "Unknown error" + msgstr "Erro desconhecido" + +@@ -1177,8 +1184,7 @@ msgstr "\"%s\" espera que o primeiro arg + #: ../calendar/libedata-cal/e-cal-backend-sexp.c:119 + #, c-format + msgid "\"%s\" expects the first argument to be an ISO 8601 date/time string" +-msgstr "" +-"\"%s\" espera que o primeiro argumento seja uma string de data/hora ISO 8601" ++msgstr "\"%s\" espera que o primeiro argumento seja uma string de data/hora ISO 8601" + + #: ../calendar/libedata-cal/e-cal-backend-sexp.c:158 + #: ../calendar/libedata-cal/e-cal-backend-sexp.c:359 +@@ -1216,12 +1222,8 @@ msgstr "\"%s\" espera que o segundo argu + + #: ../calendar/libedata-cal/e-cal-backend-sexp.c:548 + #, c-format +-msgid "" +-"\"%s\" expects the first argument to be either \"any\", \"summary\", or " +-"\"description\", or \"location\"" +-msgstr "" +-"\"%s\" espera que o primeiro argumento seja um de \"any\", \"summary\", " +-"\"description\" ou \"location\"" ++msgid "\"%s\" expects the first argument to be either \"any\", \"summary\", or \"description\", or \"location\"" ++msgstr "\"%s\" espera que o primeiro argumento seja um de \"any\", \"summary\", \"description\" ou \"location\"" + + #: ../calendar/libedata-cal/e-cal-backend-sexp.c:671 + #, c-format +@@ -1230,12 +1232,8 @@ msgstr "\"%s\" espera pelo menos um argu + + #: ../calendar/libedata-cal/e-cal-backend-sexp.c:685 + #, c-format +-msgid "" +-"\"%s\" expects all arguments to be strings or one and only one argument to " +-"be a boolean false (#f)" +-msgstr "" +-"\"%s\" espera que todos os argumentos sejam strings ou um e somente um " +-"argumento que seja um falso booleano (#f)" ++msgid "\"%s\" expects all arguments to be strings or one and only one argument to be a boolean false (#f)" ++msgstr "\"%s\" espera que todos os argumentos sejam strings ou um e somente um argumento que seja um falso booleano (#f)" + + #: ../camel/camel-cipher-context.c:102 + msgid "Signing is not supported by this cipher" +@@ -1288,25 +1286,13 @@ msgstr "Não foi possível remover item + + #: ../camel/camel-disco-diary.c:197 + #, c-format +-msgid "" +-"Could not write log entry: %s\n" +-"Further operations on this server will not be replayed when you\n" +-"reconnect to the network." +-msgstr "" +-"Não foi possível escrever entrada de registro: %s\n" +-"Operações subsequentes neste servidor não serão reexecutas quando\n" +-"você reconectar à rede." ++msgid "Could not write log entry: %s\nFurther operations on this server will not be replayed when you\nreconnect to the network." ++msgstr "Não foi possível escrever entrada de registro: %s\nOperações subsequentes neste servidor não serão reexecutas quando\nvocê reconectar à rede." + + #: ../camel/camel-disco-diary.c:260 + #, c-format +-msgid "" +-"Could not open `%s':\n" +-"%s\n" +-"Changes made to this folder will not be resynchronized." +-msgstr "" +-"Não foi possível abrir `%s':\n" +-"%s\n" +-"Alterações feitas a esta pasta não serão re-sincronizadas." ++msgid "Could not open `%s':\n%s\nChanges made to this folder will not be resynchronized." ++msgstr "Não foi possível abrir `%s':\n%s\nAlterações feitas a esta pasta não serão re-sincronizadas." + + #: ../camel/camel-disco-diary.c:296 + msgid "Resynchronizing with server" +@@ -1326,8 +1312,7 @@ msgid "Preparing folder '%s' for offline + msgstr "Preparando pasta '%s' para modo desconectado" + + #: ../camel/camel-disco-store.c:401 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1311 +-#: ../camel/providers/imap/camel-imap-store.c:2964 ++#: ../camel/providers/imap/camel-imap-store.c:2970 + msgid "You must be working online to complete this operation" + msgstr "Você deve estar trabalhando conectado para completar esta operação" + +@@ -1424,21 +1409,13 @@ msgstr "Erro ao executar pesquisa por fi + + #: ../camel/camel-folder-search.c:357 ../camel/camel-folder-search.c:478 + #, c-format +-msgid "" +-"Cannot parse search expression: %s:\n" +-"%s" +-msgstr "" +-"Impossível analisar expressão de pesquisa: %s:\n" +-"%s" ++msgid "Cannot parse search expression: %s:\n%s" ++msgstr "Impossível analisar expressão de pesquisa: %s:\n%s" + + #: ../camel/camel-folder-search.c:367 ../camel/camel-folder-search.c:488 + #, c-format +-msgid "" +-"Error executing search expression: %s:\n" +-"%s" +-msgstr "" +-"Erro ao executar expressão de pesquisa: %s:\n" +-"%s" ++msgid "Error executing search expression: %s:\n%s" ++msgstr "Erro ao executar expressão de pesquisa: %s:\n%s" + + #: ../camel/camel-folder-search.c:674 ../camel/camel-folder-search.c:707 + msgid "(match-all) requires a single bool result" +@@ -1502,14 +1479,8 @@ msgstr "Filtrando novas mensagem(ns)" + + #: ../camel/camel-gpg-context.c:753 + #, c-format +-msgid "" +-"Unexpected GnuPG status message encountered:\n" +-"\n" +-"%s" +-msgstr "" +-"Encontrada mensagem de estado inesperada do GnuPG:\n" +-"\n" +-"%s" ++msgid "Unexpected GnuPG status message encountered:\n\n%s" ++msgstr "Encontrada mensagem de estado inesperada do GnuPG:\n\n%s" + + #: ../camel/camel-gpg-context.c:767 + msgid "Failed to parse gpg userid hint." +@@ -1521,12 +1492,8 @@ msgstr "Falha ao analisar requisição d + + #: ../camel/camel-gpg-context.c:806 ../camel/camel-gpg-context.c:810 + #, c-format +-msgid "" +-"You need a passphrase to unlock the key for\n" +-"user: \"%s\"" +-msgstr "" +-"Você precisa de uma frase-senha para destravar a chave\n" +-"para o usuário: \"%s\"" ++msgid "You need a passphrase to unlock the key for\nuser: \"%s\"" ++msgstr "Você precisa de uma frase-senha para destravar a chave\npara o usuário: \"%s\"" + + #: ../camel/camel-gpg-context.c:828 ../camel/camel-gpg-context.c:1032 + #: ../camel/providers/nntp/camel-nntp-store.c:1272 +@@ -1574,15 +1541,12 @@ msgstr "Esta é uma parte de mensagem as + #: ../camel/camel-smime-context.c:690 ../camel/camel-smime-context.c:701 + #: ../camel/camel-smime-context.c:708 + msgid "Cannot verify message signature: Incorrect message format" +-msgstr "" +-"Impossível verificar assinatura da mensagem: Formato de mensagem incorreto" ++msgstr "Impossível verificar assinatura da mensagem: Formato de mensagem incorreto" + + #: ../camel/camel-gpg-context.c:1487 + #, c-format + msgid "Cannot verify message signature: could not create temp file: %s" +-msgstr "" +-"Impossível verificar assinatura da mensagem: impossível criar arquivo " +-"temporário: %s" ++msgstr "Impossível verificar assinatura da mensagem: impossível criar arquivo temporário: %s" + + #: ../camel/camel-gpg-context.c:1568 + #, c-format +@@ -1615,8 +1579,8 @@ msgstr "Impossível analisar o conteúdo + #: ../camel/providers/imap4/camel-imap4-engine.c:1589 + #: ../camel/providers/imap4/camel-imap4-engine.c:1634 + #: ../camel/providers/imap4/camel-imap4-engine.c:1690 +-#: ../camel/providers/imap4/camel-imap4-store.c:886 +-#: ../camel/providers/imap4/camel-imap4-store.c:1559 ++#: ../camel/providers/imap4/camel-imap4-store.c:881 ++#: ../camel/providers/imap4/camel-imap4-store.c:1554 + #: ../camel/providers/imap4/camel-imap4-utils.c:575 + #: ../camel/providers/smtp/camel-smtp-transport.c:160 + #: ../camel/providers/smtp/camel-smtp-transport.c:215 +@@ -1651,9 +1615,7 @@ msgstr "Não foi possível criar arquivo + #: ../camel/camel-lock.c:157 + #, c-format + msgid "Timed out trying to get lock file on %s. Try again later." +-msgstr "" +-"Tempo esgotado ao tentar obter arquivo de trava em %s. Tente novamente mais " +-"tarde." ++msgstr "Tempo esgotado ao tentar obter arquivo de trava em %s. Tente novamente mais tarde." + + #: ../camel/camel-lock.c:212 + #, c-format +@@ -1725,8 +1687,8 @@ msgstr "erro de análise" + + #: ../camel/camel-net-utils.c:497 ../camel/camel-net-utils.c:659 + #: ../camel/camel-net-utils.c:790 +-#: ../camel/providers/pop3/camel-pop3-store.c:446 +-#: ../camel/providers/pop3/camel-pop3-store.c:527 ++#: ../camel/providers/pop3/camel-pop3-store.c:441 ++#: ../camel/providers/pop3/camel-pop3-store.c:522 + msgid "Cancelled" + msgstr "Cancelada" + +@@ -1782,9 +1744,7 @@ msgstr "Para ler correio como uma consul + #: ../camel/camel-provider.c:188 + #, c-format + msgid "Could not load %s: Module loading not supported on this system." +-msgstr "" +-"Não foi possível carregar %s: A carga de módulos não é suportada neste " +-"sistema." ++msgstr "Não foi possível carregar %s: A carga de módulos não é suportada neste sistema." + + #: ../camel/camel-provider.c:197 + #, c-format +@@ -1807,8 +1767,7 @@ msgstr "Anônimo" + + #: ../camel/camel-sasl-anonymous.c:37 + msgid "This option will connect to the server using an anonymous login." +-msgstr "" +-"Esta opção estabelelece conexão com o servidor usando um usuário anônimo." ++msgstr "Esta opção estabelelece conexão com o servidor usando um usuário anônimo." + + #: ../camel/camel-sasl-anonymous.c:122 ../camel/camel-sasl-plain.c:89 + msgid "Authentication failed." +@@ -1816,54 +1775,34 @@ msgstr "A autenticação falhou." + + #: ../camel/camel-sasl-anonymous.c:131 + #, c-format +-msgid "" +-"Invalid email address trace information:\n" +-"%s" +-msgstr "" +-"Informação de rastreio de endereço de e-mail inválida:\n" +-"%s" ++msgid "Invalid email address trace information:\n%s" ++msgstr "Informação de rastreio de endereço de e-mail inválida:\n%s" + + #: ../camel/camel-sasl-anonymous.c:143 + #, c-format +-msgid "" +-"Invalid opaque trace information:\n" +-"%s" +-msgstr "" +-"Informação de rastreio opaca inválida:\n" +-"%s" ++msgid "Invalid opaque trace information:\n%s" ++msgstr "Informação de rastreio opaca inválida:\n%s" + + #: ../camel/camel-sasl-anonymous.c:155 + #, c-format +-msgid "" +-"Invalid trace information:\n" +-"%s" +-msgstr "" +-"Informação de rastreamento inválida:\n" +-"%s" ++msgid "Invalid trace information:\n%s" ++msgstr "Informação de rastreamento inválida:\n%s" + + #: ../camel/camel-sasl-cram-md5.c:38 + msgid "CRAM-MD5" + msgstr "CRAM-MD5" + + #: ../camel/camel-sasl-cram-md5.c:40 +-msgid "" +-"This option will connect to the server using a secure CRAM-MD5 password, if " +-"the server supports it." +-msgstr "" +-"Esta opção estabelecerá uma conexão com o servidor usando uma senha segura " +-"CRAM-MD5, se o servidor suportá-la." ++msgid "This option will connect to the server using a secure CRAM-MD5 password, if the server supports it." ++msgstr "Esta opção estabelecerá uma conexão com o servidor usando uma senha segura CRAM-MD5, se o servidor suportá-la." + + #: ../camel/camel-sasl-digest-md5.c:48 + msgid "DIGEST-MD5" + msgstr "DIGEST-MD5" + + #: ../camel/camel-sasl-digest-md5.c:50 +-msgid "" +-"This option will connect to the server using a secure DIGEST-MD5 password, " +-"if the server supports it." +-msgstr "" +-"Esta opção estabelece conexão com o servidor usando uma senha segura DIGEST-" +-"MD5, se o servidor suportá-la." ++msgid "This option will connect to the server using a secure DIGEST-MD5 password, if the server supports it." ++msgstr "Esta opção estabelece conexão com o servidor usando uma senha segura DIGEST-MD5, se o servidor suportá-la." + + #: ../camel/camel-sasl-digest-md5.c:818 + msgid "Server challenge too long (>2048 octets)" +@@ -1875,8 +1814,7 @@ msgstr "O challenge do servidor é invá + + #: ../camel/camel-sasl-digest-md5.c:833 + msgid "Server challenge contained invalid \"Quality of Protection\" token" +-msgstr "" +-"O challenge do servidor continha token de \"Quality of Protection\" inválido" ++msgstr "O challenge do servidor continha token de \"Quality of Protection\" inválido" + + #: ../camel/camel-sasl-digest-md5.c:863 + msgid "Server response did not contain authorization data" +@@ -1896,58 +1834,35 @@ msgstr "GSSAPI" + + #: ../camel/camel-sasl-gssapi.c:59 + msgid "This option will connect to the server using Kerberos 5 authentication." +-msgstr "" +-"Esta opção estabelelece conexão com o servidor usando autenticação Kerberos " +-"5." ++msgstr "Esta opção estabelelece conexão com o servidor usando autenticação Kerberos 5." + + #: ../camel/camel-sasl-gssapi.c:157 +-msgid "" +-"The specified mechanism is not supported by the provided credential, or is " +-"unrecognized by the implementation." +-msgstr "" +-"O mecanismo especificado não é suportado pela credencial fornecida ou não é " +-"reconhecido pela implementação." ++msgid "The specified mechanism is not supported by the provided credential, or is unrecognized by the implementation." ++msgstr "O mecanismo especificado não é suportado pela credencial fornecida ou não é reconhecido pela implementação." + + #: ../camel/camel-sasl-gssapi.c:162 + msgid "The provided target_name parameter was ill-formed." + msgstr "O parâmetro target_name fornecido foi mal-formado." + + #: ../camel/camel-sasl-gssapi.c:165 +-msgid "" +-"The provided target_name parameter contained an invalid or unsupported type " +-"of name." +-msgstr "" +-"O parâmetro target_name fornecido continha um tipo de nome inválido ou não " +-"suportado." ++msgid "The provided target_name parameter contained an invalid or unsupported type of name." ++msgstr "O parâmetro target_name fornecido continha um tipo de nome inválido ou não suportado." + + #: ../camel/camel-sasl-gssapi.c:169 +-msgid "" +-"The input_token contains different channel bindings to those specified via " +-"the input_chan_bindings parameter." +-msgstr "" +-"O input_token contém associações de canal diferentes daquelas especificadas " +-"pelo parâmetro input_chan_bindings." ++msgid "The input_token contains different channel bindings to those specified via the input_chan_bindings parameter." ++msgstr "O input_token contém associações de canal diferentes daquelas especificadas pelo parâmetro input_chan_bindings." + + #: ../camel/camel-sasl-gssapi.c:174 +-msgid "" +-"The input_token contains an invalid signature, or a signature that could not " +-"be verified." +-msgstr "" +-"O input_token contém uma assinatura inválida ou uma assinatura que não pode " +-"ser verificada." ++msgid "The input_token contains an invalid signature, or a signature that could not be verified." ++msgstr "O input_token contém uma assinatura inválida ou uma assinatura que não pode ser verificada." + + #: ../camel/camel-sasl-gssapi.c:178 +-msgid "" +-"The supplied credentials were not valid for context initiation, or the " +-"credential handle did not reference any credentials." +-msgstr "" +-"As credenciais fornecidas não foram válidas para início de contexto ou o " +-"manipulador de credenciais não fazia referência a nenhuma credencial." ++msgid "The supplied credentials were not valid for context initiation, or the credential handle did not reference any credentials." ++msgstr "As credenciais fornecidas não foram válidas para início de contexto ou o manipulador de credenciais não fazia referência a nenhuma credencial." + + #: ../camel/camel-sasl-gssapi.c:183 + msgid "The supplied context handle did not refer to a valid context." +-msgstr "" +-"O manipulador de contexto fornecido não se referia a um contexto válido." ++msgstr "O manipulador de contexto fornecido não se referia a um contexto válido." + + #: ../camel/camel-sasl-gssapi.c:186 + msgid "The consistency checks performed on the input_token failed." +@@ -1964,7 +1879,7 @@ msgstr "As credenciais de referência ex + #: ../camel/camel-sasl-gssapi.c:198 ../camel/camel-sasl-gssapi.c:246 + #: ../camel/camel-sasl-gssapi.c:282 ../camel/camel-sasl-gssapi.c:297 + #: ../camel/camel-sasl-kerberos4.c:229 +-#: ../camel/providers/imap/camel-imap-store.c:1285 ++#: ../camel/providers/imap/camel-imap-store.c:1280 + msgid "Bad authentication response from server." + msgstr "Resposta de autenticação do servidor inválida." + +@@ -1978,18 +1893,12 @@ msgstr "Kerberos 4" + + #: ../camel/camel-sasl-kerberos4.c:47 + msgid "This option will connect to the server using Kerberos 4 authentication." +-msgstr "" +-"Esta opção estabelelece conexão com o servidor usando autenticação Kerberos " +-"4." ++msgstr "Esta opção estabelelece conexão com o servidor usando autenticação Kerberos 4." + + #: ../camel/camel-sasl-kerberos4.c:172 + #, c-format +-msgid "" +-"Could not get Kerberos ticket:\n" +-"%s" +-msgstr "" +-"Não foi possível obter ticket do Kerberos:\n" +-"%s" ++msgid "Could not get Kerberos ticket:\n%s" ++msgstr "Não foi possível obter ticket do Kerberos:\n%s" + + #: ../camel/camel-sasl-login.c:34 + msgid "Login" +@@ -1997,8 +1906,7 @@ msgstr "Login" + + #: ../camel/camel-sasl-login.c:36 ../camel/camel-sasl-plain.c:36 + msgid "This option will connect to the server using a simple password." +-msgstr "" +-"Esta opção estabelelece conexão com o servidor usando uma senha simples." ++msgstr "Esta opção estabelelece conexão com o servidor usando uma senha simples." + + #: ../camel/camel-sasl-login.c:133 + msgid "Unknown authentication state." +@@ -2009,12 +1917,8 @@ msgid "NTLM / SPA" + msgstr "NTLM / SPA" + + #: ../camel/camel-sasl-ntlm.c:34 +-msgid "" +-"This option will connect to a Windows-based server using NTLM / Secure " +-"Password Authentication." +-msgstr "" +-"Esta opção estabelelece conexão com um servidor Windows usando NTLM / Secure " +-"Password Authentication." ++msgid "This option will connect to a Windows-based server using NTLM / Secure Password Authentication." ++msgstr "Esta opção estabelelece conexão com um servidor Windows usando NTLM / Secure Password Authentication." + + #: ../camel/camel-sasl-plain.c:34 + msgid "PLAIN" +@@ -2062,12 +1966,8 @@ msgstr "A URL '%s' precisa de um compone + + #: ../camel/camel-session.c:292 + #, c-format +-msgid "" +-"Could not create directory %s:\n" +-"%s" +-msgstr "" +-"Não foi possível criar o diretório %s:\n" +-"%s" ++msgid "Could not create directory %s:\n%s" ++msgstr "Não foi possível criar o diretório %s:\n%s" + + #: ../camel/camel-smime-context.c:229 + #, c-format +@@ -2201,8 +2101,7 @@ msgstr "O certificado é a única mensag + + #: ../camel/camel-smime-context.c:600 + msgid "Certificate is the only message, certificates imported and verified" +-msgstr "" +-"O certificado é a única mensagem, certificados importados e verificados" ++msgstr "O certificado é a única mensagem, certificados importados e verificados" + + #: ../camel/camel-smime-context.c:604 + msgid "Cannot find signature digests" +@@ -2331,8 +2230,7 @@ msgstr "Impossível descriptografar assi + + #: ../camel/camel-tcp-stream-openssl.c:574 + msgid "Unable to decrypt Certificate Revocation List signature" +-msgstr "" +-"Impossível descriptografar assinatura da lista de revogação de certificado" ++msgstr "Impossível descriptografar assinatura da lista de revogação de certificado" + + #: ../camel/camel-tcp-stream-openssl.c:576 + msgid "Unable to decode issuer's public key" +@@ -2436,16 +2334,8 @@ msgstr "Erro na verificação de aplicat + + #: ../camel/camel-tcp-stream-openssl.c:696 ../camel/camel-tcp-stream-ssl.c:886 + #, c-format +-msgid "" +-"Issuer: %s\n" +-"Subject: %s\n" +-"Fingerprint: %s\n" +-"Signature: %s" +-msgstr "" +-"Emissor: %s\n" +-"Assunto: %s\n" +-"Impressão digital: %s\n" +-"Assinatura: %s" ++msgid "Issuer: %s\nSubject: %s\nFingerprint: %s\nSignature: %s" ++msgstr "Emissor: %s\nAssunto: %s\nImpressão digital: %s\nAssinatura: %s" + + #: ../camel/camel-tcp-stream-openssl.c:702 ../camel/camel-tcp-stream-ssl.c:892 + msgid "GOOD" +@@ -2457,74 +2347,34 @@ msgstr "INVÁLIDO" + + #: ../camel/camel-tcp-stream-openssl.c:704 + #, c-format +-msgid "" +-"Bad certificate from %s:\n" +-"\n" +-"%s\n" +-"\n" +-"%s\n" +-"\n" +-"Do you wish to accept anyway?" +-msgstr "" +-"Certificado inválido de %s:\n" +-"\n" +-"%s\n" +-"\n" +-"%s\n" +-"\n" +-"Você deseja aceitá-lo mesmo assim?" ++msgid "Bad certificate from %s:\n\n%s\n\n%s\n\nDo you wish to accept anyway?" ++msgstr "Certificado inválido de %s:\n\n%s\n\n%s\n\nVocê deseja aceitá-lo mesmo assim?" + + #. construct our user prompt + #: ../camel/camel-tcp-stream-ssl.c:896 + #, c-format +-msgid "" +-"SSL Certificate check for %s:\n" +-"\n" +-"%s\n" +-"\n" +-"Do you wish to accept?" +-msgstr "" +-"Verificação de certificado SSL para %s:\n" +-"\n" +-"%s\n" +-"\n" +-"Você deseja aceitá-lo?" ++msgid "SSL Certificate check for %s:\n\n%s\n\nDo you wish to accept?" ++msgstr "Verificação de certificado SSL para %s:\n\n%s\n\nVocê deseja aceitá-lo?" + + #: ../camel/camel-tcp-stream-ssl.c:940 + #, c-format +-msgid "" +-"Certificate problem: %s\n" +-"Issuer: %s" +-msgstr "" +-"Problema do certificado: %s\n" +-"Emissor: %s" ++msgid "Certificate problem: %s\nIssuer: %s" ++msgstr "Problema do certificado: %s\nEmissor: %s" + + #: ../camel/camel-tcp-stream-ssl.c:992 + #, c-format +-msgid "" +-"Bad certificate domain: %s\n" +-"Issuer: %s" +-msgstr "" +-"Domínio do certificado inválido: %s\n" +-"Emissor: %s" ++msgid "Bad certificate domain: %s\nIssuer: %s" ++msgstr "Domínio do certificado inválido: %s\nEmissor: %s" + + #: ../camel/camel-tcp-stream-ssl.c:1010 + #, c-format +-msgid "" +-"Certificate expired: %s\n" +-"Issuer: %s" +-msgstr "" +-"Certificado expirou: %s\n" +-"Emissor: %s" ++msgid "Certificate expired: %s\nIssuer: %s" ++msgstr "Certificado expirou: %s\nEmissor: %s" + + #: ../camel/camel-tcp-stream-ssl.c:1027 + #, c-format +-msgid "" +-"Certificate revocation list expired: %s\n" +-"Issuer: %s" +-msgstr "" +-"Lista de revogação do certificado expirou: %s\n" +-"Emissor: %s" ++msgid "Certificate revocation list expired: %s\nIssuer: %s" ++msgstr "Lista de revogação do certificado expirou: %s\nEmissor: %s" + + #: ../camel/camel-url.c:293 + #, c-format +@@ -2567,17 +2417,13 @@ msgstr "Impossível copiar mensagem para + msgid "Cannot copy messages to the Junk folder" + msgstr "Impossível copiar mensagem para a pasta Indesejada" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:116 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:112 + #: ../camel/providers/imap/camel-imap-folder.c:2063 + #, c-format +-msgid "" +-"Cannot get message: %s\n" +-" %s" +-msgstr "" +-"Impossível obter mensagem: %s\n" +-" %s" ++msgid "Cannot get message: %s\n %s" ++msgstr "Impossível obter mensagem: %s\n %s" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:116 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:112 + #: ../camel/providers/imap/camel-imap-folder.c:2063 + #: ../camel/providers/local/camel-maildir-folder.c:245 + #: ../camel/providers/local/camel-mbox-folder.c:350 +@@ -2585,7 +2431,7 @@ msgstr "" + msgid "No such message" + msgstr "Não existe tal mensagem" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:128 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:124 + #: ../camel/providers/imap4/camel-imap4-folder.c:788 + #: ../camel/providers/nntp/camel-nntp-folder.c:155 + #: ../camel/providers/nntp/camel-nntp-folder.c:231 +@@ -2597,7 +2443,7 @@ msgstr "Não existe tal mensagem" + msgid "User cancelled" + msgstr "O usuário cancelou" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:135 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:131 + #: ../camel/providers/imap4/camel-imap4-folder.c:793 + #: ../camel/providers/nntp/camel-nntp-folder.c:146 + #: ../camel/providers/nntp/camel-nntp-folder.c:148 +@@ -2611,39 +2457,44 @@ msgstr "O usuário cancelou" + msgid "Cannot get message %s: %s" + msgstr "Impossível obter mensagem: %s: %s" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:152 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:160 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:148 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:156 + #: ../camel/providers/imap4/camel-imap4-folder.c:811 + msgid "This message is not available in offline mode." + msgstr "Esta mensagem não está disponível no modo desconectado." + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:171 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:178 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1430 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:167 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:174 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1545 + msgid "Could not get message" + msgstr "Não foi possível obter mensagem" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:707 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:740 + #: ../camel/providers/imap/camel-imap-folder.c:252 + #, c-format + msgid "Could not load summary for %s" + msgstr "Não foi possível carregar resumo para %s" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1037 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:618 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:966 ++msgid "Trash Folder Full. Please Empty." ++msgstr "Pasta da Lixeira Cheia. Esvazie-a." ++ ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1129 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:632 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:744 + #: ../camel/providers/imap/camel-imap-folder.c:2375 + #: ../camel/providers/imap/camel-imap-folder.c:2445 + #, c-format + msgid "Fetching summary information for new messages in %s" + msgstr "Obtendo informação de resumo para novas mensagens em %s" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1668 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1716 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1813 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1861 + #, c-format + msgid "Cannot append message to folder `%s': %s" + msgstr "Impossível acrescentar mensagem à pasta `%s': %s" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1704 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1849 + #, c-format + msgid "Cannot create message: %s" + msgstr "Impossível criar mensagem: %s" +@@ -2725,65 +2576,62 @@ msgid "Password" + msgstr "Senha" + + #: ../camel/providers/groupwise/camel-groupwise-provider.c:104 +-msgid "" +-"This option will connect to the GroupWise server using a plaintext password." +-msgstr "" +-"Esta opção conectará com o servidor GroupWise utilizando uma senha em texto aberto." ++msgid "This option will connect to the GroupWise server using a plaintext password." ++msgstr "Esta opção conectará com o servidor GroupWise utilizando uma senha em texto aberto." + + #: ../camel/providers/groupwise/camel-groupwise-store.c:103 + msgid "Host or user not available in url" + msgstr "Usuário ou host não disponível na url" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:198 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:200 + #, c-format + msgid "%sPlease enter the GroupWise password for %s@%s" + msgstr "%sPor favor, entre com a senha do Groupwise para %s@%s" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:212 +-#: ../camel/providers/imap/camel-imap-store.c:1364 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:214 ++#: ../camel/providers/imap/camel-imap-store.c:1359 + msgid "You didn't enter a password." + msgstr "Você não entrou uma senha." + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:224 +-msgid "Unable to authenticate to GroupWise server." +-msgstr "Impossível se autenticar ao servidor GroupWise." ++#: ../camel/providers/groupwise/camel-groupwise-store.c:226 ++#, ++msgid "Unable to authenticate to GroupWise server. " ++msgstr "Impossível autenticar no servidor GroupWise. " + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:298 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:304 + msgid "Some features may not work correctly with your current server version" +-msgstr "" +-"Algumas características podem não funcionar corretamente com a sua versão de " +-"servidor atual" ++msgstr "Algumas características podem não funcionar corretamente com a sua versão de servidor atual" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:526 +-#: ../camel/providers/imap/camel-imap-store.c:1873 +-#: ../camel/providers/imap/camel-imap-store.c:2064 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:540 ++#: ../camel/providers/imap/camel-imap-store.c:1868 ++#: ../camel/providers/imap/camel-imap-store.c:2059 + #, c-format + msgid "No such folder %s" + msgstr "Não existe a pasta %s" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1097 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1230 + msgid "Cannot create GroupWise folders in offline mode." + msgstr "Impossível criar pastas do GroupWise no modo desconectado." + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1111 +-#: ../camel/providers/imap/camel-imap-store.c:1948 +-#: ../camel/providers/imap/camel-imap-store.c:2317 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1244 ++#: ../camel/providers/imap/camel-imap-store.c:1943 ++#: ../camel/providers/imap/camel-imap-store.c:2312 + msgid "The parent folder is not allowed to contain subfolders" + msgstr "A pasta pai não pode conter sub-pastas" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1188 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1209 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1321 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1342 + #, c-format + msgid "Cannot rename Groupwise folder `%s' to `%s'" + msgstr "Impossível renomear pastas do GroupWise `%s' para `%s'" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1241 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1374 + #: ../camel/providers/groupwise/camel-groupwise-transport.c:121 + #, c-format + msgid "GroupWise server %s" + msgstr "Servidor GroupWise %s" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1243 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1376 + #, c-format + msgid "GroupWise service for %s on %s" + msgstr "Serviço GroupWise para %s em %s" +@@ -2798,14 +2646,8 @@ msgid "Sending Message" + msgstr "Enviando Mensagem" + + #: ../camel/providers/groupwise/camel-groupwise-transport.c:216 +-msgid "" +-"You have exceeded this account's storage limit. Your messages are queued in " +-"your Outbox. Resend by pressing Send/Receive after deleting/archiving some " +-"of your mail.\n" +-msgstr "" +-"Você estendeu o limite de armazenamento desta conta. Suas mensagens serão " +-"enfileiradas na sua caixa de saída. Re-envie apertando Enviar/Receber depois " +-"de remover/arquivar algumas das suas mensagens.\n" ++msgid "You have exceeded this account's storage limit. Your messages are queued in your Outbox. Resend by pressing Send/Receive after deleting/archiving some of your mail.\n" ++msgstr "Você estendeu o limite de armazenamento desta conta. Suas mensagens serão enfileiradas na sua caixa de saída. Re-envie apertando Enviar/Receber depois de remover/arquivar algumas das suas mensagens.\n" + + #: ../camel/providers/groupwise/camel-groupwise-transport.c:218 + #: ../camel/providers/sendmail/camel-sendmail-transport.c:206 +@@ -2882,12 +2724,12 @@ msgstr "Esta opção conectará com o se + #: ../camel/providers/imap/camel-imap-command.c:223 + #: ../camel/providers/imap/camel-imap-command.c:265 + #: ../camel/providers/imap/camel-imap-command.c:472 +-#: ../camel/providers/imap/camel-imap-store.c:3004 ++#: ../camel/providers/imap/camel-imap-store.c:3010 + msgid "Operation cancelled" + msgstr "Operação cancelada" + + #: ../camel/providers/imap/camel-imap-command.c:310 +-#: ../camel/providers/imap/camel-imap-store.c:3007 ++#: ../camel/providers/imap/camel-imap-store.c:3013 + #, c-format + msgid "Server unexpectedly disconnected: %s" + msgstr "O servidor se desconectou inesperadamente: %s" +@@ -2896,12 +2738,8 @@ msgstr "O servidor se desconectou inespe + #. we might get a ']' from a BAD response since we +12, but who cares? + #: ../camel/providers/imap/camel-imap-command.c:331 + #, c-format +-msgid "" +-"Alert from IMAP server %s@%s:\n" +-"%s" +-msgstr "" +-"Alerta do servidor IMAP %s@%s:\n" +-"%s" ++msgid "Alert from IMAP server %s@%s:\n%s" ++msgstr "Alerta do servidor IMAP %s@%s:\n%s" + + #: ../camel/providers/imap/camel-imap-command.c:400 + #, c-format +@@ -2956,23 +2794,17 @@ msgstr "Esta mensagem não está dispon + #: ../camel/providers/imap/camel-imap-folder.c:2553 + #, c-format + msgid "Incomplete server response: no information provided for message %d" +-msgstr "" +-"Resposta incompleta do servidor: não foi fornecida informação para a " +-"mensagem %d" ++msgstr "Resposta incompleta do servidor: não foi fornecida informação para a mensagem %d" + + #: ../camel/providers/imap/camel-imap-folder.c:2561 + #, c-format + msgid "Incomplete server response: no UID provided for message %d" +-msgstr "" +-"Resposta incompleta do servidor: não foi fornecido UID para a mensagem %d" ++msgstr "Resposta incompleta do servidor: não foi fornecido UID para a mensagem %d" + + #: ../camel/providers/imap/camel-imap-folder.c:2574 + #, c-format +-msgid "" +-"Unexpected server response: Identical UIDs provided for messages %d and %d" +-msgstr "" +-"Resposta inesperada do servidor: UID idênticos fornecidos para as mensagens %" +-"d e %d" ++msgid "Unexpected server response: Identical UIDs provided for messages %d and %d" ++msgstr "Resposta inesperada do servidor: UID idênticos fornecidos para as mensagens %d e %d" + + #: ../camel/providers/imap/camel-imap-folder.c:2755 + msgid "Could not find message body in FETCH response." +@@ -3075,7 +2907,7 @@ msgstr "SSL não disponível" + msgid "Connection cancelled" + msgstr "Conexão cancelada" + +-#: ../camel/providers/imap/camel-imap-store.c:699 ++#: ../camel/providers/imap/camel-imap-store.c:702 + #: ../camel/providers/imap/camel-imap-store.c:721 + #: ../camel/providers/imap/camel-imap-store.c:727 + #: ../camel/providers/imap4/camel-imap4-store.c:369 +@@ -3085,7 +2917,7 @@ msgstr "Conexão cancelada" + msgid "Failed to connect to IMAP server %s in secure mode: %s" + msgstr "Falha ao conectar ao servidor IMAP %s em modo seguro: %s" + +-#: ../camel/providers/imap/camel-imap-store.c:700 ++#: ../camel/providers/imap/camel-imap-store.c:703 + #: ../camel/providers/smtp/camel-smtp-transport.c:323 + msgid "STARTTLS not supported" + msgstr "STARTTLS não suportada" +@@ -3110,10 +2942,10 @@ msgid "Could not connect with command \" + msgstr "Não foi possível conectar com o comando \"%s\": %s" + + #. create a dummy "." parent inbox, use to scan, then put back at the top level +-#: ../camel/providers/imap/camel-imap-store.c:1057 +-#: ../camel/providers/imap/camel-imap-store.c:2413 ++#: ../camel/providers/imap/camel-imap-store.c:1052 ++#: ../camel/providers/imap/camel-imap-store.c:2408 + #: ../camel/providers/imap4/camel-imap4-store-summary.c:368 +-#: ../camel/providers/imap4/camel-imap4-store.c:1392 ++#: ../camel/providers/imap4/camel-imap4-store.c:1387 + #: ../camel/providers/local/camel-maildir-folder.c:75 + #: ../camel/providers/local/camel-maildir-store.c:217 + #: ../camel/providers/local/camel-maildir-store.c:289 +@@ -3124,43 +2956,36 @@ msgstr "Não foi possível conectar com + msgid "Inbox" + msgstr "Caixa de entrada" + +-#: ../camel/providers/imap/camel-imap-store.c:1317 ++#: ../camel/providers/imap/camel-imap-store.c:1312 + #, c-format + msgid "IMAP server %s does not support requested authentication type %s" + msgstr "O servidor IMAP %s não suporta o tipo de autenticação pedido %s" + +-#: ../camel/providers/imap/camel-imap-store.c:1327 +-#: ../camel/providers/smtp/camel-smtp-transport.c:498 ++#: ../camel/providers/imap/camel-imap-store.c:1322 ++#: ../camel/providers/smtp/camel-smtp-transport.c:493 + #, c-format + msgid "No support for authentication type %s" + msgstr "Sem suporte para o tipo de autenticação %s" + +-#: ../camel/providers/imap/camel-imap-store.c:1350 ++#: ../camel/providers/imap/camel-imap-store.c:1345 + #: ../camel/providers/imapp/camel-imapp-store.c:364 + #, c-format + msgid "%sPlease enter the IMAP password for %s@%s" + msgstr "%sPor favor, entre a senha IMAP para %s@%s" + +-#: ../camel/providers/imap/camel-imap-store.c:1393 ++#: ../camel/providers/imap/camel-imap-store.c:1388 + #, c-format +-msgid "" +-"Unable to authenticate to IMAP server.\n" +-"%s\n" +-"\n" +-msgstr "" +-"Impossível autenticar com o servidor IMAP.\n" +-"%s\n" +-"\n" +- +-#: ../camel/providers/imap/camel-imap-store.c:1885 +-#: ../camel/providers/imap/camel-imap-store.c:2255 +-#: ../camel/providers/imap4/camel-imap4-store.c:1022 ++msgid "Unable to authenticate to IMAP server.\n%s\n\n" ++msgstr "Impossível autenticar com o servidor IMAP.\n%s\n\n" ++ ++#: ../camel/providers/imap/camel-imap-store.c:1880 ++#: ../camel/providers/imap/camel-imap-store.c:2250 ++#: ../camel/providers/imap4/camel-imap4-store.c:1017 + #, c-format +-msgid "" +-"The folder name \"%s\" is invalid because it contains the character \"%c\"" ++msgid "The folder name \"%s\" is invalid because it contains the character \"%c\"" + msgstr "O nome de pasta \"%s\" é inválido pois ele contém o caractere \"%c\"" + +-#: ../camel/providers/imap/camel-imap-store.c:2002 ++#: ../camel/providers/imap/camel-imap-store.c:1997 + #: ../camel/providers/local/camel-maildir-store.c:190 + #: ../camel/providers/local/camel-mbox-store.c:202 + #: ../camel/providers/local/camel-mh-store.c:249 +@@ -3168,7 +2993,7 @@ msgstr "O nome de pasta \"%s\" é invál + msgid "Cannot create folder `%s': folder exists." + msgstr "Impossível criar a pasta `%s': pasta existe." + +-#: ../camel/providers/imap/camel-imap-store.c:2266 ++#: ../camel/providers/imap/camel-imap-store.c:2261 + #, c-format + msgid "Unknown parent folder: %s" + msgstr "Pasta pai desconhecida: %s" +@@ -3208,11 +3033,8 @@ msgid "IMAP4 server %s unexpectedly disc + msgstr "Servidor IMAP4 %s se desconectou inesperadamente: %s" + + #: ../camel/providers/imap4/camel-imap4-folder.c:86 +-msgid "" +-"Enable Mailing-List detection required for some filter and vFolder rules" +-msgstr "" +-"Ativar detecção de Mailing-List necessária para alguns filtros e regras " +-"vFolder" ++msgid "Enable Mailing-List detection required for some filter and vFolder rules" ++msgstr "Ativar detecção de Mailing-List necessária para alguns filtros e regras vFolder" + + #: ../camel/providers/imap4/camel-imap4-folder.c:399 + #, c-format +@@ -3252,8 +3074,7 @@ msgstr "Impossível obter mensagem %s da + #: ../camel/providers/imap4/camel-imap4-folder.c:914 + #, c-format + msgid "Cannot append message to folder `%s': Folder is read-only" +-msgstr "" +-"Impossível acrescentar mensagem à pasta `%s': A pasta é somente-leitura" ++msgstr "Impossível acrescentar mensagem à pasta `%s': A pasta é somente-leitura" + + #: ../camel/providers/imap4/camel-imap4-folder.c:1007 + #, c-format +@@ -3268,26 +3089,22 @@ msgstr "Impossível acrescentar mensagem + #: ../camel/providers/imap4/camel-imap4-folder.c:1156 + #, c-format + msgid "Cannot move messages from folder `%s' to folder `%s': Unknown" +-msgstr "" +-"Impossível mover mensagens da pasta `%s' para a pasta `%s': Desconhecido" ++msgstr "Impossível mover mensagens da pasta `%s' para a pasta `%s': Desconhecido" + + #: ../camel/providers/imap4/camel-imap4-folder.c:1160 + #, c-format + msgid "Cannot copy messages from folder `%s' to folder `%s': Unknown" +-msgstr "" +-"Impossível copiar mensagens da pasta `%s' para a pasta `%s': Desconhecido" ++msgstr "Impossível copiar mensagens da pasta `%s' para a pasta `%s': Desconhecido" + + #: ../camel/providers/imap4/camel-imap4-folder.c:1168 + #, c-format + msgid "Cannot move messages from folder `%s' to folder `%s': Bad command" +-msgstr "" +-"Impossível mover mensagens da pasta `%s' para a pasta `%s': Comando inválido" ++msgstr "Impossível mover mensagens da pasta `%s' para a pasta `%s': Comando inválido" + + #: ../camel/providers/imap4/camel-imap4-folder.c:1172 + #, c-format + msgid "Cannot copy messages from folder `%s' to folder `%s': Bad command" +-msgstr "" +-"Impossível copiar mensagens da pasta `%s' para a pasta `%s': Comando inválido" ++msgstr "Impossível copiar mensagens da pasta `%s' para a pasta `%s': Comando inválido" + + #: ../camel/providers/imap4/camel-imap4-provider.c:71 + msgid "IMAP4rev1" +@@ -3298,130 +3115,121 @@ msgid "For reading and storing mail on I + msgstr "Para ler e armazenar correio em servidores IMAPv4rev1." + + #: ../camel/providers/imap4/camel-imap4-provider.c:90 +-msgid "" +-"This option will connect to the IMAPv4rev1 server using a plaintext password." ++msgid "This option will connect to the IMAPv4rev1 server using a plaintext password." + msgstr "Esta opção conectará com o servidor IMAPv4rev1 usando uma senha em texto aberto." + +-#: ../camel/providers/imap4/camel-imap4-store.c:486 ++#: ../camel/providers/imap4/camel-imap4-store.c:481 + #, c-format +-msgid "" +-"Cannot authenticate to IMAP server %s using the %s authentication mechanism" +-msgstr "" +-"Impossível autenticar-se com o servidor IMAP %s usando o mecanismo de " +-"autenticação %s" ++msgid "Cannot authenticate to IMAP server %s using the %s authentication mechanism" ++msgstr "Impossível autenticar-se com o servidor IMAP %s usando o mecanismo de autenticação %s" + +-#: ../camel/providers/imap4/camel-imap4-store.c:535 ++#: ../camel/providers/imap4/camel-imap4-store.c:530 + #, c-format + msgid "%sPlease enter the IMAP password for %s on host %s" + msgstr "%sPor favor, entre com a senha IMAP para %s na máquina %s" + +-#: ../camel/providers/imap4/camel-imap4-store.c:602 ++#: ../camel/providers/imap4/camel-imap4-store.c:597 + #, c-format + msgid "Cannot authenticate to IMAP server %s using %s" + msgstr "Impossível autenticar-se ao servidor IMAP %s usando %s" + +-#: ../camel/providers/imap4/camel-imap4-store.c:764 +-#: ../camel/providers/imap4/camel-imap4-store.c:1032 ++#: ../camel/providers/imap4/camel-imap4-store.c:759 ++#: ../camel/providers/imap4/camel-imap4-store.c:1027 + msgid "Cannot create IMAP folders in offline mode." + msgstr "Impossível criar uma pasta IMPA no modo desconectado." + +-#: ../camel/providers/imap4/camel-imap4-store.c:803 ++#: ../camel/providers/imap4/camel-imap4-store.c:798 + #, c-format + msgid "Cannot get folder `%s' on IMAP server %s: Unknown" + msgstr "Impossível obter pasta `%s' no servidor IMAP %s: Desconhecido" + +-#: ../camel/providers/imap4/camel-imap4-store.c:884 ++#: ../camel/providers/imap4/camel-imap4-store.c:879 + #, c-format + msgid "Cannot get LIST information for `%s' on IMAP server %s: %s" + msgstr "Impossível obter informação de LIST para o padrão `%s' no servidor IMAP %s: %s" + +-#: ../camel/providers/imap4/camel-imap4-store.c:886 +-#: ../camel/providers/imap4/camel-imap4-store.c:1559 ++#: ../camel/providers/imap4/camel-imap4-store.c:881 ++#: ../camel/providers/imap4/camel-imap4-store.c:1554 + msgid "Bad command" + msgstr "Comando inválido" + +-#: ../camel/providers/imap4/camel-imap4-store.c:965 ++#: ../camel/providers/imap4/camel-imap4-store.c:960 + #, c-format + msgid "Cannot create folder `%s': Invalid mailbox name" + msgstr "Impossível criar pasta `%s': Nome de caixa de correio inválido" + +-#: ../camel/providers/imap4/camel-imap4-store.c:970 ++#: ../camel/providers/imap4/camel-imap4-store.c:965 + #, c-format + msgid "Cannot create folder `%s': Bad command" + msgstr "Impossível criar pasta `%s': Comando inválido" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1076 ++#: ../camel/providers/imap4/camel-imap4-store.c:1071 + #, c-format + msgid "Cannot delete folder `%s': Special folder" + msgstr "Impossível excluir pasta `%s': Pasta especial" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1083 ++#: ../camel/providers/imap4/camel-imap4-store.c:1078 + msgid "Cannot delete IMAP folders in offline mode." + msgstr "Impossível excluir pastas IMPA no modo desconectado." + +-#: ../camel/providers/imap4/camel-imap4-store.c:1142 ++#: ../camel/providers/imap4/camel-imap4-store.c:1137 + #, c-format + msgid "Cannot delete folder `%s': Invalid mailbox name" + msgstr "Impossível excluir pasta `%s': Nome de caixa de correio inválido" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1147 ++#: ../camel/providers/imap4/camel-imap4-store.c:1142 + #, c-format + msgid "Cannot delete folder `%s': Bad command" + msgstr "Impossível excluir pasta `%s': Comando inválido" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1167 ++#: ../camel/providers/imap4/camel-imap4-store.c:1162 + #, c-format + msgid "Cannot rename folder `%s' to `%s': Special folder" + msgstr "Impossível renomear pasta de `%s' para `%s': Pasta especial" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1174 ++#: ../camel/providers/imap4/camel-imap4-store.c:1169 + msgid "Cannot rename IMAP folders in offline mode." + msgstr "Impossível renomear pastas IMPA no modo desconectado." + +-#: ../camel/providers/imap4/camel-imap4-store.c:1205 ++#: ../camel/providers/imap4/camel-imap4-store.c:1200 + #, c-format + msgid "Cannot rename folder `%s' to `%s': Invalid mailbox name" +-msgstr "" +-"Impossível renomear pasta de `%s' para `%s': Nome de caixa de correio " +-"inválido" ++msgstr "Impossível renomear pasta de `%s' para `%s': Nome de caixa de correio inválido" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1210 ++#: ../camel/providers/imap4/camel-imap4-store.c:1205 + #, c-format + msgid "Cannot rename folder `%s' to `%s': Bad command" + msgstr "Impossível renomear pasta de `%s' para `%s': Comando inválido" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1557 ++#: ../camel/providers/imap4/camel-imap4-store.c:1552 + #, c-format + msgid "Cannot get %s information for pattern `%s' on IMAP server %s: %s" +-msgstr "" +-"Impossível obter informação %s para o padrão `%s' no servidor IMAP %s: %s" ++msgstr "Impossível obter informação %s para o padrão `%s' no servidor IMAP %s: %s" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1597 ++#: ../camel/providers/imap4/camel-imap4-store.c:1592 + msgid "Cannot subscribe to IMAP folders in offline mode." + msgstr "Impossível cancelar a inscrição de pastas IMPA no modo desconectado." + +-#: ../camel/providers/imap4/camel-imap4-store.c:1642 ++#: ../camel/providers/imap4/camel-imap4-store.c:1637 + #, c-format + msgid "Cannot subscribe to folder `%s': Invalid mailbox name" + msgstr "Impossível inscrever a pasta `%s': Nome de caixa de correio inválido" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1647 ++#: ../camel/providers/imap4/camel-imap4-store.c:1642 + #, c-format + msgid "Cannot subscribe to folder `%s': Bad command" + msgstr "Impossível inscrever a pasta `%s': Comando inválido" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1669 ++#: ../camel/providers/imap4/camel-imap4-store.c:1664 + msgid "Cannot unsubscribe from IMAP folders in offline mode." + msgstr "Impossível cancelar a inscrição de pastas IMAP no modo desconectado." + +-#: ../camel/providers/imap4/camel-imap4-store.c:1714 ++#: ../camel/providers/imap4/camel-imap4-store.c:1709 + #, c-format + msgid "Cannot unsubscribe from folder `%s': Invalid mailbox name" +-msgstr "" +-"Impossível cancelar a inscrição da pasta `%s': Nome de caixa de correio " +-"inválido" ++msgstr "Impossível cancelar a inscrição da pasta `%s': Nome de caixa de correio inválido" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1719 ++#: ../camel/providers/imap4/camel-imap4-store.c:1714 + #, c-format + msgid "Cannot unsubscribe from folder `%s': Bad command" + msgstr "Impossível cancelar a inscrição da pasta `%s': Comando inválido" +@@ -3458,17 +3266,8 @@ msgid "IMAP+" + msgstr "IMAP+" + + #: ../camel/providers/imapp/camel-imapp-provider.c:50 +-msgid "" +-"Experimental IMAP 4(.1) client\n" +-"This is untested and unsupported code, you want to use plain imap instead.\n" +-"\n" +-" !!! DO NOT USE THIS FOR PRODUCTION EMAIL !!!\n" +-msgstr "" +-"Cliente IMAP 4(.1) experimental\n" +-"Este código não foi testado e ainda é não-suportado, você deve usar o imap " +-"comum.\n" +-"\n" +-" !!! NÃO USE ISTO PARA EMAIL DE PRODUÇÃO !!!\n" ++msgid "Experimental IMAP 4(.1) client\nThis is untested and unsupported code, you want to use plain imap instead.\n\n !!! DO NOT USE THIS FOR PRODUCTION EMAIL !!!\n" ++msgstr "Cliente IMAP 4(.1) experimental\nEste código não foi testado e ainda é não-suportado, você deve usar o imap comum.\n\n !!! NÃO USE ISTO PARA EMAIL DE PRODUÇÃO !!!\n" + + #: ../camel/providers/imapp/camel-imapp-store.c:251 + #, c-format +@@ -3520,12 +3319,8 @@ msgid "Local delivery" + msgstr "Entrega local" + + #: ../camel/providers/local/camel-local-provider.c:73 +-msgid "" +-"For retrieving (moving) local mail from standard mbox-formatted spools into " +-"folders managed by Evolution." +-msgstr "" +-"Para buscar (mover) correio local de repositórios no formato padrão mbox para " +-"pastas gerenciadas pelo Evolution." ++msgid "For retrieving (moving) local mail from standard mbox-formatted spools into folders managed by Evolution." ++msgstr "Para buscar (mover) correio local de repositórios no formato padrão mbox para pastas gerenciadas pelo Evolution." + + #: ../camel/providers/local/camel-local-provider.c:87 + #: ../camel/providers/local/camel-local-provider.c:106 +@@ -3549,13 +3344,8 @@ msgid "Standard Unix mbox spool or direc + msgstr "Fila ou diretório mbox padrão do Unix" + + #: ../camel/providers/local/camel-local-provider.c:115 +-msgid "" +-"For reading and storing local mail in external standard mbox spool files.\n" +-"May also be used to read a tree of Elm, Pine, or Mutt style folders." +-msgstr "" +-"Para ler e armazenar correio local em arquivos de fila mbox padrão " +-"externos.\n" +-"Pode também ser usado para ler uma árvore de pastas do Elm, Pine ou Mutt." ++msgid "For reading and storing local mail in external standard mbox spool files.\nMay also be used to read a tree of Elm, Pine, or Mutt style folders." ++msgstr "Para ler e armazenar correio local em arquivos de fila mbox padrão externos.\nPode também ser usado para ler uma árvore de pastas do Elm, Pine ou Mutt." + + #: ../camel/providers/local/camel-local-store.c:156 + #: ../camel/providers/local/camel-local-store.c:267 +@@ -3643,12 +3433,8 @@ msgstr "Impossível acrescentar a mensag + #: ../camel/providers/local/camel-mh-folder.c:213 + #: ../camel/providers/local/camel-mh-folder.c:222 + #, c-format +-msgid "" +-"Cannot get message: %s from folder %s\n" +-" %s" +-msgstr "" +-"Impossível obter a mensagem: %s da pasta %s\n" +-" %s" ++msgid "Cannot get message: %s from folder %s\n %s" ++msgstr "Impossível obter a mensagem: %s da pasta %s\n %s" + + #: ../camel/providers/local/camel-maildir-folder.c:268 + msgid "Invalid message contents" +@@ -3764,12 +3550,8 @@ msgstr "Impossível obter a pasta `%s': + #: ../camel/providers/local/camel-mbox-store.c:237 + #: ../camel/providers/local/camel-mbox-store.c:260 + #, c-format +-msgid "" +-"Could not delete folder `%s':\n" +-"%s" +-msgstr "" +-"Não foi possível excluir a pasta `%s':\n" +-"%s" ++msgid "Could not delete folder `%s':\n%s" ++msgstr "Não foi possível excluir a pasta `%s':\n%s" + + #: ../camel/providers/local/camel-mbox-store.c:245 + #, c-format +@@ -3924,12 +3706,8 @@ msgstr "A pasta `%s/%s' não existe." + + #: ../camel/providers/local/camel-spool-store.c:173 + #, c-format +-msgid "" +-"Could not open folder `%s':\n" +-"%s" +-msgstr "" +-"Não foi possível abrir a pasta `%s':\n" +-"%s" ++msgid "Could not open folder `%s':\n%s" ++msgstr "Não foi possível abrir a pasta `%s':\n%s" + + #: ../camel/providers/local/camel-spool-store.c:177 + #, c-format +@@ -3938,12 +3716,8 @@ msgstr "A pasta `%s' não existe." + + #: ../camel/providers/local/camel-spool-store.c:182 + #, c-format +-msgid "" +-"Could not create folder `%s':\n" +-"%s" +-msgstr "" +-"Não foi possível criar a pasta `%s':\n" +-"%s" ++msgid "Could not create folder `%s':\n%s" ++msgstr "Não foi possível criar a pasta `%s':\n%s" + + #: ../camel/providers/local/camel-spool-store.c:190 + #, c-format +@@ -3988,12 +3762,8 @@ msgstr "Não foi possível sincronizar a + #: ../camel/providers/local/camel-spool-summary.c:263 + #: ../camel/providers/local/camel-spool-summary.c:276 + #, c-format +-msgid "" +-"Could not sync spool folder %s: %s\n" +-"Folder may be corrupt, copy saved in `%s'" +-msgstr "" +-"Não foi possível sincronizar a pasta de fila %s: %s\n" +-"A pasta pode estar corrompida, cópia salva em `%s'" ++msgid "Could not sync spool folder %s: %s\nFolder may be corrupt, copy saved in `%s'" ++msgstr "Não foi possível sincronizar a pasta de fila %s: %s\nA pasta pode estar corrompida, cópia salva em `%s'" + + #: ../camel/providers/nntp/camel-nntp-folder.c:175 + #: ../camel/providers/nntp/camel-nntp-folder.c:207 +@@ -4018,11 +3788,8 @@ msgid "You cannot copy messages from a N + msgstr "Você não pode copiar mensagens de uma pasta NNTP!" + + #: ../camel/providers/nntp/camel-nntp-provider.c:44 +-msgid "" +-"Show folders in short notation (e.g. c.o.linux rather than comp.os.linux)" +-msgstr "" +-"Exibir pastas usando notação reduzida (ex.: c.o.linux no lugar de comp.os." +-"linux)" ++msgid "Show folders in short notation (e.g. c.o.linux rather than comp.os.linux)" ++msgstr "Exibir pastas usando notação reduzida (ex.: c.o.linux no lugar de comp.os.linux)" + + #: ../camel/providers/nntp/camel-nntp-provider.c:46 + msgid "In the subscription dialog, show relative folder names" +@@ -4034,12 +3801,10 @@ msgstr "Notícias USENET" + + #: ../camel/providers/nntp/camel-nntp-provider.c:55 + msgid "This is a provider for reading from and posting to USENET newsgroups." +-msgstr "" +-"Este é um provedor para ler e publicar em grupos de notícias da USENET." ++msgstr "Este é um provedor para ler e publicar em grupos de notícias da USENET." + + #: ../camel/providers/nntp/camel-nntp-provider.c:74 +-msgid "" +-"This option will authenticate with the NNTP server using a plaintext password." ++msgid "This option will authenticate with the NNTP server using a plaintext password." + msgstr "Esta opção autenticará com o servidor NNTP usando uma senha em texto aberto." + + #: ../camel/providers/nntp/camel-nntp-store.c:219 +@@ -4059,40 +3824,20 @@ msgstr "Notícias USENET via %s" + + #: ../camel/providers/nntp/camel-nntp-store.c:798 + #, c-format +-msgid "" +-"Error retrieving newsgroups:\n" +-"\n" +-"%s" +-msgstr "" +-"Erro buscando grupos de notícias:\n" +-"\n" +-"%s" ++msgid "Error retrieving newsgroups:\n\n%s" ++msgstr "Erro buscando grupos de notícias:\n\n%s" + + #: ../camel/providers/nntp/camel-nntp-store.c:892 +-msgid "" +-"You cannot subscribe to this newsgroup:\n" +-"\n" +-"No such newsgroup. The selected item is a probably a parent folder." +-msgstr "" +-"Não é possível inscrever-se neste grupo de notícias:\n" +-"\n" +-"Não existe tal grupo. O item selecionado provavelmente é uma pasta pai." ++msgid "You cannot subscribe to this newsgroup:\n\nNo such newsgroup. The selected item is a probably a parent folder." ++msgstr "Não é possível inscrever-se neste grupo de notícias:\n\nNão existe tal grupo. O item selecionado provavelmente é uma pasta pai." + + #: ../camel/providers/nntp/camel-nntp-store.c:924 +-msgid "" +-"You cannot unsubscribe to this newsgroup:\n" +-"\n" +-"newsgroup does not exist!" +-msgstr "" +-"Você não pode cancelar a inscrição deste grupo de notícias:\n" +-"\n" +-"O grupo de notícias não existe!" ++msgid "You cannot unsubscribe to this newsgroup:\n\nnewsgroup does not exist!" ++msgstr "Você não pode cancelar a inscrição deste grupo de notícias:\n\nO grupo de notícias não existe!" + + #: ../camel/providers/nntp/camel-nntp-store.c:949 + msgid "You cannot create a folder in a News store: subscribe instead." +-msgstr "" +-"Você não pode criar uma pasta num repositório de notícias: é possível se " +-"inscrever." ++msgstr "Você não pode criar uma pasta num repositório de notícias: é possível se inscrever." + + #: ../camel/providers/nntp/camel-nntp-store.c:957 + msgid "You cannot rename a folder in a News store." +@@ -4100,9 +3845,7 @@ msgstr "Você não pode renomear uma pas + + #: ../camel/providers/nntp/camel-nntp-store.c:965 + msgid "You cannot remove a folder in a News store: unsubscribe instead." +-msgstr "" +-"Você não pode remover uma pasta de um repositório de notícias: é possível " +-"cancelar a inscrição." ++msgstr "Você não pode remover uma pasta de um repositório de notícias: é possível cancelar a inscrição." + + #: ../camel/providers/nntp/camel-nntp-store.c:1146 + msgid "Authentication requested but no username provided" +@@ -4208,29 +3951,19 @@ msgid "For connecting to and downloading + msgstr "Para conectar e baixar correio de servidores POP." + + #: ../camel/providers/pop3/camel-pop3-provider.c:74 +-msgid "" +-"This option will connect to the POP server using a plaintext password. This " +-"is the only option supported by many POP servers." +-msgstr "" +-"Esta opção conectará com o servidor POP usando uma senha em texto aberto. Esta " +-"é a única opção suportada por muitos servidores POP." ++msgid "This option will connect to the POP server using a plaintext password. This is the only option supported by many POP servers." ++msgstr "Esta opção conectará com o servidor POP usando uma senha em texto aberto. Esta é a única opção suportada por muitos servidores POP." + + #: ../camel/providers/pop3/camel-pop3-provider.c:84 +-msgid "" +-"This option will connect to the POP server using an encrypted password via " +-"the APOP protocol. This may not work for all users even on servers that " +-"claim to support it." +-msgstr "" +-"Esta opção estabelelece uma conexão com o servidor POP através do protocolo " +-"APOP, usando uma senha criptografada. Isto poderá não funcionar para todos " +-"os usuários, mesmo em servidores que alegam suportar o protocolo." ++msgid "This option will connect to the POP server using an encrypted password via the APOP protocol. This may not work for all users even on servers that claim to support it." ++msgstr "Esta opção estabelelece uma conexão com o servidor POP através do protocolo APOP, usando uma senha criptografada. Isto poderá não funcionar para todos os usuários, mesmo em servidores que alegam suportar o protocolo." + + #: ../camel/providers/pop3/camel-pop3-store.c:202 + #, c-format + msgid "Failed to read a valid greeting from POP server %s" + msgstr "Falha ao ler uma saudação válida do servidor POP %s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:216 ++#: ../camel/providers/pop3/camel-pop3-store.c:219 + #: ../camel/providers/pop3/camel-pop3-store.c:233 + #: ../camel/providers/pop3/camel-pop3-store.c:243 + #: ../camel/providers/pop3/camel-pop3-store.c:249 +@@ -4238,65 +3971,53 @@ msgstr "Falha ao ler uma saudação vál + msgid "Failed to connect to POP server %s in secure mode: %s" + msgstr "Falha ao se conectar ao servidor POP %s em modo seguro: %s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:217 ++#: ../camel/providers/pop3/camel-pop3-store.c:220 + msgid "STLS not supported" + msgstr "STLS não suportado" + +-#: ../camel/providers/pop3/camel-pop3-store.c:361 ++#: ../camel/providers/pop3/camel-pop3-store.c:356 + #, c-format + msgid "Could not connect to POP server %s" + msgstr "Não foi possível se conectar ao servidor POP %s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:402 +-#: ../camel/providers/pop3/camel-pop3-store.c:516 ++#: ../camel/providers/pop3/camel-pop3-store.c:397 ++#: ../camel/providers/pop3/camel-pop3-store.c:511 + #, c-format +-msgid "" +-"Unable to connect to POP server %s: No support for requested authentication " +-"mechanism." +-msgstr "" +-"Impossível conectar-se ao servidor POP %s: Não existe suporte para o " +-"mecanismo de autenticação pedido." ++msgid "Unable to connect to POP server %s: No support for requested authentication mechanism." ++msgstr "Impossível conectar-se ao servidor POP %s: Não existe suporte para o mecanismo de autenticação pedido." + +-#: ../camel/providers/pop3/camel-pop3-store.c:418 ++#: ../camel/providers/pop3/camel-pop3-store.c:413 + #, c-format + msgid "SASL `%s' Login failed for POP server %s: %s" + msgstr "O login SASL `%s' falhou para o servidor POP %s: %s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:430 ++#: ../camel/providers/pop3/camel-pop3-store.c:425 + #, c-format + msgid "Cannot login to POP server %s: SASL Protocol error" + msgstr "Impossível logar no servidor POP %s: Erro do protocolo SASL" + +-#: ../camel/providers/pop3/camel-pop3-store.c:449 ++#: ../camel/providers/pop3/camel-pop3-store.c:444 + #, c-format + msgid "Failed to authenticate on POP server %s: %s" + msgstr "Falha ao se autenticar com o servidor POP %s: %s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:475 ++#: ../camel/providers/pop3/camel-pop3-store.c:470 + #, c-format + msgid "%sPlease enter the POP password for %s on host %s" + msgstr "%sPor favor, entre a senha POP para %s na máquina %s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:530 +-#: ../camel/providers/pop3/camel-pop3-store.c:543 ++#: ../camel/providers/pop3/camel-pop3-store.c:525 ++#: ../camel/providers/pop3/camel-pop3-store.c:538 + #, c-format +-msgid "" +-"Unable to connect to POP server %s.\n" +-"Error sending password: %s" +-msgstr "" +-"Impossível conectar ao servidor POP %s.\n" +-"Erro ao enviar senha: %s" ++msgid "Unable to connect to POP server %s.\nError sending password: %s" ++msgstr "Impossível conectar ao servidor POP %s.\nErro ao enviar senha: %s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:537 ++#: ../camel/providers/pop3/camel-pop3-store.c:532 + #, c-format +-msgid "" +-"Unable to connect to POP server %s.\n" +-"Error sending username: %s" +-msgstr "" +-"Impossível se conectar ao servidor POP %s.\n" +-"Erro ao enviar nome do usuário: %s" ++msgid "Unable to connect to POP server %s.\nError sending username: %s" ++msgstr "Impossível se conectar ao servidor POP %s.\nErro ao enviar nome do usuário: %s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:643 ++#: ../camel/providers/pop3/camel-pop3-store.c:638 + #, c-format + msgid "No such folder `%s'." + msgstr "Não existe a pasta `%s'." +@@ -4306,12 +4027,8 @@ msgid "Sendmail" + msgstr "Sendmail" + + #: ../camel/providers/sendmail/camel-sendmail-provider.c:39 +-msgid "" +-"For delivering mail by passing it to the \"sendmail\" program on the local " +-"system." +-msgstr "" +-"Para entregar correio passando-o para o programa \"sendmail\" no sistema " +-"local." ++msgid "For delivering mail by passing it to the \"sendmail\" program on the local system." ++msgstr "Para entregar correio passando-o para o programa \"sendmail\" no sistema local." + + #: ../camel/providers/sendmail/camel-sendmail-transport.c:114 + msgid "Could not parse recipient list" +@@ -4320,15 +4037,12 @@ msgstr "Não foi possível analisar a li + #: ../camel/providers/sendmail/camel-sendmail-transport.c:145 + #, c-format + msgid "Could not create pipe to sendmail: %s: mail not sent" +-msgstr "" +-"Não foi possível criar pipe para o sendmail: %s: a mensagem não foi enviada" ++msgstr "Não foi possível criar pipe para o sendmail: %s: a mensagem não foi enviada" + + #: ../camel/providers/sendmail/camel-sendmail-transport.c:166 + #, c-format + msgid "Could not fork sendmail: %s: mail not sent" +-msgstr "" +-"Não foi possível executar fork para o sendmail: %s: a mensagem não foi " +-"enviada" ++msgstr "Não foi possível executar fork para o sendmail: %s: a mensagem não foi enviada" + + #: ../camel/providers/sendmail/camel-sendmail-transport.c:234 + #, c-format +@@ -4477,114 +4191,108 @@ msgstr "O comando STARTTLS falhou: %s" + msgid "STARTTLS command failed" + msgstr "O comando STARTTLS falhou" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:488 ++#: ../camel/providers/smtp/camel-smtp-transport.c:483 + #, c-format + msgid "SMTP server %s does not support requested authentication type %s." + msgstr "O servidor SMTP %s não suporta o mecanismo de autenticação pedido %s." + +-#: ../camel/providers/smtp/camel-smtp-transport.c:526 ++#: ../camel/providers/smtp/camel-smtp-transport.c:521 + #, c-format + msgid "%sPlease enter the SMTP password for %s on host %s" + msgstr "%sPor favor, entre a senha SMTP para %s na máquina %s" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:545 ++#: ../camel/providers/smtp/camel-smtp-transport.c:540 + #, c-format +-msgid "" +-"Unable to authenticate to SMTP server.\n" +-"%s\n" +-"\n" +-msgstr "" +-"Impossível se autenticar ao servidor SMTP.\n" +-"%s\n" +-"\n" ++msgid "Unable to authenticate to SMTP server.\n%s\n\n" ++msgstr "Impossível se autenticar ao servidor SMTP.\n%s\n\n" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:669 ++#: ../camel/providers/smtp/camel-smtp-transport.c:664 + #, c-format + msgid "SMTP server %s" + msgstr "Servidor SMTP %s" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:671 ++#: ../camel/providers/smtp/camel-smtp-transport.c:666 + #, c-format + msgid "SMTP mail delivery via %s" + msgstr "Entrega de correio SMTP via %s" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:689 ++#: ../camel/providers/smtp/camel-smtp-transport.c:684 + msgid "Cannot send message: service not connected." + msgstr "Impossível enviar mensagem: serviço não conectado." + +-#: ../camel/providers/smtp/camel-smtp-transport.c:695 ++#: ../camel/providers/smtp/camel-smtp-transport.c:690 + msgid "Cannot send message: sender address not valid." + msgstr "Impossível enviar mensagem: endereço do remetente não é válido." + +-#: ../camel/providers/smtp/camel-smtp-transport.c:699 ++#: ../camel/providers/smtp/camel-smtp-transport.c:694 + msgid "Sending message" + msgstr "Enviando mensagem" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:714 ++#: ../camel/providers/smtp/camel-smtp-transport.c:709 + msgid "Cannot send message: no recipients defined." + msgstr "Impossível enviar mensagem: não foram definidos destinatários." + +-#: ../camel/providers/smtp/camel-smtp-transport.c:725 ++#: ../camel/providers/smtp/camel-smtp-transport.c:720 + msgid "Cannot send message: one or more invalid recipients" + msgstr "Impossível enviar mensagem: um ou mais destinatários inválidos" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:894 ++#: ../camel/providers/smtp/camel-smtp-transport.c:889 + msgid "SMTP Greeting" + msgstr "Saudação SMTP" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:920 ++#: ../camel/providers/smtp/camel-smtp-transport.c:915 + #, c-format + msgid "HELO command failed: %s" + msgstr "O comando HELO falhou: %s" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:937 ++#: ../camel/providers/smtp/camel-smtp-transport.c:932 + msgid "HELO command failed" + msgstr "O comando HELO falhou" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1003 ++#: ../camel/providers/smtp/camel-smtp-transport.c:998 + msgid "SMTP Authentication" + msgstr "Autenticação SMTP" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1009 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1004 + msgid "Error creating SASL authentication object." + msgstr "Erro ao criar objeto de autenticação SASL." + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1026 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1037 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1021 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1032 + #, c-format + msgid "AUTH command failed: %s" + msgstr "O comando AUTH falhou: %s" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1043 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1038 + msgid "AUTH command failed" + msgstr "O comando AUTH falhou" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1105 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1100 + msgid "Bad authentication response from server.\n" + msgstr "Resposta de autenticação inválida do servidor.\n" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1130 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1125 + #, c-format + msgid "MAIL FROM command failed: %s: mail not sent" + msgstr "O comando MAIL FROM falhou: %s: a mensagem não foi enviada" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1147 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1142 + msgid "MAIL FROM command failed" + msgstr "O comando MAIL FROM falhou" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1171 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1166 + #, c-format + msgid "RCPT TO command failed: %s: mail not sent" + msgstr "O comando RCPT TO falhou: %s: a mensagem não foi enviada" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1190 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1185 + #, c-format + msgid "RCPT TO <%s> failed" + msgstr "RCPT TO <%s> falhou" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1229 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1287 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1306 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1224 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1282 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1301 + #, c-format + msgid "DATA command failed: %s: mail not sent" + msgstr "O comando DATA falhou: %s: a mensagem não foi enviada" +@@ -4592,26 +4300,26 @@ msgstr "O comando DATA falhou: %s: a men + #. we should have gotten instructions on how to use the DATA command: + #. * 354 Enter mail, end with "." on a line by itself + #. +-#: ../camel/providers/smtp/camel-smtp-transport.c:1246 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1322 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1241 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1317 + msgid "DATA command failed" + msgstr "O comando DATA falhou" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1345 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1340 + #, c-format + msgid "RSET command failed: %s" + msgstr "O comando RSET falhou: %s" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1361 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1356 + msgid "RSET command failed" + msgstr "O comando RSET falhou" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1384 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1379 + #, c-format + msgid "QUIT command failed: %s" + msgstr "O comando QUIT falhou: %s" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1398 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1393 + msgid "QUIT command failed" + msgstr "O comando QUIT falhou" + +@@ -4674,7 +4382,7 @@ msgstr "Chamadas Telefônicas" + + #: ../libedataserver/e-categories.c:263 + msgid "Status" +-msgstr "Estado" ++msgstr "Status" + + #: ../libedataserver/e-categories.c:264 + msgid "Strategies" +@@ -4702,7 +4410,7 @@ msgstr "Esperando" + #. time, in 12-hour format. + #: ../libedataserver/e-time-utils.c:1319 ../libedataserver/e-time-utils.c:1566 + msgid "%a %m/%d/%Y %I:%M:%S %p" +-msgstr "%a %d/%m/%Y %I:%M:%S" ++msgstr "%a %m/%d/%Y %I:%M:%S %p" + + #. strptime format of a weekday, a date and a time, + #. in 24-hour format. +@@ -4718,7 +4426,7 @@ msgstr "%a %d/%m/%Y %H:%M:%S" + #. time, in 12-hour format, without seconds. + #: ../libedataserver/e-time-utils.c:1329 ../libedataserver/e-time-utils.c:1562 + msgid "%a %m/%d/%Y %I:%M %p" +-msgstr "%a %d/%m/%Y %I:%M" ++msgstr "%a %m/%d/%Y %I:%M %p" + + #. strptime format of a weekday, a date and a time, + #. in 24-hour format, without seconds. +@@ -4732,7 +4440,7 @@ msgstr "%a %d/%m/%Y %H:%M" + #. in 12-hour format, without minutes or seconds. + #: ../libedataserver/e-time-utils.c:1339 + msgid "%a %m/%d/%Y %I %p" +-msgstr "%a %d/%m/%Y %I" ++msgstr "%a %m/%d/%Y %I %p" + + #. strptime format of a weekday, a date and a time, + #. in 24-hour format, without minutes or seconds. +@@ -4750,7 +4458,7 @@ msgstr "%a %d/%m/%Y" + #. strptime format of a date and a time, in 12-hour format. + #: ../libedataserver/e-time-utils.c:1355 + msgid "%m/%d/%Y %I:%M:%S %p" +-msgstr "%d/%m/%Y %I:%M:%S" ++msgstr "%m/%d/%Y %I:%M:%S %p" + + #. strptime format of a date and a time, in 24-hour format. + #: ../libedataserver/e-time-utils.c:1359 +@@ -4761,7 +4469,7 @@ msgstr "%d/%m/%Y %H:%M:%S" + #. without seconds. + #: ../libedataserver/e-time-utils.c:1364 + msgid "%m/%d/%Y %I:%M %p" +-msgstr "%d/%m/%Y %I:%M" ++msgstr "%m/%d/%Y %I:%M %p" + + #. strptime format of a date and a time, in 24-hour format, + #. without seconds. +@@ -4773,7 +4481,7 @@ msgstr "%d/%m/%Y %H:%M" + #. without minutes or seconds. + #: ../libedataserver/e-time-utils.c:1374 + msgid "%m/%d/%Y %I %p" +-msgstr "%d/%m/%Y %I" ++msgstr "%m/%d/%Y %I %p" + + #. strptime format of a date and a time, in 24-hour format, + #. without minutes or seconds. +@@ -4791,7 +4499,7 @@ msgstr "%d/%m/%Y" + #. strftime format of a time in 12-hour format. + #: ../libedataserver/e-time-utils.c:1492 ../libedataserver/e-time-utils.c:1611 + msgid "%I:%M:%S %p" +-msgstr "%I:%M:%S" ++msgstr "%I:%M:%S %p" + + #. strptime format for a time of day, in 24-hour format. + #. strftime format of a time in 24-hour format. +@@ -4805,7 +4513,7 @@ msgstr "%H:%M:%S" + #. without seconds. + #: ../libedataserver/e-time-utils.c:1501 ../libedataserver/e-time-utils.c:1608 + msgid "%I:%M %p" +-msgstr "%I:%M" ++msgstr "%I:%M %p" + + #. strptime format for time of day, without seconds 24-hour format. + #. strftime format of a time in 24-hour format, +@@ -4817,7 +4525,7 @@ msgstr "%H:%M" + #. strptime format for hour and AM/PM, 12-hour format. + #: ../libedataserver/e-time-utils.c:1509 + msgid "%I %p" +-msgstr "%I" ++msgstr "%I %p" + + #: ../libedataserverui/e-book-auth-util.c:89 + msgid "Accessing LDAP Server anonymously" +@@ -4829,11 +4537,8 @@ msgstr "Falha ao autenticar.\n" + + #: ../libedataserverui/e-categories-dialog.c:265 + #, c-format +-msgid "" +-"There is already a category '%s' in the configuration. Please use another " +-"name" +-msgstr "" +-"Já existe uma categoria '%s' na configuração. Por favor, utilize outro nome" ++msgid "There is already a category '%s' in the configuration. Please use another name" ++msgstr "Já existe uma categoria '%s' na configuração. Por favor, utilize outro nome" + + #: ../libedataserverui/e-categories-dialog.c:435 + msgid "Category" +@@ -4875,15 +4580,15 @@ msgstr "E_ditar" + msgid "categories" + msgstr "categorias" + +-#: ../libedataserverui/e-name-selector-dialog.c:282 ++#: ../libedataserverui/e-name-selector-dialog.c:284 + msgid "Select Contacts from Address Book" + msgstr "Selecionar Contatos do Catálogo de Endereços" + +-#: ../libedataserverui/e-name-selector-dialog.c:576 ++#: ../libedataserverui/e-name-selector-dialog.c:578 + msgid "_Add" + msgstr "_Adicionar" + +-#: ../libedataserverui/e-name-selector-dialog.c:601 ++#: ../libedataserverui/e-name-selector-dialog.c:603 + msgid "_Remove" + msgstr "_Remover" + +@@ -4901,7 +4606,7 @@ msgstr "Exibir Contatos" + + #: ../libedataserverui/e-name-selector-dialog.glade.h:4 + msgid "_Contacts" +-msgstr "_Contatos " ++msgstr "_Contatos" + + #: ../libedataserverui/e-name-selector-dialog.glade.h:5 + msgid "Address Book" +@@ -4945,11 +4650,21 @@ msgstr "_Editar %s" + msgid "_Delete %s" + msgstr "_Remover %s" + +-#: ../libedataserverui/e-passwords.c:471 ++#: ../libedataserverui/e-passwords.c:472 ++#, ++msgid "_Remember this passphrase" ++msgstr "_Lembre-se desta frase secreta" ++ ++#: ../libedataserverui/e-passwords.c:473 ++#, ++msgid "_Remember this passphrase for the remainder of this session" ++msgstr "_Lembre-se desta frase secreta para o restante da sessão" ++ ++#: ../libedataserverui/e-passwords.c:476 + msgid "_Remember this password" + msgstr "_Lembrar esta senha" + +-#: ../libedataserverui/e-passwords.c:472 ++#: ../libedataserverui/e-passwords.c:477 + msgid "_Remember this password for the remainder of this session" + msgstr "_Lembrar esta senha pelo restante dessa sessão" + +@@ -4962,16 +4677,16 @@ msgstr "Selecionar destino" + msgid "_Destination" + msgstr "_Destino" + +-#: ../servers/exchange/lib/e2k-autoconfig.c:1639 ++#: ../servers/exchange/lib/e2k-autoconfig.c:1647 + #: ../servers/exchange/storage/exchange-account.c:932 + #, c-format + msgid "Enter password for %s" +-msgstr "Entre com a senha para %s" ++msgstr "Digite a senha para %s" + +-#: ../servers/exchange/lib/e2k-autoconfig.c:1640 ++#: ../servers/exchange/lib/e2k-autoconfig.c:1648 + #: ../servers/exchange/storage/exchange-account.c:937 + msgid "Enter password" +-msgstr "Entre com a senha" ++msgstr "Digite a senha" + + #. i18n: These are Outlook's words for the default roles in + #. the folder permissions dialog. +@@ -5015,14 +4730,6 @@ msgstr "Nenhum" + msgid "Custom" + msgstr "Personalizado" + +-#: ../servers/exchange/lib/e2k-user-dialog.c:144 +-msgid "Select User" +-msgstr "Usuário Selecionado" +- +-#: ../servers/exchange/lib/e2k-user-dialog.c:182 +-msgid "Addressbook..." +-msgstr "Catálogo de Endereços..." +- + #: ../servers/exchange/storage/e-storage.c:556 + msgid "Generic error" + msgstr "Erro genérico" +@@ -5132,19 +4839,19 @@ msgstr "Itens Enviados" + msgid "Tasks" + msgstr "Tarefas" + +-#: ../servers/groupwise/e-gw-connection.c:164 ++#: ../servers/groupwise/e-gw-connection.c:167 + msgid "Invalid connection" + msgstr "Conexão inválida" + +-#: ../servers/groupwise/e-gw-connection.c:168 ++#: ../servers/groupwise/e-gw-connection.c:171 + msgid "Invalid response from server" + msgstr "Resposta inválida do servidor" + +-#: ../servers/groupwise/e-gw-connection.c:170 ++#: ../servers/groupwise/e-gw-connection.c:173 + msgid "No response from the server" + msgstr "Sem resposta do servidor" + +-#: ../servers/groupwise/e-gw-connection.c:176 ++#: ../servers/groupwise/e-gw-connection.c:179 + msgid "Bad parameter" + msgstr "Parâmetro inválido" + +@@ -5168,37 +4875,30 @@ msgstr "Serviço de logging do Evolution + #: ../src/server.c:106 + #, c-format + msgid "Multiple segmentation faults occurred; can't display error dialog\n" +-msgstr "" +-"Ocorreram várias falhas de segmentação; não é possível exibir\n" +-"o diálogo de erro\n" ++msgstr "Ocorreram várias falhas de segmentação; não é possível exibir diálogo de erro\n" + ++#~ msgid "Select User" ++#~ msgstr "Usuário Selecionado" ++#~ msgid "Addressbook..." ++#~ msgstr "Catálogo de Endereços..." + #~ msgid "Failed to create pipe to '%s': %s" + #~ msgstr "Falha ao criar pipe para '%s': %s" +- + #~ msgid "Cannot get folder info in offline mode." + #~ msgstr "Impossível obter a informação da pasta no modo desconectado." +- + #~ msgid "Cannot delete GroupWise folders in offline mode." + #~ msgstr "Impossível excluir pastas do GroupWise no modo desconectado." +- + #~ msgid "Cannot rename GroupWise folders in offline mode." + #~ msgstr "Impossível renomear pastas do GroupWise no modo desconectado." +- + #~ msgid "Groupwise server %s" + #~ msgstr "Servidor do GroupWise %s" +- + #~ msgid "e_book_open: cancelled" + #~ msgstr "e_book_open: cancelado" +- + #~ msgid "e_book_load_uri: no factories available for uri `%s'" + #~ msgstr "e_book_load_uri: não existem fábricas disponíveis para a URI `%s'" +- + #~ msgid "File As" + #~ msgstr "Arquivar como" +- + #~ msgid "Repository is Offline" + #~ msgstr "O Repositório está Desconectado" +- + #~ msgid "" + #~ "Failed to GPG %s: %s\n" + #~ "\n" +@@ -5207,39 +4907,27 @@ msgstr "" + #~ "Falha ao executar GPG %s: %s\n" + #~ "\n" + #~ "%s" +- + #~ msgid "Failed to GPG %s: %s\n" + #~ msgstr "Falha ao executar GPG %s: %s\n" +- + #~ msgid "Address Book and Calendar" + #~ msgstr "Catálogo de endereços e agenda" +- + #~ msgid "Post Office Agent:" + #~ msgstr "Agente de correio:" +- + #~ msgid "Use Secure Connection (SSL)" + #~ msgstr "Usar conexão segura (SSL)" +- + #~ msgid "Checklist" + #~ msgstr "Lista de tarefas" +- + #~ msgid "%sEnter password for %s (user %s)" + #~ msgstr "%sEntre com a senha para %s (usuário %s)" +- + #~ msgid "Server rejected username" + #~ msgstr "O servidor rejeitou o nome do usuário" +- + #~ msgid "Failed to send username to server" + #~ msgstr "Falha ao enviar o nome do usuário ao servidor" +- + #~ msgid "Server rejected username/password" + #~ msgstr "O servidor rejeitou o nome do usuário/senha" +- + #~ msgid "Could not get group list from server." + #~ msgstr "Impossível obter lista de grupos do servidor." +- + #~ msgid "Unable to load grouplist file for %s: %s" + #~ msgstr "Impossível carregar arquivo de lista de grupos para %s: %s" +- + #~ msgid "Unable to save grouplist file for %s: %s" + #~ msgstr "Impossível salvar arquivo de lista de grupos para %s: %s" +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: ro.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: ro.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: ru.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: ru.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: rw.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: rw.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: sk.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: sk.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: sl.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: sl.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: sq.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: sq.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: sr.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: sr.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: sr@Latn.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: sr@Latn.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: sv.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: sv.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: th.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: th.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: tr.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: tr.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: uk.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: uk.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: vi.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: vi.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: wa.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: wa.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: xh.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: xh.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: zh_CN.gmo +diff -up /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/zh_CN.po po/zh_CN.po +--- /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/zh_CN.po 2006-01-26 09:40:39.000000000 +0100 ++++ po/zh_CN.po 2006-05-19 15:54:24.000000000 +0200 +@@ -10,38 +10,38 @@ msgid "" + msgstr "" + "Project-Id-Version: Evolution-data-server\n" + "Report-Msgid-Bugs-To: \n" +-"POT-Creation-Date: 2006-01-26 07:13+0100\n" +-"PO-Revision-Date: 2006-01-26 16:19+0800\n" +-"Last-Translator: Funda Wang \n" +-"Language-Team: zh_CN \n" ++"POT-Creation-Date: 2006-05-04 06:53+0000\n" ++"PO-Revision-Date: 2006-05-19 12:53\n" ++"Last-Translator: Novell Language \n" ++"Language-Team: Novell Language \n" + "MIME-Version: 1.0\n" + "Content-Type: text/plain; charset=UTF-8\n" + "Content-Transfer-Encoding: 8bit\n" + +-#: ../addressbook/backends/file/e-book-backend-file.c:536 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2213 ++#: ../addressbook/backends/file/e-book-backend-file.c:538 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2225 + #: ../addressbook/backends/vcf/e-book-backend-vcf.c:484 + msgid "Loading..." + msgstr "正在装入..." + +-#: ../addressbook/backends/file/e-book-backend-file.c:538 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2172 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2192 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2211 ++#: ../addressbook/backends/file/e-book-backend-file.c:540 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2184 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2204 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2223 + #: ../addressbook/backends/ldap/e-book-backend-ldap.c:4038 + #: ../addressbook/backends/vcf/e-book-backend-vcf.c:486 + msgid "Searching..." + msgstr "正在搜索..." + +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2496 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2593 + #: ../addressbook/backends/ldap/e-book-backend-ldap.c:4202 + #, c-format + msgid "Downloading contacts (%d)... " + msgstr "正在下载联系人(%d 位)..." + +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2645 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2812 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2848 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2746 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2927 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2957 + #, c-format + msgid "Updating contacts cache (%d)... " + msgstr "正在更新联系人缓存(%d)..." +@@ -96,7 +96,7 @@ msgstr "执行搜索错误" + #: ../addressbook/libebook/e-book.c:3393 + #, c-format + msgid "\"%s\" on book before \"%s\"" +-msgstr "“%2$s”前的“%1$s”" ++msgstr "\"%s\"前的\"%s\"" + + #: ../addressbook/libebook/e-book.c:270 ../addressbook/libebook/e-book.c:486 + #: ../addressbook/libebook/e-book.c:631 ../addressbook/libebook/e-book.c:724 +@@ -139,7 +139,7 @@ msgstr "%s:无法取消" + #: ../addressbook/libebook/e-book.c:2628 ../addressbook/libebook/e-book.c:2632 + #, c-format + msgid "\"%s\" on book after \"%s\"" +-msgstr "“%2$s”后的“%1$s”" ++msgstr "\"%s\"后的\"%s\"" + + #: ../addressbook/libebook/e-book.c:2698 + #, c-format +@@ -606,7 +606,7 @@ msgstr "生日" + #. Make sure we have all categories + #: ../addressbook/libebook/e-contact.c:242 + #: ../calendar/backends/contacts/e-cal-backend-contacts.c:460 +-#: ../libedataserver/e-categories.c:240 ++#: ../libedataserver/e-categories.c:246 + msgid "Anniversary" + msgstr "周年纪念日" + +@@ -634,7 +634,7 @@ msgid "Unnamed List" + msgstr "未命名的列表" + + #: ../calendar/backends/contacts/e-cal-backend-contacts.c:462 +-#: ../libedataserver/e-categories.c:241 ++#: ../libedataserver/e-categories.c:247 + msgid "Birthday" + msgstr "生日" + +@@ -648,61 +648,68 @@ msgstr "生日:%s" + msgid "Anniversary: %s" + msgstr "周年:%s" + +-#: ../calendar/backends/file/e-cal-backend-file.c:203 ++#: ../calendar/backends/file/e-cal-backend-file.c:204 + msgid "Can't save calendar data: Malformed URI." + msgstr "无法保存日历数据:URI 格式错误。" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise-utils.c:871 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1467 ++#: ../calendar/backends/file/e-cal-backend-file.c:209 ++#, ++msgid "Can't save calendar data: " ++msgstr "不能保存日历数据:" ++ ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise-utils.c:872 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1582 + msgid "Reply Requested: by " + msgstr "请求回复:由" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise-utils.c:876 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1472 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise-utils.c:877 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1587 + msgid "Reply Requested: When convenient" + msgstr "请求回复:方便时" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:191 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:193 + #, c-format + msgid "Loading %s items" + msgstr "装入 %s 项" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:718 +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:257 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:719 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:260 + msgid "Calendar" + msgstr "日历" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:774 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:775 + msgid "Invalid server URI" + msgstr "无效的服务器 URI" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:790 +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:799 +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:884 +-#: ../calendar/libecal/e-cal.c:5131 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:902 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:922 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:950 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:574 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:589 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:630 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1120 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:791 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:800 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:885 ++#: ../calendar/libecal/e-cal.c:5137 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:970 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:993 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1028 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:588 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:603 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:644 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:712 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:754 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1253 + #: ../camel/providers/groupwise/camel-groupwise-transport.c:178 + msgid "Authentication failed" + msgstr "认证失败" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:840 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:841 + msgid "Could not create thread for getting deltas" + msgstr "无法为获得差异创建线索" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:865 +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:1112 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:866 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:1113 + #: ../calendar/backends/http/e-cal-backend-http.c:520 + #: ../calendar/backends/weather/e-cal-backend-weather.c:452 + msgid "Could not create cache file" + msgstr "无法创建缓存文件" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:878 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:879 + msgid "Could not create thread for populating cache" + msgstr "无法创建增殖缓存创建线索" + +@@ -985,7 +992,7 @@ msgstr "17日" + + #: ../calendar/libecal/e-cal-recur.c:4043 + msgid "18th" +-msgstr "18八日" ++msgstr "18日" + + #: ../calendar/libecal/e-cal-recur.c:4044 + msgid "19th" +@@ -1057,96 +1064,96 @@ msgid "Undefined" + msgstr "未定义" + + #. FIXME: Try to get the parent uri so that we dont have to ask the password again +-#: ../calendar/libecal/e-cal.c:1705 ++#: ../calendar/libecal/e-cal.c:1707 + #, c-format + msgid "Enter password for %s to enable proxy for user %s" + msgstr "输入 %s 的密码,以便为用户 %s 启用代理服务器" + +-#: ../calendar/libecal/e-cal.c:1708 ../libedataserverui/e-book-auth-util.c:198 ++#: ../calendar/libecal/e-cal.c:1710 ../libedataserverui/e-book-auth-util.c:198 + #, c-format + msgid "Enter password for %s (user %s)" + msgstr "为 %s 输入密码 (用户 %s)" + +-#: ../calendar/libecal/e-cal.c:5103 ++#: ../calendar/libecal/e-cal.c:5109 + msgid "Invalid argument" + msgstr "无效参数" + +-#: ../calendar/libecal/e-cal.c:5105 ++#: ../calendar/libecal/e-cal.c:5111 + msgid "Backend is busy" + msgstr "后台繁忙" + +-#: ../calendar/libecal/e-cal.c:5107 ++#: ../calendar/libecal/e-cal.c:5113 + msgid "Repository is offline" + msgstr "仓库离线" + +-#: ../calendar/libecal/e-cal.c:5109 ++#: ../calendar/libecal/e-cal.c:5115 + msgid "No such calendar" + msgstr "没有这样的日历" + +-#: ../calendar/libecal/e-cal.c:5111 ../servers/groupwise/e-gw-connection.c:172 ++#: ../calendar/libecal/e-cal.c:5117 ../servers/groupwise/e-gw-connection.c:175 + msgid "Object not found" + msgstr "找不到对象" + +-#: ../calendar/libecal/e-cal.c:5113 ../servers/groupwise/e-gw-connection.c:166 ++#: ../calendar/libecal/e-cal.c:5119 ../servers/groupwise/e-gw-connection.c:169 + msgid "Invalid object" + msgstr "无效对象" + +-#: ../calendar/libecal/e-cal.c:5115 ++#: ../calendar/libecal/e-cal.c:5121 + msgid "URI not loaded" + msgstr "URI 未装入" + +-#: ../calendar/libecal/e-cal.c:5117 ++#: ../calendar/libecal/e-cal.c:5123 + msgid "URI already loaded" + msgstr "URI 已经载入" + +-#: ../calendar/libecal/e-cal.c:5119 ++#: ../calendar/libecal/e-cal.c:5125 + #: ../servers/exchange/storage/e-storage.c:572 + msgid "Permission denied" + msgstr "没有权限" + +-#: ../calendar/libecal/e-cal.c:5121 ../servers/groupwise/e-gw-connection.c:174 ++#: ../calendar/libecal/e-cal.c:5127 ../servers/groupwise/e-gw-connection.c:177 + msgid "Unknown User" + msgstr "未知用户" + +-#: ../calendar/libecal/e-cal.c:5123 ++#: ../calendar/libecal/e-cal.c:5129 + msgid "Object ID already exists" + msgstr "对象 ID 已经存在" + +-#: ../calendar/libecal/e-cal.c:5125 ++#: ../calendar/libecal/e-cal.c:5131 + msgid "Protocol not supported" + msgstr "不支持的协议" + +-#: ../calendar/libecal/e-cal.c:5127 ++#: ../calendar/libecal/e-cal.c:5133 + msgid "Operation has been cancelled" + msgstr "操作已取消" + +-#: ../calendar/libecal/e-cal.c:5129 ++#: ../calendar/libecal/e-cal.c:5135 + msgid "Could not cancel operation" + msgstr "无法取消操作" + +-#: ../calendar/libecal/e-cal.c:5133 ++#: ../calendar/libecal/e-cal.c:5139 + #: ../camel/providers/smtp/camel-smtp-transport.c:212 + msgid "Authentication required" + msgstr "必须认证" + +-#: ../calendar/libecal/e-cal.c:5135 ++#: ../calendar/libecal/e-cal.c:5141 + msgid "A CORBA exception has occurred" + msgstr "发生了 CORBA 异常" + +-#: ../calendar/libecal/e-cal.c:5137 ++#: ../calendar/libecal/e-cal.c:5143 + #: ../camel/providers/groupwise/camel-groupwise-transport.c:218 + #: ../camel/providers/imap/camel-imap-command.c:311 + #: ../camel/providers/imap/camel-imap-command.c:411 + #: ../camel/providers/imap4/camel-imap4-store.c:383 +-#: ../camel/providers/pop3/camel-pop3-store.c:533 +-#: ../camel/providers/pop3/camel-pop3-store.c:540 +-#: ../camel/providers/pop3/camel-pop3-store.c:546 ++#: ../camel/providers/pop3/camel-pop3-store.c:528 ++#: ../camel/providers/pop3/camel-pop3-store.c:535 ++#: ../camel/providers/pop3/camel-pop3-store.c:541 + #: ../servers/exchange/storage/e-storage.c:586 +-#: ../servers/groupwise/e-gw-connection.c:180 ++#: ../servers/groupwise/e-gw-connection.c:183 + msgid "Unknown error" + msgstr "未知的错误" + +-#: ../calendar/libecal/e-cal.c:5139 ++#: ../calendar/libecal/e-cal.c:5145 + #: ../servers/exchange/storage/e-storage.c:554 + msgid "No error" + msgstr "无错误" +@@ -1217,9 +1224,7 @@ msgstr "“%s”的第二个参数应该 + + #: ../calendar/libedata-cal/e-cal-backend-sexp.c:548 + #, c-format +-msgid "" +-"\"%s\" expects the first argument to be either \"any\", \"summary\", or " +-"\"description\", or \"location\"" ++msgid "\"%s\" expects the first argument to be either \"any\", \"summary\", or \"description\", or \"location\"" + msgstr "“%s”的第一个参数必须是“any”、“summary”、“description”或“location”之一" + + #: ../calendar/libedata-cal/e-cal-backend-sexp.c:671 +@@ -1229,9 +1234,7 @@ msgstr "“%s”至少需要一个参数 + + #: ../calendar/libedata-cal/e-cal-backend-sexp.c:685 + #, c-format +-msgid "" +-"\"%s\" expects all arguments to be strings or one and only one argument to " +-"be a boolean false (#f)" ++msgid "\"%s\" expects all arguments to be strings or one and only one argument to be a boolean false (#f)" + msgstr "“%s”的所有参数都应该为字符串或者它唯一的参数为布尔假 (#f)" + + #: ../camel/camel-cipher-context.c:102 +@@ -1285,25 +1288,13 @@ msgstr "无法删除缓冲条目:%s: + + #: ../camel/camel-disco-diary.c:197 + #, c-format +-msgid "" +-"Could not write log entry: %s\n" +-"Further operations on this server will not be replayed when you\n" +-"reconnect to the network." +-msgstr "" +-"无法写入日志条目:%s\n" +-"当您重新连接到网络时本服务器\n" +-"上进一步的操作不会重做。" ++msgid "Could not write log entry: %s\nFurther operations on this server will not be replayed when you\nreconnect to the network." ++msgstr "无法写入日志条目:%s\n当您重新连接到网络时本服务器\n上进一步的操作不会重做。" + + #: ../camel/camel-disco-diary.c:260 + #, c-format +-msgid "" +-"Could not open `%s':\n" +-"%s\n" +-"Changes made to this folder will not be resynchronized." +-msgstr "" +-"无法打开“%s”:\n" +-"%s\n" +-"对该文件夹的修改不会被重新同步。" ++msgid "Could not open `%s':\n%s\nChanges made to this folder will not be resynchronized." ++msgstr "无法打开“%s”:\n%s\n对该文件夹的修改不会被重新同步。" + + #: ../camel/camel-disco-diary.c:296 + msgid "Resynchronizing with server" +@@ -1323,8 +1314,7 @@ msgid "Preparing folder '%s' for offline + msgstr "准备脱机文件夹“%s”" + + #: ../camel/camel-disco-store.c:401 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1311 +-#: ../camel/providers/imap/camel-imap-store.c:2964 ++#: ../camel/providers/imap/camel-imap-store.c:2970 + msgid "You must be working online to complete this operation" + msgstr "您必须在线工作以便完成该操作" + +@@ -1421,21 +1411,13 @@ msgstr "执行过滤规则搜索错误 + + #: ../camel/camel-folder-search.c:357 ../camel/camel-folder-search.c:478 + #, c-format +-msgid "" +-"Cannot parse search expression: %s:\n" +-"%s" +-msgstr "" +-"无法解析搜索表达式:%s:\n" +-"%s" ++msgid "Cannot parse search expression: %s:\n%s" ++msgstr "无法解析搜索表达式:%s:\n%s" + + #: ../camel/camel-folder-search.c:367 ../camel/camel-folder-search.c:488 + #, c-format +-msgid "" +-"Error executing search expression: %s:\n" +-"%s" +-msgstr "" +-"执行搜索表达式错误:%s:\n" +-"%s" ++msgid "Error executing search expression: %s:\n%s" ++msgstr "执行搜索表达式错误:%s:\n%s" + + #: ../camel/camel-folder-search.c:674 ../camel/camel-folder-search.c:707 + msgid "(match-all) requires a single bool result" +@@ -1499,14 +1481,8 @@ msgstr "过滤新信件" + + #: ../camel/camel-gpg-context.c:753 + #, c-format +-msgid "" +-"Unexpected GnuPG status message encountered:\n" +-"\n" +-"%s" +-msgstr "" +-"遇到了意外的 GnuPG 状态消息:\n" +-"\n" +-"%s" ++msgid "Unexpected GnuPG status message encountered:\n\n%s" ++msgstr "遇到了意外的 GnuPG 状态消息:\n\n%s" + + #: ../camel/camel-gpg-context.c:767 + msgid "Failed to parse gpg userid hint." +@@ -1514,103 +1490,99 @@ msgstr "解析 gpg userid 提示失败 + + #: ../camel/camel-gpg-context.c:791 + msgid "Failed to parse gpg passphrase request." +-msgstr "解析 gpg 密码句请求失败。" ++msgstr "解析 gpg 口令短语请求失败。" + +-#: ../camel/camel-gpg-context.c:805 ++#: ../camel/camel-gpg-context.c:806 ../camel/camel-gpg-context.c:810 + #, c-format +-msgid "" +-"You need a passphrase to unlock the key for\n" +-"user: \"%s\"" +-msgstr "" +-"您需要一个密码句用来解锁以下用户:\n" +-"“%s”" ++msgid "You need a passphrase to unlock the key for\nuser: \"%s\"" ++msgstr "您需要一个口令短语用来解锁以下用户:\n“%s”" + +-#: ../camel/camel-gpg-context.c:822 ../camel/camel-gpg-context.c:1026 ++#: ../camel/camel-gpg-context.c:828 ../camel/camel-gpg-context.c:1032 + #: ../camel/providers/nntp/camel-nntp-store.c:1272 + msgid "Cancelled." + msgstr "已取消。" + +-#: ../camel/camel-gpg-context.c:840 ++#: ../camel/camel-gpg-context.c:846 + msgid "Failed to unlock secret key: 3 bad passphrases given." +-msgstr "解锁密钥失败:给出了 3 个错误的密码句。" ++msgstr "解锁密钥失败:给出了 3 个错误的口令短语。" + +-#: ../camel/camel-gpg-context.c:846 ++#: ../camel/camel-gpg-context.c:852 + #, c-format + msgid "Unexpected response from GnuPG: %s" + msgstr "来自 GnuPG 的意外应答:%s" + +-#: ../camel/camel-gpg-context.c:898 ++#: ../camel/camel-gpg-context.c:904 + msgid "Failed to encrypt: No valid recipients specified." + msgstr "加密失败:没有指定有效的收件人。" + + #. always called on an i/o error +-#: ../camel/camel-gpg-context.c:1164 ../camel/camel-gpg-context.c:1292 +-#: ../camel/camel-gpg-context.c:1776 ../camel/camel-gpg-context.c:1821 ++#: ../camel/camel-gpg-context.c:1170 ../camel/camel-gpg-context.c:1298 ++#: ../camel/camel-gpg-context.c:1782 ../camel/camel-gpg-context.c:1827 + #, c-format + msgid "Failed to execute gpg: %s" + msgstr "执行 gpg 失败:%s" + +-#: ../camel/camel-gpg-context.c:1260 ../camel/camel-smime-context.c:387 ++#: ../camel/camel-gpg-context.c:1266 ../camel/camel-smime-context.c:387 + #, c-format + msgid "Could not generate signing data: %s" + msgstr "无法生成签名数据:%s" + +-#: ../camel/camel-gpg-context.c:1307 ../camel/camel-gpg-context.c:1496 +-#: ../camel/camel-gpg-context.c:1579 ../camel/camel-gpg-context.c:1594 +-#: ../camel/camel-gpg-context.c:1698 ../camel/camel-gpg-context.c:1713 +-#: ../camel/camel-gpg-context.c:1792 ../camel/camel-gpg-context.c:1837 ++#: ../camel/camel-gpg-context.c:1313 ../camel/camel-gpg-context.c:1502 ++#: ../camel/camel-gpg-context.c:1585 ../camel/camel-gpg-context.c:1600 ++#: ../camel/camel-gpg-context.c:1704 ../camel/camel-gpg-context.c:1719 ++#: ../camel/camel-gpg-context.c:1798 ../camel/camel-gpg-context.c:1843 + msgid "Failed to execute gpg." + msgstr "执行 gpg 失败。" + +-#: ../camel/camel-gpg-context.c:1326 ++#: ../camel/camel-gpg-context.c:1332 + msgid "This is a digitally signed message part" + msgstr "这是信件的数字签名部分" + +-#: ../camel/camel-gpg-context.c:1414 ../camel/camel-gpg-context.c:1420 +-#: ../camel/camel-gpg-context.c:1426 ../camel/camel-gpg-context.c:1443 ++#: ../camel/camel-gpg-context.c:1420 ../camel/camel-gpg-context.c:1426 ++#: ../camel/camel-gpg-context.c:1432 ../camel/camel-gpg-context.c:1449 + #: ../camel/camel-smime-context.c:690 ../camel/camel-smime-context.c:701 + #: ../camel/camel-smime-context.c:708 + msgid "Cannot verify message signature: Incorrect message format" + msgstr "无法校验信件签名:信件格式不对" + +-#: ../camel/camel-gpg-context.c:1481 ++#: ../camel/camel-gpg-context.c:1487 + #, c-format + msgid "Cannot verify message signature: could not create temp file: %s" + msgstr "无法校验信件签名:无法创建临时文件:%s" + +-#: ../camel/camel-gpg-context.c:1562 ++#: ../camel/camel-gpg-context.c:1568 + #, c-format + msgid "Could not generate encrypting data: %s" + msgstr "无法生成加密数据:%s" + +-#: ../camel/camel-gpg-context.c:1612 ++#: ../camel/camel-gpg-context.c:1618 + msgid "This is a digitally encrypted message part" + msgstr "这是信件的数字加密部分" + +-#: ../camel/camel-gpg-context.c:1669 ++#: ../camel/camel-gpg-context.c:1675 + msgid "Failed to decrypt MIME part: protocol error" + msgstr "解密 MIME 部分失败:协议错误" + +-#: ../camel/camel-gpg-context.c:1680 ++#: ../camel/camel-gpg-context.c:1686 + msgid "Cannot decrypt message: Incorrect message format" + msgstr "无法解密信件:信件格式不对" + +-#: ../camel/camel-gpg-context.c:1734 ../camel/camel-smime-context.c:964 ++#: ../camel/camel-gpg-context.c:1740 ../camel/camel-smime-context.c:964 + msgid "Encrypted content" + msgstr "加密内容" + +-#: ../camel/camel-gpg-context.c:1753 ++#: ../camel/camel-gpg-context.c:1759 + msgid "Unable to parse message content" + msgstr "无法分析信件内容" + +-#: ../camel/camel-gpg-context.c:1777 ../camel/camel-gpg-context.c:1822 ++#: ../camel/camel-gpg-context.c:1783 ../camel/camel-gpg-context.c:1828 + #: ../camel/camel-tcp-stream-openssl.c:631 + #: ../camel/providers/imap4/camel-imap4-engine.c:1550 + #: ../camel/providers/imap4/camel-imap4-engine.c:1589 + #: ../camel/providers/imap4/camel-imap4-engine.c:1634 + #: ../camel/providers/imap4/camel-imap4-engine.c:1690 +-#: ../camel/providers/imap4/camel-imap4-store.c:886 +-#: ../camel/providers/imap4/camel-imap4-store.c:1559 ++#: ../camel/providers/imap4/camel-imap4-store.c:881 ++#: ../camel/providers/imap4/camel-imap4-store.c:1554 + #: ../camel/providers/imap4/camel-imap4-utils.c:575 + #: ../camel/providers/smtp/camel-smtp-transport.c:160 + #: ../camel/providers/smtp/camel-smtp-transport.c:215 +@@ -1715,40 +1687,40 @@ msgstr "复制邮件临时文件错误 + msgid "parse error" + msgstr "解析错误" + +-#: ../camel/camel-net-utils.c:495 ../camel/camel-net-utils.c:657 +-#: ../camel/camel-net-utils.c:788 +-#: ../camel/providers/pop3/camel-pop3-store.c:446 +-#: ../camel/providers/pop3/camel-pop3-store.c:527 ++#: ../camel/camel-net-utils.c:497 ../camel/camel-net-utils.c:659 ++#: ../camel/camel-net-utils.c:790 ++#: ../camel/providers/pop3/camel-pop3-store.c:441 ++#: ../camel/providers/pop3/camel-pop3-store.c:522 + msgid "Cancelled" + msgstr "已经取消" + +-#: ../camel/camel-net-utils.c:514 ++#: ../camel/camel-net-utils.c:516 + msgid "cannot create thread" + msgstr "无法创建线索" + +-#: ../camel/camel-net-utils.c:661 ++#: ../camel/camel-net-utils.c:663 + #, c-format + msgid "Resolving: %s" + msgstr "解析:%s" + +-#: ../camel/camel-net-utils.c:683 ++#: ../camel/camel-net-utils.c:685 + msgid "Host lookup failed" + msgstr "主机查阅失败" + +-#: ../camel/camel-net-utils.c:685 ++#: ../camel/camel-net-utils.c:687 + #, c-format + msgid "Host lookup failed: %s: %s" + msgstr "主机查阅失败:%s:%s" + +-#: ../camel/camel-net-utils.c:792 ++#: ../camel/camel-net-utils.c:794 + msgid "Resolving address" + msgstr "解析地址" + +-#: ../camel/camel-net-utils.c:812 ++#: ../camel/camel-net-utils.c:814 + msgid "Name lookup failed" + msgstr "名称查阅失败" + +-#: ../camel/camel-net-utils.c:815 ++#: ../camel/camel-net-utils.c:817 + #, c-format + msgid "Name lookup failed: %s" + msgstr "名称查阅失败:%s" +@@ -1805,39 +1777,25 @@ msgstr "认证失败。" + + #: ../camel/camel-sasl-anonymous.c:131 + #, c-format +-msgid "" +-"Invalid email address trace information:\n" +-"%s" +-msgstr "" +-"无效的电子邮件跟踪信息:\n" +-"%s" ++msgid "Invalid email address trace information:\n%s" ++msgstr "无效的电子邮件跟踪信息:\n%s" + + #: ../camel/camel-sasl-anonymous.c:143 + #, c-format +-msgid "" +-"Invalid opaque trace information:\n" +-"%s" +-msgstr "" +-"无效的诲涩跟踪信息:\n" +-"%s" ++msgid "Invalid opaque trace information:\n%s" ++msgstr "无效的诲涩跟踪信息:\n%s" + + #: ../camel/camel-sasl-anonymous.c:155 + #, c-format +-msgid "" +-"Invalid trace information:\n" +-"%s" +-msgstr "" +-"无效的跟踪信息:\n" +-"%s" ++msgid "Invalid trace information:\n%s" ++msgstr "无效的跟踪信息:\n%s" + + #: ../camel/camel-sasl-cram-md5.c:38 + msgid "CRAM-MD5" + msgstr "CRAM-MD5" + + #: ../camel/camel-sasl-cram-md5.c:40 +-msgid "" +-"This option will connect to the server using a secure CRAM-MD5 password, if " +-"the server supports it." ++msgid "This option will connect to the server using a secure CRAM-MD5 password, if the server supports it." + msgstr "如果服务器支持的话,该选项将用安全 CRAM-MD5 密码连接到服务器。" + + #: ../camel/camel-sasl-digest-md5.c:48 +@@ -1845,9 +1803,7 @@ msgid "DIGEST-MD5" + msgstr "DIGEST-MD5" + + #: ../camel/camel-sasl-digest-md5.c:50 +-msgid "" +-"This option will connect to the server using a secure DIGEST-MD5 password, " +-"if the server supports it." ++msgid "This option will connect to the server using a secure DIGEST-MD5 password, if the server supports it." + msgstr "如果服务器支持的话,该选项将用安全 DIGEST-MD5 密码连接到服务器。" + + #: ../camel/camel-sasl-digest-md5.c:818 +@@ -1883,9 +1839,7 @@ msgid "This option will connect to the s + msgstr "该选项将用 Kerberos 5 认证连接到服务器。" + + #: ../camel/camel-sasl-gssapi.c:157 +-msgid "" +-"The specified mechanism is not supported by the provided credential, or is " +-"unrecognized by the implementation." ++msgid "The specified mechanism is not supported by the provided credential, or is unrecognized by the implementation." + msgstr "所提供的证书不支持指定的机制,或者无法被实现所识别。" + + #: ../camel/camel-sasl-gssapi.c:162 +@@ -1893,28 +1847,19 @@ msgid "The provided target_name paramete + msgstr "提供的 target_name 参数格式不对。" + + #: ../camel/camel-sasl-gssapi.c:165 +-msgid "" +-"The provided target_name parameter contained an invalid or unsupported type " +-"of name." ++msgid "The provided target_name parameter contained an invalid or unsupported type of name." + msgstr "提供的 target_name 参数包含无效或不支持的名称类型。" + + #: ../camel/camel-sasl-gssapi.c:169 +-msgid "" +-"The input_token contains different channel bindings to those specified via " +-"the input_chan_bindings parameter." +-msgstr "" +-"input_token 包含的通道绑定与通过 input_chan_bindings 参数指定的通道不同。" ++msgid "The input_token contains different channel bindings to those specified via the input_chan_bindings parameter." ++msgstr "input_token 包含的通道绑定与通过 input_chan_bindings 参数指定的通道不同。" + + #: ../camel/camel-sasl-gssapi.c:174 +-msgid "" +-"The input_token contains an invalid signature, or a signature that could not " +-"be verified." ++msgid "The input_token contains an invalid signature, or a signature that could not be verified." + msgstr "input_token 包含无效的签名,或者无法验证签名。" + + #: ../camel/camel-sasl-gssapi.c:178 +-msgid "" +-"The supplied credentials were not valid for context initiation, or the " +-"credential handle did not reference any credentials." ++msgid "The supplied credentials were not valid for context initiation, or the credential handle did not reference any credentials." + msgstr "提供的证书由于上下文的原因无效,或者证书句柄没有引用证书。" + + #: ../camel/camel-sasl-gssapi.c:183 +@@ -1936,7 +1881,7 @@ msgstr "引用的证书已过期。" + #: ../camel/camel-sasl-gssapi.c:198 ../camel/camel-sasl-gssapi.c:246 + #: ../camel/camel-sasl-gssapi.c:282 ../camel/camel-sasl-gssapi.c:297 + #: ../camel/camel-sasl-kerberos4.c:229 +-#: ../camel/providers/imap/camel-imap-store.c:1285 ++#: ../camel/providers/imap/camel-imap-store.c:1280 + msgid "Bad authentication response from server." + msgstr "来自服务器的无效认证应答。" + +@@ -1954,12 +1899,8 @@ msgstr "该选项将用 Kerberos 4 认 + + #: ../camel/camel-sasl-kerberos4.c:172 + #, c-format +-msgid "" +-"Could not get Kerberos ticket:\n" +-"%s" +-msgstr "" +-"无法获取 Kerberos 标签:\n" +-"%s" ++msgid "Could not get Kerberos ticket:\n%s" ++msgstr "无法获取 Kerberos 标签:\n%s" + + #: ../camel/camel-sasl-login.c:34 + msgid "Login" +@@ -1978,9 +1919,7 @@ msgid "NTLM / SPA" + msgstr "NTLM / SPA" + + #: ../camel/camel-sasl-ntlm.c:34 +-msgid "" +-"This option will connect to a Windows-based server using NTLM / Secure " +-"Password Authentication." ++msgid "This option will connect to a Windows-based server using NTLM / Secure Password Authentication." + msgstr "该选项将使用 NTLM / Secure 口令认证连接到基于 Windows 的服务器。" + + #: ../camel/camel-sasl-plain.c:34 +@@ -2029,12 +1968,8 @@ msgstr "URL“%s”需要路径组件" + + #: ../camel/camel-session.c:292 + #, c-format +-msgid "" +-"Could not create directory %s:\n" +-"%s" +-msgstr "" +-"无法创建目录 %s:\n" +-"%s" ++msgid "Could not create directory %s:\n%s" ++msgstr "无法创建目录 %s:\n%s" + + #: ../camel/camel-smime-context.c:229 + #, c-format +@@ -2401,16 +2336,8 @@ msgstr "应用程序验证错误" + + #: ../camel/camel-tcp-stream-openssl.c:696 ../camel/camel-tcp-stream-ssl.c:886 + #, c-format +-msgid "" +-"Issuer: %s\n" +-"Subject: %s\n" +-"Fingerprint: %s\n" +-"Signature: %s" +-msgstr "" +-"提交者: %s\n" +-"主题: %s\n" +-"指纹: %s\n" +-"签名: %s" ++msgid "Issuer: %s\nSubject: %s\nFingerprint: %s\nSignature: %s" ++msgstr "提交者: %s\n主题: %s\n指纹: %s\n签名: %s" + + #: ../camel/camel-tcp-stream-openssl.c:702 ../camel/camel-tcp-stream-ssl.c:892 + msgid "GOOD" +@@ -2422,74 +2349,34 @@ msgstr "坏" + + #: ../camel/camel-tcp-stream-openssl.c:704 + #, c-format +-msgid "" +-"Bad certificate from %s:\n" +-"\n" +-"%s\n" +-"\n" +-"%s\n" +-"\n" +-"Do you wish to accept anyway?" +-msgstr "" +-"来自 %s 的错误证书:\n" +-"\n" +-"%s\n" +-"\n" +-"%s\n" +-"\n" +-"您仍然希望接受吗?" ++msgid "Bad certificate from %s:\n\n%s\n\n%s\n\nDo you wish to accept anyway?" ++msgstr "来自 %s 的错误证书:\n\n%s\n\n%s\n\n您仍然希望接受吗?" + + #. construct our user prompt + #: ../camel/camel-tcp-stream-ssl.c:896 + #, c-format +-msgid "" +-"SSL Certificate check for %s:\n" +-"\n" +-"%s\n" +-"\n" +-"Do you wish to accept?" +-msgstr "" +-"为 %s 检查 SSL 证书:\n" +-"\n" +-"%s\n" +-"\n" +-"您希望接受吗?" ++msgid "SSL Certificate check for %s:\n\n%s\n\nDo you wish to accept?" ++msgstr "为 %s 检查 SSL 证书:\n\n%s\n\n您希望接受吗?" + + #: ../camel/camel-tcp-stream-ssl.c:940 + #, c-format +-msgid "" +-"Certificate problem: %s\n" +-"Issuer: %s" +-msgstr "" +-"证书问题:%s\n" +-"发行者:%s" ++msgid "Certificate problem: %s\nIssuer: %s" ++msgstr "证书问题:%s\n发行者:%s" + + #: ../camel/camel-tcp-stream-ssl.c:992 + #, c-format +-msgid "" +-"Bad certificate domain: %s\n" +-"Issuer: %s" +-msgstr "" +-"无效的证书域名:%s\n" +-"发行者:%s" ++msgid "Bad certificate domain: %s\nIssuer: %s" ++msgstr "无效的证书域名:%s\n发行者:%s" + + #: ../camel/camel-tcp-stream-ssl.c:1010 + #, c-format +-msgid "" +-"Certificate expired: %s\n" +-"Issuer: %s" +-msgstr "" +-"证书过期:%s\n" +-"发行者:%s" ++msgid "Certificate expired: %s\nIssuer: %s" ++msgstr "证书过期:%s\n发行者:%s" + + #: ../camel/camel-tcp-stream-ssl.c:1027 + #, c-format +-msgid "" +-"Certificate revocation list expired: %s\n" +-"Issuer: %s" +-msgstr "" +-"证书撤销列表已过期:%s\n" +-"发行者:%s" ++msgid "Certificate revocation list expired: %s\nIssuer: %s" ++msgstr "证书撤销列表已过期:%s\n发行者:%s" + + #: ../camel/camel-url.c:293 + #, c-format +@@ -2504,7 +2391,7 @@ msgstr "存储“%s”错误:%s" + #: ../camel/camel-vee-folder.c:517 + #, c-format + msgid "No such message %s in %s" +-msgstr "在 %2$s 中没有信件 %1$s" ++msgstr "在 %s 中没有信件 %s" + + #: ../camel/camel-vee-folder.c:642 ../camel/camel-vee-folder.c:648 + msgid "Cannot copy or move messages into a Virtual Folder" +@@ -2532,17 +2419,13 @@ msgstr "无法将信件复制到回收 + msgid "Cannot copy messages to the Junk folder" + msgstr "无法将信件复制到垃圾邮件文件夹" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:116 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:112 + #: ../camel/providers/imap/camel-imap-folder.c:2063 + #, c-format +-msgid "" +-"Cannot get message: %s\n" +-" %s" +-msgstr "" +-"无法获取信件:%s\n" +-" %s" ++msgid "Cannot get message: %s\n %s" ++msgstr "无法获取信件:%s\n %s" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:116 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:112 + #: ../camel/providers/imap/camel-imap-folder.c:2063 + #: ../camel/providers/local/camel-maildir-folder.c:245 + #: ../camel/providers/local/camel-mbox-folder.c:350 +@@ -2550,7 +2433,7 @@ msgstr "" + msgid "No such message" + msgstr "没有该信件" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:128 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:124 + #: ../camel/providers/imap4/camel-imap4-folder.c:788 + #: ../camel/providers/nntp/camel-nntp-folder.c:155 + #: ../camel/providers/nntp/camel-nntp-folder.c:231 +@@ -2562,7 +2445,7 @@ msgstr "没有该信件" + msgid "User cancelled" + msgstr "用户已取消" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:135 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:131 + #: ../camel/providers/imap4/camel-imap4-folder.c:793 + #: ../camel/providers/nntp/camel-nntp-folder.c:146 + #: ../camel/providers/nntp/camel-nntp-folder.c:148 +@@ -2576,39 +2459,44 @@ msgstr "用户已取消" + msgid "Cannot get message %s: %s" + msgstr "无法获取信件 %s:%s" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:152 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:160 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:148 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:156 + #: ../camel/providers/imap4/camel-imap4-folder.c:811 + msgid "This message is not available in offline mode." + msgstr "该信件无法在脱机模式中使用。" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:171 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:178 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1430 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:167 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:174 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1545 + msgid "Could not get message" + msgstr "无法获得信件" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:707 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:740 + #: ../camel/providers/imap/camel-imap-folder.c:252 + #, c-format + msgid "Could not load summary for %s" + msgstr "无法为 %s 装入概要" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1037 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:618 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:966 ++msgid "Trash Folder Full. Please Empty." ++msgstr "回收站文件夹已满。请清空。" ++ ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1129 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:632 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:744 + #: ../camel/providers/imap/camel-imap-folder.c:2375 + #: ../camel/providers/imap/camel-imap-folder.c:2445 + #, c-format + msgid "Fetching summary information for new messages in %s" + msgstr "从 %s 中的新信件中获取概要信息" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1668 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1716 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1813 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1861 + #, c-format + msgid "Cannot append message to folder `%s': %s" + msgstr "无法将信件附加到文件夹“%s”:%s" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1704 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1849 + #, c-format + msgid "Cannot create message: %s" + msgstr "无法创建信件:%s" +@@ -2690,65 +2578,65 @@ msgid "Password" + msgstr "密码" + + #: ../camel/providers/groupwise/camel-groupwise-provider.c:104 +-msgid "" +-"This option will connect to the GroupWise server using a plaintext password." ++msgid "This option will connect to the GroupWise server using a plaintext password." + msgstr "该选项将使用纯文本密码连接到 GroupWise 服务器。" + + #: ../camel/providers/groupwise/camel-groupwise-store.c:103 + msgid "Host or user not available in url" + msgstr "URL 中的主机或用户不可用" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:198 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:200 + #, c-format + msgid "%sPlease enter the GroupWise password for %s@%s" + msgstr "%s请为 %s@%s 输入 GroupWise 密码" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:212 +-#: ../camel/providers/imap/camel-imap-store.c:1364 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:214 ++#: ../camel/providers/imap/camel-imap-store.c:1359 + msgid "You didn't enter a password." + msgstr "您没有输入密码。" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:224 +-msgid "Unable to authenticate to GroupWise server." +-msgstr "无法认证到 GroupWise 服务器。" ++#: ../camel/providers/groupwise/camel-groupwise-store.c:226 ++#, ++msgid "Unable to authenticate to GroupWise server. " ++msgstr "无法鉴定到 GroupWise 服务器。" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:298 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:304 + msgid "Some features may not work correctly with your current server version" + msgstr "某些特性可能无法与您目前的服务器版本共同工作" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:526 +-#: ../camel/providers/imap/camel-imap-store.c:1873 +-#: ../camel/providers/imap/camel-imap-store.c:2064 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:540 ++#: ../camel/providers/imap/camel-imap-store.c:1868 ++#: ../camel/providers/imap/camel-imap-store.c:2059 + #, c-format + msgid "No such folder %s" + msgstr "没有文件夹 %s" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1097 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1230 + msgid "Cannot create GroupWise folders in offline mode." + msgstr "无法在脱机模式下创建 GroupWise 文件夹。" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1111 +-#: ../camel/providers/imap/camel-imap-store.c:1948 +-#: ../camel/providers/imap/camel-imap-store.c:2317 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1244 ++#: ../camel/providers/imap/camel-imap-store.c:1943 ++#: ../camel/providers/imap/camel-imap-store.c:2312 + msgid "The parent folder is not allowed to contain subfolders" + msgstr "父文件夹不允许含有子文件夹" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1188 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1209 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1321 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1342 + #, c-format + msgid "Cannot rename Groupwise folder `%s' to `%s'" + msgstr "无法将 GroupWise 文件夹“%s”重命名为“%s”" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1241 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1374 + #: ../camel/providers/groupwise/camel-groupwise-transport.c:121 + #, c-format + msgid "GroupWise server %s" + msgstr "GroupWise 服务器 %s" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1243 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1376 + #, c-format + msgid "GroupWise service for %s on %s" +-msgstr "%2$s 为 %1$s 提供的 GroupWise 服务" ++msgstr "%s 为 %s 提供的 GroupWise 服务" + + #: ../camel/providers/groupwise/camel-groupwise-transport.c:123 + #, c-format +@@ -2760,13 +2648,8 @@ msgid "Sending Message" + msgstr "发送信件" + + #: ../camel/providers/groupwise/camel-groupwise-transport.c:216 +-msgid "" +-"You have exceeded this account's storage limit. Your messages are queued in " +-"your Outbox. Resend by pressing Send/Receive after deleting/archiving some " +-"of your mail.\n" +-msgstr "" +-"您已经达到了账户的存储限制。您的邮件正在发件箱中排队。请先删除/存档某些邮件之" +-"后再发送/接收。\n" ++msgid "You have exceeded this account's storage limit. Your messages are queued in your Outbox. Resend by pressing Send/Receive after deleting/archiving some of your mail.\n" ++msgstr "您已经达到了账户的存储限制。您的邮件正在发件箱中排队。请先删除/存档某些邮件之后再发送/接收。\n" + + #: ../camel/providers/groupwise/camel-groupwise-transport.c:218 + #: ../camel/providers/sendmail/camel-sendmail-transport.c:206 +@@ -2843,12 +2726,12 @@ msgstr "该选项将使用纯文本密 + #: ../camel/providers/imap/camel-imap-command.c:223 + #: ../camel/providers/imap/camel-imap-command.c:265 + #: ../camel/providers/imap/camel-imap-command.c:472 +-#: ../camel/providers/imap/camel-imap-store.c:3004 ++#: ../camel/providers/imap/camel-imap-store.c:3010 + msgid "Operation cancelled" + msgstr "操作已取消" + + #: ../camel/providers/imap/camel-imap-command.c:310 +-#: ../camel/providers/imap/camel-imap-store.c:3007 ++#: ../camel/providers/imap/camel-imap-store.c:3013 + #, c-format + msgid "Server unexpectedly disconnected: %s" + msgstr "服务器意外地中止了连接:%s" +@@ -2857,12 +2740,8 @@ msgstr "服务器意外地中止了连 + #. we might get a ']' from a BAD response since we +12, but who cares? + #: ../camel/providers/imap/camel-imap-command.c:331 + #, c-format +-msgid "" +-"Alert from IMAP server %s@%s:\n" +-"%s" +-msgstr "" +-"来自 IMAP 服务器 %s@%s 的提醒:\n" +-"%s" ++msgid "Alert from IMAP server %s@%s:\n%s" ++msgstr "来自 IMAP 服务器 %s@%s 的提醒:\n%s" + + #: ../camel/providers/imap/camel-imap-command.c:400 + #, c-format +@@ -2926,8 +2805,7 @@ msgstr "不完整的服务器响应: + + #: ../camel/providers/imap/camel-imap-folder.c:2574 + #, c-format +-msgid "" +-"Unexpected server response: Identical UIDs provided for messages %d and %d" ++msgid "Unexpected server response: Identical UIDs provided for messages %d and %d" + msgstr "意外的服务器响应:为第%d封信和第%d封信提供了同样的 UID" + + #: ../camel/providers/imap/camel-imap-folder.c:2755 +@@ -2995,7 +2873,7 @@ msgstr "IMAP 服务器 %s" + #: ../camel/providers/imap4/camel-imap4-store.c:217 + #, c-format + msgid "IMAP service for %s on %s" +-msgstr "%2$s 为 %1$s 提供的 IMAP 服务" ++msgstr "%s 为 %s 提供的 IMAP 服务" + + #: ../camel/providers/imap/camel-imap-store.c:579 + #: ../camel/providers/imap/camel-imap-store.c:594 +@@ -3031,7 +2909,7 @@ msgstr "SSL 不可用" + msgid "Connection cancelled" + msgstr "连接已取消" + +-#: ../camel/providers/imap/camel-imap-store.c:699 ++#: ../camel/providers/imap/camel-imap-store.c:702 + #: ../camel/providers/imap/camel-imap-store.c:721 + #: ../camel/providers/imap/camel-imap-store.c:727 + #: ../camel/providers/imap4/camel-imap4-store.c:369 +@@ -3041,7 +2919,7 @@ msgstr "连接已取消" + msgid "Failed to connect to IMAP server %s in secure mode: %s" + msgstr "以安全模式连接到 IMAP 服务器 %s 失败:%s" + +-#: ../camel/providers/imap/camel-imap-store.c:700 ++#: ../camel/providers/imap/camel-imap-store.c:703 + #: ../camel/providers/smtp/camel-smtp-transport.c:323 + msgid "STARTTLS not supported" + msgstr "不支持 STARTTLS" +@@ -3066,57 +2944,50 @@ msgid "Could not connect with command \" + msgstr "无法使用命令“%s”连接:%s" + + #. create a dummy "." parent inbox, use to scan, then put back at the top level +-#: ../camel/providers/imap/camel-imap-store.c:1057 +-#: ../camel/providers/imap/camel-imap-store.c:2413 ++#: ../camel/providers/imap/camel-imap-store.c:1052 ++#: ../camel/providers/imap/camel-imap-store.c:2408 + #: ../camel/providers/imap4/camel-imap4-store-summary.c:368 +-#: ../camel/providers/imap4/camel-imap4-store.c:1392 ++#: ../camel/providers/imap4/camel-imap4-store.c:1387 + #: ../camel/providers/local/camel-maildir-folder.c:75 + #: ../camel/providers/local/camel-maildir-store.c:217 + #: ../camel/providers/local/camel-maildir-store.c:289 + #: ../camel/providers/local/camel-maildir-store.c:511 + #: ../camel/providers/local/camel-maildir-store.c:524 + #: ../camel/providers/local/camel-spool-store.c:461 +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:261 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:264 + msgid "Inbox" + msgstr "收件箱" + +-#: ../camel/providers/imap/camel-imap-store.c:1317 ++#: ../camel/providers/imap/camel-imap-store.c:1312 + #, c-format + msgid "IMAP server %s does not support requested authentication type %s" + msgstr "IMAP 服务器 %s 不支持要求的验证类型 %s" + +-#: ../camel/providers/imap/camel-imap-store.c:1327 +-#: ../camel/providers/smtp/camel-smtp-transport.c:498 ++#: ../camel/providers/imap/camel-imap-store.c:1322 ++#: ../camel/providers/smtp/camel-smtp-transport.c:493 + #, c-format + msgid "No support for authentication type %s" + msgstr "不支持验证类型 %s" + +-#: ../camel/providers/imap/camel-imap-store.c:1350 ++#: ../camel/providers/imap/camel-imap-store.c:1345 + #: ../camel/providers/imapp/camel-imapp-store.c:364 + #, c-format + msgid "%sPlease enter the IMAP password for %s@%s" + msgstr "%s请为 %s@%s 输入 IMAP 密码" + +-#: ../camel/providers/imap/camel-imap-store.c:1393 ++#: ../camel/providers/imap/camel-imap-store.c:1388 + #, c-format +-msgid "" +-"Unable to authenticate to IMAP server.\n" +-"%s\n" +-"\n" +-msgstr "" +-"无法认证到 IMAP 服务器。\n" +-"%s\n" +-"\n" +- +-#: ../camel/providers/imap/camel-imap-store.c:1885 +-#: ../camel/providers/imap/camel-imap-store.c:2255 +-#: ../camel/providers/imap4/camel-imap4-store.c:1022 ++msgid "Unable to authenticate to IMAP server.\n%s\n\n" ++msgstr "无法认证到 IMAP 服务器。\n%s\n\n" ++ ++#: ../camel/providers/imap/camel-imap-store.c:1880 ++#: ../camel/providers/imap/camel-imap-store.c:2250 ++#: ../camel/providers/imap4/camel-imap4-store.c:1017 + #, c-format +-msgid "" +-"The folder name \"%s\" is invalid because it contains the character \"%c\"" ++msgid "The folder name \"%s\" is invalid because it contains the character \"%c\"" + msgstr "文件夹名“%s”无效,原因是其中含有字符“%c”" + +-#: ../camel/providers/imap/camel-imap-store.c:2002 ++#: ../camel/providers/imap/camel-imap-store.c:1997 + #: ../camel/providers/local/camel-maildir-store.c:190 + #: ../camel/providers/local/camel-mbox-store.c:202 + #: ../camel/providers/local/camel-mh-store.c:249 +@@ -3124,7 +2995,7 @@ msgstr "文件夹名“%s”无效,原 + msgid "Cannot create folder `%s': folder exists." + msgstr "无法创建文件夹:%s:文件夹已存在。" + +-#: ../camel/providers/imap/camel-imap-store.c:2266 ++#: ../camel/providers/imap/camel-imap-store.c:2261 + #, c-format + msgid "Unknown parent folder: %s" + msgstr "未知的父文件夹:%s" +@@ -3164,8 +3035,7 @@ msgid "IMAP4 server %s unexpectedly disc + msgstr "IMAP4 服务器 %s 意外断开连接:%s" + + #: ../camel/providers/imap4/camel-imap4-folder.c:86 +-msgid "" +-"Enable Mailing-List detection required for some filter and vFolder rules" ++msgid "Enable Mailing-List detection required for some filter and vFolder rules" + msgstr "启用某些过滤器和虚拟文件夹规则所需的邮件列表检测" + + #: ../camel/providers/imap4/camel-imap4-folder.c:399 +@@ -3196,12 +3066,12 @@ msgstr "无法销毁文件夹“%s”: + #: ../camel/providers/imap4/camel-imap4-folder.c:865 + #, c-format + msgid "Cannot get message %s from folder `%s': No such message" +-msgstr "无法从文件夹“%2$s”获取信件 %1$s:没有这样的信件" ++msgstr "无法从文件夹`%s'获取信件 %s:没有这样的信件" + + #: ../camel/providers/imap4/camel-imap4-folder.c:870 + #, c-format + msgid "Cannot get message %s from folder `%s': Bad command" +-msgstr "无法从文件夹“%2$s”获取信件 %1$s:命令无效" ++msgstr "无法从文件夹 `%s' 获取信件 %s:命令无效" + + #: ../camel/providers/imap4/camel-imap4-folder.c:914 + #, c-format +@@ -3247,123 +3117,121 @@ msgid "For reading and storing mail on I + msgstr "IMAPv4rev1 服务器上邮件的读写。" + + #: ../camel/providers/imap4/camel-imap4-provider.c:90 +-msgid "" +-"This option will connect to the IMAPv4rev1 server using a plaintext password." ++msgid "This option will connect to the IMAPv4rev1 server using a plaintext password." + msgstr "该选项将使用纯文本密码连接到 IMAPv4rev1 服务器。" + +-#: ../camel/providers/imap4/camel-imap4-store.c:486 ++#: ../camel/providers/imap4/camel-imap4-store.c:481 + #, c-format +-msgid "" +-"Cannot authenticate to IMAP server %s using the %s authentication mechanism" +-msgstr "无法使用 %2$s 身份验证算法对 IMAP 服务器 %1$s 进行身份验证" ++msgid "Cannot authenticate to IMAP server %s using the %s authentication mechanism" ++msgstr "无法使用 %s 身份验证算法对 IMAP 服务器 %s 进行身份验证" + +-#: ../camel/providers/imap4/camel-imap4-store.c:535 ++#: ../camel/providers/imap4/camel-imap4-store.c:530 + #, c-format + msgid "%sPlease enter the IMAP password for %s on host %s" + msgstr "%s请输入 %s@%s 的 IMAP 密码" + +-#: ../camel/providers/imap4/camel-imap4-store.c:602 ++#: ../camel/providers/imap4/camel-imap4-store.c:597 + #, c-format + msgid "Cannot authenticate to IMAP server %s using %s" +-msgstr "无法使用 %2$s 认证到 IMAP 服务器 %1$s" ++msgstr "无法使用 %s 认证到 IMAP 服务器 %s" + +-#: ../camel/providers/imap4/camel-imap4-store.c:764 +-#: ../camel/providers/imap4/camel-imap4-store.c:1032 ++#: ../camel/providers/imap4/camel-imap4-store.c:759 ++#: ../camel/providers/imap4/camel-imap4-store.c:1027 + msgid "Cannot create IMAP folders in offline mode." + msgstr "无法在脱机模式下创建 IMAP 文件夹。" + +-#: ../camel/providers/imap4/camel-imap4-store.c:803 ++#: ../camel/providers/imap4/camel-imap4-store.c:798 + #, c-format + msgid "Cannot get folder `%s' on IMAP server %s: Unknown" +-msgstr "无法获取 IMAP 服务器 %2$s 上的文件夹 %1$s:未知" ++msgstr "无法获取 IMAP 服务器 %s 上的文件夹 %s:未知" + +-#: ../camel/providers/imap4/camel-imap4-store.c:884 ++#: ../camel/providers/imap4/camel-imap4-store.c:879 + #, c-format + msgid "Cannot get LIST information for `%s' on IMAP server %s: %s" +-msgstr "无法在 IMAP 服务器 %2$s 上为“%1$s”获得 LIST 信息:%3$s" ++msgstr "无法在 IMAP 服务器 %s 上为`%s'获得 LIST 信息:%s" + +-#: ../camel/providers/imap4/camel-imap4-store.c:886 +-#: ../camel/providers/imap4/camel-imap4-store.c:1559 ++#: ../camel/providers/imap4/camel-imap4-store.c:881 ++#: ../camel/providers/imap4/camel-imap4-store.c:1554 + msgid "Bad command" + msgstr "无效命令" + +-#: ../camel/providers/imap4/camel-imap4-store.c:965 ++#: ../camel/providers/imap4/camel-imap4-store.c:960 + #, c-format + msgid "Cannot create folder `%s': Invalid mailbox name" + msgstr "无法创建文件夹“%s”:无效的邮箱名" + +-#: ../camel/providers/imap4/camel-imap4-store.c:970 ++#: ../camel/providers/imap4/camel-imap4-store.c:965 + #, c-format + msgid "Cannot create folder `%s': Bad command" + msgstr "无法创建文件夹“%s”:无效的命令" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1076 ++#: ../camel/providers/imap4/camel-imap4-store.c:1071 + #, c-format + msgid "Cannot delete folder `%s': Special folder" + msgstr "无法删除文件夹“%s”:特殊文件夹" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1083 ++#: ../camel/providers/imap4/camel-imap4-store.c:1078 + msgid "Cannot delete IMAP folders in offline mode." + msgstr "无法在脱机模式下删除 IMAP 文件夹。" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1142 ++#: ../camel/providers/imap4/camel-imap4-store.c:1137 + #, c-format + msgid "Cannot delete folder `%s': Invalid mailbox name" + msgstr "无法删除文件夹“%s”:无效的邮箱名" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1147 ++#: ../camel/providers/imap4/camel-imap4-store.c:1142 + #, c-format + msgid "Cannot delete folder `%s': Bad command" + msgstr "无法删除文件夹“%s”:无效的命令" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1167 ++#: ../camel/providers/imap4/camel-imap4-store.c:1162 + #, c-format + msgid "Cannot rename folder `%s' to `%s': Special folder" + msgstr "无法将文件夹“%s”重命名为“%s”:特殊文件夹" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1174 ++#: ../camel/providers/imap4/camel-imap4-store.c:1169 + msgid "Cannot rename IMAP folders in offline mode." + msgstr "无法在脱机模式下重命名 IMAP 文件夹。" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1205 ++#: ../camel/providers/imap4/camel-imap4-store.c:1200 + #, c-format + msgid "Cannot rename folder `%s' to `%s': Invalid mailbox name" + msgstr "无法将文件夹“%s”重命名为“%s”:无效的邮箱名" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1210 ++#: ../camel/providers/imap4/camel-imap4-store.c:1205 + #, c-format + msgid "Cannot rename folder `%s' to `%s': Bad command" + msgstr "无法将文件夹“%s”重命名为“%s”:无效的命令" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1557 ++#: ../camel/providers/imap4/camel-imap4-store.c:1552 + #, c-format + msgid "Cannot get %s information for pattern `%s' on IMAP server %s: %s" +-msgstr "无法在 IMAP 服务器 %3$s 上为模式“%2$s”获取 %1$s 信息:%4$s" ++msgstr "无法在 IMAP 服务器 %s 上为模式`%s'获取 %s 信息:%s " + +-#: ../camel/providers/imap4/camel-imap4-store.c:1597 ++#: ../camel/providers/imap4/camel-imap4-store.c:1592 + msgid "Cannot subscribe to IMAP folders in offline mode." + msgstr "无法在脱机模式下订阅 IMAP 文件夹。" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1642 ++#: ../camel/providers/imap4/camel-imap4-store.c:1637 + #, c-format + msgid "Cannot subscribe to folder `%s': Invalid mailbox name" + msgstr "无法订阅文件夹“%s”:无效的邮箱名" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1647 ++#: ../camel/providers/imap4/camel-imap4-store.c:1642 + #, c-format + msgid "Cannot subscribe to folder `%s': Bad command" + msgstr "无法订阅文件夹“%s”:无效的命令" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1669 ++#: ../camel/providers/imap4/camel-imap4-store.c:1664 + msgid "Cannot unsubscribe from IMAP folders in offline mode." + msgstr "无法在脱机模式下退订 IMAP 文件夹。" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1714 ++#: ../camel/providers/imap4/camel-imap4-store.c:1709 + #, c-format + msgid "Cannot unsubscribe from folder `%s': Invalid mailbox name" + msgstr "无法退订文件夹“%s”:无效的邮箱名" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1719 ++#: ../camel/providers/imap4/camel-imap4-store.c:1714 + #, c-format + msgid "Cannot unsubscribe from folder `%s': Bad command" + msgstr "无法退订文件夹“%s”:无效的命令" +@@ -3400,16 +3268,8 @@ msgid "IMAP+" + msgstr "IMAP+" + + #: ../camel/providers/imapp/camel-imapp-provider.c:50 +-msgid "" +-"Experimental IMAP 4(.1) client\n" +-"This is untested and unsupported code, you want to use plain imap instead.\n" +-"\n" +-" !!! DO NOT USE THIS FOR PRODUCTION EMAIL !!!\n" +-msgstr "" +-"试验性 IMAP 4(.1) 客户端\n" +-"此功能是未测试的代码,不被支持,您应该换用纯 IMAP。\n" +-"\n" +-" !!! 不要对重要邮件使用此功能 !!!\n" ++msgid "Experimental IMAP 4(.1) client\nThis is untested and unsupported code, you want to use plain imap instead.\n\n !!! DO NOT USE THIS FOR PRODUCTION EMAIL !!!\n" ++msgstr "试验性 IMAP 4(.1) 客户端\n此功能是未测试的代码,不被支持,您应该换用纯 IMAP。\n\n !!! 不要对重要邮件使用此功能 !!!\n" + + #: ../camel/providers/imapp/camel-imapp-store.c:251 + #, c-format +@@ -3461,12 +3321,8 @@ msgid "Local delivery" + msgstr "本地发送" + + #: ../camel/providers/local/camel-local-provider.c:73 +-msgid "" +-"For retrieving (moving) local mail from standard mbox-formatted spools into " +-"folders managed by Evolution." +-msgstr "" +-"对于将本地邮件从标准 mbox 格式脱机文件夹获取(移动)到由 Evolution 管理的文件" +-"夹。" ++msgid "For retrieving (moving) local mail from standard mbox-formatted spools into folders managed by Evolution." ++msgstr "对于将本地邮件从标准 mbox 格式脱机文件夹获取(移动)到由 Evolution 管理的文件夹。" + + #: ../camel/providers/local/camel-local-provider.c:87 + #: ../camel/providers/local/camel-local-provider.c:106 +@@ -3490,12 +3346,8 @@ msgid "Standard Unix mbox spool or direc + msgstr "标准 Unix mbox 脱机或目录" + + #: ../camel/providers/local/camel-local-provider.c:115 +-msgid "" +-"For reading and storing local mail in external standard mbox spool files.\n" +-"May also be used to read a tree of Elm, Pine, or Mutt style folders." +-msgstr "" +-"对于读取和存储外部标准 mbox 脱机文件中的本地邮件。\n" +-"也可用于读取 Elm、Pine 或 Mutt 风格的文件夹树。" ++msgid "For reading and storing local mail in external standard mbox spool files.\nMay also be used to read a tree of Elm, Pine, or Mutt style folders." ++msgstr "对于读取和存储外部标准 mbox 脱机文件中的本地邮件。\n也可用于读取 Elm、Pine 或 Mutt 风格的文件夹树。" + + #: ../camel/providers/local/camel-local-store.c:156 + #: ../camel/providers/local/camel-local-store.c:267 +@@ -3583,12 +3435,8 @@ msgstr "无法将信件附加到邮件 + #: ../camel/providers/local/camel-mh-folder.c:213 + #: ../camel/providers/local/camel-mh-folder.c:222 + #, c-format +-msgid "" +-"Cannot get message: %s from folder %s\n" +-" %s" +-msgstr "" +-"无法从文件夹 %2$s 获取信件:%1$s\n" +-" %3$s" ++msgid "Cannot get message: %s from folder %s\n %s" ++msgstr "无法从文件夹 %s 获取信件:%s\n %s" + + #: ../camel/providers/local/camel-maildir-folder.c:268 + msgid "Invalid message contents" +@@ -3704,12 +3552,8 @@ msgstr "无法获取文件夹“%s”: + #: ../camel/providers/local/camel-mbox-store.c:237 + #: ../camel/providers/local/camel-mbox-store.c:260 + #, c-format +-msgid "" +-"Could not delete folder `%s':\n" +-"%s" +-msgstr "" +-"无法删除文件夹“%s”:\n" +-"%s" ++msgid "Could not delete folder `%s':\n%s" ++msgstr "无法删除文件夹“%s”:\n%s" + + #: ../camel/providers/local/camel-mbox-store.c:245 + #, c-format +@@ -3864,12 +3708,8 @@ msgstr "文件夹“%s/%s”不存在。 + + #: ../camel/providers/local/camel-spool-store.c:173 + #, c-format +-msgid "" +-"Could not open folder `%s':\n" +-"%s" +-msgstr "" +-"无法打开文件夹“%s”:\n" +-"%s" ++msgid "Could not open folder `%s':\n%s" ++msgstr "无法打开文件夹“%s”:\n%s" + + #: ../camel/providers/local/camel-spool-store.c:177 + #, c-format +@@ -3878,12 +3718,8 @@ msgstr "文件夹“%s”不存在。" + + #: ../camel/providers/local/camel-spool-store.c:182 + #, c-format +-msgid "" +-"Could not create folder `%s':\n" +-"%s" +-msgstr "" +-"无法创建文件夹“%s”:\n" +-"%s" ++msgid "Could not create folder `%s':\n%s" ++msgstr "无法创建文件夹“%s”:\n%s" + + #: ../camel/providers/local/camel-spool-store.c:190 + #, c-format +@@ -3928,12 +3764,8 @@ msgstr "无法同步脱机文件夹 %s + #: ../camel/providers/local/camel-spool-summary.c:263 + #: ../camel/providers/local/camel-spool-summary.c:276 + #, c-format +-msgid "" +-"Could not sync spool folder %s: %s\n" +-"Folder may be corrupt, copy saved in `%s'" +-msgstr "" +-"无法同步脱机文件夹 %s:%s\n" +-"文件夹可能已损坏,副本保存在“%s”" ++msgid "Could not sync spool folder %s: %s\nFolder may be corrupt, copy saved in `%s'" ++msgstr "无法同步脱机文件夹 %s:%s\n文件夹可能已损坏,副本保存在“%s”" + + #: ../camel/providers/nntp/camel-nntp-folder.c:175 + #: ../camel/providers/nntp/camel-nntp-folder.c:207 +@@ -3958,8 +3790,7 @@ msgid "You cannot copy messages from a N + msgstr "您无法从 NNTP 文件夹复制信件!" + + #: ../camel/providers/nntp/camel-nntp-provider.c:44 +-msgid "" +-"Show folders in short notation (e.g. c.o.linux rather than comp.os.linux)" ++msgid "Show folders in short notation (e.g. c.o.linux rather than comp.os.linux)" + msgstr "以短格式显示文件夹(如 c.o.linux 而不是 comp.os.linux)" + + #: ../camel/providers/nntp/camel-nntp-provider.c:46 +@@ -3975,9 +3806,7 @@ msgid "This is a provider for reading fr + msgstr "这是一个读取 USENET 新闻组和向 USENET 新闻组发布邮件的提供者。" + + #: ../camel/providers/nntp/camel-nntp-provider.c:74 +-msgid "" +-"This option will authenticate with the NNTP server using a plaintext " +-"password." ++msgid "This option will authenticate with the NNTP server using a plaintext password." + msgstr "该选项将以明文密码向进行 NNTP 服务器进行认证。" + + #: ../camel/providers/nntp/camel-nntp-store.c:219 +@@ -3997,34 +3826,16 @@ msgstr "USENET 新闻 %s" + + #: ../camel/providers/nntp/camel-nntp-store.c:798 + #, c-format +-msgid "" +-"Error retrieving newsgroups:\n" +-"\n" +-"%s" +-msgstr "" +-"收取新闻组出错:\n" +-"\n" +-"%s" ++msgid "Error retrieving newsgroups:\n\n%s" ++msgstr "收取新闻组出错:\n\n%s" + + #: ../camel/providers/nntp/camel-nntp-store.c:892 +-msgid "" +-"You cannot subscribe to this newsgroup:\n" +-"\n" +-"No such newsgroup. The selected item is a probably a parent folder." +-msgstr "" +-"您无法订阅此新闻组:\n" +-"\n" +-"没有这样的新闻组。选中项目可能是父文件夹。" ++msgid "You cannot subscribe to this newsgroup:\n\nNo such newsgroup. The selected item is a probably a parent folder." ++msgstr "您无法订阅此新闻组:\n\n没有这样的新闻组。选中项目可能是父文件夹。" + + #: ../camel/providers/nntp/camel-nntp-store.c:924 +-msgid "" +-"You cannot unsubscribe to this newsgroup:\n" +-"\n" +-"newsgroup does not exist!" +-msgstr "" +-"您无法订阅此新闻组:\n" +-"\n" +-"新闻组不存在!" ++msgid "You cannot unsubscribe to this newsgroup:\n\nnewsgroup does not exist!" ++msgstr "您无法订阅此新闻组:\n\n新闻组不存在!" + + #: ../camel/providers/nntp/camel-nntp-store.c:949 + msgid "You cannot create a folder in a News store: subscribe instead." +@@ -4142,28 +3953,19 @@ msgid "For connecting to and downloading + msgstr "关于连接到 POP 服务器和从 POP 服务器下载邮件。" + + #: ../camel/providers/pop3/camel-pop3-provider.c:74 +-msgid "" +-"This option will connect to the POP server using a plaintext password. This " +-"is the only option supported by many POP servers." +-msgstr "" +-"该选项使 Evolution 在连接到 POP 服务器时使用明文密码。这是许多 POP 服务器唯一" +-"支持的选项。" ++msgid "This option will connect to the POP server using a plaintext password. This is the only option supported by many POP servers." ++msgstr "该选项使 Evolution 在连接到 POP 服务器时使用明文密码。这是许多 POP 服务器唯一支持的选项。" + + #: ../camel/providers/pop3/camel-pop3-provider.c:84 +-msgid "" +-"This option will connect to the POP server using an encrypted password via " +-"the APOP protocol. This may not work for all users even on servers that " +-"claim to support it." +-msgstr "" +-"该选项使 Evolution 在连接到 POP 服务器时使用 APOP 协议。即使是声称支持这一功" +-"能的服务器,也不一定能使所有用户工作。" ++msgid "This option will connect to the POP server using an encrypted password via the APOP protocol. This may not work for all users even on servers that claim to support it." ++msgstr "该选项使 Evolution 在连接到 POP 服务器时使用 APOP 协议。即使是声称支持这一功能的服务器,也不一定能使所有用户工作。" + + #: ../camel/providers/pop3/camel-pop3-store.c:202 + #, c-format + msgid "Failed to read a valid greeting from POP server %s" + msgstr "从 POP 服务器 %s 读取欢迎词失败" + +-#: ../camel/providers/pop3/camel-pop3-store.c:216 ++#: ../camel/providers/pop3/camel-pop3-store.c:219 + #: ../camel/providers/pop3/camel-pop3-store.c:233 + #: ../camel/providers/pop3/camel-pop3-store.c:243 + #: ../camel/providers/pop3/camel-pop3-store.c:249 +@@ -4171,63 +3973,53 @@ msgstr "从 POP 服务器 %s 读取欢 + msgid "Failed to connect to POP server %s in secure mode: %s" + msgstr "以安全模式连接到 POP 服务器 %s 失败:%s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:217 ++#: ../camel/providers/pop3/camel-pop3-store.c:220 + msgid "STLS not supported" + msgstr "不支持 STLS" + +-#: ../camel/providers/pop3/camel-pop3-store.c:361 ++#: ../camel/providers/pop3/camel-pop3-store.c:356 + #, c-format + msgid "Could not connect to POP server %s" + msgstr "无法连接到 POP 服务器 %s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:402 +-#: ../camel/providers/pop3/camel-pop3-store.c:516 ++#: ../camel/providers/pop3/camel-pop3-store.c:397 ++#: ../camel/providers/pop3/camel-pop3-store.c:511 + #, c-format +-msgid "" +-"Unable to connect to POP server %s: No support for requested authentication " +-"mechanism." ++msgid "Unable to connect to POP server %s: No support for requested authentication mechanism." + msgstr "无法连接到 POP 服务器 %s:不支持请求认证机制。" + +-#: ../camel/providers/pop3/camel-pop3-store.c:418 ++#: ../camel/providers/pop3/camel-pop3-store.c:413 + #, c-format + msgid "SASL `%s' Login failed for POP server %s: %s" + msgstr "使用SASL“%s”登录 POP 服务器 %s 失败:%s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:430 ++#: ../camel/providers/pop3/camel-pop3-store.c:425 + #, c-format + msgid "Cannot login to POP server %s: SASL Protocol error" + msgstr "无法登录到 POP 服务器 %s:SASL 协议错误" + +-#: ../camel/providers/pop3/camel-pop3-store.c:449 ++#: ../camel/providers/pop3/camel-pop3-store.c:444 + #, c-format + msgid "Failed to authenticate on POP server %s: %s" + msgstr "认证到 POP 服务器 %s 失败:%s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:475 ++#: ../camel/providers/pop3/camel-pop3-store.c:470 + #, c-format + msgid "%sPlease enter the POP password for %s on host %s" + msgstr "%s请输入 %s@%s 的 POP 密码" + +-#: ../camel/providers/pop3/camel-pop3-store.c:530 +-#: ../camel/providers/pop3/camel-pop3-store.c:543 ++#: ../camel/providers/pop3/camel-pop3-store.c:525 ++#: ../camel/providers/pop3/camel-pop3-store.c:538 + #, c-format +-msgid "" +-"Unable to connect to POP server %s.\n" +-"Error sending password: %s" +-msgstr "" +-"无法连接到 POP 服务器 %s。\n" +-"发送密码错误:%s" ++msgid "Unable to connect to POP server %s.\nError sending password: %s" ++msgstr "无法连接到 POP 服务器 %s。\n发送密码错误:%s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:537 ++#: ../camel/providers/pop3/camel-pop3-store.c:532 + #, c-format +-msgid "" +-"Unable to connect to POP server %s.\n" +-"Error sending username: %s" +-msgstr "" +-"无法连接到 POP 服务器 %s。\n" +-"发送用户名错误:%s" ++msgid "Unable to connect to POP server %s.\nError sending username: %s" ++msgstr "无法连接到 POP 服务器 %s。\n发送用户名错误:%s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:643 ++#: ../camel/providers/pop3/camel-pop3-store.c:638 + #, c-format + msgid "No such folder `%s'." + msgstr "没有文件夹“%s”。" +@@ -4237,9 +4029,7 @@ msgid "Sendmail" + msgstr "Sendmail" + + #: ../camel/providers/sendmail/camel-sendmail-provider.c:39 +-msgid "" +-"For delivering mail by passing it to the \"sendmail\" program on the local " +-"system." ++msgid "For delivering mail by passing it to the \"sendmail\" program on the local system." + msgstr "将邮件传递到本地系统的“sendmail”来发送邮件。" + + #: ../camel/providers/sendmail/camel-sendmail-transport.c:114 +@@ -4403,114 +4193,108 @@ msgstr "STARTTLS 命令失败:%s" + msgid "STARTTLS command failed" + msgstr "STARTTLS 命令失败" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:488 ++#: ../camel/providers/smtp/camel-smtp-transport.c:483 + #, c-format + msgid "SMTP server %s does not support requested authentication type %s." + msgstr "SMTP 服务器 %s 不支持请求的认证类型 %s。" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:526 ++#: ../camel/providers/smtp/camel-smtp-transport.c:521 + #, c-format + msgid "%sPlease enter the SMTP password for %s on host %s" + msgstr "%s请为 %s@%s 输入 SMTP 密码" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:545 ++#: ../camel/providers/smtp/camel-smtp-transport.c:540 + #, c-format +-msgid "" +-"Unable to authenticate to SMTP server.\n" +-"%s\n" +-"\n" +-msgstr "" +-"无法认证到 SMTP 服务器。\n" +-"%s\n" +-"\n" ++msgid "Unable to authenticate to SMTP server.\n%s\n\n" ++msgstr "无法认证到 SMTP 服务器。\n%s\n\n" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:669 ++#: ../camel/providers/smtp/camel-smtp-transport.c:664 + #, c-format + msgid "SMTP server %s" + msgstr "SMTP 服务器 %s" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:671 ++#: ../camel/providers/smtp/camel-smtp-transport.c:666 + #, c-format + msgid "SMTP mail delivery via %s" + msgstr "通过 %s 发送 SMTP 邮件" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:689 ++#: ../camel/providers/smtp/camel-smtp-transport.c:684 + msgid "Cannot send message: service not connected." + msgstr "无法发送信件:服务未连接。" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:695 ++#: ../camel/providers/smtp/camel-smtp-transport.c:690 + msgid "Cannot send message: sender address not valid." + msgstr "无法发送信件:发件人地址不合法。" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:699 ++#: ../camel/providers/smtp/camel-smtp-transport.c:694 + msgid "Sending message" + msgstr "发送信件" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:714 ++#: ../camel/providers/smtp/camel-smtp-transport.c:709 + msgid "Cannot send message: no recipients defined." + msgstr "无法发送信件:没有定义收件人。" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:725 ++#: ../camel/providers/smtp/camel-smtp-transport.c:720 + msgid "Cannot send message: one or more invalid recipients" + msgstr "无法发送信件:一个或多个非法收件人" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:894 ++#: ../camel/providers/smtp/camel-smtp-transport.c:889 + msgid "SMTP Greeting" + msgstr "SMTP 欢迎" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:920 ++#: ../camel/providers/smtp/camel-smtp-transport.c:915 + #, c-format + msgid "HELO command failed: %s" + msgstr "HELO 命令失败:%s" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:937 ++#: ../camel/providers/smtp/camel-smtp-transport.c:932 + msgid "HELO command failed" + msgstr "HELO 命令失败" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1003 ++#: ../camel/providers/smtp/camel-smtp-transport.c:998 + msgid "SMTP Authentication" + msgstr "SMTP 认证" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1009 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1004 + msgid "Error creating SASL authentication object." + msgstr "创建 SASL 认证对象错误。" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1026 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1037 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1021 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1032 + #, c-format + msgid "AUTH command failed: %s" + msgstr "AUTH 命令失败:%s" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1043 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1038 + msgid "AUTH command failed" + msgstr "AUTH 命令失败" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1105 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1100 + msgid "Bad authentication response from server.\n" + msgstr "来自服务器的错误认证应答。\n" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1130 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1125 + #, c-format + msgid "MAIL FROM command failed: %s: mail not sent" + msgstr "MAIL FROM 命令失败:%s:邮件未发送" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1147 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1142 + msgid "MAIL FROM command failed" + msgstr "MAIL FROM 命令失败" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1171 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1166 + #, c-format + msgid "RCPT TO command failed: %s: mail not sent" + msgstr "RCPT TO 命令失败:%s:邮件未发送" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1190 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1185 + #, c-format + msgid "RCPT TO <%s> failed" + msgstr "RCPT TO <%s> 失败" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1229 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1287 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1306 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1224 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1282 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1301 + #, c-format + msgid "DATA command failed: %s: mail not sent" + msgstr "DATA 命令失败:%s:邮件未发送" +@@ -4518,107 +4302,107 @@ msgstr "DATA 命令失败:%s:邮件 + #. we should have gotten instructions on how to use the DATA command: + #. * 354 Enter mail, end with "." on a line by itself + #. +-#: ../camel/providers/smtp/camel-smtp-transport.c:1246 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1322 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1241 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1317 + msgid "DATA command failed" + msgstr "DATP 命令失败" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1345 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1340 + #, c-format + msgid "RSET command failed: %s" + msgstr "RSET 命令失败:%s" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1361 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1356 + msgid "RSET command failed" + msgstr "RSET 命令失败" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1384 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1379 + #, c-format + msgid "QUIT command failed: %s" + msgstr "QUIT 命令失败:%s" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1398 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1393 + msgid "QUIT command failed" + msgstr "QUIT 命令失败" + +-#: ../libedataserver/e-categories.c:242 ++#: ../libedataserver/e-categories.c:248 + msgid "Business" + msgstr "商务" + +-#: ../libedataserver/e-categories.c:243 ++#: ../libedataserver/e-categories.c:249 + msgid "Competition" + msgstr "完成" + +-#: ../libedataserver/e-categories.c:244 ++#: ../libedataserver/e-categories.c:250 + msgid "Favorites" + msgstr "最爱" + +-#: ../libedataserver/e-categories.c:245 ++#: ../libedataserver/e-categories.c:251 + msgid "Gifts" + msgstr "礼物" + +-#: ../libedataserver/e-categories.c:246 ++#: ../libedataserver/e-categories.c:252 + msgid "Goals/Objectives" + msgstr "目标" + +-#: ../libedataserver/e-categories.c:247 ++#: ../libedataserver/e-categories.c:253 + msgid "Holiday" + msgstr "假日" + +-#: ../libedataserver/e-categories.c:248 ++#: ../libedataserver/e-categories.c:254 + msgid "Holiday Cards" + msgstr "假日卡" + + #. important people (e.g. new business partners) you should pay attention to/observe +-#: ../libedataserver/e-categories.c:250 ++#: ../libedataserver/e-categories.c:256 + msgid "Hot Contacts" + msgstr "亲密联系人" + +-#: ../libedataserver/e-categories.c:251 ++#: ../libedataserver/e-categories.c:257 + msgid "Ideas" + msgstr "想法" + +-#: ../libedataserver/e-categories.c:252 ++#: ../libedataserver/e-categories.c:258 + msgid "International" + msgstr "国际" + +-#: ../libedataserver/e-categories.c:253 ++#: ../libedataserver/e-categories.c:259 + msgid "Key Customer" + msgstr "关键客户" + +-#: ../libedataserver/e-categories.c:254 ++#: ../libedataserver/e-categories.c:260 + msgid "Miscellaneous" + msgstr "杂类" + +-#: ../libedataserver/e-categories.c:255 ++#: ../libedataserver/e-categories.c:261 + msgid "Personal" + msgstr "个人" + +-#: ../libedataserver/e-categories.c:256 ++#: ../libedataserver/e-categories.c:262 + msgid "Phone Calls" + msgstr "通电话" + +-#: ../libedataserver/e-categories.c:257 ++#: ../libedataserver/e-categories.c:263 + msgid "Status" + msgstr "状态" + +-#: ../libedataserver/e-categories.c:258 ++#: ../libedataserver/e-categories.c:264 + msgid "Strategies" + msgstr "策略" + +-#: ../libedataserver/e-categories.c:259 ++#: ../libedataserver/e-categories.c:265 + msgid "Suppliers" + msgstr "供应商" + +-#: ../libedataserver/e-categories.c:260 ++#: ../libedataserver/e-categories.c:266 + msgid "Time & Expenses" + msgstr "时间和花费" + +-#: ../libedataserver/e-categories.c:261 ++#: ../libedataserver/e-categories.c:267 + msgid "VIP" + msgstr "VIP" + +-#: ../libedataserver/e-categories.c:262 ++#: ../libedataserver/e-categories.c:268 + msgid "Waiting" + msgstr "等候" + +@@ -4626,15 +4410,15 @@ msgstr "等候" + #. in 12-hour format. + #. strftime format of a weekday, a date and a + #. time, in 12-hour format. +-#: ../libedataserver/e-time-utils.c:1319 ../libedataserver/e-time-utils.c:1562 ++#: ../libedataserver/e-time-utils.c:1319 ../libedataserver/e-time-utils.c:1566 + msgid "%a %m/%d/%Y %I:%M:%S %p" +-msgstr "%Y-%m-%d %A %H:%M:%S" ++msgstr "%a %m/%d/%Y %I:%M:%S %p" + + #. strptime format of a weekday, a date and a time, + #. in 24-hour format. + #. strftime format of a weekday, a date and a + #. time, in 24-hour format. +-#: ../libedataserver/e-time-utils.c:1324 ../libedataserver/e-time-utils.c:1553 ++#: ../libedataserver/e-time-utils.c:1324 ../libedataserver/e-time-utils.c:1557 + msgid "%a %m/%d/%Y %H:%M:%S" + msgstr "%Y-%m-%d %A %H:%M:%S" + +@@ -4642,15 +4426,15 @@ msgstr "%Y-%m-%d %A %H:%M:%S" + #. in 12-hour format, without seconds. + #. strftime format of a weekday, a date and a + #. time, in 12-hour format, without seconds. +-#: ../libedataserver/e-time-utils.c:1329 ../libedataserver/e-time-utils.c:1558 ++#: ../libedataserver/e-time-utils.c:1329 ../libedataserver/e-time-utils.c:1562 + msgid "%a %m/%d/%Y %I:%M %p" +-msgstr "%Y-%m-%d %A %H:%M" ++msgstr "%a %m/%d/%Y %I:%M %p" + + #. strptime format of a weekday, a date and a time, + #. in 24-hour format, without seconds. + #. strftime format of a weekday, a date and a + #. time, in 24-hour format, without seconds. +-#: ../libedataserver/e-time-utils.c:1334 ../libedataserver/e-time-utils.c:1549 ++#: ../libedataserver/e-time-utils.c:1334 ../libedataserver/e-time-utils.c:1553 + msgid "%a %m/%d/%Y %H:%M" + msgstr "%Y-%m-%d %A %H:%M" + +@@ -4658,7 +4442,7 @@ msgstr "%Y-%m-%d %A %H:%M" + #. in 12-hour format, without minutes or seconds. + #: ../libedataserver/e-time-utils.c:1339 + msgid "%a %m/%d/%Y %I %p" +-msgstr "%Y-%m-%d %A %H" ++msgstr "%a %m/%d/%Y %I %p" + + #. strptime format of a weekday, a date and a time, + #. in 24-hour format, without minutes or seconds. +@@ -4668,15 +4452,15 @@ msgstr "%Y-%m-%d %A %H" + + #. strptime format of a weekday and a date. + #. strftime format of a weekday and a date. +-#: ../libedataserver/e-time-utils.c:1347 ../libedataserver/e-time-utils.c:1440 +-#: ../libedataserver/e-time-utils.c:1544 ++#: ../libedataserver/e-time-utils.c:1347 ../libedataserver/e-time-utils.c:1443 ++#: ../libedataserver/e-time-utils.c:1548 + msgid "%a %m/%d/%Y" + msgstr "%Y-%m-%d %A" + + #. strptime format of a date and a time, in 12-hour format. + #: ../libedataserver/e-time-utils.c:1355 + msgid "%m/%d/%Y %I:%M:%S %p" +-msgstr "%Y-%m-%d %H:%M:%S" ++msgstr "%m/%d/%Y %I:%M:%S %p" + + #. strptime format of a date and a time, in 24-hour format. + #: ../libedataserver/e-time-utils.c:1359 +@@ -4687,7 +4471,7 @@ msgstr "%Y-%m-%d %H:%M:%S" + #. without seconds. + #: ../libedataserver/e-time-utils.c:1364 + msgid "%m/%d/%Y %I:%M %p" +-msgstr "%Y-%m-%d %H:%M" ++msgstr "%m/%d/%Y %I:%M %p" + + #. strptime format of a date and a time, in 24-hour format, + #. without seconds. +@@ -4699,7 +4483,7 @@ msgstr "%Y-%m-%d %H:%M" + #. without minutes or seconds. + #: ../libedataserver/e-time-utils.c:1374 + msgid "%m/%d/%Y %I %p" +-msgstr "%Y-%m-%d %H" ++msgstr "%m/%d/%Y %I %p" + + #. strptime format of a date and a time, in 24-hour format, + #. without minutes or seconds. +@@ -4709,19 +4493,19 @@ msgstr "%Y-%m-%d %H" + + #. strptime format of a weekday and a date. + #. This is the preferred date format for the locale. +-#: ../libedataserver/e-time-utils.c:1382 ../libedataserver/e-time-utils.c:1443 ++#: ../libedataserver/e-time-utils.c:1382 ../libedataserver/e-time-utils.c:1446 + msgid "%m/%d/%Y" + msgstr "%Y-%m-%d" + + #. strptime format for a time of day, in 12-hour format. + #. strftime format of a time in 12-hour format. +-#: ../libedataserver/e-time-utils.c:1488 ../libedataserver/e-time-utils.c:1607 ++#: ../libedataserver/e-time-utils.c:1492 ../libedataserver/e-time-utils.c:1611 + msgid "%I:%M:%S %p" +-msgstr "%H:%M:%S" ++msgstr "%I:%M:%S %p" + + #. strptime format for a time of day, in 24-hour format. + #. strftime format of a time in 24-hour format. +-#: ../libedataserver/e-time-utils.c:1492 ../libedataserver/e-time-utils.c:1599 ++#: ../libedataserver/e-time-utils.c:1496 ../libedataserver/e-time-utils.c:1603 + msgid "%H:%M:%S" + msgstr "%H:%M:%S" + +@@ -4729,21 +4513,21 @@ msgstr "%H:%M:%S" + #. in 12-hour format. + #. strftime format of a time in 12-hour format, + #. without seconds. +-#: ../libedataserver/e-time-utils.c:1497 ../libedataserver/e-time-utils.c:1604 ++#: ../libedataserver/e-time-utils.c:1501 ../libedataserver/e-time-utils.c:1608 + msgid "%I:%M %p" +-msgstr "%H:%M" ++msgstr "%I:%M %p" + + #. strptime format for time of day, without seconds 24-hour format. + #. strftime format of a time in 24-hour format, + #. without seconds. +-#: ../libedataserver/e-time-utils.c:1501 ../libedataserver/e-time-utils.c:1596 ++#: ../libedataserver/e-time-utils.c:1505 ../libedataserver/e-time-utils.c:1600 + msgid "%H:%M" + msgstr "%H:%M" + + #. strptime format for hour and AM/PM, 12-hour format. +-#: ../libedataserver/e-time-utils.c:1505 ++#: ../libedataserver/e-time-utils.c:1509 + msgid "%I %p" +-msgstr "%H" ++msgstr "%I %p" + + #: ../libedataserverui/e-book-auth-util.c:89 + msgid "Accessing LDAP Server anonymously" +@@ -4755,9 +4539,7 @@ msgstr "身份验证失败。\n" + + #: ../libedataserverui/e-categories-dialog.c:265 + #, c-format +-msgid "" +-"There is already a category '%s' in the configuration. Please use another " +-"name" ++msgid "There is already a category '%s' in the configuration. Please use another name" + msgstr "配置中已经有类别“%s”了。请使用另外一个名称" + + #: ../libedataserverui/e-categories-dialog.c:435 +@@ -4800,15 +4582,15 @@ msgstr "编辑(_E)" + msgid "categories" + msgstr "类别" + +-#: ../libedataserverui/e-name-selector-dialog.c:260 ++#: ../libedataserverui/e-name-selector-dialog.c:284 + msgid "Select Contacts from Address Book" + msgstr "从地址簿中选择联系人" + +-#: ../libedataserverui/e-name-selector-dialog.c:554 ++#: ../libedataserverui/e-name-selector-dialog.c:578 + msgid "_Add" + msgstr "添加(_A)" + +-#: ../libedataserverui/e-name-selector-dialog.c:579 ++#: ../libedataserverui/e-name-selector-dialog.c:603 + msgid "_Remove" + msgstr "删除(_R)" + +@@ -4841,7 +4623,7 @@ msgid "C_ategory:" + msgstr "类别(_A):" + + #: ../libedataserverui/e-name-selector-dialog.glade.h:8 +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:258 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:261 + msgid "Contacts" + msgstr "联系人" + +@@ -4854,13 +4636,13 @@ msgid "_Search:" + msgstr "搜索(_S):" + + #. To Translators: This would be similiar to "Expand MyList Inline" where MyList is a Contact List +-#: ../libedataserverui/e-name-selector-entry.c:1947 ++#: ../libedataserverui/e-name-selector-entry.c:1997 + #, c-format + msgid "E_xpand %s Inline" + msgstr "嵌入式展开 %s(_X)" + + #. Edit Contact item +-#: ../libedataserverui/e-name-selector-entry.c:1963 ++#: ../libedataserverui/e-name-selector-entry.c:2013 + #, c-format + msgid "_Edit %s" + msgstr "编辑 %s(_E)" +@@ -4870,11 +4652,21 @@ msgstr "编辑 %s(_E)" + msgid "_Delete %s" + msgstr "删除 %s(_D)" + +-#: ../libedataserverui/e-passwords.c:471 ++#: ../libedataserverui/e-passwords.c:472 ++#, ++msgid "_Remember this passphrase" ++msgstr "记住此口令短语(_R)" ++ ++#: ../libedataserverui/e-passwords.c:473 ++#, ++msgid "_Remember this passphrase for the remainder of this session" ++msgstr "对本会话的剩余部分记住此口令短语(_R)" ++ ++#: ../libedataserverui/e-passwords.c:476 + msgid "_Remember this password" + msgstr "记住此密码(_R)" + +-#: ../libedataserverui/e-passwords.c:472 ++#: ../libedataserverui/e-passwords.c:477 + msgid "_Remember this password for the remainder of this session" + msgstr "本次会话记住此密码(_R)" + +@@ -4887,14 +4679,14 @@ msgstr "选择目的地" + msgid "_Destination" + msgstr "目的(_D)" + +-#: ../servers/exchange/lib/e2k-autoconfig.c:1636 +-#: ../servers/exchange/storage/exchange-account.c:936 ++#: ../servers/exchange/lib/e2k-autoconfig.c:1647 ++#: ../servers/exchange/storage/exchange-account.c:932 + #, c-format + msgid "Enter password for %s" + msgstr "输入 %s 的密码" + +-#: ../servers/exchange/lib/e2k-autoconfig.c:1637 +-#: ../servers/exchange/storage/exchange-account.c:941 ++#: ../servers/exchange/lib/e2k-autoconfig.c:1648 ++#: ../servers/exchange/storage/exchange-account.c:937 + msgid "Enter password" + msgstr "输入密码" + +@@ -4940,14 +4732,6 @@ msgstr "无" + msgid "Custom" + msgstr "自定义" + +-#: ../servers/exchange/lib/e2k-user-dialog.c:144 +-msgid "Select User" +-msgstr "选择用户" +- +-#: ../servers/exchange/lib/e2k-user-dialog.c:182 +-msgid "Addressbook..." +-msgstr "地址簿..." +- + #: ../servers/exchange/storage/e-storage.c:556 + msgid "Generic error" + msgstr "常规错误" +@@ -5006,70 +4790,70 @@ msgstr "该信件无法在脱机模式 + + #. i18n: This is the title of an "other user's folders" + #. hierarchy. Eg, "John Doe's Folders". +-#: ../servers/exchange/storage/exchange-account.c:639 ++#: ../servers/exchange/storage/exchange-account.c:635 + #, c-format + msgid "%s's Folders" + msgstr "%s 的文件夹" + +-#: ../servers/exchange/storage/exchange-account.c:1242 ++#: ../servers/exchange/storage/exchange-account.c:1238 + msgid "Personal Folders" + msgstr "个人文件夹" + +-#: ../servers/exchange/storage/exchange-account.c:1256 ++#: ../servers/exchange/storage/exchange-account.c:1252 + msgid "Favorite Public Folders" + msgstr "收藏的公开文件夹" + + #. i18n: Outlookism +-#: ../servers/exchange/storage/exchange-account.c:1273 ++#: ../servers/exchange/storage/exchange-account.c:1269 + msgid "All Public Folders" + msgstr "全部公开文件夹" + + #. i18n: Outlookism +-#: ../servers/exchange/storage/exchange-account.c:1287 ++#: ../servers/exchange/storage/exchange-account.c:1283 + msgid "Global Address List" + msgstr "全局地址列表" + +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:259 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:262 + msgid "Deleted Items" + msgstr "已删项" + +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:260 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:263 + msgid "Drafts" + msgstr "草稿" + +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:262 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:265 + msgid "Journal" + msgstr "日记" + +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:263 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:266 + msgid "Notes" + msgstr "备忘" + +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:264 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:267 + msgid "Outbox" + msgstr "发件箱" + +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:265 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:268 + msgid "Sent Items" + msgstr "已发项" + +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:266 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:269 + msgid "Tasks" + msgstr "任务" + +-#: ../servers/groupwise/e-gw-connection.c:164 ++#: ../servers/groupwise/e-gw-connection.c:167 + msgid "Invalid connection" + msgstr "无效连接" + +-#: ../servers/groupwise/e-gw-connection.c:168 ++#: ../servers/groupwise/e-gw-connection.c:171 + msgid "Invalid response from server" + msgstr "服务器的响应无效" + +-#: ../servers/groupwise/e-gw-connection.c:170 ++#: ../servers/groupwise/e-gw-connection.c:173 + msgid "No response from the server" + msgstr "服务器的响应无效" + +-#: ../servers/groupwise/e-gw-connection.c:176 ++#: ../servers/groupwise/e-gw-connection.c:179 + msgid "Bad parameter" + msgstr "无效参数" + +@@ -5095,8 +4879,11 @@ msgstr "Evolution 数据服务器日志 + msgid "Multiple segmentation faults occurred; can't display error dialog\n" + msgstr "发生了多个段错误;无法显示错误对话框\n" + ++#~ msgid "Select User" ++#~ msgstr "选择用户" ++#~ msgid "Addressbook..." ++#~ msgstr "地址簿..." + #~ msgid "Failed to create pipe to '%s': %s" + #~ msgstr "创建到“%s”的管道失败:%s" +- + #~ msgid "Fetching summary information for new messages" + #~ msgstr "从新信件中获取概要信息" +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: zh_HK.gmo +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: zh_HK.po +Only in /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/: zh_TW.gmo +diff -up /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/zh_TW.po po/zh_TW.po +--- /root/sragavan/422/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/zh_TW.po 2006-01-21 11:04:39.000000000 +0100 ++++ po/zh_TW.po 2006-05-19 14:51:18.000000000 +0200 +@@ -8,10 +8,10 @@ msgid "" + msgstr "" + "Project-Id-Version: evolution-data-server 1.5.5\n" + "Report-Msgid-Bugs-To: \n" +-"POT-Creation-Date: 2006-01-13 22:36+0100\n" +-"PO-Revision-Date: 2006-01-21 07:20+0800\n" +-"Last-Translator: Chao-Hsiung Liao \n" +-"Language-Team: Chinese (Traditional) \n" ++"POT-Creation-Date: 2006-05-04 06:53+0000\n" ++"PO-Revision-Date: 2006-05-18 14:42\n" ++"Last-Translator: Novell Language \n" ++"Language-Team: Novell Language \n" + "MIME-Version: 1.0\n" + "Content-Type: text/plain; charset=UTF-8\n" + "Content-Transfer-Encoding: 8bit\n" +@@ -19,32 +19,32 @@ msgstr "" + + # mail/mail-send-recv.c:287 + # mail/mail-send-recv.c:333 +-#: ../addressbook/backends/file/e-book-backend-file.c:536 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2213 ++#: ../addressbook/backends/file/e-book-backend-file.c:538 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2225 + #: ../addressbook/backends/vcf/e-book-backend-vcf.c:484 + msgid "Loading..." + msgstr "載入中..." + + # addressbook/gui/search/e-addressbook-search-dialog.c:158 + # mail/mail-search.c:242 +-#: ../addressbook/backends/file/e-book-backend-file.c:538 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2172 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2192 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2211 ++#: ../addressbook/backends/file/e-book-backend-file.c:540 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2184 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2204 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2223 + #: ../addressbook/backends/ldap/e-book-backend-ldap.c:4038 + #: ../addressbook/backends/vcf/e-book-backend-vcf.c:486 + msgid "Searching..." + msgstr "搜尋..." + +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2496 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2593 + #: ../addressbook/backends/ldap/e-book-backend-ldap.c:4202 + #, c-format + msgid "Downloading contacts (%d)... " + msgstr "正在下載連絡人 (%d)..." + +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2645 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2812 +-#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2848 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2746 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2927 ++#: ../addressbook/backends/groupwise/e-book-backend-groupwise.c:2957 + #, c-format + msgid "Updating contacts cache (%d)... " + msgstr "正在更新連絡人快取 (%d)..." +@@ -93,77 +93,46 @@ msgstr "進行搜尋時發生錯誤" + #. * function names, e.g. + #. * "e_book_add_contact" on book before + #. * "e_book_open +-#: ../addressbook/libebook/e-book.c:257 +-#: ../addressbook/libebook/e-book.c:261 +-#: ../addressbook/libebook/e-book.c:473 +-#: ../addressbook/libebook/e-book.c:477 +-#: ../addressbook/libebook/e-book.c:618 +-#: ../addressbook/libebook/e-book.c:622 +-#: ../addressbook/libebook/e-book.c:711 +-#: ../addressbook/libebook/e-book.c:715 +-#: ../addressbook/libebook/e-book.c:1029 +-#: ../addressbook/libebook/e-book.c:1034 +-#: ../addressbook/libebook/e-book.c:1221 +-#: ../addressbook/libebook/e-book.c:1225 +-#: ../addressbook/libebook/e-book.c:1382 +-#: ../addressbook/libebook/e-book.c:1386 +-#: ../addressbook/libebook/e-book.c:1595 +-#: ../addressbook/libebook/e-book.c:1599 +-#: ../addressbook/libebook/e-book.c:1836 +-#: ../addressbook/libebook/e-book.c:1840 +-#: ../addressbook/libebook/e-book.c:2077 +-#: ../addressbook/libebook/e-book.c:2081 +-#: ../addressbook/libebook/e-book.c:2293 +-#: ../addressbook/libebook/e-book.c:2297 ++#: ../addressbook/libebook/e-book.c:257 ../addressbook/libebook/e-book.c:261 ++#: ../addressbook/libebook/e-book.c:473 ../addressbook/libebook/e-book.c:477 ++#: ../addressbook/libebook/e-book.c:618 ../addressbook/libebook/e-book.c:622 ++#: ../addressbook/libebook/e-book.c:711 ../addressbook/libebook/e-book.c:715 ++#: ../addressbook/libebook/e-book.c:1029 ../addressbook/libebook/e-book.c:1034 ++#: ../addressbook/libebook/e-book.c:1221 ../addressbook/libebook/e-book.c:1225 ++#: ../addressbook/libebook/e-book.c:1382 ../addressbook/libebook/e-book.c:1386 ++#: ../addressbook/libebook/e-book.c:1595 ../addressbook/libebook/e-book.c:1599 ++#: ../addressbook/libebook/e-book.c:1836 ../addressbook/libebook/e-book.c:1840 ++#: ../addressbook/libebook/e-book.c:2077 ../addressbook/libebook/e-book.c:2081 ++#: ../addressbook/libebook/e-book.c:2293 ../addressbook/libebook/e-book.c:2297 + #: ../addressbook/libebook/e-book.c:3393 + #, c-format + msgid "\"%s\" on book before \"%s\"" + msgstr "在通訊錄中「%s」在「%s」之前" + +-#: ../addressbook/libebook/e-book.c:270 +-#: ../addressbook/libebook/e-book.c:486 +-#: ../addressbook/libebook/e-book.c:631 +-#: ../addressbook/libebook/e-book.c:724 +-#: ../addressbook/libebook/e-book.c:1044 +-#: ../addressbook/libebook/e-book.c:1235 +-#: ../addressbook/libebook/e-book.c:1396 +-#: ../addressbook/libebook/e-book.c:1608 +-#: ../addressbook/libebook/e-book.c:1849 +-#: ../addressbook/libebook/e-book.c:2091 +-#: ../addressbook/libebook/e-book.c:2306 +-#: ../addressbook/libebook/e-book.c:2642 ++#: ../addressbook/libebook/e-book.c:270 ../addressbook/libebook/e-book.c:486 ++#: ../addressbook/libebook/e-book.c:631 ../addressbook/libebook/e-book.c:724 ++#: ../addressbook/libebook/e-book.c:1044 ../addressbook/libebook/e-book.c:1235 ++#: ../addressbook/libebook/e-book.c:1396 ../addressbook/libebook/e-book.c:1608 ++#: ../addressbook/libebook/e-book.c:1849 ../addressbook/libebook/e-book.c:2091 ++#: ../addressbook/libebook/e-book.c:2306 ../addressbook/libebook/e-book.c:2642 + #: ../addressbook/libebook/e-book.c:2848 + msgid "book busy" + msgstr "通訊錄忙碌中" + +-#: ../addressbook/libebook/e-book.c:303 +-#: ../addressbook/libebook/e-book.c:307 +-#: ../addressbook/libebook/e-book.c:519 +-#: ../addressbook/libebook/e-book.c:523 +-#: ../addressbook/libebook/e-book.c:660 +-#: ../addressbook/libebook/e-book.c:664 +-#: ../addressbook/libebook/e-book.c:753 +-#: ../addressbook/libebook/e-book.c:757 +-#: ../addressbook/libebook/e-book.c:1073 +-#: ../addressbook/libebook/e-book.c:1076 +-#: ../addressbook/libebook/e-book.c:1267 +-#: ../addressbook/libebook/e-book.c:1270 +-#: ../addressbook/libebook/e-book.c:1425 +-#: ../addressbook/libebook/e-book.c:1429 +-#: ../addressbook/libebook/e-book.c:1644 +-#: ../addressbook/libebook/e-book.c:1648 +-#: ../addressbook/libebook/e-book.c:1896 +-#: ../addressbook/libebook/e-book.c:1900 +-#: ../addressbook/libebook/e-book.c:2123 +-#: ../addressbook/libebook/e-book.c:2127 +-#: ../addressbook/libebook/e-book.c:2334 +-#: ../addressbook/libebook/e-book.c:2338 +-#: ../addressbook/libebook/e-book.c:2583 +-#: ../addressbook/libebook/e-book.c:2670 +-#: ../addressbook/libebook/e-book.c:2674 +-#: ../addressbook/libebook/e-book.c:2876 +-#: ../addressbook/libebook/e-book.c:2880 +-#: ../addressbook/libebook/e-book.c:3402 ++#: ../addressbook/libebook/e-book.c:303 ../addressbook/libebook/e-book.c:307 ++#: ../addressbook/libebook/e-book.c:519 ../addressbook/libebook/e-book.c:523 ++#: ../addressbook/libebook/e-book.c:660 ../addressbook/libebook/e-book.c:664 ++#: ../addressbook/libebook/e-book.c:753 ../addressbook/libebook/e-book.c:757 ++#: ../addressbook/libebook/e-book.c:1073 ../addressbook/libebook/e-book.c:1076 ++#: ../addressbook/libebook/e-book.c:1267 ../addressbook/libebook/e-book.c:1270 ++#: ../addressbook/libebook/e-book.c:1425 ../addressbook/libebook/e-book.c:1429 ++#: ../addressbook/libebook/e-book.c:1644 ../addressbook/libebook/e-book.c:1648 ++#: ../addressbook/libebook/e-book.c:1896 ../addressbook/libebook/e-book.c:1900 ++#: ../addressbook/libebook/e-book.c:2123 ../addressbook/libebook/e-book.c:2127 ++#: ../addressbook/libebook/e-book.c:2334 ../addressbook/libebook/e-book.c:2338 ++#: ../addressbook/libebook/e-book.c:2583 ../addressbook/libebook/e-book.c:2670 ++#: ../addressbook/libebook/e-book.c:2674 ../addressbook/libebook/e-book.c:2876 ++#: ../addressbook/libebook/e-book.c:2880 ../addressbook/libebook/e-book.c:3402 + #, c-format + msgid "CORBA exception making \"%s\" call" + msgstr "CORBA 例外造成「%s」呼叫" +@@ -179,8 +148,7 @@ msgstr "%s:目前沒有操作" + msgid "%s: couldn't cancel" + msgstr "%s:無法取消" + +-#: ../addressbook/libebook/e-book.c:2628 +-#: ../addressbook/libebook/e-book.c:2632 ++#: ../addressbook/libebook/e-book.c:2628 ../addressbook/libebook/e-book.c:2632 + #, c-format + msgid "\"%s\" on book after \"%s\"" + msgstr "在通訊錄中「%s」在「%s」之後" +@@ -201,8 +169,7 @@ msgstr "%s:無效的來源。" + + # camel/camel-session.c:295 + # camel/camel-session.c:364 +-#: ../addressbook/libebook/e-book.c:3267 +-#: ../addressbook/libebook/e-book.c:3331 ++#: ../addressbook/libebook/e-book.c:3267 ../addressbook/libebook/e-book.c:3331 + #, c-format + msgid "%s: no factories available for uri `%s'" + msgstr "%s:uri `%s' 沒有可用的製造廠" +@@ -738,7 +705,7 @@ msgstr "出生日期" + #. Make sure we have all categories + #: ../addressbook/libebook/e-contact.c:242 + #: ../calendar/backends/contacts/e-cal-backend-contacts.c:460 +-#: ../libedataserver/e-categories.c:240 ++#: ../libedataserver/e-categories.c:246 + msgid "Anniversary" + msgstr "紀念日" + +@@ -770,7 +737,7 @@ msgstr "未命名的清單" + + # addressbook/contact-editor/contact-editor.glade.h:20 + #: ../calendar/backends/contacts/e-cal-backend-contacts.c:462 +-#: ../libedataserver/e-categories.c:241 ++#: ../libedataserver/e-categories.c:247 + msgid "Birthday" + msgstr "生日" + +@@ -786,70 +753,77 @@ msgstr "生日:%s" + msgid "Anniversary: %s" + msgstr "紀念日:%s" + +-#: ../calendar/backends/file/e-cal-backend-file.c:203 ++#: ../calendar/backends/file/e-cal-backend-file.c:204 + msgid "Can't save calendar data: Malformed URI." + msgstr "無法儲存行事曆資料:URI 的格式不正確。" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise-utils.c:871 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1462 ++#: ../calendar/backends/file/e-cal-backend-file.c:209 ++#, ++msgid "Can't save calendar data: " ++msgstr "無法儲存行事曆資料:" ++ ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise-utils.c:872 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1582 + msgid "Reply Requested: by " + msgstr "要求回覆:依" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise-utils.c:876 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1467 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise-utils.c:877 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1587 + msgid "Reply Requested: When convenient" + msgstr "要求回覆:當有空時" + +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:191 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:193 + #, c-format + msgid "Loading %s items" + msgstr "載入 %s 個項目" + + # calendar/gui/dialogs/cal-prefs-dialog.glade.h:11 + # ui/evolution-calendar.xml.h:3 +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:715 +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:257 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:719 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:260 + msgid "Calendar" + msgstr "行事曆" + + # camel/providers/local/camel-maildir-folder.c:218 + # camel/providers/local/camel-mh-folder.c:203 +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:771 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:775 + msgid "Invalid server URI" + msgstr "無效的伺服器 URI" + + # camel/camel-sasl-anonymous.c:110 + # camel/camel-sasl-plain.c:87 +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:787 +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:796 +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:881 +-#: ../calendar/libecal/e-cal.c:5131 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:897 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:917 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:945 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:515 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:530 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:572 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1059 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:791 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:800 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:885 ++#: ../calendar/libecal/e-cal.c:5137 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:970 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:993 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1028 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:588 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:603 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:644 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:712 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:754 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1253 + #: ../camel/providers/groupwise/camel-groupwise-transport.c:178 + msgid "Authentication failed" + msgstr "驗證失敗" + + # camel/providers/imap/camel-imap-folder.c:172 +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:837 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:841 + msgid "Could not create thread for getting deltas" + msgstr "無法建立取得 deltas 的執行緒" + + # camel/providers/local/camel-mbox-store.c:110 +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:862 +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:1109 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:866 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:1113 + #: ../calendar/backends/http/e-cal-backend-http.c:520 + #: ../calendar/backends/weather/e-cal-backend-weather.c:452 + msgid "Could not create cache file" + msgstr "無法建立快取檔案" + + # camel/providers/imap/camel-imap-folder.c:172 +-#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:875 ++#: ../calendar/backends/groupwise/e-cal-backend-groupwise.c:879 + msgid "Could not create thread for populating cache" + msgstr "無法建立移植快取的執行緒" + +@@ -1238,13 +1212,11 @@ msgstr "31日" + # calendar/gui/dialogs/task-editor-dialog.glade.h:10 + # calendar/gui/e-calendar-table.c:345 + # mail/message-list.c:689 +-#: ../calendar/libecal/e-cal-util.c:681 +-#: ../calendar/libecal/e-cal-util.c:709 ++#: ../calendar/libecal/e-cal-util.c:681 ../calendar/libecal/e-cal-util.c:709 + msgid "High" + msgstr "高" + +-#: ../calendar/libecal/e-cal-util.c:683 +-#: ../calendar/libecal/e-cal-util.c:711 ++#: ../calendar/libecal/e-cal-util.c:683 ../calendar/libecal/e-cal-util.c:711 + msgid "Normal" + msgstr "正常" + +@@ -1253,8 +1225,7 @@ msgstr "正常" + # calendar/gui/dialogs/task-editor-dialog.glade.h:12 + # calendar/gui/e-calendar-table.c:347 + # mail/message-list.c:687 +-#: ../calendar/libecal/e-cal-util.c:685 +-#: ../calendar/libecal/e-cal-util.c:713 ++#: ../calendar/libecal/e-cal-util.c:685 ../calendar/libecal/e-cal-util.c:713 + msgid "Low" + msgstr "低" + +@@ -1268,80 +1239,76 @@ msgstr "未指定" + + # camel/camel-smime-context.c:194 + #. FIXME: Try to get the parent uri so that we dont have to ask the password again +-#: ../calendar/libecal/e-cal.c:1705 ++#: ../calendar/libecal/e-cal.c:1707 + #, c-format + msgid "Enter password for %s to enable proxy for user %s" + msgstr "輸入 %s 的密碼以便使用者 %s 能使用代理伺服器" + + # camel/camel-smime-context.c:194 +-#: ../calendar/libecal/e-cal.c:1708 +-#: ../libedataserverui/e-book-auth-util.c:192 ++#: ../calendar/libecal/e-cal.c:1710 ../libedataserverui/e-book-auth-util.c:198 + #, c-format + msgid "Enter password for %s (user %s)" + msgstr "輸入 %s (使用者 %s) 的密碼 " + + # camel/providers/local/camel-maildir-folder.c:218 + # camel/providers/local/camel-mh-folder.c:203 +-#: ../calendar/libecal/e-cal.c:5103 ++#: ../calendar/libecal/e-cal.c:5109 + msgid "Invalid argument" + msgstr "無效的參數" + +-#: ../calendar/libecal/e-cal.c:5105 ++#: ../calendar/libecal/e-cal.c:5111 + msgid "Backend is busy" + msgstr "後端忙碌中" + + # shell/e-shell-view-menu.c:602 + # shell/e-shell-view-menu.c:614 +-#: ../calendar/libecal/e-cal.c:5107 ++#: ../calendar/libecal/e-cal.c:5113 + msgid "Repository is offline" + msgstr "倉庫已離線" + + # camel/providers/imap/camel-imap-store.c:803 + # mail/mail-local.c:334 +-#: ../calendar/libecal/e-cal.c:5109 ++#: ../calendar/libecal/e-cal.c:5115 + msgid "No such calendar" + msgstr "無此行事曆" + +-#: ../calendar/libecal/e-cal.c:5111 +-#: ../servers/groupwise/e-gw-connection.c:172 ++#: ../calendar/libecal/e-cal.c:5117 ../servers/groupwise/e-gw-connection.c:175 + msgid "Object not found" + msgstr "未發現物件" + + # camel/providers/local/camel-maildir-folder.c:218 + # camel/providers/local/camel-mh-folder.c:203 +-#: ../calendar/libecal/e-cal.c:5113 +-#: ../servers/groupwise/e-gw-connection.c:166 ++#: ../calendar/libecal/e-cal.c:5119 ../servers/groupwise/e-gw-connection.c:169 + msgid "Invalid object" + msgstr "無效的物件" + + # addressbook/conduit/address-conduit.c:214 +-#: ../calendar/libecal/e-cal.c:5115 ++#: ../calendar/libecal/e-cal.c:5121 + msgid "URI not loaded" + msgstr "URI 未載入" + +-#: ../calendar/libecal/e-cal.c:5117 ++#: ../calendar/libecal/e-cal.c:5123 + msgid "URI already loaded" + msgstr "URI 已載入" + + # shell/e-storage.c:475 +-#: ../calendar/libecal/e-cal.c:5119 ++#: ../calendar/libecal/e-cal.c:5125 + #: ../servers/exchange/storage/e-storage.c:572 + msgid "Permission denied" + msgstr "權限不足" + + # camel/providers/imap/camel-imap-command.c:241 + # shell/e-storage.c:481 +-#: ../calendar/libecal/e-cal.c:5121 +-#: ../servers/groupwise/e-gw-connection.c:174 ++#: ../calendar/libecal/e-cal.c:5127 ../servers/groupwise/e-gw-connection.c:177 + msgid "Unknown User" + msgstr "不明的使用者" + +-#: ../calendar/libecal/e-cal.c:5123 ++#: ../calendar/libecal/e-cal.c:5129 + msgid "Object ID already exists" + msgstr "物件 ID 已存在" + + # shell/e-storage.c:477 +-#: ../calendar/libecal/e-cal.c:5125 ++#: ../calendar/libecal/e-cal.c:5131 + msgid "Protocol not supported" + msgstr "通訊協定不支援" + +@@ -1349,42 +1316,42 @@ msgstr "通訊協定不支援" + # camel/camel-remote-store.c:399 + # camel/camel-remote-store.c:470 + # camel/providers/imap/camel-imap-command.c:287 +-#: ../calendar/libecal/e-cal.c:5127 ++#: ../calendar/libecal/e-cal.c:5133 + msgid "Operation has been cancelled" + msgstr "操作已取消" + + # calendar/gui/e-itip-control.c:883 +-#: ../calendar/libecal/e-cal.c:5129 ++#: ../calendar/libecal/e-cal.c:5135 + msgid "Could not cancel operation" + msgstr "無法取消操作" + + # camel/providers/smtp/camel-smtp-transport.c:218 +-#: ../calendar/libecal/e-cal.c:5133 ++#: ../calendar/libecal/e-cal.c:5139 + #: ../camel/providers/smtp/camel-smtp-transport.c:212 + msgid "Authentication required" + msgstr "要求驗證" + +-#: ../calendar/libecal/e-cal.c:5135 ++#: ../calendar/libecal/e-cal.c:5141 + msgid "A CORBA exception has occurred" + msgstr "發生 CORBA 例外" + + # camel/providers/imap/camel-imap-command.c:241 + # shell/e-storage.c:481 +-#: ../calendar/libecal/e-cal.c:5137 +-#: ../camel/providers/groupwise/camel-groupwise-transport.c:217 ++#: ../calendar/libecal/e-cal.c:5143 ++#: ../camel/providers/groupwise/camel-groupwise-transport.c:218 + #: ../camel/providers/imap/camel-imap-command.c:311 + #: ../camel/providers/imap/camel-imap-command.c:411 + #: ../camel/providers/imap4/camel-imap4-store.c:383 +-#: ../camel/providers/pop3/camel-pop3-store.c:533 +-#: ../camel/providers/pop3/camel-pop3-store.c:540 +-#: ../camel/providers/pop3/camel-pop3-store.c:546 ++#: ../camel/providers/pop3/camel-pop3-store.c:528 ++#: ../camel/providers/pop3/camel-pop3-store.c:535 ++#: ../camel/providers/pop3/camel-pop3-store.c:541 + #: ../servers/exchange/storage/e-storage.c:586 +-#: ../servers/groupwise/e-gw-connection.c:180 ++#: ../servers/groupwise/e-gw-connection.c:183 + msgid "Unknown error" + msgstr "不明的錯誤" + + # shell/e-storage.c:459 +-#: ../calendar/libecal/e-cal.c:5139 ++#: ../calendar/libecal/e-cal.c:5145 + #: ../servers/exchange/storage/e-storage.c:554 + msgid "No error" + msgstr "沒有錯誤" +@@ -1533,37 +1500,23 @@ msgstr "無法移除快取項目: %s + + #: ../camel/camel-disco-diary.c:197 + #, c-format +-msgid "" +-"Could not write log entry: %s\n" +-"Further operations on this server will not be replayed when you\n" +-"reconnect to the network." +-msgstr "" +-"無法寫入紀錄: %s\n" +-"接下來在此伺服器上的操作,在您重新連線到網路時\n" +-"將不會重播。" ++msgid "Could not write log entry: %s\nFurther operations on this server will not be replayed when you\nreconnect to the network." ++msgstr "無法寫入紀錄: %s\n接下來在此伺服器上的操作,在您重新連線到網路時\n將不會重播。" + + #: ../camel/camel-disco-diary.c:260 + #, c-format +-msgid "" +-"Could not open `%s':\n" +-"%s\n" +-"Changes made to this folder will not be resynchronized." +-msgstr "" +-"無法開啟「%s」:\n" +-"%s\n" +-"這個資料夾內所做的變更將不會重新同步。" ++msgid "Could not open `%s':\n%s\nChanges made to this folder will not be resynchronized." ++msgstr "無法開啟「%s」:\n%s\n這個資料夾內所做的變更將不會重新同步。" + + #: ../camel/camel-disco-diary.c:296 + msgid "Resynchronizing with server" + msgstr "與伺服器重新同步" + +-#: ../camel/camel-disco-folder.c:42 +-#: ../camel/camel-offline-folder.c:50 ++#: ../camel/camel-disco-folder.c:42 ../camel/camel-offline-folder.c:50 + msgid "Copy folder content locally for offline operation" + msgstr "複製資料夾內容至本地用於離線作業" + +-#: ../camel/camel-disco-folder.c:104 +-#: ../camel/camel-offline-folder.c:109 ++#: ../camel/camel-disco-folder.c:104 ../camel/camel-offline-folder.c:109 + msgid "Downloading new messages for offline mode" + msgstr "正在下載新訊息用於離線模式" + +@@ -1576,8 +1529,7 @@ msgstr "準備資料夾「%s」供離線 + + # camel/camel-disco-store.c:271 + #: ../camel/camel-disco-store.c:401 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1250 +-#: ../camel/providers/imap/camel-imap-store.c:2964 ++#: ../camel/providers/imap/camel-imap-store.c:2970 + msgid "You must be working online to complete this operation" + msgstr "您必須於線上工作才能完成此操作" + +@@ -1600,21 +1552,18 @@ msgstr "無法讀取 %s 的歡迎辭: + + # camel/camel-filter-driver.c:534 + # camel/camel-filter-driver.c:543 +-#: ../camel/camel-filter-driver.c:978 +-#: ../camel/camel-filter-driver.c:987 ++#: ../camel/camel-filter-driver.c:978 ../camel/camel-filter-driver.c:987 + msgid "Syncing folders" + msgstr "同步處理資料夾" + + # camel/camel-filter-driver.c:866 +-#: ../camel/camel-filter-driver.c:1076 +-#: ../camel/camel-filter-driver.c:1454 ++#: ../camel/camel-filter-driver.c:1076 ../camel/camel-filter-driver.c:1454 + #, c-format + msgid "Error parsing filter: %s: %s" + msgstr "分析過濾器發生錯誤: %s: %s" + + # camel/camel-filter-driver.c:871 +-#: ../camel/camel-filter-driver.c:1085 +-#: ../camel/camel-filter-driver.c:1463 ++#: ../camel/camel-filter-driver.c:1085 ../camel/camel-filter-driver.c:1463 + #, c-format + msgid "Error executing filter: %s: %s" + msgstr "執行過濾器發生錯誤: %s: %s" +@@ -1642,23 +1591,20 @@ msgstr "不能開啟郵件" + + # camel/camel-filter-driver.c:670 + # camel/camel-filter-driver.c:679 +-#: ../camel/camel-filter-driver.c:1181 +-#: ../camel/camel-filter-driver.c:1193 ++#: ../camel/camel-filter-driver.c:1181 ../camel/camel-filter-driver.c:1193 + #, c-format + msgid "Failed on message %d" + msgstr "在第 %d 封郵件發生錯誤" + + # camel/camel-filter-driver.c:690 + # camel/camel-filter-driver.c:788 +-#: ../camel/camel-filter-driver.c:1207 +-#: ../camel/camel-filter-driver.c:1298 ++#: ../camel/camel-filter-driver.c:1207 ../camel/camel-filter-driver.c:1298 + msgid "Syncing folder" + msgstr "同步處理資料夾" + + # camel/camel-filter-driver.c:694 + # camel/camel-filter-driver.c:793 +-#: ../camel/camel-filter-driver.c:1211 +-#: ../camel/camel-filter-driver.c:1303 ++#: ../camel/camel-filter-driver.c:1211 ../camel/camel-filter-driver.c:1303 + msgid "Complete" + msgstr "完成" + +@@ -1703,38 +1649,26 @@ msgstr "建立子程序「%s」失敗: + # camel/camel-filter-search.c:439 + # camel/camel-filter-search.c:445 + #. A filter search is a search through your filters, ie. your filters is the corpus being searched thru. +-#: ../camel/camel-filter-search.c:699 +-#: ../camel/camel-filter-search.c:707 ++#: ../camel/camel-filter-search.c:699 ../camel/camel-filter-search.c:707 + #, c-format + msgid "Error executing filter search: %s: %s" + msgstr "執行過濾器搜尋發生錯誤: %s: %s" + + # camel/camel-folder-search.c:328 +-#: ../camel/camel-folder-search.c:357 +-#: ../camel/camel-folder-search.c:478 ++#: ../camel/camel-folder-search.c:357 ../camel/camel-folder-search.c:478 + #, c-format +-msgid "" +-"Cannot parse search expression: %s:\n" +-"%s" +-msgstr "" +-"不能分析搜尋詞句:%s:\n" +-"%s" ++msgid "Cannot parse search expression: %s:\n%s" ++msgstr "不能分析搜尋詞句:%s:\n%s" + + # camel/camel-folder-search.c:338 +-#: ../camel/camel-folder-search.c:367 +-#: ../camel/camel-folder-search.c:488 ++#: ../camel/camel-folder-search.c:367 ../camel/camel-folder-search.c:488 + #, c-format +-msgid "" +-"Error executing search expression: %s:\n" +-"%s" +-msgstr "" +-"執行搜尋詞句時發生錯誤:%s:\n" +-"%s" ++msgid "Error executing search expression: %s:\n%s" ++msgstr "執行搜尋詞句時發生錯誤:%s:\n%s" + + # camel/camel-folder-search.c:485 + # camel/camel-folder-search.c:513 +-#: ../camel/camel-folder-search.c:674 +-#: ../camel/camel-folder-search.c:707 ++#: ../camel/camel-folder-search.c:674 ../camel/camel-folder-search.c:707 + msgid "(match-all) requires a single bool result" + msgstr "(符合-全部) 需要單一布林值結果" + +@@ -1742,25 +1676,24 @@ msgstr "(符合-全部) 需要單一布 + msgid "(match-threads) not allowed inside match-all" + msgstr "(符合線串) 不允許放在 match-all 裏面" + +-#: ../camel/camel-folder-search.c:760 +-#: ../camel/camel-folder-search.c:764 ++#: ../camel/camel-folder-search.c:760 ../camel/camel-folder-search.c:764 + msgid "(match-threads) requires a match type string" + msgstr "(符合線串) 需要相符類型字串" + + # camel/camel-folder-search.c:485 + # camel/camel-folder-search.c:513 +-#: ../camel/camel-folder-search.c:786 ++#: ../camel/camel-folder-search.c:788 + msgid "(match-threads) expects an array result" + msgstr "(符合線串) 期望陣列結果" + + # camel/camel-folder-search.c:485 + # camel/camel-folder-search.c:513 +-#: ../camel/camel-folder-search.c:792 ++#: ../camel/camel-folder-search.c:794 + msgid "(match-threads) requires the folder set" + msgstr "(符合線串) 需要資料夾設定" + + # camel/camel-folder-search.c:559 +-#: ../camel/camel-folder-search.c:881 ++#: ../camel/camel-folder-search.c:886 + #, c-format + msgid "Performing query on unknown header: %s" + msgstr "在不明的檔頭內執行查詢:%s" +@@ -1803,18 +1736,12 @@ msgstr "了解非垃圾郵件" + # mail/mail-ops.c:1565 + #: ../camel/camel-folder.c:1684 + msgid "Filtering new message(s)" +-msgstr "取回 %d 封郵件" ++msgstr "取回封郵件" + + #: ../camel/camel-gpg-context.c:753 + #, c-format +-msgid "" +-"Unexpected GnuPG status message encountered:\n" +-"\n" +-"%s" +-msgstr "" +-"遇到非預期的 GnuPG 狀態訊息:\n" +-"\n" +-"%s" ++msgid "Unexpected GnuPG status message encountered:\n\n%s" ++msgstr "遇到非預期的 GnuPG 狀態訊息:\n\n%s" + + #: ../camel/camel-gpg-context.c:767 + msgid "Failed to parse gpg userid hint." +@@ -1824,127 +1751,110 @@ msgstr "解析 gpg userid 提示時失 + msgid "Failed to parse gpg passphrase request." + msgstr "解析 gpg 密語要求時失敗。" + +-#: ../camel/camel-gpg-context.c:805 ++#: ../camel/camel-gpg-context.c:806 ../camel/camel-gpg-context.c:810 + #, c-format +-msgid "" +-"You need a passphrase to unlock the key for\n" +-"user: \"%s\"" +-msgstr "" +-"您需要密語才能為此使用者的金鑰解鎖:\n" +-"「%s」" ++msgid "You need a passphrase to unlock the key for\nuser: \"%s\"" ++msgstr "您需要密語才能為此使用者的金鑰解鎖:\n「%s」" + + # mail/mail-send-recv.c:471 +-#: ../camel/camel-gpg-context.c:822 +-#: ../camel/camel-gpg-context.c:1026 ++#: ../camel/camel-gpg-context.c:828 ../camel/camel-gpg-context.c:1032 + #: ../camel/providers/nntp/camel-nntp-store.c:1272 + msgid "Cancelled." + msgstr "已取消。" + +-#: ../camel/camel-gpg-context.c:840 ++#: ../camel/camel-gpg-context.c:846 + msgid "Failed to unlock secret key: 3 bad passphrases given." + msgstr "解鎖私密金鑰時失敗:輸入了 3 次錯誤的密語 。" + + # camel/providers/imap/camel-imap-command.c:232 +-#: ../camel/camel-gpg-context.c:846 ++#: ../camel/camel-gpg-context.c:852 + #, c-format + msgid "Unexpected response from GnuPG: %s" + msgstr "從 GnuPG 傳回意外的回應: %s" + + # camel/providers/smtp/camel-smtp-transport.c:582 +-#: ../camel/camel-gpg-context.c:898 ++#: ../camel/camel-gpg-context.c:904 + msgid "Failed to encrypt: No valid recipients specified." + msgstr "不能加密郵件:沒有提供有效的收件者。" + + # camel/camel-filter-driver.c:670 + # camel/camel-filter-driver.c:679 + #. always called on an i/o error +-#: ../camel/camel-gpg-context.c:1164 +-#: ../camel/camel-gpg-context.c:1292 +-#: ../camel/camel-gpg-context.c:1776 +-#: ../camel/camel-gpg-context.c:1821 ++#: ../camel/camel-gpg-context.c:1170 ../camel/camel-gpg-context.c:1298 ++#: ../camel/camel-gpg-context.c:1782 ../camel/camel-gpg-context.c:1827 + #, c-format + msgid "Failed to execute gpg: %s" + msgstr "執行 gpg 失敗: %s" + + # mail/mail-ops.c:1872 +-#: ../camel/camel-gpg-context.c:1260 +-#: ../camel/camel-smime-context.c:387 ++#: ../camel/camel-gpg-context.c:1266 ../camel/camel-smime-context.c:387 + #, c-format + msgid "Could not generate signing data: %s" + msgstr "無法產生簽署資料:%s" + + # camel/camel-filter-driver.c:670 + # camel/camel-filter-driver.c:679 +-#: ../camel/camel-gpg-context.c:1307 +-#: ../camel/camel-gpg-context.c:1496 +-#: ../camel/camel-gpg-context.c:1579 +-#: ../camel/camel-gpg-context.c:1594 +-#: ../camel/camel-gpg-context.c:1698 +-#: ../camel/camel-gpg-context.c:1713 +-#: ../camel/camel-gpg-context.c:1792 +-#: ../camel/camel-gpg-context.c:1837 ++#: ../camel/camel-gpg-context.c:1313 ../camel/camel-gpg-context.c:1502 ++#: ../camel/camel-gpg-context.c:1585 ../camel/camel-gpg-context.c:1600 ++#: ../camel/camel-gpg-context.c:1704 ../camel/camel-gpg-context.c:1719 ++#: ../camel/camel-gpg-context.c:1798 ../camel/camel-gpg-context.c:1843 + msgid "Failed to execute gpg." + msgstr "執行 gpg 失敗。" + +-#: ../camel/camel-gpg-context.c:1326 ++#: ../camel/camel-gpg-context.c:1332 + msgid "This is a digitally signed message part" + msgstr "這是數位簽署的郵件" + + # camel/camel-pgp-context.c:890 +-#: ../camel/camel-gpg-context.c:1414 +-#: ../camel/camel-gpg-context.c:1420 +-#: ../camel/camel-gpg-context.c:1426 +-#: ../camel/camel-gpg-context.c:1443 +-#: ../camel/camel-smime-context.c:690 +-#: ../camel/camel-smime-context.c:701 ++#: ../camel/camel-gpg-context.c:1420 ../camel/camel-gpg-context.c:1426 ++#: ../camel/camel-gpg-context.c:1432 ../camel/camel-gpg-context.c:1449 ++#: ../camel/camel-smime-context.c:690 ../camel/camel-smime-context.c:701 + #: ../camel/camel-smime-context.c:708 + msgid "Cannot verify message signature: Incorrect message format" + msgstr "不能驗證此郵件的簽章:錯誤的訊息格式" + + # camel/camel-pgp-context.c:890 +-#: ../camel/camel-gpg-context.c:1481 ++#: ../camel/camel-gpg-context.c:1487 + #, c-format + msgid "Cannot verify message signature: could not create temp file: %s" + msgstr "不能驗證此郵件的簽章:無法建立暫存檔案:%s" + + # mail/mail-ops.c:1872 +-#: ../camel/camel-gpg-context.c:1562 ++#: ../camel/camel-gpg-context.c:1568 + #, c-format + msgid "Could not generate encrypting data: %s" + msgstr "無法產生加密資料:%s" + +-#: ../camel/camel-gpg-context.c:1612 ++#: ../camel/camel-gpg-context.c:1618 + msgid "This is a digitally encrypted message part" + msgstr "這是數位化加密訊息部份" + +-#: ../camel/camel-gpg-context.c:1669 ++#: ../camel/camel-gpg-context.c:1675 + msgid "Failed to decrypt MIME part: protocol error" + msgstr "解密 MIME 組件時失敗:通訊協定錯誤" + + # camel/camel-pgp-context.c:890 +-#: ../camel/camel-gpg-context.c:1680 ++#: ../camel/camel-gpg-context.c:1686 + msgid "Cannot decrypt message: Incorrect message format" + msgstr "不能解密此郵件:錯誤的訊息格式" + +-#: ../camel/camel-gpg-context.c:1734 +-#: ../camel/camel-smime-context.c:964 ++#: ../camel/camel-gpg-context.c:1740 ../camel/camel-smime-context.c:964 + msgid "Encrypted content" + msgstr "加密內容" + + # camel/providers/pop3/camel-pop3-folder.c:320 +-#: ../camel/camel-gpg-context.c:1753 ++#: ../camel/camel-gpg-context.c:1759 + msgid "Unable to parse message content" + msgstr "無法從編輯器取得郵件" + +-#: ../camel/camel-gpg-context.c:1777 +-#: ../camel/camel-gpg-context.c:1822 ++#: ../camel/camel-gpg-context.c:1783 ../camel/camel-gpg-context.c:1828 + #: ../camel/camel-tcp-stream-openssl.c:631 + #: ../camel/providers/imap4/camel-imap4-engine.c:1550 + #: ../camel/providers/imap4/camel-imap4-engine.c:1589 + #: ../camel/providers/imap4/camel-imap4-engine.c:1634 + #: ../camel/providers/imap4/camel-imap4-engine.c:1690 +-#: ../camel/providers/imap4/camel-imap4-store.c:886 +-#: ../camel/providers/imap4/camel-imap4-store.c:1559 ++#: ../camel/providers/imap4/camel-imap4-store.c:881 ++#: ../camel/providers/imap4/camel-imap4-store.c:1554 + #: ../camel/providers/imap4/camel-imap4-utils.c:575 + #: ../camel/providers/smtp/camel-smtp-transport.c:160 + #: ../camel/providers/smtp/camel-smtp-transport.c:215 +@@ -1962,8 +1872,7 @@ msgstr "不能建立鎖定 helper 導管 + msgid "Cannot fork locking helper: %s" + msgstr "不能分叉鎖定 helper : %s" + +-#: ../camel/camel-lock-client.c:191 +-#: ../camel/camel-lock-client.c:214 ++#: ../camel/camel-lock-client.c:191 ../camel/camel-lock-client.c:214 + #, c-format + msgid "Could not lock '%s': protocol error with lock-helper" + msgstr "無法鎖定「%s」: lock-helper 協定錯誤" +@@ -1978,8 +1887,7 @@ msgstr "無法鎖定「%s」" + # camel/camel-lock.c:111 + # camel/camel-movemail.c:138 + # camel/camel-movemail.c:185 +-#: ../camel/camel-lock.c:95 +-#: ../camel/camel-lock.c:116 ++#: ../camel/camel-lock.c:95 ../camel/camel-lock.c:116 + #, c-format + msgid "Could not create lock file for %s: %s" + msgstr "無法建立用於 %s: %s 的鎖定檔案" +@@ -2063,8 +1971,7 @@ msgid "Error writing mail temp file: %s" + msgstr "寫入郵件暫存檔案時發生錯誤:%s" + + # camel/camel-movemail.c:587 +-#: ../camel/camel-movemail.c:462 +-#: ../camel/camel-movemail.c:529 ++#: ../camel/camel-movemail.c:462 ../camel/camel-movemail.c:529 + #, c-format + msgid "Error copying mail temp file: %s" + msgstr "複製郵件暫存檔案時發生錯誤:%s" +@@ -2080,47 +1987,46 @@ msgstr "解析錯誤" + # calendar/gui/e-calendar-table.c:422 + # camel/camel-service.c:544 + # camel/camel-service.c:580 +-#: ../camel/camel-net-utils.c:495 +-#: ../camel/camel-net-utils.c:657 +-#: ../camel/camel-net-utils.c:788 +-#: ../camel/providers/pop3/camel-pop3-store.c:446 +-#: ../camel/providers/pop3/camel-pop3-store.c:527 ++#: ../camel/camel-net-utils.c:497 ../camel/camel-net-utils.c:659 ++#: ../camel/camel-net-utils.c:790 ++#: ../camel/providers/pop3/camel-pop3-store.c:441 ++#: ../camel/providers/pop3/camel-pop3-store.c:522 + msgid "Cancelled" + msgstr "已取消" + + # camel/camel-filter-driver.c:671 +-#: ../camel/camel-net-utils.c:514 ++#: ../camel/camel-net-utils.c:516 + msgid "cannot create thread" + msgstr "無法建立執行緒" + + # camel/camel-service.c:548 +-#: ../camel/camel-net-utils.c:661 ++#: ../camel/camel-net-utils.c:663 + #, c-format + msgid "Resolving: %s" + msgstr "解析:%s" + + # camel/camel-service.c:600 +-#: ../camel/camel-net-utils.c:683 ++#: ../camel/camel-net-utils.c:685 + msgid "Host lookup failed" + msgstr "搜尋主機失敗" + + # camel/camel-service.c:600 +-#: ../camel/camel-net-utils.c:685 ++#: ../camel/camel-net-utils.c:687 + #, c-format + msgid "Host lookup failed: %s: %s" + msgstr "搜尋主機失敗: %s :%s" + + # camel/camel-service.c:548 +-#: ../camel/camel-net-utils.c:792 ++#: ../camel/camel-net-utils.c:794 + msgid "Resolving address" + msgstr "解析位址" + +-#: ../camel/camel-net-utils.c:812 ++#: ../camel/camel-net-utils.c:814 + msgid "Name lookup failed" + msgstr "查詢名稱失敗" + + # camel/providers/imap/camel-imap-command.c:240 +-#: ../camel/camel-net-utils.c:815 ++#: ../camel/camel-net-utils.c:817 + #, c-format + msgid "Name lookup failed: %s" + msgstr "搜尋名稱失敗: %s" +@@ -2133,8 +2039,7 @@ msgstr "正在將資料夾「%s」中的 + + # camel/providers/local/camel-local-store.c:142 + # camel/providers/local/camel-local-store.c:158 +-#: ../camel/camel-offline-journal.c:163 +-#: ../camel/camel-offline-journal.c:186 ++#: ../camel/camel-offline-journal.c:163 ../camel/camel-offline-journal.c:186 + #, c-format + msgid "Cannot write offline journal for folder `%s': %s" + msgstr "無法寫入資料夾」%s」的離線日誌:%s" +@@ -2169,8 +2074,7 @@ msgstr "無法載入 %s:模組內沒 + + # camel/camel-session.c:295 + # camel/camel-session.c:364 +-#: ../camel/camel-provider.c:377 +-#: ../camel/camel-session.c:166 ++#: ../camel/camel-provider.c:377 ../camel/camel-session.c:166 + #, c-format + msgid "No provider available for protocol `%s'" + msgstr "沒有通訊協定「%s」的提供者" +@@ -2187,40 +2091,27 @@ msgstr "這個選項將會使用匿名 + + # camel/camel-sasl-anonymous.c:110 + # camel/camel-sasl-plain.c:87 +-#: ../camel/camel-sasl-anonymous.c:122 +-#: ../camel/camel-sasl-plain.c:89 ++#: ../camel/camel-sasl-anonymous.c:122 ../camel/camel-sasl-plain.c:89 + msgid "Authentication failed." + msgstr "驗証失敗。" + + # camel/camel-sasl-anonymous.c:119 + #: ../camel/camel-sasl-anonymous.c:131 + #, c-format +-msgid "" +-"Invalid email address trace information:\n" +-"%s" +-msgstr "" +-"無效的電子郵件地址追蹤資訊:\n" +-"%s" ++msgid "Invalid email address trace information:\n%s" ++msgstr "無效的電子郵件地址追蹤資訊:\n%s" + + # camel/camel-sasl-anonymous.c:131 + #: ../camel/camel-sasl-anonymous.c:143 + #, c-format +-msgid "" +-"Invalid opaque trace information:\n" +-"%s" +-msgstr "" +-"無效的不透明追蹤資訊:\n" +-"%s" ++msgid "Invalid opaque trace information:\n%s" ++msgstr "無效的不透明追蹤資訊:\n%s" + + # camel/camel-sasl-anonymous.c:143 + #: ../camel/camel-sasl-anonymous.c:155 + #, c-format +-msgid "" +-"Invalid trace information:\n" +-"%s" +-msgstr "" +-"無效的追蹤資訊:\n" +-"%s" ++msgid "Invalid trace information:\n%s" ++msgstr "無效的追蹤資訊:\n%s" + + # camel/camel-sasl-cram-md5.c:35 + #: ../camel/camel-sasl-cram-md5.c:38 +@@ -2323,12 +2214,10 @@ msgstr "參照的證件已經過期。" + + # camel/camel-sasl-kerberos4.c:218 + # camel/providers/imap/camel-imap-store.c:433 +-#: ../camel/camel-sasl-gssapi.c:198 +-#: ../camel/camel-sasl-gssapi.c:246 +-#: ../camel/camel-sasl-gssapi.c:282 +-#: ../camel/camel-sasl-gssapi.c:297 ++#: ../camel/camel-sasl-gssapi.c:198 ../camel/camel-sasl-gssapi.c:246 ++#: ../camel/camel-sasl-gssapi.c:282 ../camel/camel-sasl-gssapi.c:297 + #: ../camel/camel-sasl-kerberos4.c:229 +-#: ../camel/providers/imap/camel-imap-store.c:1285 ++#: ../camel/providers/imap/camel-imap-store.c:1280 + msgid "Bad authentication response from server." + msgstr "來自伺服器的不良許可回應。" + +@@ -2350,12 +2239,8 @@ msgstr "這個選項將會使用 Kerbero + # camel/camel-sasl-kerberos4.c:161 + #: ../camel/camel-sasl-kerberos4.c:172 + #, c-format +-msgid "" +-"Could not get Kerberos ticket:\n" +-"%s" +-msgstr "" +-"無法取得 Kerberos ticket:\n" +-"%s" ++msgid "Could not get Kerberos ticket:\n%s" ++msgstr "無法取得 Kerberos ticket:\n%s" + + # camel/camel-sasl-login.c:32 + #: ../camel/camel-sasl-login.c:34 +@@ -2364,8 +2249,7 @@ msgstr "登入" + + # camel/camel-sasl-login.c:34 + # camel/camel-sasl-plain.c:34 +-#: ../camel/camel-sasl-login.c:36 +-#: ../camel/camel-sasl-plain.c:36 ++#: ../camel/camel-sasl-login.c:36 ../camel/camel-sasl-plain.c:36 + msgid "This option will connect to the server using a simple password." + msgstr "這個選項將會使用普通的密碼連線至伺服器。" + +@@ -2435,12 +2319,8 @@ msgstr "URL「%s」需要 path 元件" + # camel/camel-session.c:479 + #: ../camel/camel-session.c:292 + #, c-format +-msgid "" +-"Could not create directory %s:\n" +-"%s" +-msgstr "" +-"無法建立目錄 %s:\n" +-"%s" ++msgid "Could not create directory %s:\n%s" ++msgstr "無法建立目錄 %s:\n%s" + + # camel/camel-smime-context.c:327 + #: ../camel/camel-smime-context.c:229 +@@ -2482,8 +2362,7 @@ msgid "Cannot add CMS Signing time" + msgstr "無法新增 CMS SigningTime" + + # composer/e-msg-composer.c:1092 +-#: ../camel/camel-smime-context.c:293 +-#: ../camel/camel-smime-context.c:305 ++#: ../camel/camel-smime-context.c:293 ../camel/camel-smime-context.c:305 + #, c-format + msgid "Encryption certificate for '%s' does not exist" + msgstr "'%s' 的加密憑證不存在" +@@ -2505,8 +2384,7 @@ msgid "Cannot add CMS Signer information + msgstr "無法新增 CMS SignerInfo" + + # mail/mail-crypto.c:251 +-#: ../camel/camel-smime-context.c:398 +-#: ../camel/camel-smime-context.c:846 ++#: ../camel/camel-smime-context.c:398 ../camel/camel-smime-context.c:846 + msgid "Cannot create encoder context" + msgstr "無法建立編碼器網路位置" + +@@ -2515,8 +2393,7 @@ msgstr "無法建立編碼器網路位 + msgid "Failed to add data to CMS encoder" + msgstr "無法新增資料至 CMS 編碼器" + +-#: ../camel/camel-smime-context.c:409 +-#: ../camel/camel-smime-context.c:863 ++#: ../camel/camel-smime-context.c:409 ../camel/camel-smime-context.c:863 + msgid "Failed to encode data" + msgstr "無法編碼資料" + +@@ -2577,8 +2454,7 @@ msgstr "包裹的資料中遺漏摘要" + + # camel/providers/local/camel-local-store.c:142 + # camel/providers/local/camel-local-store.c:158 +-#: ../camel/camel-smime-context.c:557 +-#: ../camel/camel-smime-context.c:567 ++#: ../camel/camel-smime-context.c:557 ../camel/camel-smime-context.c:567 + msgid "Cannot calculate digests" + msgstr "無法計算摘要" + +@@ -2594,8 +2470,7 @@ msgid "Cannot set message digests" + msgstr "無法設定郵件摘要" + + # mail/mail-crypto.c:59 +-#: ../camel/camel-smime-context.c:582 +-#: ../camel/camel-smime-context.c:587 ++#: ../camel/camel-smime-context.c:582 ../camel/camel-smime-context.c:587 + msgid "Certificate import failed" + msgstr "憑證匯入失敗" + +@@ -2719,16 +2594,14 @@ msgstr "無法建立資料夾:%s:資 + + # camel/providers/local/camel-mbox-store.c:138 + # camel/providers/local/camel-mbox-store.c:161 +-#: ../camel/camel-store.c:402 +-#: ../camel/camel-vee-store.c:368 ++#: ../camel/camel-store.c:402 ../camel/camel-vee-store.c:368 + #: ../camel/providers/local/camel-maildir-store.c:217 + #, c-format + msgid "Cannot delete folder: %s: Invalid operation" + msgstr "不能刪除資料夾: %s :無效的操作" + + # camel/providers/local/camel-mbox-summary.c:655 +-#: ../camel/camel-store.c:452 +-#: ../camel/camel-vee-store.c:405 ++#: ../camel/camel-store.c:452 ../camel/camel-vee-store.c:405 + #: ../camel/providers/local/camel-maildir-store.c:289 + #, c-format + msgid "Cannot rename folder: %s: Invalid operation" +@@ -2740,15 +2613,13 @@ msgstr "不能重新命名資料夾: % + # mail/mail-ops.c:1032 + # mail/mail-ops.c:1033 + #. the name of the Trash folder, used for deleted messages +-#: ../camel/camel-store.c:793 +-#: ../camel/camel-vtrash-folder.c:48 ++#: ../camel/camel-store.c:793 ../camel/camel-vtrash-folder.c:48 + msgid "Trash" + msgstr "垃圾桶" + + # calendar/gui/goto-dialog.glade.h:9 + #. the name of the Junk folder, used for spam messages +-#: ../camel/camel-store.c:796 +-#: ../camel/camel-vtrash-folder.c:50 ++#: ../camel/camel-store.c:796 ../camel/camel-vtrash-folder.c:50 + msgid "Junk" + msgstr "垃圾郵件" + +@@ -2873,27 +2744,16 @@ msgstr "金鑰的用途並不支援憑 + msgid "Error in application verification" + msgstr "應用程式驗證時錯誤" + +-#: ../camel/camel-tcp-stream-openssl.c:696 +-#: ../camel/camel-tcp-stream-ssl.c:886 ++#: ../camel/camel-tcp-stream-openssl.c:696 ../camel/camel-tcp-stream-ssl.c:886 + #, c-format +-msgid "" +-"Issuer: %s\n" +-"Subject: %s\n" +-"Fingerprint: %s\n" +-"Signature: %s" +-msgstr "" +-"發照者: %s\n" +-"主旨: %s\n" +-"指紋檔: %s\n" +-"簽章: %s" ++msgid "Issuer: %s\nSubject: %s\nFingerprint: %s\nSignature: %s" ++msgstr "發照者: %s\n主旨: %s\n指紋檔: %s\n簽章: %s" + +-#: ../camel/camel-tcp-stream-openssl.c:702 +-#: ../camel/camel-tcp-stream-ssl.c:892 ++#: ../camel/camel-tcp-stream-openssl.c:702 ../camel/camel-tcp-stream-ssl.c:892 + msgid "GOOD" + msgstr "良好" + +-#: ../camel/camel-tcp-stream-openssl.c:702 +-#: ../camel/camel-tcp-stream-ssl.c:892 ++#: ../camel/camel-tcp-stream-openssl.c:702 ../camel/camel-tcp-stream-ssl.c:892 + msgid "BAD" + msgstr "不良" + +@@ -2901,76 +2761,36 @@ msgstr "不良" + # camel/camel-tcp-stream-ssl.c:364 + #: ../camel/camel-tcp-stream-openssl.c:704 + #, c-format +-msgid "" +-"Bad certificate from %s:\n" +-"\n" +-"%s\n" +-"\n" +-"%s\n" +-"\n" +-"Do you wish to accept anyway?" +-msgstr "" +-"來自 %s 的不良憑證:\n" +-"\n" +-"%s\n" +-"\n" +-"%s\n" +-"\n" +-"您無論如何都要接受嗎?" ++msgid "Bad certificate from %s:\n\n%s\n\n%s\n\nDo you wish to accept anyway?" ++msgstr "來自 %s 的不良憑證:\n\n%s\n\n%s\n\n您無論如何都要接受嗎?" + + # camel/camel-tcp-stream-openssl.c:428 + # camel/camel-tcp-stream-ssl.c:364 + #. construct our user prompt + #: ../camel/camel-tcp-stream-ssl.c:896 + #, c-format +-msgid "" +-"SSL Certificate check for %s:\n" +-"\n" +-"%s\n" +-"\n" +-"Do you wish to accept?" +-msgstr "" +-"對 %s 的 SSL 憑證檢查:\n" +-"\n" +-"%s\n" +-"\n" +-"您想要接受嗎?" ++msgid "SSL Certificate check for %s:\n\n%s\n\nDo you wish to accept?" ++msgstr "對 %s 的 SSL 憑證檢查:\n\n%s\n\n您想要接受嗎?" + + #: ../camel/camel-tcp-stream-ssl.c:940 + #, c-format +-msgid "" +-"Certificate problem: %s\n" +-"Issuer: %s" +-msgstr "" +-"憑證問題: %s\n" +-"發照者: %s" ++msgid "Certificate problem: %s\nIssuer: %s" ++msgstr "憑證問題: %s\n發照者: %s" + + #: ../camel/camel-tcp-stream-ssl.c:992 + #, c-format +-msgid "" +-"Bad certificate domain: %s\n" +-"Issuer: %s" +-msgstr "" +-"不正確的憑證網域: %s\n" +-"發照者: %s" ++msgid "Bad certificate domain: %s\nIssuer: %s" ++msgstr "不正確的憑證網域: %s\n發照者: %s" + + #: ../camel/camel-tcp-stream-ssl.c:1010 + #, c-format +-msgid "" +-"Certificate expired: %s\n" +-"Issuer: %s" +-msgstr "" +-"憑證已逾期: %s\n" +-"發照者: %s" ++msgid "Certificate expired: %s\nIssuer: %s" ++msgstr "憑證已逾期: %s\n發照者: %s" + + #: ../camel/camel-tcp-stream-ssl.c:1027 + #, c-format +-msgid "" +-"Certificate revocation list expired: %s\n" +-"Issuer: %s" +-msgstr "" +-"憑證撒銷清單已逾期: %s\n" +-"發照者: %s" ++msgid "Certificate revocation list expired: %s\nIssuer: %s" ++msgstr "憑證撒銷清單已逾期: %s\n發照者: %s" + + # camel/camel-url.c:289 + #: ../camel/camel-url.c:293 +@@ -2991,13 +2811,11 @@ msgid "No such message %s in %s" + msgstr "沒有 %s 這類郵件在 %s 中" + + # camel/providers/imap/camel-imap-provider.c:45 +-#: ../camel/camel-vee-folder.c:642 +-#: ../camel/camel-vee-folder.c:648 ++#: ../camel/camel-vee-folder.c:642 ../camel/camel-vee-folder.c:648 + msgid "Cannot copy or move messages into a Virtual Folder" + msgstr "不能複製或移動郵件到虛擬資料夾中" + +-#: ../camel/camel-vee-store.c:101 +-#: ../camel/camel-vee-store.c:344 ++#: ../camel/camel-vee-store.c:101 ../camel/camel-vee-store.c:344 + msgid "Unmatched" + msgstr "沒有相符資料" + +@@ -3031,20 +2849,16 @@ msgstr "無法複製訊息到「垃圾 + # camel/providers/local/camel-mh-folder.c:185 + # camel/providers/local/camel-mh-folder.c:194 + # camel/providers/local/camel-mh-folder.c:202 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:116 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:112 + #: ../camel/providers/imap/camel-imap-folder.c:2063 + #, c-format +-msgid "" +-"Cannot get message: %s\n" +-" %s" +-msgstr "" +-"無法取得郵件: %s\n" +-" %s" ++msgid "Cannot get message: %s\n %s" ++msgstr "無法取得郵件: %s\n %s" + + # camel/providers/local/camel-maildir-folder.c:197 + # camel/providers/local/camel-mbox-folder.c:319 + # camel/providers/local/camel-mh-folder.c:185 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:116 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:112 + #: ../camel/providers/imap/camel-imap-folder.c:2063 + #: ../camel/providers/local/camel-maildir-folder.c:245 + #: ../camel/providers/local/camel-mbox-folder.c:350 +@@ -3056,7 +2870,7 @@ msgstr "沒有這封郵件" + # camel/camel-remote-store.c:399 + # camel/camel-remote-store.c:470 + # camel/providers/imap/camel-imap-command.c:287 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:128 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:124 + #: ../camel/providers/imap4/camel-imap4-folder.c:788 + #: ../camel/providers/nntp/camel-nntp-folder.c:155 + #: ../camel/providers/nntp/camel-nntp-folder.c:231 +@@ -3075,7 +2889,7 @@ msgstr "使用者已取消" + # camel/providers/local/camel-mh-folder.c:185 + # camel/providers/local/camel-mh-folder.c:194 + # camel/providers/local/camel-mh-folder.c:202 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:135 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:131 + #: ../camel/providers/imap4/camel-imap4-folder.c:793 + #: ../camel/providers/nntp/camel-nntp-folder.c:146 + #: ../camel/providers/nntp/camel-nntp-folder.c:148 +@@ -3091,28 +2905,33 @@ msgstr "無法取得郵件 %s: %s" + + # camel/providers/imap/camel-imap-folder.c:1047 + # camel/providers/imap/camel-imap-folder.c:1281 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:152 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:160 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:148 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:156 + #: ../camel/providers/imap4/camel-imap4-folder.c:811 + msgid "This message is not available in offline mode." + msgstr "這封郵件無法在離線模式下使用。" + + # camel/camel-movemail.c:306 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:171 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:178 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1425 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:167 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:174 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1545 + msgid "Could not get message" + msgstr "無法取得郵件。" + + # camel/providers/imap/camel-imap-folder.c:191 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:708 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:740 + #: ../camel/providers/imap/camel-imap-folder.c:252 + #, c-format + msgid "Could not load summary for %s" + msgstr "無法載入給 %s 的摘要" + +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1032 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:560 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:966 ++msgid "Trash Folder Full. Please Empty." ++msgstr "垃圾筒資料夾已滿。請清空。" ++ ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1129 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:632 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:744 + #: ../camel/providers/imap/camel-imap-folder.c:2375 + #: ../camel/providers/imap/camel-imap-folder.c:2445 + #, c-format +@@ -3121,8 +2940,8 @@ msgstr "正取得 %s 中新郵件的摘 + + # camel/providers/local/camel-mh-folder.c:149 + # camel/providers/local/camel-mh-folder.c:157 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1661 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1707 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1813 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1861 + #, c-format + msgid "Cannot append message to folder `%s': %s" + msgstr "不能將郵件添加到資料夾「%s」: %s" +@@ -3134,7 +2953,7 @@ msgstr "不能將郵件添加到資料 + # camel/providers/local/camel-mh-folder.c:185 + # camel/providers/local/camel-mh-folder.c:194 + # camel/providers/local/camel-mh-folder.c:202 +-#: ../camel/providers/groupwise/camel-groupwise-folder.c:1695 ++#: ../camel/providers/groupwise/camel-groupwise-folder.c:1849 + #, c-format + msgid "Cannot create message: %s" + msgstr "無法建立郵件: %s" +@@ -3244,64 +3063,65 @@ msgid "Host or user not available in url + msgstr "網址中的使用者或主機無法使用" + + # camel/providers/pop3/camel-pop3-store.c:361 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:199 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:200 + #, c-format + msgid "%sPlease enter the GroupWise password for %s@%s" + msgstr "%s請輸入給 %s@%s 的 GroupWise 密碼" + + # camel/providers/imap/camel-imap-store.c:505 + # camel/providers/smtp/camel-smtp-transport.c:410 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:213 +-#: ../camel/providers/imap/camel-imap-store.c:1364 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:214 ++#: ../camel/providers/imap/camel-imap-store.c:1359 + msgid "You didn't enter a password." + msgstr "您沒有輸入密碼。" + + # camel/providers/imap/camel-imap-store.c:531 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:227 +-msgid "Unable to authenticate to GroupWise server." +-msgstr "無法驗證 GroupWise 伺服器。" ++#: ../camel/providers/groupwise/camel-groupwise-store.c:226 ++#, ++msgid "Unable to authenticate to GroupWise server. " ++msgstr "無法驗證登入 GroupWise 伺服器。" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:295 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:304 + msgid "Some features may not work correctly with your current server version" + msgstr "某些功能可能無法在您目前的伺服器版本上正常運作" + + # camel/providers/imap/camel-imap-store.c:803 + # mail/mail-local.c:334 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:467 +-#: ../camel/providers/imap/camel-imap-store.c:1873 +-#: ../camel/providers/imap/camel-imap-store.c:2064 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:540 ++#: ../camel/providers/imap/camel-imap-store.c:1868 ++#: ../camel/providers/imap/camel-imap-store.c:2059 + #, c-format + msgid "No such folder %s" + msgstr "沒有這個資料夾 %s" + + # camel/providers/local/camel-mbox-folder.c:152 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1036 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1230 + msgid "Cannot create GroupWise folders in offline mode." + msgstr "在離線模式中不能建立 GroupWise 資料夾。" + +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1050 +-#: ../camel/providers/imap/camel-imap-store.c:1948 +-#: ../camel/providers/imap/camel-imap-store.c:2317 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1244 ++#: ../camel/providers/imap/camel-imap-store.c:1943 ++#: ../camel/providers/imap/camel-imap-store.c:2312 + msgid "The parent folder is not allowed to contain subfolders" + msgstr "母資料夾並不允許包含子資料夾" + + # camel/providers/local/camel-local-store.c:142 + # camel/providers/local/camel-local-store.c:158 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1127 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1148 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1321 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1342 + #, c-format + msgid "Cannot rename Groupwise folder `%s' to `%s'" + msgstr "無法將 Groupwise 資料夾「%s」重新命名為「%s」" + + # shell/e-shortcuts-view.c:137 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1180 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1374 + #: ../camel/providers/groupwise/camel-groupwise-transport.c:121 + #, c-format + msgid "GroupWise server %s" + msgstr "GroupWise 伺服器 %s" + + # camel/camel-remote-store.c:195 +-#: ../camel/providers/groupwise/camel-groupwise-store.c:1182 ++#: ../camel/providers/groupwise/camel-groupwise-store.c:1376 + #, c-format + msgid "GroupWise service for %s on %s" + msgstr "%s 的 GroupWise 服務於 %s" +@@ -3317,12 +3137,12 @@ msgstr "經由 %s 傳送 GroupWise 郵 + msgid "Sending Message" + msgstr "傳送郵件" + +-#: ../camel/providers/groupwise/camel-groupwise-transport.c:215 ++#: ../camel/providers/groupwise/camel-groupwise-transport.c:216 + msgid "You have exceeded this account's storage limit. Your messages are queued in your Outbox. Resend by pressing Send/Receive after deleting/archiving some of your mail.\n" + msgstr "您已經超過這個帳號的儲存限制。您的郵件會先存在寄件匣中。請先刪除/封存您的郵件後再按 傳送/接收 重新寄送。\n" + + # camel/providers/sendmail/camel-sendmail-transport.c:150 +-#: ../camel/providers/groupwise/camel-groupwise-transport.c:217 ++#: ../camel/providers/groupwise/camel-groupwise-transport.c:218 + #: ../camel/providers/sendmail/camel-sendmail-transport.c:206 + #, c-format + msgid "Could not send message: %s" +@@ -3414,13 +3234,13 @@ msgstr "這個選項將會使用簡易 + #: ../camel/providers/imap/camel-imap-command.c:223 + #: ../camel/providers/imap/camel-imap-command.c:265 + #: ../camel/providers/imap/camel-imap-command.c:472 +-#: ../camel/providers/imap/camel-imap-store.c:3004 ++#: ../camel/providers/imap/camel-imap-store.c:3010 + msgid "Operation cancelled" + msgstr "作業已取消" + + # camel/camel-remote-store.c:476 + #: ../camel/providers/imap/camel-imap-command.c:310 +-#: ../camel/providers/imap/camel-imap-store.c:3007 ++#: ../camel/providers/imap/camel-imap-store.c:3013 + #, c-format + msgid "Server unexpectedly disconnected: %s" + msgstr "伺服器突然中斷連線: %s" +@@ -3430,12 +3250,8 @@ msgstr "伺服器突然中斷連線: % + #. we might get a ']' from a BAD response since we +12, but who cares? + #: ../camel/providers/imap/camel-imap-command.c:331 + #, c-format +-msgid "" +-"Alert from IMAP server %s@%s:\n" +-"%s" +-msgstr "" +-"來自 IMAP 伺服器 %s@%s 的警報:\n" +-"%s" ++msgid "Alert from IMAP server %s@%s:\n%s" ++msgstr "來自 IMAP 伺服器 %s@%s 的警報:\n%s" + + # camel/providers/imap/camel-imap-command.c:232 + #: ../camel/providers/imap/camel-imap-command.c:400 +@@ -3633,7 +3449,7 @@ msgid "Connection cancelled" + msgstr "連線已取消" + + # camel/providers/pop3/camel-pop3-store.c:379 +-#: ../camel/providers/imap/camel-imap-store.c:699 ++#: ../camel/providers/imap/camel-imap-store.c:702 + #: ../camel/providers/imap/camel-imap-store.c:721 + #: ../camel/providers/imap/camel-imap-store.c:727 + #: ../camel/providers/imap4/camel-imap4-store.c:369 +@@ -3644,7 +3460,7 @@ msgid "Failed to connect to IMAP server + msgstr "以安全模式連線到 IMAP 伺服器 %s 時失敗了: %s" + + # shell/e-storage.c:477 +-#: ../camel/providers/imap/camel-imap-store.c:700 ++#: ../camel/providers/imap/camel-imap-store.c:703 + #: ../camel/providers/smtp/camel-smtp-transport.c:323 + msgid "STARTTLS not supported" + msgstr "不支援 STARTTLS" +@@ -3674,63 +3490,57 @@ msgstr "無法以指令「%s」連線: + + # mail/local-config.glade.h:8 + #. create a dummy "." parent inbox, use to scan, then put back at the top level +-#: ../camel/providers/imap/camel-imap-store.c:1057 +-#: ../camel/providers/imap/camel-imap-store.c:2413 ++#: ../camel/providers/imap/camel-imap-store.c:1052 ++#: ../camel/providers/imap/camel-imap-store.c:2408 + #: ../camel/providers/imap4/camel-imap4-store-summary.c:368 +-#: ../camel/providers/imap4/camel-imap4-store.c:1392 ++#: ../camel/providers/imap4/camel-imap4-store.c:1387 + #: ../camel/providers/local/camel-maildir-folder.c:75 + #: ../camel/providers/local/camel-maildir-store.c:217 + #: ../camel/providers/local/camel-maildir-store.c:289 + #: ../camel/providers/local/camel-maildir-store.c:511 + #: ../camel/providers/local/camel-maildir-store.c:524 + #: ../camel/providers/local/camel-spool-store.c:461 +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:261 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:264 + msgid "Inbox" + msgstr "收件匣" + + # camel/providers/imap/camel-imap-store.c:456 +-#: ../camel/providers/imap/camel-imap-store.c:1317 ++#: ../camel/providers/imap/camel-imap-store.c:1312 + #, c-format + msgid "IMAP server %s does not support requested authentication type %s" + msgstr "IMAP 伺服器 %s 不支援所要求的驗證類型 %s" + + # camel/providers/imap/camel-imap-store.c:466 + # camel/providers/smtp/camel-smtp-transport.c:366 +-#: ../camel/providers/imap/camel-imap-store.c:1327 +-#: ../camel/providers/smtp/camel-smtp-transport.c:498 ++#: ../camel/providers/imap/camel-imap-store.c:1322 ++#: ../camel/providers/smtp/camel-smtp-transport.c:493 + #, c-format + msgid "No support for authentication type %s" + msgstr "不支援驗證類型 %s" + + # camel/providers/imap/camel-imap-store.c:490 +-#: ../camel/providers/imap/camel-imap-store.c:1350 ++#: ../camel/providers/imap/camel-imap-store.c:1345 + #: ../camel/providers/imapp/camel-imapp-store.c:364 + #, c-format + msgid "%sPlease enter the IMAP password for %s@%s" + msgstr "%s 請輸入 %s@%s 的 IMAP 密碼" + + # camel/providers/imap/camel-imap-store.c:531 +-#: ../camel/providers/imap/camel-imap-store.c:1393 ++#: ../camel/providers/imap/camel-imap-store.c:1388 + #, c-format +-msgid "" +-"Unable to authenticate to IMAP server.\n" +-"%s\n" +-"\n" +-msgstr "" +-"無法驗證進入 IMAP 伺服器。\n" +-"%s\n" +-"\n" +- +-#: ../camel/providers/imap/camel-imap-store.c:1885 +-#: ../camel/providers/imap/camel-imap-store.c:2255 +-#: ../camel/providers/imap4/camel-imap4-store.c:1022 ++msgid "Unable to authenticate to IMAP server.\n%s\n\n" ++msgstr "無法驗證進入 IMAP 伺服器。\n%s\n\n" ++ ++#: ../camel/providers/imap/camel-imap-store.c:1880 ++#: ../camel/providers/imap/camel-imap-store.c:2250 ++#: ../camel/providers/imap4/camel-imap4-store.c:1017 + #, c-format + msgid "The folder name \"%s\" is invalid because it contains the character \"%c\"" + msgstr "資料夾名稱「%s」無效,因為它包括字元「%c」" + + # camel/providers/local/camel-local-store.c:142 + # camel/providers/local/camel-local-store.c:158 +-#: ../camel/providers/imap/camel-imap-store.c:2002 ++#: ../camel/providers/imap/camel-imap-store.c:1997 + #: ../camel/providers/local/camel-maildir-store.c:190 + #: ../camel/providers/local/camel-mbox-store.c:202 + #: ../camel/providers/local/camel-mh-store.c:249 +@@ -3739,7 +3549,7 @@ msgid "Cannot create folder `%s': folder + msgstr "無法建立資料夾 `%s':資料夾已存在。" + + # camel/providers/local/camel-mbox-summary.c:879 +-#: ../camel/providers/imap/camel-imap-store.c:2266 ++#: ../camel/providers/imap/camel-imap-store.c:2261 + #, c-format + msgid "Unknown parent folder: %s" + msgstr "不明的母資料夾: %s" +@@ -3910,152 +3720,152 @@ msgid "This option will connect to the I + msgstr "此選項會使用純文字密碼,連線到 IMAPv4rev1 伺服器。" + + # camel/providers/pop3/camel-pop3-store.c:409 +-#: ../camel/providers/imap4/camel-imap4-store.c:486 ++#: ../camel/providers/imap4/camel-imap4-store.c:481 + #, c-format + msgid "Cannot authenticate to IMAP server %s using the %s authentication mechanism" + msgstr "無法驗證 IMAP 伺服器 %s (使用 %s 驗證機制)" + + # camel/providers/smtp/camel-smtp-transport.c:395 +-#: ../camel/providers/imap4/camel-imap4-store.c:535 ++#: ../camel/providers/imap4/camel-imap4-store.c:530 + #, c-format + msgid "%sPlease enter the IMAP password for %s on host %s" + msgstr "%s請輸入 IMAP 密碼 (%s 於主機 %s)" + + # camel/providers/pop3/camel-pop3-store.c:199 +-#: ../camel/providers/imap4/camel-imap4-store.c:602 ++#: ../camel/providers/imap4/camel-imap4-store.c:597 + #, c-format + msgid "Cannot authenticate to IMAP server %s using %s" + msgstr "無法驗證 IMAP 伺服器 %s (使用 %s)" + + # camel/providers/local/camel-mbox-folder.c:152 +-#: ../camel/providers/imap4/camel-imap4-store.c:764 +-#: ../camel/providers/imap4/camel-imap4-store.c:1032 ++#: ../camel/providers/imap4/camel-imap4-store.c:759 ++#: ../camel/providers/imap4/camel-imap4-store.c:1027 + msgid "Cannot create IMAP folders in offline mode." + msgstr "在離線模式中無法建立 IMAP 資料夾。" + + # camel/providers/local/camel-local-store.c:142 + # camel/providers/local/camel-local-store.c:158 +-#: ../camel/providers/imap4/camel-imap4-store.c:803 ++#: ../camel/providers/imap4/camel-imap4-store.c:798 + #, c-format + msgid "Cannot get folder `%s' on IMAP server %s: Unknown" + msgstr "無法取得資料夾 `%s' (從 IMAP 伺服器 %s):未知的" + +-#: ../camel/providers/imap4/camel-imap4-store.c:884 ++#: ../camel/providers/imap4/camel-imap4-store.c:879 + #, c-format + msgid "Cannot get LIST information for `%s' on IMAP server %s: %s" + msgstr "無法取得 LIST 資訊 (樣式 `%s' 於 IMAP 伺服器 %s):%s" + + # addressbook/contact-editor/e-contact-editor.c:1248 +-#: ../camel/providers/imap4/camel-imap4-store.c:886 +-#: ../camel/providers/imap4/camel-imap4-store.c:1559 ++#: ../camel/providers/imap4/camel-imap4-store.c:881 ++#: ../camel/providers/imap4/camel-imap4-store.c:1554 + msgid "Bad command" + msgstr "錯誤的指令" + + # camel/providers/local/camel-mbox-summary.c:655 +-#: ../camel/providers/imap4/camel-imap4-store.c:965 ++#: ../camel/providers/imap4/camel-imap4-store.c:960 + #, c-format + msgid "Cannot create folder `%s': Invalid mailbox name" + msgstr "無法建立資料夾 `%s':無效的信箱名稱" + + # camel/providers/local/camel-local-store.c:142 + # camel/providers/local/camel-local-store.c:158 +-#: ../camel/providers/imap4/camel-imap4-store.c:970 ++#: ../camel/providers/imap4/camel-imap4-store.c:965 + #, c-format + msgid "Cannot create folder `%s': Bad command" + msgstr "無法建立資料夾 `%s':錯誤的指令" + + # camel/providers/local/camel-mbox-store.c:138 + # camel/providers/local/camel-mbox-store.c:161 +-#: ../camel/providers/imap4/camel-imap4-store.c:1076 ++#: ../camel/providers/imap4/camel-imap4-store.c:1071 + #, c-format + msgid "Cannot delete folder `%s': Special folder" + msgstr "無法刪除資料夾 `%s':特殊資料夾" + + # camel/providers/local/camel-mbox-store.c:138 + # camel/providers/local/camel-mbox-store.c:161 +-#: ../camel/providers/imap4/camel-imap4-store.c:1083 ++#: ../camel/providers/imap4/camel-imap4-store.c:1078 + msgid "Cannot delete IMAP folders in offline mode." + msgstr "在離線模式中無法刪除 IMAP 資料夾。" + + # camel/providers/local/camel-mbox-store.c:138 + # camel/providers/local/camel-mbox-store.c:161 +-#: ../camel/providers/imap4/camel-imap4-store.c:1142 ++#: ../camel/providers/imap4/camel-imap4-store.c:1137 + #, c-format + msgid "Cannot delete folder `%s': Invalid mailbox name" + msgstr "無法刪除資料夾 `%s':無效的信箱名稱" + + # camel/providers/local/camel-mbox-store.c:138 + # camel/providers/local/camel-mbox-store.c:161 +-#: ../camel/providers/imap4/camel-imap4-store.c:1147 ++#: ../camel/providers/imap4/camel-imap4-store.c:1142 + #, c-format + msgid "Cannot delete folder `%s': Bad command" + msgstr "無法刪除資料夾 `%s':錯誤的指令" + + # camel/providers/local/camel-mbox-store.c:138 + # camel/providers/local/camel-mbox-store.c:161 +-#: ../camel/providers/imap4/camel-imap4-store.c:1167 ++#: ../camel/providers/imap4/camel-imap4-store.c:1162 + #, c-format + msgid "Cannot rename folder `%s' to `%s': Special folder" + msgstr "無法將資料夾 `%s' 重新命名為 `%s':特殊資料夾" + + # camel/providers/local/camel-local-store.c:237 +-#: ../camel/providers/imap4/camel-imap4-store.c:1174 ++#: ../camel/providers/imap4/camel-imap4-store.c:1169 + msgid "Cannot rename IMAP folders in offline mode." + msgstr "在離線模式中無法重新命名 IMAP 資料夾。" + + # camel/providers/local/camel-mbox-summary.c:655 +-#: ../camel/providers/imap4/camel-imap4-store.c:1205 ++#: ../camel/providers/imap4/camel-imap4-store.c:1200 + #, c-format + msgid "Cannot rename folder `%s' to `%s': Invalid mailbox name" + msgstr "無法將資料夾 `%s' 重新命名為 `%s':無效的信箱名稱" + + # camel/providers/local/camel-local-store.c:142 + # camel/providers/local/camel-local-store.c:158 +-#: ../camel/providers/imap4/camel-imap4-store.c:1210 ++#: ../camel/providers/imap4/camel-imap4-store.c:1205 + #, c-format + msgid "Cannot rename folder `%s' to `%s': Bad command" + msgstr "無法將資料夾 `%s' 重新命名為 `%s':錯誤的指令" + +-#: ../camel/providers/imap4/camel-imap4-store.c:1557 ++#: ../camel/providers/imap4/camel-imap4-store.c:1552 + #, c-format + msgid "Cannot get %s information for pattern `%s' on IMAP server %s: %s" + msgstr "無法取得 %s 資訊 (樣式 `%s' 於 IMAP 伺服器 %s):%s" + + # camel/providers/local/camel-local-store.c:142 + # camel/providers/local/camel-local-store.c:158 +-#: ../camel/providers/imap4/camel-imap4-store.c:1597 ++#: ../camel/providers/imap4/camel-imap4-store.c:1592 + msgid "Cannot subscribe to IMAP folders in offline mode." + msgstr "在離線模式中無法訂閱 IMAP 資料夾。" + + # camel/providers/local/camel-mbox-store.c:138 + # camel/providers/local/camel-mbox-store.c:161 +-#: ../camel/providers/imap4/camel-imap4-store.c:1642 ++#: ../camel/providers/imap4/camel-imap4-store.c:1637 + #, c-format + msgid "Cannot subscribe to folder `%s': Invalid mailbox name" + msgstr "無法訂閱資料夾 `%s':無效的信箱名稱" + + # camel/providers/local/camel-local-store.c:142 + # camel/providers/local/camel-local-store.c:158 +-#: ../camel/providers/imap4/camel-imap4-store.c:1647 ++#: ../camel/providers/imap4/camel-imap4-store.c:1642 + #, c-format + msgid "Cannot subscribe to folder `%s': Bad command" + msgstr "無法訂閱資料夾 `%s':錯誤的指令" + + # camel/providers/local/camel-local-store.c:142 + # camel/providers/local/camel-local-store.c:158 +-#: ../camel/providers/imap4/camel-imap4-store.c:1669 ++#: ../camel/providers/imap4/camel-imap4-store.c:1664 + msgid "Cannot unsubscribe from IMAP folders in offline mode." + msgstr "在離線模式中無法取消訂閱 IMAP 資料夾。" + + # camel/providers/local/camel-mbox-summary.c:655 +-#: ../camel/providers/imap4/camel-imap4-store.c:1714 ++#: ../camel/providers/imap4/camel-imap4-store.c:1709 + #, c-format + msgid "Cannot unsubscribe from folder `%s': Invalid mailbox name" + msgstr "無法取消訂閱資料夾 `%s':無效的信箱名稱" + + # camel/providers/local/camel-local-store.c:142 + # camel/providers/local/camel-local-store.c:158 +-#: ../camel/providers/imap4/camel-imap4-store.c:1719 ++#: ../camel/providers/imap4/camel-imap4-store.c:1714 + #, c-format + msgid "Cannot unsubscribe from folder `%s': Bad command" + msgstr "無法取消訂閱資料夾 `%s':錯誤的指令" +@@ -4099,16 +3909,8 @@ msgid "IMAP+" + msgstr "IMAP" + + #: ../camel/providers/imapp/camel-imapp-provider.c:50 +-msgid "" +-"Experimental IMAP 4(.1) client\n" +-"This is untested and unsupported code, you want to use plain imap instead.\n" +-"\n" +-" !!! DO NOT USE THIS FOR PRODUCTION EMAIL !!!\n" +-msgstr "" +-"實驗性的 IMAP 4(.1) 客戶端\n" +-"這是未經測試且不提供支援的程式碼,您會想使用普通的 imap 代替。\n" +-"\n" +-"!!! 不 要 將 它 用 於 重 要 的 電 子 郵 件!!!\n" ++msgid "Experimental IMAP 4(.1) client\nThis is untested and unsupported code, you want to use plain imap instead.\n\n !!! DO NOT USE THIS FOR PRODUCTION EMAIL !!!\n" ++msgstr "實驗性的 IMAP 4(.1) 客戶端\n這是未經測試且不提供支援的程式碼,您會想使用普通的 imap 代替。\n\n!!! 不 要 將 它 用 於 重 要 的 電 子 郵 件!!!\n" + + # camel/camel-remote-store.c:255 + # camel/providers/smtp/camel-smtp-transport.c:269 +@@ -4197,12 +3999,8 @@ msgstr "標準 Unix mbox 排程器或目 + + # camel/providers/imap/camel-imap-provider.c:65 + #: ../camel/providers/local/camel-local-provider.c:115 +-msgid "" +-"For reading and storing local mail in external standard mbox spool files.\n" +-"May also be used to read a tree of Elm, Pine, or Mutt style folders." +-msgstr "" +-"用於讀取及儲存外部標準 mbox 排程器檔案中的本地端郵件。\n" +-"也可以用來讀 Elm 、 Pine 或 Mutt 形式資料夾的樹狀結構。" ++msgid "For reading and storing local mail in external standard mbox spool files.\nMay also be used to read a tree of Elm, Pine, or Mutt style folders." ++msgstr "用於讀取及儲存外部標準 mbox 排程器檔案中的本地端郵件。\n也可以用來讀 Elm 、 Pine 或 Mutt 形式資料夾的樹狀結構。" + + # camel/providers/local/camel-local-store.c:127 + #: ../camel/providers/local/camel-local-store.c:156 +@@ -4311,12 +4109,8 @@ msgstr "無法將郵件儲存到 maildir + #: ../camel/providers/local/camel-mh-folder.c:213 + #: ../camel/providers/local/camel-mh-folder.c:222 + #, c-format +-msgid "" +-"Cannot get message: %s from folder %s\n" +-" %s" +-msgstr "" +-"不能取得郵件:%s 從資料夾 %s\n" +-" %s" ++msgid "Cannot get message: %s from folder %s\n %s" ++msgstr "不能取得郵件:%s 從資料夾 %s\n %s" + + # camel/providers/local/camel-maildir-folder.c:218 + # camel/providers/local/camel-mh-folder.c:203 +@@ -4469,12 +4263,8 @@ msgstr "無法取得資料夾 `%s':不 + #: ../camel/providers/local/camel-mbox-store.c:237 + #: ../camel/providers/local/camel-mbox-store.c:260 + #, c-format +-msgid "" +-"Could not delete folder `%s':\n" +-"%s" +-msgstr "" +-"無法刪除資料夾「%s」:\n" +-"%s" ++msgid "Could not delete folder `%s':\n%s" ++msgstr "無法刪除資料夾「%s」:\n%s" + + # camel/providers/local/camel-mbox-store.c:119 + # camel/providers/local/camel-mbox-store.c:146 +@@ -4509,7 +4299,7 @@ msgstr "資料夾已存在" + # shell/e-shell-folder-creation-dialog.c:156 + #: ../camel/providers/local/camel-mbox-store.c:471 + msgid "The new folder name is illegal." +-msgstr "指定的資料夾名稱不合法: %s" ++msgstr "指定的資料夾名稱不合法: " + + # camel/providers/local/camel-mbox-summary.c:655 + #: ../camel/providers/local/camel-mbox-store.c:484 +@@ -4670,12 +4460,8 @@ msgstr "資料夾「%s/%s」不存在。 + # camel/providers/local/camel-mh-store.c:90 + #: ../camel/providers/local/camel-spool-store.c:173 + #, c-format +-msgid "" +-"Could not open folder `%s':\n" +-"%s" +-msgstr "" +-"無法開啟資料夾「%s」:\n" +-"%s" ++msgid "Could not open folder `%s':\n%s" ++msgstr "無法開啟資料夾「%s」:\n%s" + + # camel/providers/local/camel-maildir-store.c:100 + # camel/providers/local/camel-mbox-store.c:101 +@@ -4689,12 +4475,8 @@ msgstr "資料夾「%s」不存在。" + # camel/providers/local/camel-mh-store.c:103 + #: ../camel/providers/local/camel-spool-store.c:182 + #, c-format +-msgid "" +-"Could not create folder `%s':\n" +-"%s" +-msgstr "" +-"無法建立資料夾「%s」:\n" +-"%s" ++msgid "Could not create folder `%s':\n%s" ++msgstr "無法建立資料夾「%s」:\n%s" + + # camel/providers/local/camel-mbox-store.c:119 + # camel/providers/local/camel-mbox-store.c:146 +@@ -4745,12 +4527,8 @@ msgstr "無法與排程資料夾同步 % + #: ../camel/providers/local/camel-spool-summary.c:263 + #: ../camel/providers/local/camel-spool-summary.c:276 + #, c-format +-msgid "" +-"Could not sync spool folder %s: %s\n" +-"Folder may be corrupt, copy saved in `%s'" +-msgstr "" +-"無法同步排程資料夾 %s: %s\n" +-"資料夾可能損毀,複製儲存於「%s」" ++msgid "Could not sync spool folder %s: %s\nFolder may be corrupt, copy saved in `%s'" ++msgstr "無法同步排程資料夾 %s: %s\n資料夾可能損毀,複製儲存於「%s」" + + #: ../camel/providers/nntp/camel-nntp-folder.c:175 + #: ../camel/providers/nntp/camel-nntp-folder.c:207 +@@ -4822,34 +4600,16 @@ msgstr "經由 %s 的 USENET 新聞" + # mail/mail-ops.c:1755 + #: ../camel/providers/nntp/camel-nntp-store.c:798 + #, c-format +-msgid "" +-"Error retrieving newsgroups:\n" +-"\n" +-"%s" +-msgstr "" +-"取得新聞群組發生錯誤:\n" +-"\n" +-"%s" ++msgid "Error retrieving newsgroups:\n\n%s" ++msgstr "取得新聞群組發生錯誤:\n\n%s" + + #: ../camel/providers/nntp/camel-nntp-store.c:892 +-msgid "" +-"You cannot subscribe to this newsgroup:\n" +-"\n" +-"No such newsgroup. The selected item is a probably a parent folder." +-msgstr "" +-"您無法訂閱此新聞群組:\n" +-"\n" +-"沒有類似的新聞群組。選取的項目可能是父代資料夾。" ++msgid "You cannot subscribe to this newsgroup:\n\nNo such newsgroup. The selected item is a probably a parent folder." ++msgstr "您無法訂閱此新聞群組:\n\n沒有類似的新聞群組。選取的項目可能是父代資料夾。" + + #: ../camel/providers/nntp/camel-nntp-store.c:924 +-msgid "" +-"You cannot unsubscribe to this newsgroup:\n" +-"\n" +-"newsgroup does not exist!" +-msgstr "" +-"您無法取消訂閱此新聞群組:\n" +-"\n" +-"新聞群組不存在!" ++msgid "You cannot unsubscribe to this newsgroup:\n\nnewsgroup does not exist!" ++msgstr "您無法取消訂閱此新聞群組:\n\n新聞群組不存在!" + + #: ../camel/providers/nntp/camel-nntp-store.c:949 + msgid "You cannot create a folder in a News store: subscribe instead." +@@ -5011,7 +4771,7 @@ msgid "Failed to read a valid greeting f + msgstr "無法從 POP 伺服器 %s 讀取有效的問候語" + + # camel/providers/pop3/camel-pop3-store.c:379 +-#: ../camel/providers/pop3/camel-pop3-store.c:216 ++#: ../camel/providers/pop3/camel-pop3-store.c:219 + #: ../camel/providers/pop3/camel-pop3-store.c:233 + #: ../camel/providers/pop3/camel-pop3-store.c:243 + #: ../camel/providers/pop3/camel-pop3-store.c:249 +@@ -5020,68 +4780,60 @@ msgid "Failed to connect to POP server % + msgstr "無法以安全模式連線到 POP 伺服器 %s: %s" + + # shell/e-storage.c:477 +-#: ../camel/providers/pop3/camel-pop3-store.c:217 ++#: ../camel/providers/pop3/camel-pop3-store.c:220 + msgid "STLS not supported" + msgstr "不支援 STLS" + + # camel/providers/pop3/camel-pop3-store.c:322 +-#: ../camel/providers/pop3/camel-pop3-store.c:361 ++#: ../camel/providers/pop3/camel-pop3-store.c:356 + #, c-format + msgid "Could not connect to POP server %s" + msgstr "無法連線到 POP 伺服器 %s" + + # camel/providers/pop3/camel-pop3-store.c:409 +-#: ../camel/providers/pop3/camel-pop3-store.c:402 +-#: ../camel/providers/pop3/camel-pop3-store.c:516 ++#: ../camel/providers/pop3/camel-pop3-store.c:397 ++#: ../camel/providers/pop3/camel-pop3-store.c:511 + #, c-format + msgid "Unable to connect to POP server %s: No support for requested authentication mechanism." + msgstr "無法連線到 POP 伺服器 %s:不支援所要求的驗證機制。" + +-#: ../camel/providers/pop3/camel-pop3-store.c:418 ++#: ../camel/providers/pop3/camel-pop3-store.c:413 + #, c-format + msgid "SASL `%s' Login failed for POP server %s: %s" + msgstr "SASL 「%s」登入失敗於 POP 伺服器 %s: %s" + +-#: ../camel/providers/pop3/camel-pop3-store.c:430 ++#: ../camel/providers/pop3/camel-pop3-store.c:425 + #, c-format + msgid "Cannot login to POP server %s: SASL Protocol error" + msgstr "不能登入 POP 伺服器 %s: SASL 通訊協定錯誤" + + # camel/providers/pop3/camel-pop3-store.c:199 +-#: ../camel/providers/pop3/camel-pop3-store.c:449 ++#: ../camel/providers/pop3/camel-pop3-store.c:444 + #, c-format + msgid "Failed to authenticate on POP server %s: %s" + msgstr "無法驗證 POP 伺服器 %s:%s" + + # camel/providers/pop3/camel-pop3-store.c:361 +-#: ../camel/providers/pop3/camel-pop3-store.c:475 ++#: ../camel/providers/pop3/camel-pop3-store.c:470 + #, c-format + msgid "%sPlease enter the POP password for %s on host %s" + msgstr "%s請輸入 POP 密碼 (%s 於主機 %s)" + + # camel/providers/pop3/camel-pop3-store.c:417 +-#: ../camel/providers/pop3/camel-pop3-store.c:530 +-#: ../camel/providers/pop3/camel-pop3-store.c:543 ++#: ../camel/providers/pop3/camel-pop3-store.c:525 ++#: ../camel/providers/pop3/camel-pop3-store.c:538 + #, c-format +-msgid "" +-"Unable to connect to POP server %s.\n" +-"Error sending password: %s" +-msgstr "" +-"無法連線到 POP 伺服器 %s。\n" +-"傳送密碼時發生錯誤:%s" ++msgid "Unable to connect to POP server %s.\nError sending password: %s" ++msgstr "無法連線到 POP 伺服器 %s。\n傳送密碼時發生錯誤:%s" + + # camel/providers/pop3/camel-pop3-store.c:417 +-#: ../camel/providers/pop3/camel-pop3-store.c:537 ++#: ../camel/providers/pop3/camel-pop3-store.c:532 + #, c-format +-msgid "" +-"Unable to connect to POP server %s.\n" +-"Error sending username: %s" +-msgstr "" +-"無法連線 POP 伺服器 %s。\n" +-"傳送使用者名稱發生錯誤:%s" ++msgid "Unable to connect to POP server %s.\nError sending username: %s" ++msgstr "無法連線 POP 伺服器 %s。\n傳送使用者名稱發生錯誤:%s" + + # camel/providers/pop3/camel-pop3-store.c:484 +-#: ../camel/providers/pop3/camel-pop3-store.c:643 ++#: ../camel/providers/pop3/camel-pop3-store.c:638 + #, c-format + msgid "No such folder `%s'." + msgstr "沒有這個資料夾「%s」。" +@@ -5298,136 +5050,130 @@ msgid "STARTTLS command failed" + msgstr "STARTTLS 指令失敗" + + # camel/providers/smtp/camel-smtp-transport.c:356 +-#: ../camel/providers/smtp/camel-smtp-transport.c:488 ++#: ../camel/providers/smtp/camel-smtp-transport.c:483 + #, c-format + msgid "SMTP server %s does not support requested authentication type %s." + msgstr "SMTP 伺服器 %s 不支援所要求的驗證類型 %s。" + + # camel/providers/smtp/camel-smtp-transport.c:395 +-#: ../camel/providers/smtp/camel-smtp-transport.c:526 ++#: ../camel/providers/smtp/camel-smtp-transport.c:521 + #, c-format + msgid "%sPlease enter the SMTP password for %s on host %s" + msgstr "%s請輸入 SMTP 密碼 (%s 於主機 %s)" + + # camel/providers/smtp/camel-smtp-transport.c:418 +-#: ../camel/providers/smtp/camel-smtp-transport.c:545 ++#: ../camel/providers/smtp/camel-smtp-transport.c:540 + #, c-format +-msgid "" +-"Unable to authenticate to SMTP server.\n" +-"%s\n" +-"\n" +-msgstr "" +-"無法驗證登入 SMTP 伺服器。\n" +-"%s\n" +-"\n" ++msgid "Unable to authenticate to SMTP server.\n%s\n\n" ++msgstr "無法驗證登入 SMTP 伺服器。\n%s\n\n" + + # camel/providers/smtp/camel-smtp-transport.c:534 +-#: ../camel/providers/smtp/camel-smtp-transport.c:669 ++#: ../camel/providers/smtp/camel-smtp-transport.c:664 + #, c-format + msgid "SMTP server %s" + msgstr "SMTP 伺服器 %s" + + # camel/providers/smtp/camel-smtp-transport.c:536 +-#: ../camel/providers/smtp/camel-smtp-transport.c:671 ++#: ../camel/providers/smtp/camel-smtp-transport.c:666 + #, c-format + msgid "SMTP mail delivery via %s" + msgstr "經由 %s 傳送 SMTP 郵件" + + # camel/providers/smtp/camel-smtp-transport.c:582 +-#: ../camel/providers/smtp/camel-smtp-transport.c:689 ++#: ../camel/providers/smtp/camel-smtp-transport.c:684 + msgid "Cannot send message: service not connected." + msgstr "無法傳送訊息:服務未連線。" + + # camel/providers/smtp/camel-smtp-transport.c:568 +-#: ../camel/providers/smtp/camel-smtp-transport.c:695 ++#: ../camel/providers/smtp/camel-smtp-transport.c:690 + msgid "Cannot send message: sender address not valid." + msgstr "不能傳送郵件:寄件者的地址無效。" + + # mail/mail-ops.c:603 +-#: ../camel/providers/smtp/camel-smtp-transport.c:699 ++#: ../camel/providers/smtp/camel-smtp-transport.c:694 + msgid "Sending message" + msgstr "傳送郵件" + + # camel/providers/smtp/camel-smtp-transport.c:582 +-#: ../camel/providers/smtp/camel-smtp-transport.c:714 ++#: ../camel/providers/smtp/camel-smtp-transport.c:709 + msgid "Cannot send message: no recipients defined." + msgstr "不能傳送郵件:沒有定義收件者。" + + # camel/providers/smtp/camel-smtp-transport.c:582 +-#: ../camel/providers/smtp/camel-smtp-transport.c:725 ++#: ../camel/providers/smtp/camel-smtp-transport.c:720 + msgid "Cannot send message: one or more invalid recipients" + msgstr "不能傳送郵件:一或多個無效的收件者" + + # importers/netscape-importer.c:790 + # importers/pine-importer.c:656 +-#: ../camel/providers/smtp/camel-smtp-transport.c:894 ++#: ../camel/providers/smtp/camel-smtp-transport.c:889 + msgid "SMTP Greeting" + msgstr "SMTP 迎接" + + # camel/providers/imap/camel-imap-command.c:240 +-#: ../camel/providers/smtp/camel-smtp-transport.c:920 ++#: ../camel/providers/smtp/camel-smtp-transport.c:915 + #, c-format + msgid "HELO command failed: %s" + msgstr "HELO 指令失敗:%s" + + # camel/providers/imap/camel-imap-command.c:240 +-#: ../camel/providers/smtp/camel-smtp-transport.c:937 ++#: ../camel/providers/smtp/camel-smtp-transport.c:932 + msgid "HELO command failed" + msgstr "HELO 指令失敗" + + # mail/mail-config.glade.h:10 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1003 ++#: ../camel/providers/smtp/camel-smtp-transport.c:998 + msgid "SMTP Authentication" + msgstr "SMTP 驗證" + + # camel/providers/smtp/camel-smtp-transport.c:728 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1009 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1004 + msgid "Error creating SASL authentication object." + msgstr "建立 SASL 驗證物件時發生錯誤。" + + # camel/providers/imap/camel-imap-command.c:240 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1026 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1037 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1021 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1032 + #, c-format + msgid "AUTH command failed: %s" + msgstr "AUTH 指令失敗:%s" + + # camel/providers/imap/camel-imap-command.c:240 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1043 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1038 + msgid "AUTH command failed" + msgstr "AUTH 指令失敗" + + # camel/providers/smtp/camel-smtp-transport.c:809 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1105 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1100 + msgid "Bad authentication response from server.\n" + msgstr "從伺服器傳回不正確驗證的回應。\n" + + # camel/providers/smtp/camel-smtp-transport.c:835 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1130 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1125 + #, c-format + msgid "MAIL FROM command failed: %s: mail not sent" + msgstr "MAIL FROM 指令失敗:%s:郵件未傳送" + + # camel/providers/imap/camel-imap-command.c:240 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1147 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1142 + msgid "MAIL FROM command failed" + msgstr "MAIL FROM 指令失敗" + + # camel/providers/smtp/camel-smtp-transport.c:879 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1171 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1166 + #, c-format + msgid "RCPT TO command failed: %s: mail not sent" + msgstr "RCPT TO 指令失敗:%s:郵件未傳送" + +-#: ../camel/providers/smtp/camel-smtp-transport.c:1190 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1185 + #, c-format + msgid "RCPT TO <%s> failed" + msgstr "RCPT TO <%s> 失敗" + + # camel/providers/smtp/camel-smtp-transport.c:929 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1229 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1287 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1306 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1224 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1282 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1301 + #, c-format + msgid "DATA command failed: %s: mail not sent" + msgstr "DATA 指令失敗:%s:郵件未傳送" +@@ -5436,122 +5182,122 @@ msgstr "DATA 指令失敗:%s:郵件 + #. we should have gotten instructions on how to use the DATA command: + #. * 354 Enter mail, end with "." on a line by itself + #. +-#: ../camel/providers/smtp/camel-smtp-transport.c:1246 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1322 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1241 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1317 + msgid "DATA command failed" + msgstr "DATA 指令失敗" + + # camel/providers/imap/camel-imap-command.c:240 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1345 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1340 + #, c-format + msgid "RSET command failed: %s" + msgstr "RSET 指令失敗:%s" + + # camel/providers/imap/camel-imap-command.c:240 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1361 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1356 + msgid "RSET command failed" + msgstr "RSET 指令失敗" + + # camel/providers/imap/camel-imap-command.c:240 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1384 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1379 + #, c-format + msgid "QUIT command failed: %s" + msgstr "QUIT 指令失敗:%s" + + # camel/providers/imap/camel-imap-command.c:240 +-#: ../camel/providers/smtp/camel-smtp-transport.c:1398 ++#: ../camel/providers/smtp/camel-smtp-transport.c:1393 + msgid "QUIT command failed" + msgstr "QUIT 指令失敗" + + # addressbook/contact-editor/e-contact-editor.c:1243 + # addressbook/contact-editor/e-contact-editor.c:1310 +-#: ../libedataserver/e-categories.c:242 ++#: ../libedataserver/e-categories.c:248 + msgid "Business" + msgstr "商務電話" + +-#: ../libedataserver/e-categories.c:243 ++#: ../libedataserver/e-categories.c:249 + msgid "Competition" + msgstr "競爭者" + +-#: ../libedataserver/e-categories.c:244 ++#: ../libedataserver/e-categories.c:250 + msgid "Favorites" + msgstr "喜愛的" + +-#: ../libedataserver/e-categories.c:245 ++#: ../libedataserver/e-categories.c:251 + msgid "Gifts" + msgstr "禮物" + +-#: ../libedataserver/e-categories.c:246 ++#: ../libedataserver/e-categories.c:252 + msgid "Goals/Objectives" + msgstr "目標/標的" + +-#: ../libedataserver/e-categories.c:247 ++#: ../libedataserver/e-categories.c:253 + msgid "Holiday" + msgstr "假日" + +-#: ../libedataserver/e-categories.c:248 ++#: ../libedataserver/e-categories.c:254 + msgid "Holiday Cards" + msgstr "假日邀請卡" + + # ui/evolution-addressbook.xml.h:17 + #. important people (e.g. new business partners) you should pay attention to/observe +-#: ../libedataserver/e-categories.c:250 ++#: ../libedataserver/e-categories.c:256 + msgid "Hot Contacts" + msgstr "熱門連絡人" + +-#: ../libedataserver/e-categories.c:251 ++#: ../libedataserver/e-categories.c:257 + msgid "Ideas" + msgstr "創意" + +-#: ../libedataserver/e-categories.c:252 ++#: ../libedataserver/e-categories.c:258 + msgid "International" + msgstr "國際的" + + # ui/evolution-event-editor.xml.h:15 + # ui/evolution-task-editor-dialog.xml.h:16 +-#: ../libedataserver/e-categories.c:253 ++#: ../libedataserver/e-categories.c:259 + msgid "Key Customer" + msgstr "重要客戶" + +-#: ../libedataserver/e-categories.c:254 ++#: ../libedataserver/e-categories.c:260 + msgid "Miscellaneous" + msgstr "雜項" + +-#: ../libedataserver/e-categories.c:255 ++#: ../libedataserver/e-categories.c:261 + msgid "Personal" + msgstr "個人" + + # calendar/gui/e-meeting-dialog.glade.h:21 +-#: ../libedataserver/e-categories.c:256 ++#: ../libedataserver/e-categories.c:262 + msgid "Phone Calls" + msgstr "電話" + + # calendar/gui/e-meeting-dialog.glade.h:23 + # mail/message-list.c:1081 +-#: ../libedataserver/e-categories.c:257 ++#: ../libedataserver/e-categories.c:263 + msgid "Status" + msgstr "狀況" + +-#: ../libedataserver/e-categories.c:258 ++#: ../libedataserver/e-categories.c:264 + msgid "Strategies" + msgstr "策略" + +-#: ../libedataserver/e-categories.c:259 ++#: ../libedataserver/e-categories.c:265 + msgid "Suppliers" + msgstr "供給者" + + # addressbook/backend/ebook/e-card.c:3434 +-#: ../libedataserver/e-categories.c:260 ++#: ../libedataserver/e-categories.c:266 + msgid "Time & Expenses" + msgstr "時間與開銷" + +-#: ../libedataserver/e-categories.c:261 ++#: ../libedataserver/e-categories.c:267 + msgid "VIP" + msgstr "VIP" + + # mail/mail-send-recv.c:287 + # mail/mail-send-recv.c:333 +-#: ../libedataserver/e-categories.c:262 ++#: ../libedataserver/e-categories.c:268 + msgid "Waiting" + msgstr "正在等待" + +@@ -5561,8 +5307,7 @@ msgstr "正在等待" + #. in 12-hour format. + #. strftime format of a weekday, a date and a + #. time, in 12-hour format. +-#: ../libedataserver/e-time-utils.c:1319 +-#: ../libedataserver/e-time-utils.c:1562 ++#: ../libedataserver/e-time-utils.c:1319 ../libedataserver/e-time-utils.c:1566 + msgid "%a %m/%d/%Y %I:%M:%S %p" + msgstr "%a %m/%d/%Y %I:%M:%S %p" + +@@ -5572,8 +5317,7 @@ msgstr "%a %m/%d/%Y %I:%M:%S %p" + #. in 24-hour format. + #. strftime format of a weekday, a date and a + #. time, in 24-hour format. +-#: ../libedataserver/e-time-utils.c:1324 +-#: ../libedataserver/e-time-utils.c:1553 ++#: ../libedataserver/e-time-utils.c:1324 ../libedataserver/e-time-utils.c:1557 + msgid "%a %m/%d/%Y %H:%M:%S" + msgstr "%a %m/%d/%Y %H:%M:%S" + +@@ -5582,8 +5326,7 @@ msgstr "%a %m/%d/%Y %H:%M:%S" + #. in 12-hour format, without seconds. + #. strftime format of a weekday, a date and a + #. time, in 12-hour format, without seconds. +-#: ../libedataserver/e-time-utils.c:1329 +-#: ../libedataserver/e-time-utils.c:1558 ++#: ../libedataserver/e-time-utils.c:1329 ../libedataserver/e-time-utils.c:1562 + msgid "%a %m/%d/%Y %I:%M %p" + msgstr "%a %m/%d/%Y %I:%M %p" + +@@ -5592,8 +5335,7 @@ msgstr "%a %m/%d/%Y %I:%M %p" + #. in 24-hour format, without seconds. + #. strftime format of a weekday, a date and a + #. time, in 24-hour format, without seconds. +-#: ../libedataserver/e-time-utils.c:1334 +-#: ../libedataserver/e-time-utils.c:1549 ++#: ../libedataserver/e-time-utils.c:1334 ../libedataserver/e-time-utils.c:1553 + msgid "%a %m/%d/%Y %H:%M" + msgstr "%a %m/%d/%Y %H:%M" + +@@ -5616,9 +5358,8 @@ msgstr "%a %m/%d/%Y %H" + # widgets/meeting-time-sel/e-meeting-time-sel.c:2505 + #. strptime format of a weekday and a date. + #. strftime format of a weekday and a date. +-#: ../libedataserver/e-time-utils.c:1347 +-#: ../libedataserver/e-time-utils.c:1440 +-#: ../libedataserver/e-time-utils.c:1544 ++#: ../libedataserver/e-time-utils.c:1347 ../libedataserver/e-time-utils.c:1443 ++#: ../libedataserver/e-time-utils.c:1548 + msgid "%a %m/%d/%Y" + msgstr "%a %m/%d/%Y" + +@@ -5675,24 +5416,21 @@ msgstr "%m/%d/%Y %H" + # widgets/misc/e-dateedit.c:1465 + #. strptime format of a weekday and a date. + #. This is the preferred date format for the locale. +-#: ../libedataserver/e-time-utils.c:1382 +-#: ../libedataserver/e-time-utils.c:1443 ++#: ../libedataserver/e-time-utils.c:1382 ../libedataserver/e-time-utils.c:1446 + msgid "%m/%d/%Y" + msgstr "%m/%d/%Y" + + # e-util/e-time-utils.c:323 + #. strptime format for a time of day, in 12-hour format. + #. strftime format of a time in 12-hour format. +-#: ../libedataserver/e-time-utils.c:1488 +-#: ../libedataserver/e-time-utils.c:1607 ++#: ../libedataserver/e-time-utils.c:1492 ../libedataserver/e-time-utils.c:1611 + msgid "%I:%M:%S %p" + msgstr "%I:%M:%S %p" + + # e-util/e-time-utils.c:315 + #. strptime format for a time of day, in 24-hour format. + #. strftime format of a time in 24-hour format. +-#: ../libedataserver/e-time-utils.c:1492 +-#: ../libedataserver/e-time-utils.c:1599 ++#: ../libedataserver/e-time-utils.c:1496 ../libedataserver/e-time-utils.c:1603 + msgid "%H:%M:%S" + msgstr "%H:%M:%S" + +@@ -5704,8 +5442,7 @@ msgstr "%H:%M:%S" + #. in 12-hour format. + #. strftime format of a time in 12-hour format, + #. without seconds. +-#: ../libedataserver/e-time-utils.c:1497 +-#: ../libedataserver/e-time-utils.c:1604 ++#: ../libedataserver/e-time-utils.c:1501 ../libedataserver/e-time-utils.c:1608 + msgid "%I:%M %p" + msgstr "%I:%M %p" + +@@ -5716,8 +5453,7 @@ msgstr "%I:%M %p" + #. strptime format for time of day, without seconds 24-hour format. + #. strftime format of a time in 24-hour format, + #. without seconds. +-#: ../libedataserver/e-time-utils.c:1501 +-#: ../libedataserver/e-time-utils.c:1596 ++#: ../libedataserver/e-time-utils.c:1505 ../libedataserver/e-time-utils.c:1600 + msgid "%H:%M" + msgstr "%H:%M" + +@@ -5726,7 +5462,7 @@ msgstr "%H:%M" + # widgets/misc/e-dateedit.c:1321 + # widgets/misc/e-dateedit.c:1500 + #. strptime format for hour and AM/PM, 12-hour format. +-#: ../libedataserver/e-time-utils.c:1505 ++#: ../libedataserver/e-time-utils.c:1509 + msgid "%I %p" + msgstr "%I %p" + +@@ -5734,7 +5470,7 @@ msgstr "%I %p" + msgid "Accessing LDAP Server anonymously" + msgstr "正以匿名方式存取 LDAP 伺服器" + +-#: ../libedataserverui/e-book-auth-util.c:185 ++#: ../libedataserverui/e-book-auth-util.c:191 + msgid "Failed to authenticate.\n" + msgstr "驗證憑證失敗。\n" + +@@ -5793,15 +5529,15 @@ msgstr "編輯 (_E)" + msgid "categories" + msgstr "分類" + +-#: ../libedataserverui/e-name-selector-dialog.c:260 ++#: ../libedataserverui/e-name-selector-dialog.c:284 + msgid "Select Contacts from Address Book" + msgstr "從通訊錄選取連絡人" + +-#: ../libedataserverui/e-name-selector-dialog.c:554 ++#: ../libedataserverui/e-name-selector-dialog.c:578 + msgid "_Add" + msgstr "加入(_A)" + +-#: ../libedataserverui/e-name-selector-dialog.c:579 ++#: ../libedataserverui/e-name-selector-dialog.c:603 + msgid "_Remove" + msgstr "移除(_R)" + +@@ -5837,7 +5573,7 @@ msgstr "分類(_A):" + + # ui/evolution-addressbook.xml.h:17 + #: ../libedataserverui/e-name-selector-dialog.glade.h:8 +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:258 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:261 + msgid "Contacts" + msgstr "連絡人" + +@@ -5850,13 +5586,13 @@ msgid "_Search:" + msgstr "搜尋(_S):" + + #. To Translators: This would be similiar to "Expand MyList Inline" where MyList is a Contact List +-#: ../libedataserverui/e-name-selector-entry.c:1947 ++#: ../libedataserverui/e-name-selector-entry.c:1997 + #, c-format + msgid "E_xpand %s Inline" + msgstr "展開行內 %s" + + #. Edit Contact item +-#: ../libedataserverui/e-name-selector-entry.c:1963 ++#: ../libedataserverui/e-name-selector-entry.c:2013 + #, c-format + msgid "_Edit %s" + msgstr "編輯 %s(_E)" +@@ -5866,11 +5602,21 @@ msgstr "編輯 %s(_E)" + msgid "_Delete %s" + msgstr "刪除(_D) %s" + +-#: ../libedataserverui/e-passwords.c:471 ++#: ../libedataserverui/e-passwords.c:472 ++#, ++msgid "_Remember this passphrase" ++msgstr "記住這個通關密語(_R)" ++ ++#: ../libedataserverui/e-passwords.c:473 ++#, ++msgid "_Remember this passphrase for the remainder of this session" ++msgstr "記住這個用於剩餘的工作階段的通關密語(_R)" ++ ++#: ../libedataserverui/e-passwords.c:476 + msgid "_Remember this password" + msgstr "記住這個密碼(_R)" + +-#: ../libedataserverui/e-passwords.c:472 ++#: ../libedataserverui/e-passwords.c:477 + msgid "_Remember this password for the remainder of this session" + msgstr "記住這個用於剩餘的工作階段的密碼(_R)" + +@@ -5885,14 +5631,14 @@ msgid "_Destination" + msgstr "目的端(_D)" + + # camel/camel-smime-context.c:194 +-#: ../servers/exchange/lib/e2k-autoconfig.c:1636 +-#: ../servers/exchange/storage/exchange-account.c:936 ++#: ../servers/exchange/lib/e2k-autoconfig.c:1647 ++#: ../servers/exchange/storage/exchange-account.c:932 + #, c-format + msgid "Enter password for %s" + msgstr "輸入 %s 的密碼 " + +-#: ../servers/exchange/lib/e2k-autoconfig.c:1637 +-#: ../servers/exchange/storage/exchange-account.c:941 ++#: ../servers/exchange/lib/e2k-autoconfig.c:1648 ++#: ../servers/exchange/storage/exchange-account.c:937 + msgid "Enter password" + msgstr "輸入密碼" + +@@ -5938,14 +5684,6 @@ msgstr "無" + msgid "Custom" + msgstr "自訂" + +-#: ../servers/exchange/lib/e2k-user-dialog.c:144 +-msgid "Select User" +-msgstr "選擇使用者" +- +-#: ../servers/exchange/lib/e2k-user-dialog.c:182 +-msgid "Addressbook..." +-msgstr "通訊錄..." +- + #: ../servers/exchange/storage/e-storage.c:556 + msgid "Generic error" + msgstr "一般錯誤" +@@ -6013,52 +5751,52 @@ msgstr "這個操作無法在離線模 + # shell/e-shell-view.c:552 + #. i18n: This is the title of an "other user's folders" + #. hierarchy. Eg, "John Doe's Folders". +-#: ../servers/exchange/storage/exchange-account.c:639 ++#: ../servers/exchange/storage/exchange-account.c:635 + #, c-format + msgid "%s's Folders" + msgstr "%s 的資料夾" + +-#: ../servers/exchange/storage/exchange-account.c:1242 ++#: ../servers/exchange/storage/exchange-account.c:1238 + msgid "Personal Folders" + msgstr "個人資料夾" + +-#: ../servers/exchange/storage/exchange-account.c:1256 ++#: ../servers/exchange/storage/exchange-account.c:1252 + msgid "Favorite Public Folders" + msgstr "喜好的公開資料夾" + + #. i18n: Outlookism +-#: ../servers/exchange/storage/exchange-account.c:1273 ++#: ../servers/exchange/storage/exchange-account.c:1269 + msgid "All Public Folders" + msgstr "所有的公開資料夾" + + # addressbook/backend/ebook/e-card.c:3346 + #. i18n: Outlookism +-#: ../servers/exchange/storage/exchange-account.c:1287 ++#: ../servers/exchange/storage/exchange-account.c:1283 + msgid "Global Address List" + msgstr "全域地址清單" + +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:259 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:262 + msgid "Deleted Items" + msgstr "刪除項目" + +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:260 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:263 + msgid "Drafts" + msgstr "草稿" + +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:262 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:265 + msgid "Journal" + msgstr "日誌" + + # addressbook/gui/widgets/e-addressbook-view.c:736 +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:263 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:266 + msgid "Notes" + msgstr "備註" + +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:264 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:267 + msgid "Outbox" + msgstr "寄件匣" + +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:265 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:268 + msgid "Sent Items" + msgstr "傳送項目" + +@@ -6067,29 +5805,29 @@ msgstr "傳送項目" + # mail/mail-ops.c:1014 + # mail/mail-ops.c:1032 + # mail/mail-ops.c:1033 +-#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:266 ++#: ../servers/exchange/storage/exchange-hierarchy-foreign.c:269 + msgid "Tasks" + msgstr "工作" + + # camel/providers/local/camel-maildir-folder.c:218 + # camel/providers/local/camel-mh-folder.c:203 +-#: ../servers/groupwise/e-gw-connection.c:164 ++#: ../servers/groupwise/e-gw-connection.c:167 + msgid "Invalid connection" + msgstr "無效的連線" + + # camel/camel-sasl-kerberos4.c:218 + # camel/providers/imap/camel-imap-store.c:433 +-#: ../servers/groupwise/e-gw-connection.c:168 ++#: ../servers/groupwise/e-gw-connection.c:171 + msgid "Invalid response from server" + msgstr "無效的伺服器回應" + + # camel/camel-sasl-kerberos4.c:218 + # camel/providers/imap/camel-imap-store.c:433 +-#: ../servers/groupwise/e-gw-connection.c:170 ++#: ../servers/groupwise/e-gw-connection.c:173 + msgid "No response from the server" + msgstr "無效的伺服器回應" + +-#: ../servers/groupwise/e-gw-connection.c:176 ++#: ../servers/groupwise/e-gw-connection.c:179 + msgid "Bad parameter" + msgstr "錯誤的參數" + +@@ -6117,3 +5855,7 @@ msgstr "Evolution 資料伺服器登入 + msgid "Multiple segmentation faults occurred; can't display error dialog\n" + msgstr "發生多重分割錯誤;無法顯示錯誤對話方塊\n" + ++#~ msgid "Select User" ++#~ msgstr "選擇使用者" ++#~ msgid "Addressbook..." ++#~ msgstr "通訊錄..." diff --git a/eds-warnings.patch b/eds-warnings.patch new file mode 100644 index 0000000..28b4fba --- /dev/null +++ b/eds-warnings.patch @@ -0,0 +1,110 @@ +Index: calendar/backends/contacts/e-cal-backend-contacts.c +================================================================================ +--- calendar/backends/contacts/e-cal-backend-contacts.c ++++ calendar/backends/contacts/e-cal-backend-contacts.c +@@ -384,7 +384,7 @@ + static struct icaltimetype + cdate_to_icaltime (EContactDate *cdate) + { +- struct icaltimetype ret; ++ struct icaltimetype ret = icaltime_null_time(); + + /*FIXME: this is a really _ugly_ (temporary) hack + * since several functions are still depending on the epoch, +--- calendar/backends/groupwise/e-cal-backend-groupwise-utils.h ++++ calendar/backends/groupwise/e-cal-backend-groupwise-utils.h +@@ -44,6 +44,7 @@ + * Items management + */ + EGwItem *e_gw_item_new_from_cal_component (const char *container, ECalBackendGroupwise *cbgw, ECalComponent *comp); ++EGwItem *e_gw_item_new_for_delegate_from_cal (ECalBackendGroupwise *cbgw, ECalComponent *comp); + ECalComponent *e_gw_item_to_cal_component (EGwItem *item, ECalBackendGroupwise *cbgw); + void e_gw_item_set_changes (EGwItem *item, EGwItem *cached_item); + +--- camel/providers/groupwise/camel-groupwise-folder.c ++++ camel/providers/groupwise/camel-groupwise-folder.c +@@ -1866,7 +1866,7 @@ + CamelGroupwiseStore *gw_store= CAMEL_GROUPWISE_STORE(folder->parent_store); + CamelGroupwiseStorePrivate *priv = gw_store->priv; + CamelOfflineStore *offline = (CamelOfflineStore *) folder->parent_store; +- EGwConnectionStatus status; ++ EGwConnectionStatus status = E_GW_CONNECTION_STATUS_OK; + EGwConnection *cnc; + EGwItem *item; + char *id; +--- camel/providers/imap/camel-imap-store.c ++++ camel/providers/imap/camel-imap-store.c +@@ -693,6 +693,9 @@ + } + + #ifdef HAVE_SSL ++ /* as soon as we send a STARTTLS command, all hope is lost of a clean QUIT if problems arise */ ++ clean_quit = FALSE; ++ + if (!(store->capabilities & IMAP_CAPABILITY_STARTTLS)) { + camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM, + _("Failed to connect to IMAP server %s in secure mode: %s"), +@@ -701,9 +704,6 @@ + goto exception; + } + +- /* as soon as we send a STARTTLS command, all hope is lost of a clean QUIT if problems arise */ +- clean_quit = FALSE; +- + response = camel_imap_command (store, NULL, ex, "STARTTLS"); + if (!response) { + camel_object_unref (store->istream); +--- camel/providers/pop3/camel-pop3-store.c ++++ camel/providers/pop3/camel-pop3-store.c +@@ -215,6 +215,9 @@ + } + + #ifdef HAVE_SSL ++ /* as soon as we send a STLS command, all hope is lost of a clean QUIT if problems arise */ ++ clean_quit = FALSE; ++ + if (!(store->engine->capa & CAMEL_POP3_CAP_STLS)) { + camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM, + _("Failed to connect to POP server %s in secure mode: %s"), +@@ -222,9 +225,6 @@ + goto stls_exception; + } + +- /* as soon as we send a STLS command, all hope is lost of a clean QUIT if problems arise */ +- clean_quit = FALSE; +- + pc = camel_pop3_engine_command_new (store->engine, 0, NULL, NULL, "STLS\r\n"); + while (camel_pop3_engine_iterate (store->engine, NULL) > 0) + ; +--- libdb/dbm/dbm.c ++++ libdb/dbm/dbm.c +@@ -128,7 +128,8 @@ + + if (__cur_db == NULL) { + __db_no_open(); +- item.dptr = 0; ++ item.dptr = NULL; ++ item.dsize = 0; + return (item); + } + return (dbm_fetch(__cur_db, key)); +@@ -141,7 +142,8 @@ + + if (__cur_db == NULL) { + __db_no_open(); +- item.dptr = 0; ++ item.dptr = NULL; ++ item.dsize = 0; + return (item); + } + return (dbm_firstkey(__cur_db)); +@@ -157,7 +159,8 @@ + + if (__cur_db == NULL) { + __db_no_open(); +- item.dptr = 0; ++ item.dptr = NULL; ++ item.dsize = 0; + return (item); + } + return (dbm_nextkey(__cur_db)); diff --git a/email-appears-twice.patch b/email-appears-twice.patch new file mode 100644 index 0000000..82fe532 --- /dev/null +++ b/email-appears-twice.patch @@ -0,0 +1,65 @@ +Index: camel/providers/groupwise/camel-groupwise-folder.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/groupwise/camel-groupwise-folder.c,v +retrieving revision 1.135 +diff -u -p -r1.135 camel-groupwise-folder.c +--- camel/providers/groupwise/camel-groupwise-folder.c 6 Jun 2006 20:07:47 -0000 1.135 ++++ camel/providers/groupwise/camel-groupwise-folder.c 9 Jun 2006 09:41:02 -0000 +@@ -374,9 +374,17 @@ groupwise_msg_set_recipient_list (CamelM + } + + if (org) { ++ if (org->display_name && org->display_name[0] && org->email != NULL && org->email[0] != '\0') { ++ int i; ++ for (i = 0; org->display_name[i] != '<' && ++ org->display_name[i] != '\0'; ++ i++); ++ ++ org->display_name[i] = '\0'; ++ } + if (org->display_name && org->email) +- ha=camel_header_address_new_name(org->display_name,org->email); +- else ++ ha=camel_header_address_new_name(org->display_name, org->email); ++ else if (org->display_name) + ha=camel_header_address_new_group(org->display_name); + + subs_email=camel_header_address_list_encode(ha); +@@ -1225,9 +1233,17 @@ gw_update_cache (CamelFolder *folder, GL + org = e_gw_item_get_organizer (item); + if (org) { + GString *str; ++ int i; + str = g_string_new (""); +- if (org->display_name && org->display_name[0]) ++ if (org->display_name && org->display_name[0] && org->email != NULL && org->email[0] != '\0') { ++ for (i = 0; org->display_name[i] != '<' && ++ org->display_name[i] != '\0'; ++ i++); ++ ++ org->display_name[i] = '\0'; + str = g_string_append (str, org->display_name); ++ str = g_string_append (str, " "); ++ } + if (org->email && org->email[0]) { + g_string_append (str, "<"); + str = g_string_append (str, org->email); +@@ -1428,9 +1444,17 @@ gw_update_summary ( CamelFolder *folder, + org = e_gw_item_get_organizer (item); + if (org) { + GString *str; ++ int i; + str = g_string_new (""); +- if (org->display_name && org->display_name[0]) ++ if (org->display_name && org->display_name[0] && org->email != NULL && org->email[0] != '\0') { ++ for (i = 0; org->display_name[i] != '<' && ++ org->display_name[i] != '\0'; ++ i++); ++ ++ org->display_name[i] = '\0'; + str = g_string_append (str, org->display_name); ++ str = g_string_append (str, " "); ++ } + if (org->email && org->email[0]) { + g_string_append (str, "<"); + str = g_string_append (str, org->email); diff --git a/empty-trash-notify.patch b/empty-trash-notify.patch new file mode 100644 index 0000000..f8397e5 --- /dev/null +++ b/empty-trash-notify.patch @@ -0,0 +1,16 @@ +Index: camel/providers/groupwise/camel-groupwise-folder.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/groupwise/camel-groupwise-folder.c,v +retrieving revision 1.132 +diff -u -p -r1.132 camel-groupwise-folder.c +--- camel/providers/groupwise/camel-groupwise-folder.c 28 Apr 2006 13:21:23 -0000 1.132 ++++ camel/providers/groupwise/camel-groupwise-folder.c 3 May 2006 05:21:39 -0000 +@@ -963,6 +963,8 @@ groupwise_refresh_folder(CamelFolder *fo + if (status != E_GW_CONNECTION_STATUS_OK) { + if (status ==E_GW_CONNECTION_STATUS_OTHER) { + g_warning ("Trash full....Empty Trash!!!!\n"); ++ camel_exception_set (ex, CAMEL_EXCEPTION_SERVICE_INVALID, _("Trash Folder Full. Please Empty.")); ++ goto end1; + /*groupwise_expunge (folder, ex);*/ + } else + camel_exception_set (ex, CAMEL_EXCEPTION_SERVICE_INVALID, _("Authentication failed")); diff --git a/evolution-data-server-1.8.2.tar.bz2 b/evolution-data-server-1.8.2.tar.bz2 new file mode 100644 index 0000000..17ff61f --- /dev/null +++ b/evolution-data-server-1.8.2.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0b02f78306b791233e2aa160c523484602133862a5668138f11db1881b81a84d +size 6972055 diff --git a/evolution-data-server-configure.patch b/evolution-data-server-configure.patch new file mode 100644 index 0000000..fede739 --- /dev/null +++ b/evolution-data-server-configure.patch @@ -0,0 +1,11 @@ +--- configure.in ++++ configure.in +@@ -295,6 +295,8 @@ + ],ac_cv_lkstrftime=no,ac_cv_lkstrftime=no]) + AC_MSG_RESULT($ac_cv_lkstrftime) + ++PKG_PROG_PKG_CONFIG ++ + dnl ******************************************************************************** + dnl security extension support (SSL and S/MIME) + dnl diff --git a/evolution-data-server-decl.patch b/evolution-data-server-decl.patch new file mode 100644 index 0000000..15d68a1 --- /dev/null +++ b/evolution-data-server-decl.patch @@ -0,0 +1,51 @@ +--- docs/reference/addressbook/libebook/libebook.types ++++ docs/reference/addressbook/libebook/libebook.types +@@ -1,4 +1,10 @@ + #include ++#include ++#include ++#include ++#include ++#include ++#include + e_book_listener_get_type + e_book_view_listener_get_type + e_book_view_get_type +--- docs/reference/calendar/libecal/libecal.types ++++ docs/reference/calendar/libecal/libecal.types +@@ -1,4 +1,9 @@ + #include ++#include ++#include ++#include ++#include ++#include + e_cal_get_type + e_cal_view_get_type + e_cal_listener_get_type +--- docs/reference/calendar/libedata-cal/libedata-cal.types ++++ docs/reference/calendar/libedata-cal/libedata-cal.types +@@ -1,4 +1,12 @@ + #include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include + e_cal_backend_cache_get_type + e_cal_backend_factory_get_type + e_cal_backend_sexp_get_type +--- libedataserverui/e-name-selector-dialog.c ++++ libedataserverui/e-name-selector-dialog.c +@@ -30,6 +30,8 @@ + #include + #include + #include ++#include ++#include + #include + #include + #include diff --git a/evolution-data-server-retval.patch b/evolution-data-server-retval.patch new file mode 100644 index 0000000..c6f5bfa --- /dev/null +++ b/evolution-data-server-retval.patch @@ -0,0 +1,21 @@ +--- addressbook/backends/file/e-book-backend-file.c ++++ addressbook/backends/file/e-book-backend-file.c +@@ -523,7 +523,7 @@ + EDataBookView *book_view = data; + FileBackendSearchClosure *closure = get_closure (book_view); + if (!closure) +- return; ++ return NULL; + EBookBackendFile *bf = closure->bf; + const char *query; + DB *db; +--- libedataserverui/e-passwords.c ++++ libedataserverui/e-passwords.c +@@ -270,6 +270,7 @@ + } + + #if WITH_GNOME_KEYRING ++static void + ep_forget_passwords(EPassMsg *msg) + { + GnomeKeyringAttributeList *attributes; diff --git a/evolution-data-server.changes b/evolution-data-server.changes new file mode 100644 index 0000000..495a58d --- /dev/null +++ b/evolution-data-server.changes @@ -0,0 +1,815 @@ +------------------------------------------------------------------- +Fri Dec 29 17:43:36 CET 2006 - sbrabec@suse.cz + +- Use better libexecdir path. +- File list cleanup. +- Splitted evolution-data-server-doc from + evolution-data-server-devel. + +------------------------------------------------------------------- +Fri Dec 29 12:18:27 GMT 2006 - james@usr-local-bin.org + +- Re-enable custom configure options. + +------------------------------------------------------------------- +Wed Dec 13 17:01:40 CST 2006 - maw@suse.de + +- Move to /usr +- Do some specfile cleanup. + +------------------------------------------------------------------- +Tue Nov 21 16:20:49 CET 2006 - sbrabec@suse.cz + +- Do not explicitly require mDNSResponder-lib blocking avahi compat + package. + +------------------------------------------------------------------- +Mon Nov 20 12:54:33 CET 2006 - vvaradhan@novell.com + +- update to version 1.8.2 +- translation updates +- Bug fixes: (bgo) + 330157, 369259, 369168, 350576,350885, 358010, 350880, 347811, + 312348, 328836, 365000, 353924 +- Bug fixes: (bnc) + 268412, 208395, 208318, 207960 +- Removed upstreamed bgo-369168-buffer-overrun.patch + +------------------------------------------------------------------- +Mon Nov 6 12:28:46 CEST 2006 - kharish@novell.com + +- Fix for (bnc) Bug 217142. Patch submitted by Hans Petter Jansson. + +------------------------------------------------------------------- +Fri Oct 27 17:27:44 CEST 2006 - vvaradhan@novell.com + +- Fixes (bnc) + Bug 208519 - evolution groupwise crashes on start + - Commented "bnc-164323-random-mark-unread.patch" (patch46) + as it is a "to-be" reverted patch. + +------------------------------------------------------------------- +Wed Oct 18 11:49:40 CEST 2006 - schwab@suse.de + +- Fix missing declaration. + +------------------------------------------------------------------- +Mon Oct 2 23:17:53 CEST 2006 - jhargadon@suse.de + +- update to version 1.8.1 +- translation updates +- Bug fixes: + 350907, 350617, 347811, 357666, 351330, 352596, 352872, 356051 + +------------------------------------------------------------------- +Sat Sep 30 07:49:31 CEST 2006 - aj@suse.de + +- Do not require libgnomeui-devel for building. + +------------------------------------------------------------------- +Tue Sep 12 11:42:47 CEST 2006 - ro@suse.de + +- fix two cases of missing return values (retval.patch) + +------------------------------------------------------------------- +Mon Sep 4 19:56:41 CEST 2006 - aj@suse.de + +- update to 1.8.0: + * updated translation + * bugfixes + +------------------------------------------------------------------- +Sat Aug 19 01:34:30 CEST 2006 - jhargadon@suse.de + +- update to version 1.7.91 +- Add filters to Groupwise SOAP calls so that each component + fetches items of its own type and none other +- Memory fixes in Addressbook +- Updated Translations +- Support for GW Reminder Notes +- Split cache for less memory, better performance +- Support for security-classifications in GW send options +- Support for default alarms in GW +- Support for Gadu Gadu IM in Contact Entries +- Memory reduction and Performance improvements in Contacts +- Removed patches that were incorporated upstream. + +------------------------------------------------------------------ +Thu Jul 20 05:52:31 CEST 2006 - kharish@novell.com + +- Patch to add alarms to GW meetings by default based on customer + preference. Fixes bnc 167330. + +------------------------------------------------------------------ +Wed Jul 19 04:06:42 CEST 2006 - kharish@novell.com + +- Patch to correctly handle calendar attachment filenames that do + not require special characters handling. They were being parsed + incorrectly and ignored by clients. + +------------------------------------------------------------------- +Wed Jul 5 10:20:25 CEST 2006 - aj@suse.de + +- Handle datarootdir in pkgconfig files. + +------------------------------------------------------------------ +Wed Jul 5 08:06:11 CEST 2006 - psankar@novell.com + +- Enables forwarding of mails + Fixes bnc 167517 + +------------------------------------------------------------------ +Tue Jul 4 13:36:29 CEST 2006 - vvaradhan@novell.com + +- Fixes a build break - Added e-d-s-configure-break-fix.patch + +------------------------------------------------------------------ +Mon Jun 26 11:19:11 CEST 2006 - kharish@novell.com + +- Fixes (bnc) + 187529 - Sequence cache population requests for better + performance. + +------------------------------------------------------------------ +Fri Jun 16 08:16:15 CEST 2006 - vvaradhan@novell.com + +- Fixes (bnc) + 183819 - Evolution crashed while closing in offline mode + 182310 - Evolution crashed when going offline + 183816 - Evolution crashed when swtiched from online to offline... + +------------------------------------------------------------------ +Thu Jun 15 13:39:38 CEST 2006 - psankar@novell.com + +- Added the fix to display the email address + only once for the gw accounts + Fixes bnc #168013, #179622 + +------------------------------------------------------------------ +Fri Jun 9 14:51:30 CEST 2006 - sdevashish@novell.com + +- Added bnc-170052-eds-crash.patch. + +------------------------------------------------------------------- +Thu Jun 8 17:34:59 CEST 2006 - fejj@suse.de + +- Added bnc-179350.patch which fixes a critical deadlock bug in the + GroupWise provider. + +------------------------------------------------------------------- +Thu Jun 8 11:02:30 CEST 2006 - sragavan@novell.com + +- Updated some translation fixes +- Committed patch for bug 181906, which solves a exchange crash. + +------------------------------------------------------------------- +Fri Jun 2 12:48:15 CEST 2006 - sragavan@novell.com + +- Updated German Translations. + +------------------------------------------------------------------- +Wed May 31 23:23:11 CEST 2006 - fejj@suse.de + +- Added bnc-176277-2.patch which fixes a deadlock condition + +------------------------------------------------------------------- +Mon May 29 13:23:30 CEST 2006 - vvaradhan@novell.com + +- Fixes (bnc) + 174255 - Honour desktop proxy setting. + +------------------------------------------------------------------- +Mon May 29 07:53:12 CEST 2006 - sragavan@novell.com + +- Added reworked patch for bug 176615 as per fejj's comment. + +------------------------------------------------------------------- +Thu May 25 09:22:49 CEST 2006 - sragavan@novell.com + +- Fixes (bnc) + 176615 - Added a new camel stream vfs for saving to remote shares. + +------------------------------------------------------------------- +Tue May 23 05:58:46 CEST 2006 - sragavan@novell.com + +- Updated translations (Srini) + +------------------------------------------------------------------- +Mon May 22 19:53:30 CEST 2006 - fejj@suse.de + +- Added bnc-177394.patch to fix a crasher when an IMAP server replies + that the size of a literal is negative. + +------------------------------------------------------------------- +Fri May 19 17:43:26 CEST 2006 - fejj@suse.de + +- Added imap-locking.patch which fixes bug #171502 and bug #176277 + which are both deadlock conditions in the imap code. + +------------------------------------------------------------------- +Thu May 18 11:23:56 CEST 2006 - sragavan@novell.com + +- gw-trash-fix.diff: Show trash folder contents to user. (Sankar) + +------------------------------------------------------------------- +Tue May 16 17:15:24 CEST 2006 - fejj@suse.de + +- Added bnc-173454.patch: Fixes double-base64 encoding of non-7bit MIME + part data. + +------------------------------------------------------------------- +Thu May 11 12:36:53 CEST 2006 - sragavan@novell.com + +- Fixes (bnc) + 169997 - Fixes a issue where the groupwise server crashes due to infinite loop. + +------------------------------------------------------------------- +Fri May 5 06:13:11 CEST 2006 - sragavan@novell.com + +- Added empty-trash-notify.patch: Fixes missing trash folder. +- Fixes (bnc) + 169034 - Fixed the failure to download exchange public folder. +- Removed gw-force-use-imap.patch as it was decided to default to soap. + +------------------------------------------------------------------- +Tue May 2 21:40:52 CEST 2006 - fejj@suse.de + +- Added bnc-167638.patch: Fixes long shutdown times due to the imap/gw providers trying to sync data at exit time. + +------------------------------------------------------------------- +Mon May 1 23:24:29 CEST 2006 - fejj@suse.de + +- Added bgo-315976-INBOX-not-shown-when-override-namespace.patch + +------------------------------------------------------------------- +Tue Apr 25 17:15:39 CEST 2006 - sragavan@novell.com + +- Fixes (bnc) + 169228 - Retract GNOME Keyring Integration from the build (Srini) + +------------------------------------------------------------------- +Mon Apr 24 19:05:15 CEST 2006 - fejj@suse.de + +- bgo-321797: Fix SSL/TLS options to not be able to fallback to + cleartext connections on failure to connect via encrypted channels. + +-------------------------------------------------------------------- +Mon Apr 24 11:21:38 CEST 2006 - sragavan@novell.com + +- bulk-delete.patch: Uses new SOAP API for removing bulk items (Sankar) +- imap-perf.patch: Get onloy the used headers and not all (Sankar) +- nameselectorlist-keychange.diff: Change the keybinding for list (Srini) +- imap4-removal.diff: Remove IMAP4 from the build (harish) + +-------------------------------------------------------------------- +Fri Apr 21 12:44:25 CEST 2006 - sragavan@novell.com + +- Fixes (bgo) + 310433 - Should not allow renaming standard folders. - Sushma + 329371 - Use name in email format doesnot work. +- Fixes (bnc) + 164323 - Updated the previous patch for randomly marking messages unread. + +-------------------------------------------------------------------- +Fri Apr 21 07:31:29 CEST 2006 - sragavan@novell.com + +- Fixes (bnc) + 159934 - Fix for eds CPU high usage (Devashish) + 165714 - Send item id while delegating multiple events. (Harish) +- eds-kerb-check.diff - Ensure checks for expiry take effect while + trying for nt domain. (Harish) + +-------------------------------------------------------------------- +Tue Apr 20 11:44:24 CEST 2006 - psankar@novell.com + +- Fixes (bnc) + 167566 - Crash on disable account - Sankar + 167640 - Syntax error missing space - Partha + +------------------------------------------------------------------- +Tue Apr 18 10:44:24 CEST 2006 - sragavan@novell.com + +- Fixes (bnc) + 1643232 - Randomly marking read messages as unread - Sankar +- Fix to make groupwise use IMAP as default for mails (Harish) + +------------------------------------------------------------------- +Sun Apr 16 20:35:22 CEST 2006 - vvaradhan@novell.com + +- Fixes (bnc) + 152070 evolution-data-server-1.6 crash - Devashish + 160915 Evolution crashed when clicked on 'Goto' date in + calendar view - Chenthill + 163982 While saving appointment system hanged with 126 + error popups - Chenthill + 164140 EDS Crashed when starting 'evolution --offline' - Devashish + 164367 GW: Attachment to appointments/meetings throws 'Unknown Error' + - Chenthill + 164676 evolution-data-server stuck in tight loop - Devashish + +------------------------------------------------------------------- +Fri Apr 7 08:41:09 CEST 2006 - vvaradhan@novell.com + +- Fixes (bnc) + 163664 E-D-S crashes if a contact has invalid UTF-8 - Federico + +------------------------------------------------------------------- +Wed Apr 5 14:15:31 CEST 2006 - vvaradhan@novell.com + +- Fixes (bnc) + 161290 EDS crashed while forwarding a mail - Devashish + 162005 evolution-data-server crashed when deleting a recurring + appointment in my groupwise calendar - Chenthill +- Disable beagle-meta-summary patch + +------------------------------------------------------------------- +Tue Apr 4 10:27:29 CEST 2006 - vvaradhan@novell.com + +- Updated bnc-158107-no-notification-canceled-mtgs.patch - Fixes + sending user specified comments during cancellation of meetings. +- Fixes (bnc) + 161000 Junk mail features in evolution cannot be shut off. - Sankar + 158617 Evolution crashed after few minutes after marking few + mails junk - Sankar - (single patch) +- GW Proxy optimizations - Do not do GetQM while refreshing on proxy. + +------------------------------------------------------------------- +Mon Apr 3 15:14:45 CEST 2006 - vvaradhan@novell.com + +- Fixes (bnc) + 160889 Evolution shows summary folders in tree + +------------------------------------------------------------------- +Tue Mar 28 11:40:48 CEST 2006 - ro@suse.de + +- replace mDNSResponder by mDNSResponder-devel in BuildReq + +------------------------------------------------------------------- +Mon Mar 27 18:57:05 CEST 2006 - vvaradhan@novell.com + +- Fixes (bnc) + 160147 Can't delete calendar accounts once they are created + 158107 No notification of cancelled meetings + +------------------------------------------------------------------- +Mon Mar 27 17:00:10 CEST 2006 - vvaradhan@novell.com + +- Fixes (bgo) + 334416 Evolution crashed while traversing mails + (crash-while-browsing-through-mails.patch) + +------------------------------------------------------------------- +Thu Mar 23 14:54:10 CET 2006 - vvaradhan@novell.com + +- Fixes (bgo) + 334807 EDS Crasher + 323275 EDS Crash @ Startup Of Evolution + 334000 Unexpected dialog while creating appointment/meeting + 272307 groupwise: mail headers are all screwed up with mailing lists +- Fixes (bnc) + 152070 evolution-data-server-1.6 crash (collection of random crashes) + 158112 Send/Receive Dialog can take several minutes to go away +- GW specific SOAP mailer improvements + +------------------------------------------------------------------- +Mon Mar 20 14:34:06 CET 2006 - vvaradhan@novell.com + +- Fixes (bnc) + 138047 Evolution: Message Inconsistency with Passphrase/Password + 153522 Evolution doesn't update message status if two clients + are running against the same account + 152062 Evolution won't show an attachment + 158093 Evolution: Groupwise "Sent Items" folder should have a + "To:" column instead of a "From:" column + +------------------------------------------------------------------- +Wed Mar 15 22:02:09 CET 2006 - vvaradhan@novell.com + +- Fixes (bnc) + 157323 Messages deleted from Groupwise folder remain in Evo. + 156559 Evolution won't show me 827 messages + 153522 Evolution doesn't update message status if two clients + are running against the same account + +------------------------------------------------------------------- +Mon Mar 13 16:04:51 CET 2006 - vvaradhan@novell.com + +- Fixes (bnc) + 137357 Configur groupwise account 'You must be working in + online ...' message displayed + 152355 Mails in mailbox was not displayed unless .evolution + folder contents where deleted + 156584 Evolution won't shut down + 156823 Newly configured groupwise accounts don't work + 115042 Evolution crashes when accessing my cabinet folder +- Feature - Meta summary support for beagle +- Keyring support enabled +- Update to version 1.6.0 - Fixes (bgo) + 329244 Crash when editing To/CC/BCC fields of a mail + 331870 Crashes on addition of two or more email addresses of + same person in name-selector-dialog + 327592 [PATCH] Evolution crashes on exit + 332726 Crash when saving event with recurrence rule + 273060 Recu Meeting: updates accepted for one instance gets deleted + 331633 Evolution crashes upon starting up on Solaris + 329669 Recurring events go crazy + 260346 Evolution is not storing the email ids with the respective + fields for exchange + +------------------------------------------------------------------- +Mon Mar 6 14:22:50 CET 2006 - vvaradhan@novell.com + +- Fixes #155362 - No symbol table information in the generated + debuginfo packages. + Remove '-g0' from CFLAGS in evolution-data-server.spec + +------------------------------------------------------------------- +Mon Feb 27 16:25:41 CET 2006 - vvaradhan@novell.com + +- Update to version 1.5.92 +- Fixes: (in bgo) + 327413: Crash when evolution shuts down + 329306: Crash when entering password multiple times + 331680: Crashes on opening New message compose window + 323384: Email ids from bugzilla mails gets added with a "|" + 260889: Evolution is crashing when clicked clear botton in + search bar in contacts view + 331127: weather calendar crashes e-d-s, use g_free instead + of g_object_unref + 326428: EDS crashed after changing 'Anniversary' field in + contacts UI + 301116: libedataserverui needs to specify the translation + domain explicitly + +- Fixes: (in bnc) + 150427: evo 2.6 - hang on calendar +- Add a patch to integrate with gnome-keyring + +------------------------------------------------------------------- +Sun Feb 12 15:20:12 CET 2006 - aj@suse.de + +- Reduce BuildRequires. + +------------------------------------------------------------------- +Fri Feb 10 12:28:03 CET 2006 - vvaradhan@novell.com + +- Update to version 1.5.90 + +------------------------------------------------------------------- +Tue Jan 31 12:25:52 CET 2006 - ro@suse.de + +- reduced BuildRequires + +------------------------------------------------------------------- +Wed Jan 25 21:31:25 CET 2006 - mls@suse.de + +- converted neededforbuild to BuildRequires + +------------------------------------------------------------------- +Mon Dec 12 13:05:09 CET 2005 - sbrabec@suse.cz + +- Fixed devel dependencies for older products. + +------------------------------------------------------------------- +Tue Dec 6 16:35:09 CET 2005 - sbrabec@suse.cz + +- Degrade to version 1.4.1.1. + http://bugzilla.gnome.org/show_bug.cgi?id=323106 +- Fixed devel dependencies. + +------------------------------------------------------------------- +Thu Dec 1 18:11:03 CET 2005 - gekker@suse.de + +- Update to version 1.4.2.1 + +------------------------------------------------------------------- +Wed Nov 2 22:45:48 CET 2005 - dmueller@suse.de + +- don't build as root + +------------------------------------------------------------------- +Thu Oct 13 17:47:02 CEST 2005 - gekker@suse.de + +- Update to version 1.4.1 +- Fix more warnings + +------------------------------------------------------------------- +Mon Sep 26 01:33:03 CEST 2005 - ro@suse.de + +- added LDAP_DEPRECATED to CFLAGS + +------------------------------------------------------------------- +Fri Sep 9 16:23:59 CEST 2005 - aj@suse.de + +- Change last patch. + +------------------------------------------------------------------- +Wed Sep 7 15:12:38 CEST 2005 - schwab@suse.de + +- Fix missing declarations. + +------------------------------------------------------------------- +Mon Sep 5 11:09:50 CEST 2005 - rodrigo@suse.de + +- Update to version 1.4.0 +- Removed upstreamed patches + +------------------------------------------------------------------- +Wed Aug 24 22:34:01 CEST 2005 - gekker@suse.de + +- Update to version 1.3.8 +- Fix brokeness inlibical + +------------------------------------------------------------------- +Sat Aug 13 07:46:16 CEST 2005 - aj@suse.de + +- Add lzo and lzo-devel to nfb. + +------------------------------------------------------------------- +Fri Aug 12 01:13:36 CEST 2005 - gekker@suse.de + +- Update to version 1.3.7 + +------------------------------------------------------------------- +Mon Aug 1 18:32:44 CEST 2005 - gekker@suse.de + +- Update to version 1.3.6.1 + +------------------------------------------------------------------- +Fri Jul 29 15:13:19 CEST 2005 - sbrabec@suse.cz + +- Require mozilla-nss (#98002). + +------------------------------------------------------------------- +Wed Jul 27 00:59:35 CEST 2005 - ro@suse.de + +- fix typo in specfile + +------------------------------------------------------------------- +Mon Jul 25 23:43:28 CEST 2005 - gekker@suse.de + +- Update to version 1.3.5 + +------------------------------------------------------------------- +Thu Jul 14 14:09:11 CEST 2005 - schwab@suse.de + +- Fix missing declarations again. + +------------------------------------------------------------------- +Fri Jul 1 21:06:07 CEST 2005 - gekker@suse.de + +- Update to version 1.3.3 +- Remove upstreamed patches +- Fix compiler warnings + +------------------------------------------------------------------- +Tue Jun 21 15:04:09 CEST 2005 - schwab@suse.de + +- Fix missing declarations. + +------------------------------------------------------------------- +Fri Jun 10 18:17:57 CEST 2005 - sbrabec@suse.cz + +- Build with system nspr and nss libraries. +- Build with Kerberos 5 support. +- Build documentation. + +------------------------------------------------------------------- +Fri Jun 10 15:24:33 CEST 2005 - sbrabec@suse.cz + +- Build with mozilla-nss. + +------------------------------------------------------------------- +Wed Jun 1 17:54:58 CEST 2005 - sbrabec@suse.cz + +- Fixed devel requirements. + +------------------------------------------------------------------- +Thu May 19 01:52:18 CEST 2005 - ro@suse.de + +- fix build with current pkgconfig + +------------------------------------------------------------------- +Fri Apr 29 15:09:42 CEST 2005 - sbrabec@suse.cz + +- Yet another mail crasher fix (#66996). + http://bugzilla.gnome.org/show_bug.cgi?id=273945 + +------------------------------------------------------------------- +Thu Apr 14 15:19:20 CEST 2005 - sbrabec@suse.cz + +- Fixed serious GCC 4 warnings. + +------------------------------------------------------------------- +Sat Mar 19 19:08:26 CET 2005 - clahey@suse.de + +- Fixes 72916. + +------------------------------------------------------------------- +Fri Mar 18 17:10:37 CET 2005 - gekker@suse.de + +- Fix x-evolution-header (x73401). + +------------------------------------------------------------------- +Wed Mar 16 13:52:04 CET 2005 - gekker@suse.de + +- Update to version 1.2.1 +- Add 64bit-warn.patch + +------------------------------------------------------------------- +Tue Mar 8 23:04:46 CET 2005 - gekker@suse.de + +- Update to version 1.2.0 (GNOME 2.10) +- remove upstreamed dest.patch + +------------------------------------------------------------------- +Wed Mar 2 19:50:38 CET 2005 - gekker@suse.de + +- add dest.patch + +------------------------------------------------------------------- +Wed Mar 2 17:19:19 CET 2005 - gekker@suse.de + +- update to version 1.1.6 + +------------------------------------------------------------------- +Sun Feb 27 23:44:53 CET 2005 - ro@suse.de + +- fix build on lib64 + +------------------------------------------------------------------- +Fri Feb 25 21:53:46 CET 2005 - gekker@suse.de + +- fix libexecdir, so that e-d-s will actually get launched +- enable ssl support now that camel has been moved to e-d-s + +------------------------------------------------------------------- +Wed Feb 9 18:27:21 CET 2005 - gekker@suse.de + +- Update to version 1.1.5 +- Remove upstreamed patch. + +------------------------------------------------------------------- +Sat Feb 5 20:55:37 CET 2005 - gekker@suse.de + +- Update to version 1.1.4.2 +- Remove upsteamed patches, including security fix mentioned below. + +------------------------------------------------------------------- +Mon Jan 24 16:06:58 CET 2005 - sbrabec@suse.cz + +- Fixed integer overflow (arbitrary code execution with elevated + privileges) in lock helper (CAN-2005-0102, #50116). + +------------------------------------------------------------------- +Mon Jan 24 15:46:44 CET 2005 - meissner@suse.de + +- Fixed some gcc 4 warnings/error that show code problems. + +------------------------------------------------------------------- +Fri Jan 14 22:13:56 CET 2005 - clahey@suse.de + +- Update to version 1.1.3. + +------------------------------------------------------------------- +Thu Jan 6 21:49:52 CET 2005 - gekker@suse.de + +- Update to version 1.1.2 + +------------------------------------------------------------------- +Tue Dec 7 17:32:04 CET 2004 - gekker@suse.de + +- Update to version 1.0.3 (Ximian 70057) + +------------------------------------------------------------------- +Tue Nov 30 15:48:00 CET 2004 - ro@suse.de + +- re-diffed libdb.patch + +------------------------------------------------------------------- +Mon Nov 29 20:03:32 CET 2004 - gekker@suse.de + +- Update to version 1.0.2 +- Removed patches included in this update + +------------------------------------------------------------------- +Fri Nov 12 18:05:45 CET 2004 - sbrabec@suse.cz + +- Fixed libdb on x86_64 (broken local contacts in Evolution, #46845). + http://bugzilla.ximian.com/show_bug.cgi?id=67600 + +------------------------------------------------------------------- +Tue Nov 2 17:09:46 CET 2004 - ro@suse.de + +- locale rename: no -> nb + +------------------------------------------------------------------- +Thu Sep 30 21:54:35 CEST 2004 - dobey@suse.de + +- Add patch to fix bug 66368 in bugzilla.ximian.com + +------------------------------------------------------------------- +Thu Sep 30 00:03:07 CEST 2004 - dobey@suse.de + +- Add patch to fix bug 66230 in bugzilla.ximian.com + +------------------------------------------------------------------- +Fri Sep 24 19:51:40 CEST 2004 - dobey@suse.de + +- Updated to version 1.0.1 +- Removed evolution-data-server-0.0.99.dif which is in upstream source + +------------------------------------------------------------------- +Fri Sep 17 02:17:00 CEST 2004 - ro@suse.de + +- readd evolution-data-server-0.0.99.dif to fix parallel build + +------------------------------------------------------------------- +Mon Sep 13 22:00:49 CEST 2004 - dobey@suse.de + +- Updated to version 1.0.0 +- Removed evolution-data-server-0.0.99.dif which was not changelogged, + and seems to not actually change anything + +------------------------------------------------------------------- +Sat Sep 4 12:41:37 CEST 2004 - coolo@suse.de + +- use %jobs (OOo is waiting on it) + +------------------------------------------------------------------- +Fri Aug 27 21:53:34 CEST 2004 - dobey@suse.de + +- Update to version 0.0.99 + +------------------------------------------------------------------- +Wed Aug 18 20:07:44 CEST 2004 - dobey@suse.de + +- Fix LDAP support and remove unused configure options + +------------------------------------------------------------------- +Fri Aug 13 22:43:52 CEST 2004 - dobey@suse.de + +- Update to version 0.0.98 +- Add dependencies to the evolution-data-server-devel package + +------------------------------------------------------------------- +Thu Aug 5 21:15:31 CEST 2004 - dobey@suse.de + +- Add build deps for gnutls libs from libsoup + +------------------------------------------------------------------- +Tue Aug 3 17:54:52 CEST 2004 - dobey@suse.de + +- Don't run any autotools when building with no patches + +------------------------------------------------------------------- +Tue Aug 3 17:23:50 CEST 2004 - dobey@suse.de + +- Patch is in tarball for gnome_segv2 now +- Updated to version 0.0.97 + +------------------------------------------------------------------- +Thu Jul 29 18:27:39 CEST 2004 - dobey@suse.de + +- Add patch from CVS to detect path to gnome_segv2 better + +------------------------------------------------------------------- +Wed Jul 28 20:25:32 CEST 2004 - dobey@suse.de + +- Updated to version 0.0.96 + +------------------------------------------------------------------- +Tue Jul 13 20:31:41 CEST 2004 - clahey@suse.de + +- Updated to version 0.0.95. + +------------------------------------------------------------------- +Mon Jun 21 19:13:23 CEST 2004 - clahey@suse.de + +- Updated to version 0.0.94.1. + +------------------------------------------------------------------- +Fri Jun 4 03:52:11 CEST 2004 - mibarra@suse.de + +- Updated to version 0.0.94. + +------------------------------------------------------------------- +Mon May 24 16:17:53 CEST 2004 - ro@suse.de + +- fix lib64 issue + +------------------------------------------------------------------- +Sat May 22 03:49:56 CEST 2004 - mibarra@suse.de + +- Updated to 0.0.93. + +------------------------------------------------------------------- +Tue May 18 18:54:04 CEST 2004 - clahey@suse.de + +- Don't install to /opt/gnome/libexec + +------------------------------------------------------------------- +Tue May 18 04:32:40 CEST 2004 - clahey@suse.de + +- Initial import of evolution-data-server. + diff --git a/evolution-data-server.spec b/evolution-data-server.spec new file mode 100644 index 0000000..9e7c66a --- /dev/null +++ b/evolution-data-server.spec @@ -0,0 +1,721 @@ +# +# spec file for package evolution-data-server (Version 1.8.2) +# +# Copyright (c) 2007 SUSE LINUX Products GmbH, Nuernberg, Germany. +# This file and all modifications and additions to the pristine +# package are under the same license as the package itself. +# +# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# + +# norootforbuild + +Name: evolution-data-server +BuildRequires: gcc-c++ gnome-common gnome-keyring-devel gtk-doc intltool krb5-devel libglade2-devel libgnome-devel libidl-devel libsoup-devel mDNSResponder-devel mozilla-nss-devel openldap2 openldap2-devel perl-XML-Parser python-devel sgml-skel +License: GNU General Public License (GPL) +Group: Development/Libraries/GNOME +Autoreqprov: on +Summary: Evolution Data Server +Version: 1.8.2 +Release: 14 +Source: ftp://ftp.gnome.org/pub/gnome/sources/evolution-data-server/1.8/%{name}-%{version}.tar.bz2 +#Patch3: evolution-data-server-gcc4.patch +Patch5: evolution-data-server-configure.patch +Patch6: nss-nspr.patch +Patch7: evolution-data-server-decl.patch +Patch8: eds-warnings.patch +Patch9: evolution-fix-function-declarations.patch +# FIXME: After upgrade, use patch# - 100 +#Patch108: eds-1.5.5-warnings.patch +#Patch10: keyring-integration.patch +Patch11: backend-timeout-fix.patch +Patch12: bnc-156823-newly-configured-gw-dont-work.patch +Patch13: bnc-156584-evo-wont-shutdown.patch +Patch14: beagle-meta-summary.patch +Patch15: bnc-137357-newly-configured-gw-dont-work.patch +Patch16: bnc-152355-mails-doesnt-show-gw.patch +Patch17: bnc-157323-messages-deleted-from-gw-remain-in-evo.patch +Patch18: bnc-153522-evolution-doesnt-update-message-status.patch +Patch19: bnc-158093-sent-folder-have-to-not-from.patch +Patch20: bnc-138047-password-passphrase-msg-inconsistency.patch +Patch21: bnc-153522-evo-doesnt-update-msg-status-workaround.patch +Patch22: bnc-152062-evolution-wont-show-attachment.patch +Patch23: bgo-272307-evolution-clobbers-mail-address.patch +Patch24: bgo-331146-eds-crash-at-startup.patch +Patch25: bgo-334807-eds-crasher.patch +Patch26: bgo-323275-eds-crash-at-startup.patch +Patch27: bgo-334000-unexpected-dialog-creating-appt.patch +Patch28: patch-for-random-eds-addr-crashes.patch +Patch29: camel-partha-gw-fixes.patch +Patch30: bnc-158112-send-receive-dlg-takes-time.patch +Patch31: crash-while-browsing-through-mails.patch +Patch32: bnc-158107-no-notification-canceled-mtgs.patch +Patch33: bnc-160147-cant-delete-created-calendar-accounts.patch +Patch34: bnc-161000-junk-mail-dont-work.patch +Patch35: gw-proxy-issues.patch +Patch36: bnc-161290-eds-crashed-forwarding-mail.patch +Patch37: bnc-162005-e-d-s-crash-deleting-recur-appt.patch +Patch38: bnc-163664-eds-crashes-on-invalid-utf8-contacts.patch +Patch39: bnc-160915-evolution-crash-clickng-goto-cal-view.patch +Patch40: bnc-164367-gw-attachments-appts-throw-error.patch +Patch41: bnc-163982-system-hang-with-126-error-popups.patch +Patch42: bnc-164676-eds-stuck-tight-loop.patch +Patch43: bnc-152070-eds-crash.patch +Patch44: bnc-164140-eds-crash-evolution--offline.patch +#Patch45: gw-force-use-imap.patch +Patch46: bnc-164323-random-mark-unread.patch +Patch47: 167566-camel-groupwise-summary.patch +Patch48: 167640-camel-groupwise-store.patch +Patch49: bnc-159934-eds-CPU-spikes.patch +Patch50: eds-kerb-check.diff +Patch51: bnc-165714-eds-delegate-multiple-events.diff +Patch52: bgo-310433-eds-deny-rename-stdfolders.diff +Patch53: bgo-329371-eds-fix-full-username-email-format.patch +Patch54: bnc-164323-random-mark-unread-updated.patch +Patch55: bulk-delete.patch +Patch56: imap-perf.patch +Patch57: nameselectorlist-keychange.diff +Patch58: imap4-removal.diff +Patch59: bgo-321797.patch +Patch60: bgo-315976-INBOX-not-shown-when-override-namespace.patch +Patch61: bnc-167638.patch +Patch62: empty-trash-notify.patch +Patch63: bnc-169034-eds-pub-folder-download.diff +Patch64: bnc-169997-eds-infinite-loop.diff +Patch65: bnc-173454.patch +Patch66: gw-trash-fix.diff +Patch67: imap-locking.patch +Patch68: bnc-177394.patch +Patch69: eds-updated-translations.diff +Patch70: camel-vfs-stream.diff +Patch71: bnc-174255-honour-system-proxy-settings.patch +Patch72: bnc-176277-2.patch +Patch73: german-translation-eds.diff +Patch74: bnc-181906-eds-ex-crash.diff +Patch75: eds-translations-updated.diff +Patch76: bnc-179350.patch +Patch77: bnc-170052-eds-crash.patch +Patch78: email-appears-twice.patch +Patch79: bnc-183819-evo-crashed-closing-offline.patch +Patch80: bnc-187529-calendar-cache-population.patch +Patch81: e-d-s-configure-break-fix.patch +Patch82: fwd-mail.patch +Patch83: datarootdir.diff +Patch84: cal-attachment-filename-handling.patch +Patch85: bnc-167330-default-GW-alarms.patch +Patch86: eds-compiler-warning.patch +Patch87: evolution-data-server-retval.patch +Patch88: implicit-declaration.diff +Patch89: bgo-369168-buffer-overrun.patch +# Change patch below if we move away from /opt/gnome +# It avoids a build dependency on libgnomeui to speed up bootstrap +Patch99: libgnomeui-dep.patch +Url: http://www.gnome.org +BuildRoot: %{_tmppath}/%{name}-%{version}-build +Requires: libsoup >= 2.2.6 mozilla-nss + +%description +Evolution Data Server provides a central location for your address book +and calendar in the GNOME Desktop. + + + +%package devel +Summary: Evolution Data Server Development Files +Group: Development/Libraries/GNOME +Requires: evolution-data-server = %{?epoch:%{epoch}:}%{version}-%{release} +Requires: libsoup-devel libbonobo-devel libgnome-devel gnome-vfs2-devel libxml2-devel orbit2-devel openldap2-devel libglade2-devel +Requires: gtk2-devel gconf2-devel glib2-devel gnome-keyring-devel +%if %suse_version >= 930 +Requires: krb5-devel +%endif +%if %suse_version >= 1000 +Requires: libcom_err +%endif + +%description devel +The Evolution Data Server development files provide the necessary +libraries, headers, and other files for developing applications which +use the Evolution Data Server for storing contact and calendar +information. + + + +%package doc +Summary: Additional Package Documentation. +Group: Development/Libraries/GNOME +Requires: %{name} = %{version} + +%description doc +Evolution Data Server provides a central location for your address book +and calendar in the GNOME Desktop. + + + +%prep +%setup -q +#%patch3 +%patch5 +#%patch6 +%patch7 +#%patch108 +%patch8 +%patch9 +#%patch10 +#%patch11 +#%patch12 +#%patch13 +#%patch14 +#%patch15 +#%patch16 +#%patch17 +#%patch18 +#%patch19 +#%patch20 +#%patch21 +#%patch22 +#%patch23 +#%patch24 +#%patch25 +#%patch26 +#%patch27 +#%patch28 -p0 +#%patch29 +#%patch30 +#%patch31 +#%patch32 +#%patch33 +#%patch34 +#%patch35 +#%patch36 +#%patch37 +#%patch38 +%patch39 +%patch40 +%patch41 +#%patch42 +%patch43 +%patch44 +#%patch45 +#%patch46 +#%patch47 +#%patch48 +#%patch49 +#%patch50 +#%patch51 +#%patch52 +#%patch53 +#%patch54 +#%patch55 +#%patch56 +#%patch57 +#%patch58 +#%patch59 +#%patch60 +%patch61 +#%patch62 +#%patch63 +#%patch64 +#%patch65 +#%patch66 +#%patch67 +#%patch68 +#%patch69 +#%patch70 +%patch71 +#%patch72 +#%patch73 +#%patch74 +#%patch75 +#%patch77 +#%patch78 +%patch79 +#%patch80 +#%patch81 +#%patch82 +#%patch83 +%patch86 +%patch87 +%patch88 +#%patch89 +%patch99 -p1 + +%build +libtoolize --force --copy +intltoolize --force --copy +aclocal +autoconf +automake +autoheader +# needed for evolution-data-server-1.8.2: +export CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing" +%configure\ + --libexecdir=%{_prefix}/lib/evolution-data-server\ + --with-openldap\ + --with-krb5=/usr\ + --enable-gnome-keyring\ + --enable-gtk-doc\ + --enable-ssl +make %{?jobs:-j%jobs} + +%install +make DESTDIR=$RPM_BUILD_ROOT install +%find_lang evolution-data-server-1.8 +rm $RPM_BUILD_ROOT%{_libdir}/*/*/*.*a + +%clean +rm -rf $RPM_BUILD_ROOT + +%files -f evolution-data-server-1.8.lang +%defattr(-,root,root) +%doc README COPYING ChangeLog NEWS TODO AUTHORS INSTALL +%{_datadir}/evolution-data-server-1.8 +%{_datadir}/idl/evolution-data-server-1.2 +%{_datadir}/pixmaps/evolution-data-server-1.8 +%{_libdir}/*.so.* +%{_libdir}/bonobo/servers/* +%{_libdir}/evolution-data-server-1.2 +%{_prefix}/lib/evolution-data-server + +%files devel +%defattr(-, root, root) +%{_includedir}/evolution-data-server-1.8 +%{_libdir}/*.so +%{_libdir}/*.*a +%{_libdir}/pkgconfig/*.pc + +%files doc +%defattr(-, root, root) +%{_datadir}/gtk-doc/html/* + +%changelog -n evolution-data-server +* Fri Dec 29 2006 - sbrabec@suse.cz +- Use better libexecdir path. +- File list cleanup. +- Splitted evolution-data-server-doc from + evolution-data-server-devel. +* Fri Dec 29 2006 - james@usr-local-bin.org +- Re-enable custom configure options. +* Wed Dec 13 2006 - maw@suse.de +- Move to /usr +- Do some specfile cleanup. +* Tue Nov 21 2006 - sbrabec@suse.cz +- Do not explicitly require mDNSResponder-lib blocking avahi compat + package. +* Mon Nov 20 2006 - vvaradhan@novell.com +- update to version 1.8.2 +- translation updates +- Bug fixes: (bgo) + 330157, 369259, 369168, 350576,350885, 358010, 350880, 347811, + 312348, 328836, 365000, 353924 +- Bug fixes: (bnc) + 268412, 208395, 208318, 207960 +- Removed upstreamed bgo-369168-buffer-overrun.patch +* Mon Nov 06 2006 - kharish@novell.com +- Fix for (bnc) Bug 217142. Patch submitted by Hans Petter Jansson. +* Fri Oct 27 2006 - vvaradhan@novell.com +- Fixes (bnc) + Bug 208519 - evolution groupwise crashes on start + - Commented "bnc-164323-random-mark-unread.patch" (patch46) + as it is a "to-be" reverted patch. +* Wed Oct 18 2006 - schwab@suse.de +- Fix missing declaration. +* Mon Oct 02 2006 - jhargadon@suse.de +- update to version 1.8.1 +- translation updates +- Bug fixes: + 350907, 350617, 347811, 357666, 351330, 352596, 352872, 356051 +* Sat Sep 30 2006 - aj@suse.de +- Do not require libgnomeui-devel for building. +* Tue Sep 12 2006 - ro@suse.de +- fix two cases of missing return values (retval.patch) +* Mon Sep 04 2006 - aj@suse.de +- update to 1.8.0: + * updated translation + * bugfixes +* Sat Aug 19 2006 - jhargadon@suse.de +- update to version 1.7.91 +- Add filters to Groupwise SOAP calls so that each component + fetches items of its own type and none other +- Memory fixes in Addressbook +- Updated Translations +- Support for GW Reminder Notes +- Split cache for less memory, better performance +- Support for security-classifications in GW send options +- Support for default alarms in GW +- Support for Gadu Gadu IM in Contact Entries +- Memory reduction and Performance improvements in Contacts +- Removed patches that were incorporated upstream. +* Thu Jul 20 2006 - kharish@novell.com +- Patch to add alarms to GW meetings by default based on customer + preference. Fixes bnc 167330. +* Wed Jul 19 2006 - kharish@novell.com +- Patch to correctly handle calendar attachment filenames that do + not require special characters handling. They were being parsed + incorrectly and ignored by clients. +* Wed Jul 05 2006 - aj@suse.de +- Handle datarootdir in pkgconfig files. +* Wed Jul 05 2006 - psankar@novell.com +- Enables forwarding of mails + Fixes bnc 167517 +* Tue Jul 04 2006 - vvaradhan@novell.com +- Fixes a build break - Added e-d-s-configure-break-fix.patch +* Mon Jun 26 2006 - kharish@novell.com +- Fixes (bnc) + 187529 - Sequence cache population requests for better + performance. +* Fri Jun 16 2006 - vvaradhan@novell.com +- Fixes (bnc) + 183819 - Evolution crashed while closing in offline mode + 182310 - Evolution crashed when going offline + 183816 - Evolution crashed when swtiched from online to offline... +* Thu Jun 15 2006 - psankar@novell.com +- Added the fix to display the email address + only once for the gw accounts + Fixes bnc #168013, #179622 +* Fri Jun 09 2006 - sdevashish@novell.com +- Added bnc-170052-eds-crash.patch. +* Thu Jun 08 2006 - fejj@suse.de +- Added bnc-179350.patch which fixes a critical deadlock bug in the + GroupWise provider. +* Thu Jun 08 2006 - sragavan@novell.com +- Updated some translation fixes +- Committed patch for bug 181906, which solves a exchange crash. +* Fri Jun 02 2006 - sragavan@novell.com +- Updated German Translations. +* Wed May 31 2006 - fejj@suse.de +- Added bnc-176277-2.patch which fixes a deadlock condition +* Mon May 29 2006 - vvaradhan@novell.com +- Fixes (bnc) + 174255 - Honour desktop proxy setting. +* Mon May 29 2006 - sragavan@novell.com +- Added reworked patch for bug 176615 as per fejj's comment. +* Thu May 25 2006 - sragavan@novell.com +- Fixes (bnc) + 176615 - Added a new camel stream vfs for saving to remote shares. +* Tue May 23 2006 - sragavan@novell.com +- Updated translations (Srini) +* Mon May 22 2006 - fejj@suse.de +- Added bnc-177394.patch to fix a crasher when an IMAP server replies + that the size of a literal is negative. +* Fri May 19 2006 - fejj@suse.de +- Added imap-locking.patch which fixes bug #171502 and bug #176277 + which are both deadlock conditions in the imap code. +* Thu May 18 2006 - sragavan@novell.com +- gw-trash-fix.diff: Show trash folder contents to user. (Sankar) +* Tue May 16 2006 - fejj@suse.de +- Added bnc-173454.patch: Fixes double-base64 encoding of non-7bit MIME + part data. +* Thu May 11 2006 - sragavan@novell.com +- Fixes (bnc) + 169997 - Fixes a issue where the groupwise server crashes due to infinite loop. +* Fri May 05 2006 - sragavan@novell.com +- Added empty-trash-notify.patch: Fixes missing trash folder. +- Fixes (bnc) + 169034 - Fixed the failure to download exchange public folder. +- Removed gw-force-use-imap.patch as it was decided to default to soap. +* Tue May 02 2006 - fejj@suse.de +- Added bnc-167638.patch: Fixes long shutdown times due to the imap/gw providers trying to sync data at exit time. +* Mon May 01 2006 - fejj@suse.de +- Added bgo-315976-INBOX-not-shown-when-override-namespace.patch +* Tue Apr 25 2006 - sragavan@novell.com +- Fixes (bnc) + 169228 - Retract GNOME Keyring Integration from the build (Srini) +* Mon Apr 24 2006 - fejj@suse.de +- bgo-321797: Fix SSL/TLS options to not be able to fallback to + cleartext connections on failure to connect via encrypted channels. +* Mon Apr 24 2006 - sragavan@novell.com +- bulk-delete.patch: Uses new SOAP API for removing bulk items (Sankar) +- imap-perf.patch: Get onloy the used headers and not all (Sankar) +- nameselectorlist-keychange.diff: Change the keybinding for list (Srini) +- imap4-removal.diff: Remove IMAP4 from the build (harish) +* Fri Apr 21 2006 - sragavan@novell.com +- Fixes (bgo) + 310433 - Should not allow renaming standard folders. - Sushma + 329371 - Use name in email format doesnot work. +- Fixes (bnc) + 164323 - Updated the previous patch for randomly marking messages unread. +* Fri Apr 21 2006 - sragavan@novell.com +- Fixes (bnc) + 159934 - Fix for eds CPU high usage (Devashish) + 165714 - Send item id while delegating multiple events. (Harish) +- eds-kerb-check.diff - Ensure checks for expiry take effect while + trying for nt domain. (Harish) +* Thu Apr 20 2006 - psankar@novell.com +- Fixes (bnc) + 167566 - Crash on disable account - Sankar + 167640 - Syntax error missing space - Partha +* Tue Apr 18 2006 - sragavan@novell.com +- Fixes (bnc) + 1643232 - Randomly marking read messages as unread - Sankar +- Fix to make groupwise use IMAP as default for mails (Harish) +* Sun Apr 16 2006 - vvaradhan@novell.com +- Fixes (bnc) + 152070 evolution-data-server-1.6 crash - Devashish + 160915 Evolution crashed when clicked on 'Goto' date in + calendar view - Chenthill + 163982 While saving appointment system hanged with 126 + error popups - Chenthill + 164140 EDS Crashed when starting 'evolution --offline' - Devashish + 164367 GW: Attachment to appointments/meetings throws 'Unknown Error' + - Chenthill + 164676 evolution-data-server stuck in tight loop - Devashish +* Fri Apr 07 2006 - vvaradhan@novell.com +- Fixes (bnc) + 163664 E-D-S crashes if a contact has invalid UTF-8 - Federico +* Wed Apr 05 2006 - vvaradhan@novell.com +- Fixes (bnc) + 161290 EDS crashed while forwarding a mail - Devashish + 162005 evolution-data-server crashed when deleting a recurring + appointment in my groupwise calendar - Chenthill +- Disable beagle-meta-summary patch +* Tue Apr 04 2006 - vvaradhan@novell.com +- Updated bnc-158107-no-notification-canceled-mtgs.patch - Fixes + sending user specified comments during cancellation of meetings. +- Fixes (bnc) + 161000 Junk mail features in evolution cannot be shut off. - Sankar + 158617 Evolution crashed after few minutes after marking few + mails junk - Sankar - (single patch) +- GW Proxy optimizations - Do not do GetQM while refreshing on proxy. +* Mon Apr 03 2006 - vvaradhan@novell.com +- Fixes (bnc) + 160889 Evolution shows summary folders in tree +* Tue Mar 28 2006 - ro@suse.de +- replace mDNSResponder by mDNSResponder-devel in BuildReq +* Mon Mar 27 2006 - vvaradhan@novell.com +- Fixes (bnc) + 160147 Can't delete calendar accounts once they are created + 158107 No notification of cancelled meetings +* Mon Mar 27 2006 - vvaradhan@novell.com +- Fixes (bgo) + 334416 Evolution crashed while traversing mails + (crash-while-browsing-through-mails.patch) +* Thu Mar 23 2006 - vvaradhan@novell.com +- Fixes (bgo) + 334807 EDS Crasher + 323275 EDS Crash @ Startup Of Evolution + 334000 Unexpected dialog while creating appointment/meeting + 272307 groupwise: mail headers are all screwed up with mailing lists +- Fixes (bnc) + 152070 evolution-data-server-1.6 crash (collection of random crashes) + 158112 Send/Receive Dialog can take several minutes to go away +- GW specific SOAP mailer improvements +* Mon Mar 20 2006 - vvaradhan@novell.com +- Fixes (bnc) + 138047 Evolution: Message Inconsistency with Passphrase/Password + 153522 Evolution doesn't update message status if two clients + are running against the same account + 152062 Evolution won't show an attachment + 158093 Evolution: Groupwise "Sent Items" folder should have a + "To:" column instead of a "From:" column +* Wed Mar 15 2006 - vvaradhan@novell.com +- Fixes (bnc) + 157323 Messages deleted from Groupwise folder remain in Evo. + 156559 Evolution won't show me 827 messages + 153522 Evolution doesn't update message status if two clients + are running against the same account +* Mon Mar 13 2006 - vvaradhan@novell.com +- Fixes (bnc) + 137357 Configur groupwise account 'You must be working in + online ...' message displayed + 152355 Mails in mailbox was not displayed unless .evolution + folder contents where deleted + 156584 Evolution won't shut down + 156823 Newly configured groupwise accounts don't work + 115042 Evolution crashes when accessing my cabinet folder +- Feature - Meta summary support for beagle +- Keyring support enabled +- Update to version 1.6.0 - Fixes (bgo) + 329244 Crash when editing To/CC/BCC fields of a mail + 331870 Crashes on addition of two or more email addresses of + same person in name-selector-dialog + 327592 [PATCH] Evolution crashes on exit + 332726 Crash when saving event with recurrence rule + 273060 Recu Meeting: updates accepted for one instance gets deleted + 331633 Evolution crashes upon starting up on Solaris + 329669 Recurring events go crazy + 260346 Evolution is not storing the email ids with the respective + fields for exchange +* Mon Mar 06 2006 - vvaradhan@novell.com +- Fixes #155362 - No symbol table information in the generated + debuginfo packages. + Remove '-g0' from CFLAGS in evolution-data-server.spec +* Mon Feb 27 2006 - vvaradhan@novell.com +- Update to version 1.5.92 +- Fixes: (in bgo) + 327413: Crash when evolution shuts down + 329306: Crash when entering password multiple times + 331680: Crashes on opening New message compose window + 323384: Email ids from bugzilla mails gets added with a "|" + 260889: Evolution is crashing when clicked clear botton in + search bar in contacts view + 331127: weather calendar crashes e-d-s, use g_free instead + of g_object_unref + 326428: EDS crashed after changing 'Anniversary' field in + contacts UI + 301116: libedataserverui needs to specify the translation + domain explicitly +- Fixes: (in bnc) + 150427: evo 2.6 - hang on calendar +- Add a patch to integrate with gnome-keyring +* Sun Feb 12 2006 - aj@suse.de +- Reduce BuildRequires. +* Fri Feb 10 2006 - vvaradhan@novell.com +- Update to version 1.5.90 +* Tue Jan 31 2006 - ro@suse.de +- reduced BuildRequires +* Wed Jan 25 2006 - mls@suse.de +- converted neededforbuild to BuildRequires +* Mon Dec 12 2005 - sbrabec@suse.cz +- Fixed devel dependencies for older products. +* Tue Dec 06 2005 - sbrabec@suse.cz +- Degrade to version 1.4.1.1. + http://bugzilla.gnome.org/show_bug.cgi?id=323106 +- Fixed devel dependencies. +* Thu Dec 01 2005 - gekker@suse.de +- Update to version 1.4.2.1 +* Wed Nov 02 2005 - dmueller@suse.de +- don't build as root +* Thu Oct 13 2005 - gekker@suse.de +- Update to version 1.4.1 +- Fix more warnings +* Mon Sep 26 2005 - ro@suse.de +- added LDAP_DEPRECATED to CFLAGS +* Fri Sep 09 2005 - aj@suse.de +- Change last patch. +* Wed Sep 07 2005 - schwab@suse.de +- Fix missing declarations. +* Mon Sep 05 2005 - rodrigo@suse.de +- Update to version 1.4.0 +- Removed upstreamed patches +* Wed Aug 24 2005 - gekker@suse.de +- Update to version 1.3.8 +- Fix brokeness inlibical +* Sat Aug 13 2005 - aj@suse.de +- Add lzo and lzo-devel to nfb. +* Fri Aug 12 2005 - gekker@suse.de +- Update to version 1.3.7 +* Mon Aug 01 2005 - gekker@suse.de +- Update to version 1.3.6.1 +* Fri Jul 29 2005 - sbrabec@suse.cz +- Require mozilla-nss (#98002). +* Wed Jul 27 2005 - ro@suse.de +- fix typo in specfile +* Mon Jul 25 2005 - gekker@suse.de +- Update to version 1.3.5 +* Thu Jul 14 2005 - schwab@suse.de +- Fix missing declarations again. +* Fri Jul 01 2005 - gekker@suse.de +- Update to version 1.3.3 +- Remove upstreamed patches +- Fix compiler warnings +* Tue Jun 21 2005 - schwab@suse.de +- Fix missing declarations. +* Fri Jun 10 2005 - sbrabec@suse.cz +- Build with system nspr and nss libraries. +- Build with Kerberos 5 support. +- Build documentation. +* Fri Jun 10 2005 - sbrabec@suse.cz +- Build with mozilla-nss. +* Wed Jun 01 2005 - sbrabec@suse.cz +- Fixed devel requirements. +* Thu May 19 2005 - ro@suse.de +- fix build with current pkgconfig +* Fri Apr 29 2005 - sbrabec@suse.cz +- Yet another mail crasher fix (#66996). + http://bugzilla.gnome.org/show_bug.cgi?id=273945 +* Thu Apr 14 2005 - sbrabec@suse.cz +- Fixed serious GCC 4 warnings. +* Sat Mar 19 2005 - clahey@suse.de +- Fixes 72916. +* Fri Mar 18 2005 - gekker@suse.de +- Fix x-evolution-header (x73401). +* Wed Mar 16 2005 - gekker@suse.de +- Update to version 1.2.1 +- Add 64bit-warn.patch +* Tue Mar 08 2005 - gekker@suse.de +- Update to version 1.2.0 (GNOME 2.10) +- remove upstreamed dest.patch +* Wed Mar 02 2005 - gekker@suse.de +- add dest.patch +* Wed Mar 02 2005 - gekker@suse.de +- update to version 1.1.6 +* Sun Feb 27 2005 - ro@suse.de +- fix build on lib64 +* Fri Feb 25 2005 - gekker@suse.de +- fix libexecdir, so that e-d-s will actually get launched +- enable ssl support now that camel has been moved to e-d-s +* Wed Feb 09 2005 - gekker@suse.de +- Update to version 1.1.5 +- Remove upstreamed patch. +* Sat Feb 05 2005 - gekker@suse.de +- Update to version 1.1.4.2 +- Remove upsteamed patches, including security fix mentioned below. +* Mon Jan 24 2005 - sbrabec@suse.cz +- Fixed integer overflow (arbitrary code execution with elevated + privileges) in lock helper (CAN-2005-0102, #50116). +* Mon Jan 24 2005 - meissner@suse.de +- Fixed some gcc 4 warnings/error that show code problems. +* Fri Jan 14 2005 - clahey@suse.de +- Update to version 1.1.3. +* Thu Jan 06 2005 - gekker@suse.de +- Update to version 1.1.2 +* Tue Dec 07 2004 - gekker@suse.de +- Update to version 1.0.3 (Ximian 70057) +* Tue Nov 30 2004 - ro@suse.de +- re-diffed libdb.patch +* Mon Nov 29 2004 - gekker@suse.de +- Update to version 1.0.2 +- Removed patches included in this update +* Fri Nov 12 2004 - sbrabec@suse.cz +- Fixed libdb on x86_64 (broken local contacts in Evolution, #46845). + http://bugzilla.ximian.com/show_bug.cgi?id=67600 +* Tue Nov 02 2004 - ro@suse.de +- locale rename: no -> nb +* Thu Sep 30 2004 - dobey@suse.de +- Add patch to fix bug 66368 in bugzilla.ximian.com +* Thu Sep 30 2004 - dobey@suse.de +- Add patch to fix bug 66230 in bugzilla.ximian.com +* Fri Sep 24 2004 - dobey@suse.de +- Updated to version 1.0.1 +- Removed evolution-data-server-0.0.99.dif which is in upstream source +* Fri Sep 17 2004 - ro@suse.de +- readd evolution-data-server-0.0.99.dif to fix parallel build +* Mon Sep 13 2004 - dobey@suse.de +- Updated to version 1.0.0 +- Removed evolution-data-server-0.0.99.dif which was not changelogged, + and seems to not actually change anything +* Sat Sep 04 2004 - coolo@suse.de +- use %%jobs (OOo is waiting on it) +* Fri Aug 27 2004 - dobey@suse.de +- Update to version 0.0.99 +* Wed Aug 18 2004 - dobey@suse.de +- Fix LDAP support and remove unused configure options +* Fri Aug 13 2004 - dobey@suse.de +- Update to version 0.0.98 +- Add dependencies to the evolution-data-server-devel package +* Thu Aug 05 2004 - dobey@suse.de +- Add build deps for gnutls libs from libsoup +* Tue Aug 03 2004 - dobey@suse.de +- Don't run any autotools when building with no patches +* Tue Aug 03 2004 - dobey@suse.de +- Patch is in tarball for gnome_segv2 now +- Updated to version 0.0.97 +* Thu Jul 29 2004 - dobey@suse.de +- Add patch from CVS to detect path to gnome_segv2 better +* Wed Jul 28 2004 - dobey@suse.de +- Updated to version 0.0.96 +* Tue Jul 13 2004 - clahey@suse.de +- Updated to version 0.0.95. +* Mon Jun 21 2004 - clahey@suse.de +- Updated to version 0.0.94.1. +* Fri Jun 04 2004 - mibarra@suse.de +- Updated to version 0.0.94. +* Mon May 24 2004 - ro@suse.de +- fix lib64 issue +* Sat May 22 2004 - mibarra@suse.de +- Updated to 0.0.93. +* Tue May 18 2004 - clahey@suse.de +- Don't install to /opt/gnome/libexec +* Tue May 18 2004 - clahey@suse.de +- Initial import of evolution-data-server. diff --git a/evolution-fix-function-declarations.patch b/evolution-fix-function-declarations.patch new file mode 100644 index 0000000..d8f7e02 --- /dev/null +++ b/evolution-fix-function-declarations.patch @@ -0,0 +1,16 @@ +--- docs/reference/libedataserver/libedataserver.types ++++ docs/reference/libedataserver/libedataserver.types +@@ -1,4 +1,13 @@ + #include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include + e_account_get_type + e_component_listener_get_type + e_file_cache_get_type diff --git a/fwd-mail.patch b/fwd-mail.patch new file mode 100644 index 0000000..189ef5a --- /dev/null +++ b/fwd-mail.patch @@ -0,0 +1,63 @@ +Index: servers/groupwise/e-gw-item.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/servers/groupwise/e-gw-item.c,v +retrieving revision 1.100 +diff -u -p -r1.100 e-gw-item.c +--- servers/groupwise/e-gw-item.c 13 Jun 2006 07:15:37 -0000 1.100 ++++ servers/groupwise/e-gw-item.c 13 Jun 2006 10:54:23 -0000 +@@ -72,6 +72,7 @@ struct _EGwItemPrivate { + char *msg_body_id; + int item_status; + /*Attachments*/ ++ gboolean has_attachment; + GSList *attach_list ; + /*linkInfo for replies*/ + EGwItemLinkInfo *link_info; +@@ -525,6 +526,7 @@ e_gw_item_init (EGwItem *item, EGwItemCl + priv->self_status = 0; + priv->link_info = NULL; + priv->msg_body_id = NULL; ++ priv->has_attachment = FALSE; + item->priv = priv; + + +@@ -1795,6 +1797,9 @@ e_gw_item_new_from_soap_parameter (const + } else if (!g_ascii_strcasecmp (name, "size")) { + item->priv->size = soup_soap_parameter_get_int_value (child); + ++ } else if (!g_ascii_strcasecmp (name, "hasAttachment")) { ++ item->priv->has_attachment = soup_soap_parameter_get_int_value (child); ++ + } else if (!g_ascii_strcasecmp (name, "options")) { + SoupSoapParameter *subparam; + char *value = NULL; +@@ -2065,6 +2070,14 @@ e_gw_item_get_mail_size (EGwItem *item) + return item->priv->size; + } + ++gboolean ++e_gw_item_has_attachment (EGwItem *item) ++{ ++ g_return_val_if_fail (E_IS_GW_ITEM (item), 0); ++ ++ return item->priv->has_attachment; ++} ++ + char * + e_gw_item_get_creation_date (EGwItem *item) + { +Index: servers/groupwise/e-gw-item.h +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/servers/groupwise/e-gw-item.h,v +retrieving revision 1.40 +diff -u -p -r1.40 e-gw-item.h +--- servers/groupwise/e-gw-item.h 6 Dec 2005 10:05:57 -0000 1.40 ++++ servers/groupwise/e-gw-item.h 13 Jun 2006 10:54:23 -0000 +@@ -298,6 +298,7 @@ void e_gw_item_set_source (EGwItem *item + int e_gw_item_get_trigger (EGwItem *item); + void e_gw_item_set_trigger (EGwItem *item, int trigger); + ++gboolean e_gw_item_has_attachment (EGwItem *item); + + typedef struct { + char *email; diff --git a/german-translation-eds.diff b/german-translation-eds.diff new file mode 100644 index 0000000..76ca756 --- /dev/null +++ b/german-translation-eds.diff @@ -0,0 +1,53 @@ +--- /root/sragavan/602/build-eds/usr/src/packages/BUILD/evolution-data-server-1.6.0/po/de.po 2006-06-02 06:39:20.962276877 +0200 ++++ po/de.po 2006-05-25 12:28:10.000000000 +0200 +@@ -12,7 +12,7 @@ + "Project-Id-Version: evolution-data-server\n" + "Report-Msgid-Bugs-To: \n" + "POT-Creation-Date: 2006-05-04 06:53+0000\n" +-"PO-Revision-Date: 2006-05-17 11:25\n" ++"PO-Revision-Date: 2006-05-25 11:28\n" + "Last-Translator: Novell Language \n" + "Language-Team: Novell Language \n" + "MIME-Version: 1.0\n" +@@ -656,7 +656,7 @@ + #: ../calendar/backends/file/e-cal-backend-file.c:209 + #, + msgid "Can't save calendar data: " +-msgstr "Can't save calendar data: " ++msgstr "Kalenderdaten können nicht gespeichert werden: " + + #: ../calendar/backends/groupwise/e-cal-backend-groupwise-utils.c:872 + #: ../camel/providers/groupwise/camel-groupwise-folder.c:1582 +@@ -2485,7 +2485,7 @@ + + #: ../camel/providers/groupwise/camel-groupwise-folder.c:966 + msgid "Trash Folder Full. Please Empty." +-msgstr "Trash Folder Full. Please Empty." ++msgstr "Müllordner voll. Bitte leeren." + + #: ../camel/providers/groupwise/camel-groupwise-folder.c:1129 + #: ../camel/providers/groupwise/camel-groupwise-store.c:632 +@@ -2605,7 +2605,7 @@ + #: ../camel/providers/groupwise/camel-groupwise-store.c:226 + #, + msgid "Unable to authenticate to GroupWise server. " +-msgstr "Unable to authenticate to GroupWise server. " ++msgstr "Authentifizierung beim GroupWise-Server nicht möglich. " + + #: ../camel/providers/groupwise/camel-groupwise-store.c:304 + msgid "Some features may not work correctly with your current server version" +@@ -4662,12 +4662,12 @@ + #: ../libedataserverui/e-passwords.c:472 + #, + msgid "_Remember this passphrase" +-msgstr "_Remember this passphrase" ++msgstr "_An diesen Passwortsatz erinnern" + + #: ../libedataserverui/e-passwords.c:473 + #, + msgid "_Remember this passphrase for the remainder of this session" +-msgstr "_Remember this passphrase for the remainder of this session" ++msgstr "_Für den Rest dieser Sitzung an diesen Passwortsatz erinnern" + + #: ../libedataserverui/e-passwords.c:476 + msgid "_Remember this password" diff --git a/gw-proxy-issues.patch b/gw-proxy-issues.patch new file mode 100644 index 0000000..d2afff7 --- /dev/null +++ b/gw-proxy-issues.patch @@ -0,0 +1,141 @@ +--- camel/providers/groupwise/camel-groupwise-folder.c.orig 2006-04-04 17:00:02.054008863 +0200 ++++ camel/providers/groupwise/camel-groupwise-folder.c 2006-04-04 17:00:05.509122536 +0200 +@@ -914,7 +914,7 @@ groupwise_refresh_folder(CamelFolder *fo + if (!camel_groupwise_store_connected (gw_store, ex)) + goto end1; + +- if (!strcmp (folder->full_name, "Trash") || is_proxy) { ++ if (!strcmp (folder->full_name, "Trash")) { + status = e_gw_connection_get_items (cnc, container_id, "peek recipient distribution created delivered attachments subject status size", NULL, &list); + if (status != E_GW_CONNECTION_STATUS_OK) { + if (status ==E_GW_CONNECTION_STATUS_OTHER) { +@@ -939,71 +939,73 @@ groupwise_refresh_folder(CamelFolder *fo + + + /*Get the New Items*/ +- status = e_gw_connection_get_quick_messages (cnc, container_id, +- "peek id", +- &t_str, "New", NULL, NULL, -1, &slist); +- if (status != E_GW_CONNECTION_STATUS_OK) { +- camel_exception_set (ex, CAMEL_EXCEPTION_SERVICE_INVALID, _("Authentication failed")); +- goto end2; +- } ++ if (!is_proxy) { ++ status = e_gw_connection_get_quick_messages (cnc, container_id, ++ "peek id", ++ &t_str, "New", NULL, NULL, -1, &slist); ++ if (status != E_GW_CONNECTION_STATUS_OK) { ++ camel_exception_set (ex, CAMEL_EXCEPTION_SERVICE_INVALID, _("Authentication failed")); ++ goto end2; ++ } + +- /* +- * The value in t_str is the one that has to be used for the next set of calls. +- * so store this value in the summary. +- */ +- if (summary->time_string) +- g_free (summary->time_string); ++ /* ++ * The value in t_str is the one that has to be used for the next set of calls. ++ * so store this value in the summary. ++ */ ++ if (summary->time_string) ++ g_free (summary->time_string); + + +- summary->time_string = g_strdup (t_str); +- g_free (t_str); +- t_str = NULL; ++ summary->time_string = g_strdup (t_str); ++ g_free (t_str); ++ t_str = NULL; + +- /* +- for ( sl = slist ; sl != NULL; sl = sl->next) +- list = g_list_append (list, sl->data);*/ ++ /* ++ for ( sl = slist ; sl != NULL; sl = sl->next) ++ list = g_list_append (list, sl->data);*/ + +- if (slist && g_slist_length(slist) != 0) +- check_all = TRUE; ++ if (slist && g_slist_length(slist) != 0) ++ check_all = TRUE; + +- g_slist_free (slist); +- slist = NULL; ++ g_slist_free (slist); ++ slist = NULL; + +- t_str = g_strdup (time_string); ++ t_str = g_strdup (time_string); + +- /*Get those items which have been modifed*/ ++ /*Get those items which have been modifed*/ + +- status = e_gw_connection_get_quick_messages (cnc, container_id, +- "peek id", +- &t_str, "Modified", NULL, NULL, -1, &slist); ++ status = e_gw_connection_get_quick_messages (cnc, container_id, ++ "peek id", ++ &t_str, "Modified", NULL, NULL, -1, &slist); + +- if (status != E_GW_CONNECTION_STATUS_OK) { +- camel_exception_set (ex, CAMEL_EXCEPTION_SERVICE_INVALID, _("Authentication failed")); +- goto end3; +- } ++ if (status != E_GW_CONNECTION_STATUS_OK) { ++ camel_exception_set (ex, CAMEL_EXCEPTION_SERVICE_INVALID, _("Authentication failed")); ++ goto end3; ++ } + +- /* The storing of time-stamp to summary code below should be commented if the +- above commented code is uncommented */ ++ /* The storing of time-stamp to summary code below should be commented if the ++ above commented code is uncommented */ + +- /* if (summary->time_string) +- g_free (summary->time_string); ++ /* if (summary->time_string) ++ g_free (summary->time_string); + +- summary->time_string = g_strdup (t_str); ++ summary->time_string = g_strdup (t_str); + +- g_free (t_str), t_str = NULL;*/ ++ g_free (t_str), t_str = NULL;*/ + +- for ( sl = slist ; sl != NULL; sl = sl->next) +- list = g_list_prepend (list, sl->data); ++ for ( sl = slist ; sl != NULL; sl = sl->next) ++ list = g_list_prepend (list, sl->data); + +- g_slist_free (slist); +- slist = NULL; ++ g_slist_free (slist); ++ slist = NULL; + +- if (gw_store->current_folder != folder) { +- gw_store->current_folder = folder; +- } ++ if (gw_store->current_folder != folder) { ++ gw_store->current_folder = folder; ++ } + +- if (list) { +- gw_update_cache (folder, list, ex, FALSE); ++ if (list) { ++ gw_update_cache (folder, list, ex, FALSE); ++ } + } + + +@@ -1017,7 +1019,7 @@ groupwise_refresh_folder(CamelFolder *fo + * this folder, and update the summary. + */ + /*create a new session thread for the update all operation*/ +- if (check_all) { ++ if (check_all || is_proxy) { + msg = camel_session_thread_msg_new (session, &update_ops, sizeof(*msg)); + msg->cnc = cnc; + msg->t_str = g_strdup (time_string); diff --git a/gw-trash-fix.diff b/gw-trash-fix.diff new file mode 100644 index 0000000..eb0ba61 --- /dev/null +++ b/gw-trash-fix.diff @@ -0,0 +1,41 @@ +Index: camel/providers/imap/camel-imap-folder.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/imap/camel-imap-folder.c,v +retrieving revision 1.359 +retrieving revision 1.360 +diff -u -r1.359 -r1.360 +--- camel/providers/imap/camel-imap-folder.c 2006/04/21 09:15:50 1.359 ++++ camel/providers/imap/camel-imap-folder.c 2006/05/10 08:49:18 1.360 +@@ -2322,7 +2322,7 @@ + } + + +-#define CAMEL_MESSAGE_INFO_HEADERS "DATE FROM TO CC SUBJECT REFERENCES IN-REPLY-TO MESSAGE-ID MIME-VERSION CONTENT-TYPE" ++#define CAMEL_MESSAGE_INFO_HEADERS "DATE FROM TO CC SUBJECT REFERENCES IN-REPLY-TO MESSAGE-ID MIME-VERSION CONTENT-TYPE " + + /* FIXME: this needs to be kept in sync with camel-mime-utils.c's list + of mailing-list headers and so might be best if this were +Index: camel/providers/groupwise/camel-groupwise-folder.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/groupwise/camel-groupwise-folder.c,v +retrieving revision 1.133 +diff -u -p -r1.133 camel-groupwise-folder.c +--- camel/providers/groupwise/camel-groupwise-folder.c 17 May 2006 08:48:19 -0000 1.133 ++++ camel/providers/groupwise/camel-groupwise-folder.c 17 May 2006 08:52:17 -0000 +@@ -959,6 +959,7 @@ groupwise_refresh_folder(CamelFolder *fo + goto end1; + + if (!strcmp (folder->full_name, "Trash")) { ++#if 0 + status = e_gw_connection_get_items (cnc, container_id, "peek recipient distribution created delivered attachments subject status size", NULL, &list); + if (status != E_GW_CONNECTION_STATUS_OK) { + if (status ==E_GW_CONNECTION_STATUS_OTHER) { +@@ -978,6 +979,8 @@ groupwise_refresh_folder(CamelFolder *fo + list = NULL; + } + goto end1; ++#endif ++ is_proxy = TRUE; + } + + time_string = g_strdup (((CamelGroupwiseSummary *) folder->summary)->time_string); diff --git a/imap-locking.patch b/imap-locking.patch new file mode 100644 index 0000000..1d59e37 --- /dev/null +++ b/imap-locking.patch @@ -0,0 +1,720 @@ +Index: camel/providers/imap/camel-imap-command.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/imap/camel-imap-command.c,v +retrieving revision 1.76.2.1 +diff -u -r1.76.2.1 camel-imap-command.c +--- camel/providers/imap/camel-imap-command.c 12 Apr 2006 19:08:32 -0000 1.76.2.1 ++++ camel/providers/imap/camel-imap-command.c 19 May 2006 15:19:00 -0000 +@@ -38,7 +38,6 @@ + #include "camel-imap-folder.h" + #include "camel-imap-store.h" + #include "camel-imap-store-summary.h" +-#include "camel-imap-private.h" + #include + #include + #include +Index: camel/providers/imap/camel-imap-folder.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/imap/camel-imap-folder.c,v +retrieving revision 1.358.2.1 +diff -u -r1.358.2.1 camel-imap-folder.c +--- camel/providers/imap/camel-imap-folder.c 21 Apr 2006 09:21:20 -0000 1.358.2.1 ++++ camel/providers/imap/camel-imap-folder.c 19 May 2006 15:19:00 -0000 +@@ -37,11 +37,11 @@ + /*#include "libedataserver/e-path.h"*/ + #include "libedataserver/e-time-utils.h" + #include "libedataserver/e-data-server-util.h" ++#include "libedataserver/e-msgport.h" + + #include "camel-imap-folder.h" + #include "camel-imap-command.h" + #include "camel-imap-message-cache.h" +-#include "camel-imap-private.h" + #include "camel-imap-search.h" + #include "camel-imap-store.h" + #include "camel-imap-summary.h" +@@ -70,6 +70,7 @@ + #include "camel-i18n.h" + #include "camel/camel-store-summary.h" + ++ + #define d(x) + + /* set to -1 for infinite size (suggested max command-line length is +@@ -189,12 +190,6 @@ + folder->folder_flags |= (CAMEL_FOLDER_HAS_SUMMARY_CAPABILITY | + CAMEL_FOLDER_HAS_SEARCH_CAPABILITY); + +- imap_folder->priv = g_malloc0(sizeof(*imap_folder->priv)); +-#ifdef ENABLE_THREADS +- imap_folder->priv->search_lock = e_mutex_new(E_MUTEX_SIMPLE); +- imap_folder->priv->cache_lock = e_mutex_new(E_MUTEX_REC); +-#endif +- + imap_folder->need_rescan = TRUE; + } + +@@ -347,9 +342,7 @@ + else if (validity != imap_summary->validity) { + imap_summary->validity = validity; + camel_folder_summary_clear (folder->summary); +- CAMEL_IMAP_FOLDER_LOCK (imap_folder, cache_lock); + camel_imap_message_cache_clear (imap_folder->cache); +- CAMEL_IMAP_FOLDER_UNLOCK (imap_folder, cache_lock); + imap_folder->need_rescan = FALSE; + camel_imap_folder_changed (folder, exists, NULL, ex); + return; +@@ -423,12 +416,6 @@ + camel_object_unref (CAMEL_OBJECT (imap_folder->search)); + if (imap_folder->cache) + camel_object_unref (CAMEL_OBJECT (imap_folder->cache)); +- +-#ifdef ENABLE_THREADS +- e_mutex_destroy(imap_folder->priv->search_lock); +- e_mutex_destroy(imap_folder->priv->cache_lock); +-#endif +- g_free(imap_folder->priv); + } + + static int +@@ -475,26 +462,28 @@ + CamelImapStore *imap_store = (CamelImapStore *)folder->parent_store; + char *folder_dir, *summary_path, *state_file; + char *folders; +- ++ ++ CAMEL_SERVICE_LOCK (imap_store, connect_lock); ++ + folders = g_strconcat (imap_store->storage_path, "/folders", NULL); + folder_dir = imap_path_to_physical (folders, new); + g_free (folders); + summary_path = g_strdup_printf("%s/summary", folder_dir); +- +- CAMEL_IMAP_FOLDER_LOCK (folder, cache_lock); ++ + camel_imap_message_cache_set_path(imap_folder->cache, folder_dir); +- CAMEL_IMAP_FOLDER_UNLOCK (folder, cache_lock); +- ++ + camel_folder_summary_set_filename(folder->summary, summary_path); +- ++ + state_file = g_strdup_printf ("%s/cmeta", folder_dir); + camel_object_set(folder, NULL, CAMEL_OBJECT_STATE_FILE, state_file, NULL); + g_free(state_file); +- ++ + g_free(summary_path); + g_free(folder_dir); +- ++ + ((CamelFolderClass *)disco_folder_class)->rename(folder, new); ++ ++ CAMEL_SERVICE_UNLOCK (imap_store, connect_lock); + } + + static void +@@ -1202,21 +1191,23 @@ + char *uid; + + uid = get_temp_uid (); +- ++ ++ CAMEL_SERVICE_LOCK (imap_store, connect_lock); ++ + camel_imap_summary_add_offline (folder->summary, uid, message, info); +- CAMEL_IMAP_FOLDER_LOCK (folder, cache_lock); + camel_imap_message_cache_insert_wrapper (cache, uid, "", + CAMEL_DATA_WRAPPER (message), ex); +- CAMEL_IMAP_FOLDER_UNLOCK (folder, cache_lock); +- ++ + changes = camel_folder_change_info_new (); + camel_folder_change_info_add_uid (changes, uid); +- camel_object_trigger_event (CAMEL_OBJECT (folder), "folder_changed", +- changes); ++ camel_object_trigger_event (CAMEL_OBJECT (folder), "folder_changed", changes); + camel_folder_change_info_free (changes); + + camel_disco_diary_log (CAMEL_DISCO_STORE (imap_store)->diary, + CAMEL_DISCO_DIARY_FOLDER_APPEND, folder, uid); ++ ++ CAMEL_SERVICE_UNLOCK (imap_store, connect_lock); ++ + if (appended_uid) + *appended_uid = uid; + else +@@ -1327,21 +1318,22 @@ + CamelImapResponse *response; + char *uid; + int count; +- ++ ++ CAMEL_SERVICE_LOCK (store, connect_lock); ++ + count = camel_folder_summary_count (folder->summary); +- response = do_append (folder, message, info, &uid, ex); +- if (!response) ++ if (!(response = do_append (folder, message, info, &uid, ex))) { ++ CAMEL_SERVICE_UNLOCK (store, connect_lock); + return; ++ } + + if (uid) { + /* Cache first, since freeing response may trigger a + * summary update that will want this information. + */ +- CAMEL_IMAP_FOLDER_LOCK (folder, cache_lock); + camel_imap_message_cache_insert_wrapper ( + CAMEL_IMAP_FOLDER (folder)->cache, uid, + "", CAMEL_DATA_WRAPPER (message), ex); +- CAMEL_IMAP_FOLDER_UNLOCK (folder, cache_lock); + if (appended_uid) + *appended_uid = uid; + else +@@ -1352,10 +1344,10 @@ + camel_imap_response_free (store, response); + + /* Make sure a "folder_changed" is emitted. */ +- CAMEL_SERVICE_LOCK (store, connect_lock); + if (store->current_folder != folder || + camel_folder_summary_count (folder->summary) == count) + imap_refresh_info (folder, ex); ++ + CAMEL_SERVICE_UNLOCK (store, connect_lock); + } + +@@ -1368,19 +1360,20 @@ + CamelImapResponse *response; + char *uid; + +- response = do_append (folder, message, info, &uid, ex); +- if (!response) ++ CAMEL_SERVICE_LOCK (store, connect_lock); ++ ++ if (!(response = do_append (folder, message, info, &uid, ex))) { ++ CAMEL_SERVICE_UNLOCK (store, connect_lock); + return; ++ } + + if (uid) { + CamelImapFolder *imap_folder = CAMEL_IMAP_FOLDER (folder); + const char *olduid = camel_message_info_uid (info); + +- CAMEL_IMAP_FOLDER_LOCK (imap_folder, cache_lock); + camel_imap_message_cache_copy (imap_folder->cache, olduid, + imap_folder->cache, uid, ex); +- CAMEL_IMAP_FOLDER_UNLOCK (imap_folder, cache_lock); +- ++ + if (appended_uid) + *appended_uid = uid; + else +@@ -1389,6 +1382,8 @@ + *appended_uid = NULL; + + camel_imap_response_free (store, response); ++ ++ CAMEL_SERVICE_UNLOCK (store, connect_lock); + } + + +@@ -1405,17 +1400,9 @@ + CamelMessageInfo *mi; + char *uid, *destuid; + int i; +- +- /* We grab the store's command lock first, and then grab the +- * source and destination cache_locks. This way we can't +- * deadlock in the case where we're simultaneously also trying +- * to copy messages in the other direction from another thread. +- */ ++ + CAMEL_SERVICE_LOCK (store, connect_lock); +- CAMEL_IMAP_FOLDER_LOCK (source, cache_lock); +- CAMEL_IMAP_FOLDER_LOCK (dest, cache_lock); +- CAMEL_SERVICE_UNLOCK (store, connect_lock); +- ++ + if (transferred_uids) { + *transferred_uids = g_ptr_array_new (); + g_ptr_array_set_size (*transferred_uids, uids->len); +@@ -1451,16 +1438,15 @@ + if (delete_originals) + camel_folder_delete_message (source, uid); + } +- +- CAMEL_IMAP_FOLDER_UNLOCK (dest, cache_lock); +- CAMEL_IMAP_FOLDER_UNLOCK (source, cache_lock); +- ++ + camel_object_trigger_event (CAMEL_OBJECT (dest), "folder_changed", changes); + camel_folder_change_info_free (changes); + + camel_disco_diary_log (CAMEL_DISCO_STORE (store)->diary, + CAMEL_DISCO_DIARY_FOLDER_TRANSFER, + source, dest, uids, delete_originals); ++ ++ CAMEL_SERVICE_UNLOCK (store, connect_lock); + } + + static void +@@ -1490,22 +1476,14 @@ + + src = imap_uid_set_to_array (source->summary, srcset); + dest = imap_uid_set_to_array (destination->summary, destset); +- ++ + if (src && dest && src->len == dest->len) { +- /* We don't have to worry about deadlocking on the +- * cache locks here, because we've got the store's +- * command lock too, so no one else could be here. +- */ +- CAMEL_IMAP_FOLDER_LOCK (source, cache_lock); +- CAMEL_IMAP_FOLDER_LOCK (destination, cache_lock); + for (i = 0; i < src->len; i++) { + camel_imap_message_cache_copy (scache, src->pdata[i], + dcache, dest->pdata[i], + NULL); + } +- CAMEL_IMAP_FOLDER_UNLOCK (source, cache_lock); +- CAMEL_IMAP_FOLDER_UNLOCK (destination, cache_lock); +- ++ + imap_uid_array_free (src); + imap_uid_array_free (dest); + return; +@@ -1567,7 +1545,9 @@ + qsort (uids->pdata, uids->len, sizeof (void *), uid_compar); + + /* Now copy the messages */ ++ CAMEL_SERVICE_LOCK (store, connect_lock); + do_copy(source, uids, dest, delete_originals, ex); ++ CAMEL_SERVICE_UNLOCK (store, connect_lock); + if (camel_exception_is_set (ex)) + return; + +@@ -1587,12 +1567,15 @@ + gboolean delete_originals, CamelException *ex) + { + CamelDiscoDiary *diary = CAMEL_DISCO_STORE (source->parent_store)->diary; ++ CamelStore *store = source->parent_store; + GPtrArray *realuids; + int first, i; + const char *uid; + CamelMimeMessage *message; + CamelMessageInfo *info; + ++ CAMEL_SERVICE_LOCK (store, connect_lock); ++ + qsort (uids->pdata, uids->len, sizeof (void *), uid_compar); + + /* This is trickier than append_resyncing, because some of +@@ -1649,10 +1632,12 @@ + } + + g_ptr_array_free (realuids, FALSE); +- ++ + /* FIXME */ + if (transferred_uids) + *transferred_uids = NULL; ++ ++ CAMEL_SERVICE_UNLOCK (store, connect_lock); + } + + static GPtrArray * +@@ -1660,36 +1645,36 @@ + { + CamelImapFolder *imap_folder = CAMEL_IMAP_FOLDER (folder); + GPtrArray *matches; +- ++ + /* we could get around this by creating a new search object each time, + but i doubt its worth it since any long operation would lock the + command channel too */ +- CAMEL_IMAP_FOLDER_LOCK(folder, search_lock); +- ++ CAMEL_SERVICE_LOCK (folder->parent_store, connect_lock); ++ + camel_folder_search_set_folder (imap_folder->search, folder); + matches = camel_folder_search_search(imap_folder->search, expression, NULL, ex); +- +- CAMEL_IMAP_FOLDER_UNLOCK(folder, search_lock); +- ++ ++ CAMEL_SERVICE_UNLOCK (folder->parent_store, connect_lock); ++ + return matches; + } + + static GPtrArray * +-imap_search_by_uids(CamelFolder *folder, const char *expression, GPtrArray *uids, CamelException *ex) ++imap_search_by_uids (CamelFolder *folder, const char *expression, GPtrArray *uids, CamelException *ex) + { +- CamelImapFolder *imap_folder = CAMEL_IMAP_FOLDER(folder); ++ CamelImapFolder *imap_folder = CAMEL_IMAP_FOLDER (folder); + GPtrArray *matches; +- ++ + if (uids->len == 0) +- return g_ptr_array_new(); +- +- CAMEL_IMAP_FOLDER_LOCK(folder, search_lock); +- ++ return g_ptr_array_new (); ++ ++ CAMEL_SERVICE_LOCK (folder->parent_store, connect_lock); ++ + camel_folder_search_set_folder(imap_folder->search, folder); + matches = camel_folder_search_search(imap_folder->search, expression, uids, ex); +- +- CAMEL_IMAP_FOLDER_UNLOCK(folder, search_lock); +- ++ ++ CAMEL_SERVICE_UNLOCK (folder->parent_store, connect_lock); ++ + return matches; + } + +@@ -1697,14 +1682,14 @@ + imap_search_free (CamelFolder *folder, GPtrArray *uids) + { + CamelImapFolder *imap_folder = CAMEL_IMAP_FOLDER (folder); +- ++ + g_return_if_fail (imap_folder->search); +- +- CAMEL_IMAP_FOLDER_LOCK(folder, search_lock); +- ++ ++ CAMEL_SERVICE_LOCK (folder->parent_store, connect_lock); ++ + camel_folder_search_free_result (imap_folder->search, uids); +- +- CAMEL_IMAP_FOLDER_UNLOCK(folder, search_lock); ++ ++ CAMEL_SERVICE_UNLOCK (folder->parent_store, connect_lock); + } + + static CamelMimeMessage *get_message (CamelImapFolder *imap_folder, +@@ -2056,7 +2041,7 @@ + CamelMimeMessage *msg = NULL; + CamelStream *stream = NULL; + int retry; +- ++ + mi = (CamelImapMessageInfo *)camel_folder_summary_uid (folder->summary, uid); + if (mi == NULL) { + camel_exception_setv(ex, CAMEL_EXCEPTION_FOLDER_INVALID_UID, +@@ -2066,7 +2051,7 @@ + + /* If its cached in full, just get it as is, this is only a shortcut, + since we get stuff from the cache anyway. It affects a busted connection though. */ +- if ( (stream = camel_imap_folder_fetch_data(imap_folder, uid, "", TRUE, NULL)) ++ if ((stream = camel_imap_folder_fetch_data(imap_folder, uid, "", TRUE, NULL)) + && (msg = get_message_simple(imap_folder, uid, stream, ex))) + goto done; + +@@ -2095,7 +2080,7 @@ + char *body, *found_uid; + int i; + +- CAMEL_SERVICE_LOCK(store, connect_lock); ++ CAMEL_SERVICE_LOCK (store, connect_lock); + if (!camel_imap_store_connected(store, ex)) { + CAMEL_SERVICE_UNLOCK(store, connect_lock); + camel_exception_set (ex, CAMEL_EXCEPTION_SERVICE_UNAVAILABLE, +@@ -2104,8 +2089,7 @@ + } + + response = camel_imap_command (store, folder, ex, "UID FETCH %s BODY", uid); +- CAMEL_SERVICE_UNLOCK(store, connect_lock); +- ++ + if (response) { + for (i = 0, body = NULL; i < response->untagged->len; i++) { + fetch_data = parse_fetch_response (imap_folder, response->untagged->pdata[i]); +@@ -2125,7 +2109,7 @@ + imap_parse_body ((const char **) &body, folder, mi->info.content); + camel_folder_summary_touch (folder->summary); + } +- ++ + if (fetch_data) + g_datalist_clear (&fetch_data); + +@@ -2133,6 +2117,8 @@ + } else { + camel_exception_clear(ex); + } ++ ++ CAMEL_SERVICE_UNLOCK (store, connect_lock); + } + + if (camel_debug_start("imap:folder")) { +@@ -2637,9 +2623,7 @@ + } + + camel_folder_change_info_remove_uid (changes, camel_message_info_uid (info)); +- CAMEL_IMAP_FOLDER_LOCK (imap_folder, cache_lock); + camel_imap_message_cache_remove (imap_folder->cache, camel_message_info_uid (info)); +- CAMEL_IMAP_FOLDER_UNLOCK (imap_folder, cache_lock); + camel_folder_summary_remove (folder->summary, info); + camel_message_info_free(info); + } +@@ -2686,36 +2670,23 @@ + char *found_uid; + int i; + +- /* EXPUNGE responses have to modify the cache, which means +- * they have to grab the cache_lock while holding the +- * connect_lock. +- +- * Because getting the service lock may cause MUCH unecessary +- * delay when we already have the data locally, we do the +- * locking separately. This could cause a race +- * getting the same data from the cache, but that is only +- * an inefficiency, and bad luck. +- */ +- CAMEL_IMAP_FOLDER_LOCK (imap_folder, cache_lock); ++ CAMEL_SERVICE_LOCK (store, connect_lock); + stream = camel_imap_message_cache_get (imap_folder->cache, uid, section_text, ex); + if (!stream && (!strcmp (section_text, "HEADER") || !strcmp (section_text, "0"))) { + camel_exception_clear (ex); + stream = camel_imap_message_cache_get (imap_folder->cache, uid, "", ex); + } +- CAMEL_IMAP_FOLDER_UNLOCK (imap_folder, cache_lock); + +- if (stream || cache_only) ++ if (stream || cache_only) { ++ CAMEL_SERVICE_UNLOCK (store, connect_lock); + return stream; +- ++ } ++ + camel_exception_clear(ex); +- +- CAMEL_SERVICE_LOCK (store, connect_lock); +- CAMEL_IMAP_FOLDER_LOCK (imap_folder, cache_lock); +- ++ + if (!camel_imap_store_connected(store, ex)) { + camel_exception_set (ex, CAMEL_EXCEPTION_SERVICE_UNAVAILABLE, + _("This message is not currently available")); +- CAMEL_IMAP_FOLDER_UNLOCK (imap_folder, cache_lock); + CAMEL_SERVICE_UNLOCK (store, connect_lock); + return NULL; + } +@@ -2730,11 +2701,9 @@ + "UID FETCH %s BODY.PEEK[%s]", + uid, section_text); + } +- /* We won't need the connect_lock again after this. */ +- CAMEL_SERVICE_UNLOCK (store, connect_lock); + + if (!response) { +- CAMEL_IMAP_FOLDER_UNLOCK (imap_folder, cache_lock); ++ CAMEL_SERVICE_UNLOCK (store, connect_lock); + return NULL; + } + +@@ -2748,8 +2717,9 @@ + g_datalist_clear (&fetch_data); + stream = NULL; + } ++ + camel_imap_response_free (store, response); +- CAMEL_IMAP_FOLDER_UNLOCK (imap_folder, cache_lock); ++ + if (!stream) { + camel_exception_setv (ex, CAMEL_EXCEPTION_SERVICE_UNAVAILABLE, + _("Could not find message body in FETCH response.")); +@@ -2758,6 +2728,8 @@ + g_datalist_clear (&fetch_data); + } + ++ CAMEL_SERVICE_UNLOCK (store, connect_lock); ++ + return stream; + } + +@@ -2769,6 +2741,8 @@ + gboolean cache_header = TRUE, header = FALSE; + size_t body_len = 0; + ++ CAMEL_SERVICE_ASSERT_LOCKED (((CamelFolder *) imap_folder)->parent_store, connect_lock); ++ + if (*response != '(') { + long seq; + +@@ -2887,11 +2861,9 @@ + if (header && !cache_header) { + stream = camel_stream_mem_new_with_buffer (body, body_len); + } else { +- CAMEL_IMAP_FOLDER_LOCK (imap_folder, cache_lock); + stream = camel_imap_message_cache_insert (imap_folder->cache, + uid, part_spec, + body, body_len, NULL); +- CAMEL_IMAP_FOLDER_UNLOCK (imap_folder, cache_lock); + if (stream == NULL) + stream = camel_stream_mem_new_with_buffer (body, body_len); + } +Index: camel/providers/imap/camel-imap-folder.h +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/imap/camel-imap-folder.h,v +retrieving revision 1.43 +diff -u -r1.43 camel-imap-folder.h +--- camel/providers/imap/camel-imap-folder.h 31 Aug 2005 04:26:02 -0000 1.43 ++++ camel/providers/imap/camel-imap-folder.h 19 May 2006 15:19:00 -0000 +@@ -44,9 +44,7 @@ + + struct _CamelImapFolder { + CamelDiscoFolder parent_object; +- +- struct _CamelImapFolderPrivate *priv; +- ++ + CamelFolderSearch *search; + CamelImapMessageCache *cache; + +Index: camel/providers/imap/camel-imap-private.h +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/imap/camel-imap-private.h,v +retrieving revision 1.12 +diff -u -r1.12 camel-imap-private.h +--- camel/providers/imap/camel-imap-private.h 31 Aug 2005 04:26:02 -0000 1.12 ++++ camel/providers/imap/camel-imap-private.h 19 May 2006 15:19:00 -0000 +@@ -28,46 +28,6 @@ + #pragma } + #endif /* __cplusplus */ + +-/* need a way to configure and save this data, if this header is to +- be installed. For now, dont install it */ +- +-#ifdef HAVE_CONFIG_H +-#include +-#endif +- +-#ifdef ENABLE_THREADS +-#include "libedataserver/e-msgport.h" +-#endif +- +-struct _CamelImapFolderPrivate { +-#ifdef ENABLE_THREADS +- EMutex *search_lock; /* for locking the search object */ +- EMutex *cache_lock; /* for locking the cache object */ +-#endif +-}; +- +-#ifdef ENABLE_THREADS +-#define CAMEL_IMAP_FOLDER_LOCK(f, l) (e_mutex_lock(((CamelImapFolder *)f)->priv->l)) +-#define CAMEL_IMAP_FOLDER_UNLOCK(f, l) (e_mutex_unlock(((CamelImapFolder *)f)->priv->l)) +-#else +-#define CAMEL_IMAP_FOLDER_LOCK(f, l) +-#define CAMEL_IMAP_FOLDER_UNLOCK(f, l) +-#endif +- +-struct _CamelImapWrapperPrivate { +-#ifdef ENABLE_THREADS +- GMutex *lock; +-#endif +-}; +- +-#ifdef ENABLE_THREADS +-#define CAMEL_IMAP_WRAPPER_LOCK(f, l) (g_mutex_lock(((CamelImapWrapper *)f)->priv->l)) +-#define CAMEL_IMAP_WRAPPER_UNLOCK(f, l) (g_mutex_unlock(((CamelImapWrapper *)f)->priv->l)) +-#else +-#define CAMEL_IMAP_WRAPPER_LOCK(f, l) +-#define CAMEL_IMAP_WRAPPER_UNLOCK(f, l) +-#endif +- + #ifdef __cplusplus + } + #endif /* __cplusplus */ +Index: camel/providers/imap/camel-imap-search.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/imap/camel-imap-search.c,v +retrieving revision 1.21 +diff -u -r1.21 camel-imap-search.c +--- camel/providers/imap/camel-imap-search.c 15 Sep 2005 17:54:00 -0000 1.21 ++++ camel/providers/imap/camel-imap-search.c 19 May 2006 15:19:00 -0000 +@@ -34,7 +34,6 @@ + #include "camel-imap-folder.h" + #include "camel-imap-store.h" + #include "camel-imap-search.h" +-#include "camel-imap-private.h" + #include "camel-imap-utils.h" + #include "camel-imap-summary.h" + +Index: camel/providers/imap/camel-imap-store.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/imap/camel-imap-store.c,v +retrieving revision 1.340.2.4 +diff -u -r1.340.2.4 camel-imap-store.c +--- camel/providers/imap/camel-imap-store.c 1 May 2006 21:15:19 -0000 1.340.2.4 ++++ camel/providers/imap/camel-imap-store.c 19 May 2006 15:19:00 -0000 +@@ -58,7 +58,6 @@ + #include "camel-imap-command.h" + #include "camel-imap-folder.h" + #include "camel-imap-message-cache.h" +-#include "camel-imap-private.h" + #include "camel-imap-store-summary.h" + #include "camel-imap-store.h" + #include "camel-imap-summary.h" +Index: camel/providers/imap/camel-imap-wrapper.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/imap/camel-imap-wrapper.c,v +retrieving revision 1.14 +diff -u -r1.14 camel-imap-wrapper.c +--- camel/providers/imap/camel-imap-wrapper.c 15 Sep 2005 18:08:50 -0000 1.14 ++++ camel/providers/imap/camel-imap-wrapper.c 19 May 2006 15:19:00 -0000 +@@ -30,7 +30,6 @@ + + #include "camel-imap-folder.h" + #include "camel-imap-wrapper.h" +-#include "camel-imap-private.h" + #include "camel-exception.h" + #include "camel-stream-filter.h" + #include "camel-mime-filter-basic.h" +@@ -38,6 +37,17 @@ + #include "camel-mime-filter-charset.h" + #include "camel-mime-part.h" + ++#include "libedataserver/e-msgport.h" ++ ++ ++struct _CamelImapWrapperPrivate { ++ GMutex *lock; ++}; ++ ++#define CAMEL_IMAP_WRAPPER_LOCK(f, l) (g_mutex_lock(((CamelImapWrapper *)f)->priv->l)) ++#define CAMEL_IMAP_WRAPPER_UNLOCK(f, l) (g_mutex_unlock(((CamelImapWrapper *)f)->priv->l)) ++ ++ + static CamelDataWrapperClass *parent_class = NULL; + + /* Returns the class for a CamelDataWrapper */ +@@ -68,10 +78,9 @@ + g_free (imap_wrapper->uid); + if (imap_wrapper->part) + g_free (imap_wrapper->part_spec); +- +-#ifdef ENABLE_THREADS ++ + g_mutex_free (imap_wrapper->priv->lock); +-#endif ++ + g_free (imap_wrapper->priv); + } + +@@ -81,9 +90,7 @@ + CamelImapWrapper *imap_wrapper = CAMEL_IMAP_WRAPPER (object); + + imap_wrapper->priv = g_new0 (struct _CamelImapWrapperPrivate, 1); +-#ifdef ENABLE_THREADS + imap_wrapper->priv->lock = g_mutex_new (); +-#endif + } + + CamelType diff --git a/imap-perf.patch b/imap-perf.patch new file mode 100644 index 0000000..70fadef --- /dev/null +++ b/imap-perf.patch @@ -0,0 +1,16 @@ +Index: camel/providers/imap/camel-imap-folder.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/imap/camel-imap-folder.c,v +retrieving revision 1.358 +diff -u -p -r1.358 camel-imap-folder.c +--- camel/providers/imap/camel-imap-folder.c 10 Jan 2006 07:56:47 -0000 1.358 ++++ camel/providers/imap/camel-imap-folder.c 21 Apr 2006 09:14:56 -0000 +@@ -2348,7 +2348,7 @@ imap_update_summary (CamelFolder *folder + + CAMEL_SERVICE_ASSERT_LOCKED (store, connect_lock); + if (store->server_level >= IMAP_LEVEL_IMAP4REV1) +- header_spec = "HEADER"; ++ header_spec = "HEADER.FIELDS (" CAMEL_MESSAGE_INFO_HEADERS MAILING_LIST_HEADERS ")"; + else + header_spec = "0"; + diff --git a/imap4-removal.diff b/imap4-removal.diff new file mode 100644 index 0000000..ba41e01 --- /dev/null +++ b/imap4-removal.diff @@ -0,0 +1,30 @@ +Index: configure.in +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/configure.in,v +retrieving revision 1.160 +diff -u -p -r1.160 configure.in +--- configure.in 20 Mar 2006 13:53:00 -0000 1.160 ++++ configure.in 24 Apr 2006 13:18:39 -0000 +@@ -1331,7 +1331,6 @@ camel/providers/groupwise/Makefile + camel/providers/hula/Makefile + camel/providers/imap/Makefile + camel/providers/imapp/Makefile +-camel/providers/imap4/Makefile + camel/providers/local/Makefile + camel/providers/nntp/Makefile + camel/providers/pop3/Makefile +Index: camel/providers/Makefile.am +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/camel/providers/Makefile.am,v +retrieving revision 1.38 +diff -u -p -r1.38 Makefile.am +--- camel/providers/Makefile.am 14 Nov 2005 19:15:31 -0000 1.38 ++++ camel/providers/Makefile.am 24 Apr 2006 13:18:39 -0000 +@@ -13,6 +13,6 @@ else + SENDMAIL_DIR=sendmail + endif + +-SUBDIRS = pop3 $(SENDMAIL_DIR) smtp imap imap4 $(NNTP_DIR) local $(IMAPP_DIR) groupwise hula ++SUBDIRS = pop3 $(SENDMAIL_DIR) smtp imap $(NNTP_DIR) local $(IMAPP_DIR) groupwise hula + + diff --git a/implicit-declaration.diff b/implicit-declaration.diff new file mode 100644 index 0000000..137eb89 --- /dev/null +++ b/implicit-declaration.diff @@ -0,0 +1,10 @@ +--- docs/reference/addressbook/libebook/libebook.types ++++ docs/reference/addressbook/libebook/libebook.types +@@ -4,6 +4,7 @@ + #include + #include + #include ++#include + #include + e_book_listener_get_type + e_book_view_listener_get_type diff --git a/libgnomeui-dep.patch b/libgnomeui-dep.patch new file mode 100644 index 0000000..67cc940 --- /dev/null +++ b/libgnomeui-dep.patch @@ -0,0 +1,11 @@ +--- evolution-data-server-1.8.0/configure.in 2006/09/30 05:44:59 1.3 ++++ evolution-data-server-1.8.0/configure.in 2006/09/30 05:46:47 +@@ -1227,7 +1227,7 @@ + AC_SUBST(IDL_INCLUDES) + + AC_MSG_CHECKING(for libgnomeui server directory) +-GNOMEUI_SERVERDIR="`$PKG_CONFIG --variable=libgnomeui_serverdir libgnomeui-2.0`" ++GNOMEUI_SERVERDIR="/opt/gnome/lib/libgnomeui" + AC_MSG_RESULT($GNOMEUI_SERVERDIR) + AC_DEFINE_UNQUOTED(GNOMEUI_SERVERDIR, "$GNOMEUI_SERVERDIR", [Path where we can find gnome_segv2]) + diff --git a/nameselectorlist-keychange.diff b/nameselectorlist-keychange.diff new file mode 100644 index 0000000..1ff6380 --- /dev/null +++ b/nameselectorlist-keychange.diff @@ -0,0 +1,16 @@ +Index: libedataserverui/e-name-selector-list.c +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/libedataserverui/e-name-selector-list.c,v +retrieving revision 1.1 +diff -u -p -r1.1 e-name-selector-list.c +--- libedataserverui/e-name-selector-list.c 16 Jan 2006 13:32:30 -0000 1.1 ++++ libedataserverui/e-name-selector-list.c 24 Apr 2006 08:31:57 -0000 +@@ -216,7 +216,7 @@ enl_entry_key_press_event (ENameSelector + GdkEventKey *event, + gpointer dummy) + { +- if ( (event->state & GDK_CONTROL_MASK) && (event->keyval == GDK_Right)) { ++ if ( (event->state & GDK_CONTROL_MASK) && (event->keyval == GDK_Down)) { + enl_popup_position (list); + gtk_widget_show_all (GTK_WIDGET (list->popup)); + enl_popup_grab (list); diff --git a/nss-nspr.patch b/nss-nspr.patch new file mode 100644 index 0000000..6b27364 --- /dev/null +++ b/nss-nspr.patch @@ -0,0 +1,21 @@ +--- configure.in ++++ configure.in +@@ -288,15 +288,15 @@ + fi + + if test "x${check_manually}" = "xno"; then +- PKG_CHECK_MODULES(NSS, mozilla-nss, have_nss="yes", have_nss="no") ++ PKG_CHECK_MODULES(NSS, nss, have_nss="yes", have_nss="no") + if test "x${have_nss}" = "xyes"; then + msg_ssl="yes (Mozilla NSS)" + if test "x$enable_smime" = "xyes"; then + AC_DEFINE(ENABLE_SMIME,1,[Define if SMIME should be enabled]) + msg_smime="yes (Mozilla NSS)" + fi +- mozilla_nspr="mozilla-nspr" +- mozilla_nss="mozilla-nss" ++ mozilla_nspr="nspr" ++ mozilla_nss="nss" + AC_DEFINE(HAVE_NSS,1,[Define if you have NSS]) + AC_DEFINE(HAVE_SSL,1,[Define if you have a supported SSL library]) + MANUAL_NSPR_CFLAGS="" diff --git a/patch-for-random-eds-addr-crashes.patch b/patch-for-random-eds-addr-crashes.patch new file mode 100644 index 0000000..d6d53c7 --- /dev/null +++ b/patch-for-random-eds-addr-crashes.patch @@ -0,0 +1,384 @@ +--- addressbook/backends/groupwise/e-book-backend-groupwise.c.orig 2006-01-10 08:54:45.000000000 +0100 ++++ addressbook/backends/groupwise/e-book-backend-groupwise.c 2006-03-23 16:10:25.226981271 +0100 +@@ -2330,6 +2330,8 @@ static EDataBookView * + find_book_view (EBookBackendGroupwise *ebgw) + { + EList *views = e_book_backend_get_book_views (E_BOOK_BACKEND (ebgw)); ++ if (!views) ++ return NULL; + EIterator *iter = e_list_get_iterator (views); + EDataBookView *rv = NULL; + +@@ -2348,28 +2350,28 @@ find_book_view (EBookBackendGroupwise *e + + static void + add_sequence_to_cache (EBookBackendCache *cache, +- guint first_sequence, +- guint last_sequence, +- guint last_po_rebuild_time) ++ gdouble first_sequence, ++ gdouble last_sequence, ++ gdouble last_po_rebuild_time) + { + gchar *tmp; + + /* This is the system address book. Let try add the sequence to maintain deltas */ +- tmp = g_strdup_printf("%d", first_sequence); ++ tmp = g_strdup_printf("%lf", first_sequence); + if (!e_file_cache_get_object (E_FILE_CACHE(cache), "firstSequence")) + e_file_cache_add_object (E_FILE_CACHE(cache), "firstSequence", tmp); + else + e_file_cache_replace_object (E_FILE_CACHE(cache), "firstSequence", tmp); + g_free (tmp); + +- tmp = g_strdup_printf("%d", last_sequence); ++ tmp = g_strdup_printf("%lf", last_sequence); + if (!e_file_cache_get_object (E_FILE_CACHE(cache), "lastSequence")) + e_file_cache_add_object (E_FILE_CACHE(cache), "lastSequence", tmp); + else + e_file_cache_replace_object (E_FILE_CACHE(cache), "lastSequence", tmp); + g_free (tmp); + +- tmp = g_strdup_printf("%d", last_po_rebuild_time); ++ tmp = g_strdup_printf("%lf", last_po_rebuild_time); + if (!e_file_cache_get_object (E_FILE_CACHE(cache), "lastTimePORebuild")) + e_file_cache_add_object (E_FILE_CACHE(cache), "lastTimePORebuild", tmp); + else +@@ -2439,6 +2441,10 @@ build_cache (EBookBackendGroupwise *ebgw + GTimeVal tstart, tend; + unsigned long diff; + ++ if(!ebgw) ++ return FALSE; ++ ++ printf("build cache\n"); + if (enable_debug) { + g_get_current_time(&start); + printf("Building the cache for %s \n", ebgw->priv->book_name); +@@ -2456,10 +2462,11 @@ build_cache (EBookBackendGroupwise *ebgw + if (book_view) { + closure = get_closure (book_view); + bonobo_object_ref (book_view); +- +- g_mutex_lock (closure->mutex); +- g_cond_signal (closure->cond); +- g_mutex_unlock (closure->mutex); ++ if (closure) { ++ g_mutex_lock (closure->mutex); ++ g_cond_signal (closure->cond); ++ g_mutex_unlock (closure->mutex); ++ } + } + + e_file_cache_freeze_changes (E_FILE_CACHE (priv->cache)); +@@ -2590,6 +2597,10 @@ update_cache (EBookBackendGroupwise *ebg + GTimeVal start, end; + unsigned long diff; + ++ if (!ebgw) ++ return FALSE; ++ ++ printf("Inside update cache\n"); + if (enable_debug) { + g_get_current_time(&start); + printf("updating cache for %s\n", ebgw->priv->book_name); +@@ -2599,10 +2610,11 @@ update_cache (EBookBackendGroupwise *ebg + if (book_view) { + closure = get_closure (book_view); + bonobo_object_ref (book_view); +- +- g_mutex_lock (closure->mutex); +- g_cond_signal (closure->cond); +- g_mutex_unlock (closure->mutex); ++ if (closure) { ++ g_mutex_lock (closure->mutex); ++ g_cond_signal (closure->cond); ++ g_mutex_unlock (closure->mutex); ++ } + } + + cache_file_name = e_file_cache_get_filename (E_FILE_CACHE(ebgw->priv->cache)); +@@ -2680,7 +2692,6 @@ update_cache (EBookBackendGroupwise *ebg + printf("updating the cache for %s complated in %ld.%03ld seconds for %d contacts\n", + ebgw->priv->book_name, diff / 1000, diff % 1000, contact_num); + } +- + return FALSE; + } + +@@ -2688,8 +2699,8 @@ static gboolean + update_address_book_deltas (EBookBackendGroupwise *ebgw) + { + int status, contact_num = 0; +- guint server_first_sequence = -1, server_last_sequence = -1, server_last_po_rebuild_time = -1; +- guint cache_last_sequence = -1, cache_last_po_rebuild_time = -1; ++ gdouble server_first_sequence = -1, server_last_sequence = -1, server_last_po_rebuild_time = -1; ++ gdouble cache_last_sequence = -1, cache_last_po_rebuild_time = -1; + const char *cache_obj; + char *tmp, *count, *sequence, *status_msg; + GList *add_list = NULL, *delete_list = NULL; +@@ -2697,6 +2708,9 @@ update_address_book_deltas (EBookBackend + EDataBookView *book_view; + GroupwiseBackendSearchClosure *closure; + ++ if (!ebgw) ++ return FALSE; ++ + EBookBackendGroupwisePrivate *priv = ebgw->priv; + EBookBackendCache *cache = priv->cache; + +@@ -2727,11 +2741,11 @@ update_address_book_deltas (EBookBackend + /* Read the last sequence and last poa rebuild time from cache */ + cache_obj = e_file_cache_get_object (E_FILE_CACHE (cache), "lastSequence"); + if (cache_obj) +- cache_last_sequence = atoi (cache_obj); ++ cache_last_sequence = strtod (cache_obj, NULL); + + cache_obj = e_file_cache_get_object (E_FILE_CACHE (cache), "lastTimePORebuild"); + if (cache_obj) +- cache_last_po_rebuild_time = atoi (cache_obj); ++ cache_last_po_rebuild_time = strtod (cache_obj, NULL); + + /* check whether the all the sequences are available and also whether the PO is rebuilt */ + if (server_first_sequence > cache_last_sequence || cache_last_sequence == -1 || +@@ -2758,14 +2772,15 @@ update_address_book_deltas (EBookBackend + if (book_view) { + closure = get_closure (book_view); + bonobo_object_ref (book_view); +- +- g_mutex_lock (closure->mutex); +- g_cond_signal (closure->cond); +- g_mutex_unlock (closure->mutex); ++ if (closure){ ++ g_mutex_lock (closure->mutex); ++ g_cond_signal (closure->cond); ++ g_mutex_unlock (closure->mutex); ++ } + } + + /* update the cache */ +- sequence = g_strdup_printf ("%d", cache_last_sequence +1); ++ sequence = g_strdup_printf ("%lf", cache_last_sequence +1); + count = g_strdup_printf ("%d", CURSOR_ITEM_LIMIT); + + /* load summary file */ +@@ -2782,6 +2797,7 @@ update_address_book_deltas (EBookBackend + e_file_cache_freeze_changes (E_FILE_CACHE (cache)); + + while (cache_last_sequence < server_last_sequence) { ++ printf("Calling get_items_delta\n"); + e_gw_connection_get_items_delta (priv->cnc, + ebgw->priv->container_id, + "name email sync", count, +@@ -2793,6 +2809,8 @@ update_address_book_deltas (EBookBackend + printf("sequence differs but no changes found !!!\n"); + break; + } ++ printf("add_list size:%d\n", g_list_length(add_list)); ++ printf("delete_list size:%d\n", g_list_length(delete_list)); + + for (; add_list != NULL; add_list = g_list_next(add_list)) { + const char *id; +@@ -2861,15 +2879,15 @@ update_address_book_deltas (EBookBackend + + /* cache is updated, now adding the sequence information to the cache */ + +- tmp = g_strdup_printf("%d", server_first_sequence); ++ tmp = g_strdup_printf("%lf", server_first_sequence); + e_file_cache_replace_object (E_FILE_CACHE(cache), "firstSequence", tmp); + g_free (tmp); + +- tmp = g_strdup_printf("%d", server_last_sequence); ++ tmp = g_strdup_printf("%lf", server_last_sequence); + e_file_cache_replace_object (E_FILE_CACHE(cache), "lastSequence", tmp); + g_free (tmp); + +- tmp = g_strdup_printf("%d", server_last_po_rebuild_time); ++ tmp = g_strdup_printf("%lf", server_last_po_rebuild_time); + e_file_cache_replace_object (E_FILE_CACHE(cache), "lastTimePORebuild", tmp); + g_free (tmp); + +@@ -2940,7 +2958,7 @@ e_book_backend_groupwise_authenticate_us + gboolean is_writable; + const char *cache_refresh_interval_set; + int cache_refresh_interval = CACHE_REFRESH_INTERVAL; +- ++ + printf ("authenticate user ............\n"); + ebgw = E_BOOK_BACKEND_GROUPWISE (backend); + priv = ebgw->priv; +@@ -2962,6 +2980,7 @@ e_book_backend_groupwise_authenticate_us + case GNOME_Evolution_Addressbook_MODE_REMOTE: + + if (priv->cnc) { /*we have already authenticated to server */ ++ printf("already authenticated\n"); + e_data_book_respond_authenticate_user (book, opid, GNOME_Evolution_Addressbook_Success); + return; + } +@@ -2979,6 +2998,8 @@ e_book_backend_groupwise_authenticate_us + + id = NULL; + is_writable = FALSE; ++ if(priv->book_name) ++ printf("book_name:%s\n", priv->book_name); + status = e_gw_connection_get_address_book_id (priv->cnc, priv->book_name, &id, &is_writable); + if (status == E_GW_CONNECTION_STATUS_INVALID_CONNECTION) + status = e_gw_connection_get_address_book_id (priv->cnc, priv->book_name, &id, &is_writable); +@@ -3015,17 +3036,23 @@ e_book_backend_groupwise_authenticate_us + SUMMARY_FLUSH_TIMEOUT); + + if (e_book_backend_cache_is_populated (priv->cache)) { +- if (priv->is_writable) ++ printf("cache is populated\n"); ++ if (priv->is_writable){ ++ printf("is writable\n"); ++ printf("creating update_cache thread\n"); + g_thread_create ((GThreadFunc) update_cache, ebgw, FALSE, NULL); ++ } + else if (priv->marked_for_offline) { ++ printf("marked for offline\n"); + GThread *t; ++ printf("creating update_address_book_deltas thread\n"); + + t = g_thread_create ((GThreadFunc) update_address_book_deltas, ebgw, TRUE, NULL); + + /* spawn a thread to update the system address book cache + * at given intervals + */ +- cache_refresh_interval_set = g_getenv ("BOOK_CACHE_REFESH_INTERVAL"); ++ cache_refresh_interval_set = g_getenv ("BOOK_CACHE_REFRESH_INTERVAL"); + if (cache_refresh_interval_set) { + cache_refresh_interval = g_ascii_strtod (cache_refresh_interval_set, + NULL); /* use this */ +@@ -3043,12 +3070,16 @@ e_book_backend_groupwise_authenticate_us + } + else if (priv->is_writable) { /* for personal books we always cache */ + /* Personal address book and frequent contacts */ ++ printf("else if is _writable"); ++ printf("build_cahe thread"); + g_thread_create ((GThreadFunc) build_cache, ebgw, FALSE, NULL); + } + else if(priv->marked_for_offline) { ++ printf("else if marked_for_offline\n"); + GThread *t; + /* System address book */ + /* cache is not populated and book is not writable and marked for offline usage */ ++ printf("creating update_address_book_deltas thread\n"); + t = g_thread_create ((GThreadFunc) update_address_book_deltas, ebgw, TRUE, NULL); + g_thread_join (t); + /* set the cache refresh time */ +@@ -3429,6 +3460,7 @@ e_book_backend_groupwise_init (EBookBack + priv->marked_for_offline = FALSE; + priv->use_ssl = NULL; + priv->cache=NULL; ++ priv->cnc = NULL; + priv->original_uri = NULL; + priv->cache_timeout = 0; + priv->reserved1 = NULL; +--- servers/groupwise/e-gw-connection.c.orig 2006-03-23 16:08:44.842634384 +0100 ++++ servers/groupwise/e-gw-connection.c 2006-03-23 16:10:25.228981338 +0100 +@@ -685,8 +685,8 @@ e_gw_connection_get_container_id (EGwCon + } + + EGwConnectionStatus +-e_gw_connection_get_items_delta_info (EGwConnection *cnc, const char *container, guint *first_sequence, +- guint *last_sequence, guint *last_po_rebuild_time ) ++e_gw_connection_get_items_delta_info (EGwConnection *cnc, const char *container, gdouble *first_sequence, ++ gdouble *last_sequence, gdouble *last_po_rebuild_time ) + { + SoupSoapMessage *msg; + SoupSoapResponse *response; +@@ -734,21 +734,21 @@ e_gw_connection_get_items_delta_info (EG + subparam = soup_soap_parameter_get_first_child_by_name (param, "firstSequence"); + + if (subparam) +- *first_sequence = soup_soap_parameter_get_int_value(subparam); ++ *first_sequence = strtod (soup_soap_parameter_get_string_value(subparam), NULL); + else + *first_sequence = -1; + + subparam = soup_soap_parameter_get_first_child_by_name (param, "lastSequence"); + + if (subparam) +- *last_sequence = soup_soap_parameter_get_int_value(subparam); ++ *last_sequence = strtod (soup_soap_parameter_get_string_value(subparam), NULL); + else + *last_sequence = -1; + + subparam = soup_soap_parameter_get_first_child_by_name (param, "lastTimePORebuild"); + + if (subparam) +- *last_po_rebuild_time = soup_soap_parameter_get_int_value(subparam); ++ *last_po_rebuild_time = strtod (soup_soap_parameter_get_string_value(subparam), NULL); + else + *last_po_rebuild_time = -1; + +Index: servers/groupwise/e-gw-connection.h +=================================================================== +RCS file: /cvs/gnome/evolution-data-server/servers/groupwise/e-gw-connection.h,v +retrieving revision 1.68 +diff -u -p -r1.68 e-gw-connection.h +--- servers/groupwise/e-gw-connection.h 31 Aug 2005 04:26:07 -0000 1.68 ++++ servers/groupwise/e-gw-connection.h 20 Mar 2006 14:11:38 -0000 +@@ -100,7 +100,7 @@ EGwConnectionStatus e_gw_connection_get_ + EGwConnectionStatus e_gw_connection_send_item (EGwConnection *cnc, EGwItem *item, GSList **id_list); + EGwConnectionStatus e_gw_connection_remove_item (EGwConnection *cnc, const char *container, const char *id); + EGwConnectionStatus e_gw_connection_remove_items (EGwConnection *cnc, const char *container, GList *item_ids); +-EGwConnectionStatus e_gw_connection_get_items_delta_info (EGwConnection *cnc, const char *container, guint *first_sequence, guint *last_sequence, guint *last_po_rebuild_time); ++EGwConnectionStatus e_gw_connection_get_items_delta_info (EGwConnection *cnc, const char *container, gdouble *first_sequence, gdouble *last_sequence, gdouble *last_po_rebuild_time); + EGwConnectionStatus e_gw_connection_get_items_delta (EGwConnection *cnc, const char *container, const char *view, const char *count, const char * start_sequence, GList **add_list, GList **delete_list); + + + +--- addressbook/libedata-book/e-data-book.c.orig 2005-05-14 08:36:47.000000000 +0200 ++++ addressbook/libedata-book/e-data-book.c 2006-03-23 16:10:48.391753634 +0100 +@@ -912,7 +912,7 @@ e_data_book_construct (EDataBook + + g_object_ref (source); + +- priv->backend = backend; ++ priv->backend = g_object_ref(backend); + priv->source = source; + } + +@@ -965,6 +965,7 @@ e_data_book_dispose (GObject *object) + CORBA_exception_free (&ev); + + g_object_unref (book->priv->source); ++ g_object_unref (book->priv->backend); + g_free (book->priv); + book->priv = NULL; + } +--- libedataserver/e-list.c.orig 2005-11-17 12:38:47.000000000 +0100 ++++ libedataserver/e-list.c 2006-03-23 16:10:48.392753667 +0100 +@@ -74,10 +74,11 @@ e_list_duplicate (EList *old) + EIterator * + e_list_get_iterator (EList *list) + { +- EIterator *iterator; ++ EIterator *iterator = NULL; + g_return_val_if_fail (list != NULL, NULL); + iterator = e_list_iterator_new(list); +- list->iterators = g_list_append(list->iterators, iterator); ++ if (iterator) ++ list->iterators = g_list_append(list->iterators, iterator); + return iterator; + } + +--- libedataserver/e-list-iterator.c.orig 2005-11-17 12:38:47.000000000 +0100 ++++ libedataserver/e-list-iterator.c 2006-03-23 16:10:48.392753667 +0100 +@@ -66,11 +66,13 @@ e_list_iterator_init (EListIterator *lis + EIterator * + e_list_iterator_new (EList *list) + { +- EListIterator *iterator; ++ EListIterator *iterator = NULL; + + g_return_val_if_fail (list != NULL, NULL); + + iterator = g_object_new (E_TYPE_LIST_ITERATOR, NULL); ++ if (!iterator) ++ return NULL; + iterator->list = list; + g_object_ref(list); + iterator->iterator = list->list; diff --git a/ready b/ready new file mode 100644 index 0000000..473a0f4