diff options
author | Jeffrey Stedfast <fejj@ximian.com> | 2003-06-25 23:43:46 +0800 |
---|---|---|
committer | Jeffrey Stedfast <fejj@src.gnome.org> | 2003-06-25 23:43:46 +0800 |
commit | 1806b16a14d1837bf51ab59bff376488833d531d (patch) | |
tree | 520c241d1c23229b32623f32dc18b2c2742ff936 /camel/camel-service.c | |
parent | cc6acbe24fdc73907845331b357f5ef48436f0d9 (diff) | |
download | gsoc2013-evolution-1806b16a14d1837bf51ab59bff376488833d531d.tar.gz gsoc2013-evolution-1806b16a14d1837bf51ab59bff376488833d531d.tar.zst gsoc2013-evolution-1806b16a14d1837bf51ab59bff376488833d531d.zip |
Added prototype for camel_folder_summary_remove_range().
2003-06-25 Jeffrey Stedfast <fejj@ximian.com>
* camel-folder-summary.h: Added prototype for
camel_folder_summary_remove_range().
2003-06-25 Not Zed <NotZed@Ximian.com>
** See bug #45386
* camel-service.c (camel_gethostbyname, camel_gethostbyaddr): Make
sure we have an exception that we test against.
svn path=/trunk/; revision=21534
Diffstat (limited to 'camel/camel-service.c')
-rw-r--r-- | camel/camel-service.c | 42 |
1 files changed, 25 insertions, 17 deletions
diff --git a/camel/camel-service.c b/camel/camel-service.c index 78c9fe5da6..7ea34d953d 100644 --- a/camel/camel-service.c +++ b/camel/camel-service.c @@ -731,20 +731,22 @@ get_hostbyname(void *data) } struct hostent * -camel_gethostbyname (const char *name, CamelException *ex) +camel_gethostbyname (const char *name, CamelException *exout) { #ifdef ENABLE_THREADS int fdmax, status, fd, cancel_fd; #endif struct _lookup_msg *msg; + CamelException ex; g_return_val_if_fail(name != NULL, NULL); if (camel_operation_cancel_check(NULL)) { - camel_exception_set (ex, CAMEL_EXCEPTION_USER_CANCEL, _("Cancelled")); + camel_exception_set (exout, CAMEL_EXCEPTION_USER_CANCEL, _("Cancelled")); return NULL; } + camel_exception_init(&ex); camel_operation_start_transient(NULL, _("Resolving: %s"), name); msg = g_malloc0(sizeof(*msg)); @@ -778,9 +780,9 @@ camel_gethostbyname (const char *name, CamelException *ex) if (status == -1 || FD_ISSET(cancel_fd, &rdset)) { if (status == -1) - camel_exception_setv(ex, CAMEL_EXCEPTION_SYSTEM, _("Failure in name lookup: %s"), g_strerror(errno)); + camel_exception_setv(&ex, CAMEL_EXCEPTION_SYSTEM, _("Failure in name lookup: %s"), g_strerror(errno)); else - camel_exception_setv(ex, CAMEL_EXCEPTION_USER_CANCEL, _("Cancelled")); + camel_exception_setv(&ex, CAMEL_EXCEPTION_USER_CANCEL, _("Cancelled")); /* We cancel so if the thread impl is decent it causes immediate exit. We detach so we dont need to wait for it to exit if it isn't. @@ -799,7 +801,7 @@ camel_gethostbyname (const char *name, CamelException *ex) d(printf("child done\n")); } } else { - camel_exception_setv(ex, CAMEL_EXCEPTION_SYSTEM, _("Host lookup failed: cannot create thread: %s"), g_strerror(errno)); + camel_exception_setv(&ex, CAMEL_EXCEPTION_SYSTEM, _("Host lookup failed: cannot create thread: %s"), g_strerror(errno)); } e_msgport_destroy(reply_port); } @@ -807,15 +809,15 @@ camel_gethostbyname (const char *name, CamelException *ex) camel_operation_end(NULL); - if (!camel_exception_is_set(ex)) { + if (!camel_exception_is_set(&ex)) { if (msg->result == 0) return &msg->hostbuf; if (msg->herr == HOST_NOT_FOUND || msg->herr == NO_DATA) - camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM, + camel_exception_setv (&ex, CAMEL_EXCEPTION_SYSTEM, _("Host lookup failed: %s: host not found"), name); else - camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM, + camel_exception_setv (&ex, CAMEL_EXCEPTION_SYSTEM, _("Host lookup failed: %s: unknown reason"), name); } @@ -824,6 +826,8 @@ camel_gethostbyname (const char *name, CamelException *ex) g_free(msg); } + camel_exception_xfer(exout, &ex); + return NULL; } @@ -857,20 +861,22 @@ get_hostbyaddr (void *data) struct hostent * -camel_gethostbyaddr (const char *addr, int len, int type, CamelException *ex) +camel_gethostbyaddr (const char *addr, int len, int type, CamelException *exout) { #ifdef ENABLE_THREADS int fdmax, status, fd, cancel_fd; #endif struct _lookup_msg *msg; - + CamelException ex; + g_return_val_if_fail (addr != NULL, NULL); if (camel_operation_cancel_check (NULL)) { - camel_exception_set (ex, CAMEL_EXCEPTION_USER_CANCEL, _("Cancelled")); + camel_exception_set (exout, CAMEL_EXCEPTION_USER_CANCEL, _("Cancelled")); return NULL; } - + + camel_exception_init(&ex); camel_operation_start_transient (NULL, _("Resolving address")); msg = g_malloc0 (sizeof (struct _lookup_msg)); @@ -906,9 +912,9 @@ camel_gethostbyaddr (const char *addr, int len, int type, CamelException *ex) if (status == -1 || FD_ISSET(cancel_fd, &rdset)) { if (status == -1) - camel_exception_setv(ex, CAMEL_EXCEPTION_SYSTEM, _("Failure in name lookup: %s"), g_strerror(errno)); + camel_exception_setv(&ex, CAMEL_EXCEPTION_SYSTEM, _("Failure in name lookup: %s"), g_strerror(errno)); else - camel_exception_setv(ex, CAMEL_EXCEPTION_USER_CANCEL, _("Cancelled")); + camel_exception_setv(&ex, CAMEL_EXCEPTION_USER_CANCEL, _("Cancelled")); /* We cancel so if the thread impl is decent it causes immediate exit. We detach so we dont need to wait for it to exit if it isn't. @@ -934,15 +940,15 @@ camel_gethostbyaddr (const char *addr, int len, int type, CamelException *ex) camel_operation_end (NULL); - if (!camel_exception_is_set(ex)) { + if (!camel_exception_is_set(&ex)) { if (msg->result == 0) return &msg->hostbuf; if (msg->herr == HOST_NOT_FOUND || msg->herr == NO_DATA) - camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM, + camel_exception_setv (&ex, CAMEL_EXCEPTION_SYSTEM, _("Host lookup failed: host not found")); else - camel_exception_setv (ex, CAMEL_EXCEPTION_SYSTEM, + camel_exception_setv (&ex, CAMEL_EXCEPTION_SYSTEM, _("Host lookup failed: unknown reason")); } @@ -951,6 +957,8 @@ camel_gethostbyaddr (const char *addr, int len, int type, CamelException *ex) g_free(msg); } + camel_exception_xfer(exout, &ex); + return NULL; } |