diff options
Diffstat (limited to 'filter/filter-driver.c')
-rw-r--r-- | filter/filter-driver.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/filter/filter-driver.c b/filter/filter-driver.c index f32699559a..e07b58dc0c 100644 --- a/filter/filter-driver.c +++ b/filter/filter-driver.c @@ -562,17 +562,22 @@ filter_driver_log (FilterDriver *driver, enum filter_log_t status, const char *d case FILTER_LOG_START: { /* write log header */ const char *subject = NULL; - const char *from = NULL; + char *fromstr; + const CamelInternetAddress *from; char date[50]; time_t t; - + + /* FIXME: does this need locking? Probably */ + from = camel_mime_message_get_from (p->message); + fromstr = camel_address_format((CamelAddress *)from); subject = camel_mime_message_get_subject (p->message); time (&t); strftime (date, 49, "%a, %d %b %Y %H:%M:%S", localtime (&t)); fprintf (p->logfile, "Applied filter \"%s\" to message from %s - \"%s\" at %s\n", - str, from ? from : "unknown", subject ? subject : "", date); + str, fromstr ? fromstr : "unknown", subject ? subject : "", date); + g_free(fromstr); break; } case FILTER_LOG_ACTION: |