diff options
-rw-r--r-- | camel/ChangeLog | 5 | ||||
-rw-r--r-- | camel/providers/pop3/camel-pop3-folder.c | 8 |
2 files changed, 10 insertions, 3 deletions
diff --git a/camel/ChangeLog b/camel/ChangeLog index df8ea2f434..763901dda3 100644 --- a/camel/ChangeLog +++ b/camel/ChangeLog @@ -1,3 +1,8 @@ +2001-09-06 Jeffrey Stedfast <fejj@ximian.com> + + * providers/pop3/camel-pop3-folder.c (pop3_get_message_stream): + Set an exception on POP3_FAIL as well. + 2001-09-06 Dan Winship <danw@ximian.com> * providers/pop3/camel-pop3-provider.c: #ifdef out the "delete diff --git a/camel/providers/pop3/camel-pop3-folder.c b/camel/providers/pop3/camel-pop3-folder.c index d18680dddd..a87c77f3a1 100644 --- a/camel/providers/pop3/camel-pop3-folder.c +++ b/camel/providers/pop3/camel-pop3-folder.c @@ -40,6 +40,8 @@ #include <stdlib.h> #include <string.h> +#include <errno.h> + #define CF_CLASS(o) (CAMEL_FOLDER_CLASS (CAMEL_OBJECT_GET_CLASS(o))) static CamelFolderClass *parent_class; @@ -331,11 +333,11 @@ pop3_get_message_stream (CamelFolder *folder, int id, gboolean headers_only, Cam &result, ex, headers_only ? "TOP %d 0" : "RETR %d", id); switch (status) { case CAMEL_POP3_ERR: + case CAMEL_POP3_FAIL: camel_exception_setv (ex, CAMEL_EXCEPTION_SERVICE_UNAVAILABLE, - _("Could not fetch message: %s"), result); + _("Could not fetch message: %s"), result ? result : + errno ? g_strerror (errno) : _("Unknown error")); g_free (result); - /* fall through */ - case CAMEL_POP3_FAIL: camel_operation_end (NULL); return NULL; } |