Changeset 1477

Show
Ignore:
Timestamp:
01/26/07 08:42:45
Author:
svillar
Message:

* Fixed the implementation of tny_camel_header_get_xxx methods

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/ChangeLog

    r1475 r1477  
     12007-01-26  Sergio Villar Senin <svillar@igalia.com> 
     2 
     3        * Fixed the implementation of tny_camel_header_get_xxx methods. Now 
     4        they return NULL whenever an error happens (or if the attribute hasn't 
     5        a value yet) instead of the string "Invalid". The documentation has 
     6        been updated also. 
     7 
    182007-01-26  Philip Van Hoof  <pvanhoof@gnome.org> 
    29 
  • trunk/libtinymail-camel/tny-camel-header.c

    r1450 r1477  
    4242static GObjectClass *parent_class = NULL; 
    4343 
    44 static const gchar *invalid = "Invalid"; 
    45  
    4644static void  
    4745destroy_write (TnyCamelHeader *self) 
     
    5149                camel_object_unref (CAMEL_OBJECT (((WriteInfo*)self->info)->msg)); 
    5250 
    53         if (((WriteInfo*)self->info)->mime_from && ((WriteInfo*)self->info)->mime_from != invalid
     51        if (((WriteInfo*)self->info)->mime_from && ((WriteInfo*)self->info)->mime_from != NULL
    5452                g_free (((WriteInfo*)self->info)->mime_from); 
    5553 
     
    155153{ 
    156154        TnyCamelHeader *me = TNY_CAMEL_HEADER (self); 
    157         const gchar *retval
     155        const gchar *retval = NULL
    158156 
    159157#ifdef HEALTHY_CHECK 
    160158        if (!me->healthy || G_UNLIKELY (!me->info)) 
    161                 return invalid
    162 #else 
    163         if (G_UNLIKELY (!me->info)) 
    164                 return invalid
     159                return NULL
     160#else 
     161        if (G_UNLIKELY (!me->info)) 
     162                return NULL
    165163#endif 
    166164 
     
    171169                if (addr) 
    172170                        retval = camel_address_format (CAMEL_ADDRESS (addr)); 
    173                 else 
    174                         retval = invalid; 
    175         } else 
    176                 retval = invalid; 
     171        } 
    177172 
    178173        return retval; 
     
    294289{ 
    295290        TnyCamelHeader *me = TNY_CAMEL_HEADER (self); 
    296         const gchar *retval
     291        const gchar *retval = NULL
    297292 
    298293#ifdef HEALTHY_CHECK 
    299294        if (!me->healthy) 
    300                 return invalid
    301 #endif 
    302  
    303         if (G_UNLIKELY (!me->info)) 
    304                 return invalid
     295                return NULL
     296#endif 
     297 
     298        if (G_UNLIKELY (!me->info)) 
     299                return NULL
    305300 
    306301        if (G_UNLIKELY (me->write == 1)) 
     
    309304                retval = camel_message_info_cc ((CamelMessageInfo*)me->info); 
    310305 
    311         return retval?retval:invalid
     306        return retval
    312307} 
    313308 
     
    316311{ 
    317312        TnyCamelHeader *me = TNY_CAMEL_HEADER (self); 
    318         const gchar *retval
     313        const gchar *retval = NULL
    319314 
    320315#ifdef HEALTHY_CHECK 
    321316        if (!me->healthy) 
    322                 return invalid
    323 #endif 
    324  
    325         if (G_UNLIKELY (!me->info)) 
    326                 return invalid
     317                return NULL
     318#endif 
     319 
     320        if (G_UNLIKELY (!me->info)) 
     321                return NULL
    327322 
    328323        if (G_UNLIKELY (me->write == 1)) 
    329324                retval = camel_medium_get_header (CAMEL_MEDIUM (((WriteInfo*)me->info)->msg), "bcc"); 
    330         else 
    331                 retval = invalid; 
    332  
    333         return retval?retval:invalid; 
     325 
     326        return retval; 
    334327} 
    335328 
     
    470463{ 
    471464        TnyCamelHeader *me = TNY_CAMEL_HEADER (self); 
    472         const gchar *retval
     465        const gchar *retval = NULL
    473466 
    474467#ifdef HEALTHY_CHECK 
    475468        if (!me->healthy || G_UNLIKELY (!me->info)) 
    476                 return invalid
    477 #else 
    478         if (G_UNLIKELY (!me->info)) 
    479                 return invalid
     469                return NULL
     470#else 
     471        if (G_UNLIKELY (!me->info)) 
     472                return NULL
    480473#endif 
    481474 
     
    488481                                if (addr) 
    489482                                        ((WriteInfo*)me->info)->mime_from = camel_address_format (CAMEL_ADDRESS (addr)); 
    490                                 else ((WriteInfo*)me->info)->mime_from = (gchar*) invalid
     483                                else ((WriteInfo*)me->info)->mime_from = NULL
    491484                } 
    492485 
     
    495488                retval = camel_message_info_from ((CamelMimeMessage*)me->info); 
    496489 
    497         return retval?retval:invalid
     490        return retval
    498491} 
    499492 
     
    502495{ 
    503496        TnyCamelHeader *me = TNY_CAMEL_HEADER (self); 
    504         const gchar *retval
     497        const gchar *retval = NULL
    505498 
    506499#ifdef HEALTHY_CHECK 
    507500        if (!me->healthy || G_UNLIKELY (!me->info)) 
    508                 return invalid
    509 #else 
    510         if (G_UNLIKELY (!me->info)) 
    511                 return invalid
     501                return NULL
     502#else 
     503        if (G_UNLIKELY (!me->info)) 
     504                return NULL
    512505#endif 
    513506 
     
    517510                retval = camel_message_info_subject ((CamelMessageInfo*)me->info); 
    518511 
    519         return retval?retval:invalid
     512        return retval
    520513} 
    521514 
     
    525518{ 
    526519        TnyCamelHeader *me = TNY_CAMEL_HEADER (self); 
    527         gchar *retval
     520        const gchar *retval = NULL
    528521 
    529522#ifdef HEALTHY_CHECK 
    530523        if (!me->healthy || G_UNLIKELY (!me->info)) 
    531                 return invalid
    532 #else 
    533         if (G_UNLIKELY (!me->info)) 
    534                 return invalid
    535 #endif 
    536  
    537         if (G_UNLIKELY (me->write == 1)) 
    538                 retval = (gchar*) camel_medium_get_header (CAMEL_MEDIUM (((WriteInfo*)me->info)->msg), "to"); 
     524                return NULL
     525#else 
     526        if (G_UNLIKELY (!me->info)) 
     527                return NULL
     528#endif 
     529 
     530        if (G_UNLIKELY (me->write == 1)) 
     531                retval = camel_medium_get_header (CAMEL_MEDIUM (((WriteInfo*)me->info)->msg), "to"); 
    539532        else 
    540                 retval = (gchar*) camel_message_info_to ((CamelMessageInfo*)me->info); 
    541  
    542         return retval?(const gchar*)retval:invalid
     533                retval = camel_message_info_to ((CamelMessageInfo*)me->info); 
     534 
     535        return retval
    543536} 
    544537 
     
    547540{ 
    548541        TnyCamelHeader *me = TNY_CAMEL_HEADER (self); 
    549         gchar *retval
     542        const gchar *retval = NULL
    550543 
    551544#ifdef HEALTHY_CHECK 
    552545        if (!me->healthy || G_UNLIKELY (!me->info)) 
    553                 return invalid
    554 #else 
    555         if (G_UNLIKELY (!me->info)) 
    556                 return invalid
    557 #endif 
    558  
    559         if (G_UNLIKELY (me->write == 1)) 
    560                 retval = (gchar*) camel_mime_message_get_message_id (((WriteInfo*)me->info)->msg); 
     546                return NULL
     547#else 
     548        if (G_UNLIKELY (!me->info)) 
     549                return NULL
     550#endif 
     551 
     552        if (G_UNLIKELY (me->write == 1)) 
     553                retval = camel_mime_message_get_message_id (((WriteInfo*)me->info)->msg); 
    561554        else 
    562                 retval = (gchar*) camel_message_info_message_id ((CamelMessageInfo*)me->info); 
    563  
    564         return retval?(const gchar*)retval:invalid
     555                retval = camel_message_info_message_id ((CamelMessageInfo*)me->info); 
     556 
     557        return retval
    565558} 
    566559 
     
    599592{ 
    600593        TnyCamelHeader *me = TNY_CAMEL_HEADER (self); 
    601         const gchar *retval
     594        const gchar *retval = NULL
    602595 
    603596#ifdef HEALTHY_CHECK 
    604597        if (!me->healthy || G_UNLIKELY (!me->info) || G_UNLIKELY (me->write == 1)) 
    605                 return invalid
     598                return NULL
    606599#else 
    607600        if (G_UNLIKELY (!me->info) || G_UNLIKELY (me->write == 1)) 
    608                 return invalid
     601                return NULL
    609602#endif 
    610603 
    611604        retval = camel_message_info_uid ((CamelMessageInfo*)me->info); 
    612605 
    613         return retval?retval:invalid
     606        return retval
    614607} 
    615608 
  • trunk/libtinymail/tny-folder-monitor.c

    r1447 r1477  
    162162        while (!tny_iterator_is_done (iter)) 
    163163        { 
     164                const gchar *id; 
    164165                TnyHeader *header = TNY_HEADER (tny_iterator_get_current (iter)); 
    165                 if (!strcmp (tny_header_get_uid (header), uid)) 
     166                id = tny_header_get_uid (header); 
     167                if (id && (!strcmp (id, uid))) 
    166168                { found = TRUE; break; } 
    167169                g_object_unref (G_OBJECT (header)); 
     
    222224        while (!tny_iterator_is_done (iter)) 
    223225        { 
     226                const gchar *uid; 
    224227                TnyHeader *header = TNY_HEADER (tny_iterator_get_current (iter)); 
    225                 foreach_list_remove_header (priv, tny_header_get_uid (header)); 
     228                uid = tny_header_get_uid (header); 
     229                if (uid) 
     230                        foreach_list_remove_header (priv, uid); 
    226231                g_object_unref (G_OBJECT (header)); 
    227232                tny_iterator_next (iter); 
  • trunk/libtinymail/tny-header.c

    r1411 r1477  
    4949 * Get the reply-to header 
    5050 *  
    51  * Return value: reply-to header 
     51 * Return value: reply-to header, or NULL if not found 
    5252 **/ 
    5353const gchar* 
     
    174174 * Get the CC header. The returned value should not be freed. 
    175175 *  
    176  * Return value: cc header as a read-only string 
     176 * Return value: cc header as a read-only string, or NULL if not found 
    177177 * 
    178178 **/ 
     
    194194 * Get the BCC header. The returned value should not be freed. 
    195195 *  
    196  * Return value: bcc header as a read-only string 
     196 * Return value: bcc header as a read-only string, or NULL if not found 
    197197 * 
    198198 **/ 
     
    254254 * returned value should not be freed. 
    255255 *  
    256  * Return value: Unique follow-up uid as a read-only string 
     256 * Return value: Unique follow-up uid as a read-only string, or NULL if not found 
    257257 * 
    258258 **/ 
     
    275275 * returned value should not be freed. 
    276276 *  
    277  * Return value: message-id header as a read-only string 
     277 * Return value: message-id header as a read-only string, or NULL if not found 
    278278 * 
    279279 **/ 
     
    317317 * Get the from header. The returned value should not be freed. 
    318318 *  
    319  * Return value: from header as a read-only string. 
     319 * Return value: from header as a read-only string, or NULL if not found 
    320320 * 
    321321 **/ 
     
    337337 * Get the subject header. The returned value should not be freed. 
    338338 *  
    339  * Return value: subject header as a read-only string. 
     339 * Return value: subject header as a read-only string, or NULL if not found 
    340340 * 
    341341 **/ 
     
    358358 * Get the to header. The returned value should not be freed. 
    359359 *  
    360  * Return value: to header as a read-only string 
     360 * Return value: to header as a read-only string, or NULL if not found 
    361361 * 
    362362 **/ 
  • trunk/libtinymailui-gtk/tny-gtk-header-list-model.c

    r1419 r1477  
    326326        TnyHeader *header = NULL; 
    327327        TnyGtkHeaderListModel *list_model = TNY_GTK_HEADER_LIST_MODEL (self); 
     328        const gchar *str; 
    328329 
    329330        g_return_if_fail (iter->stamp == TNY_GTK_HEADER_LIST_MODEL (self)->stamp); 
     
    343344                case TNY_GTK_HEADER_LIST_MODEL_CC_COLUMN: 
    344345                        g_value_init (value, G_TYPE_STRING); 
    345                         g_value_set_string (value, tny_header_get_cc (header)); 
     346                        str = tny_header_get_cc (header); 
     347                        if (str) 
     348                                g_value_set_string (value, str); 
    346349                        break; 
    347350                case TNY_GTK_HEADER_LIST_MODEL_DATE_SENT_COLUMN: 
     
    376379                case TNY_GTK_HEADER_LIST_MODEL_TO_COLUMN: 
    377380                        g_value_init (value, G_TYPE_STRING); 
    378                         g_value_set_string (value, tny_header_get_to (header)); 
     381                        str = tny_header_get_to (header); 
     382                        if (str) 
     383                                g_value_set_string (value, str); 
    379384                        break; 
    380385                case TNY_GTK_HEADER_LIST_MODEL_SUBJECT_COLUMN: 
    381386                        g_value_init (value, G_TYPE_STRING); 
    382                         g_value_set_string (value, tny_header_get_subject (header)); 
     387                        str = tny_header_get_subject (header); 
     388                        if (str) 
     389                                g_value_set_string (value, str); 
    383390                        break; 
    384391                case TNY_GTK_HEADER_LIST_MODEL_FROM_COLUMN: 
    385392                        g_value_init (value, G_TYPE_STRING); 
    386                         g_value_set_string (value, tny_header_get_from (header)); 
     393                        str = tny_header_get_from (header); 
     394                        if (str) 
     395                                g_value_set_string (value, str); 
    387396                        break; 
    388397                case TNY_GTK_HEADER_LIST_MODEL_FLAGS_COLUMN: 
  • trunk/libtinymailui-gtk/tny-gtk-header-view.c

    r1198 r1477  
    7979        { 
    8080                gchar *str; 
     81                const gchar *to, *from, *subject; 
    8182                g_object_ref (G_OBJECT (header));  
    8283                priv->header = header; 
    8384 
    84                 gtk_label_set_text (GTK_LABEL (priv->to_label), tny_header_get_to (header)); 
    85                 gtk_label_set_text (GTK_LABEL (priv->from_label), tny_header_get_from (header)); 
    86                 gtk_label_set_text (GTK_LABEL (priv->subject_label), tny_header_get_subject (header)); 
     85                to = tny_header_get_to (header); 
     86                from = tny_header_get_from (header); 
     87                subject = tny_header_get_subject (header); 
     88 
     89                if (to) 
     90                        gtk_label_set_text (GTK_LABEL (priv->to_label), to); 
     91                if (from) 
     92                        gtk_label_set_text (GTK_LABEL (priv->from_label), from); 
     93                if (subject) 
     94                        gtk_label_set_text (GTK_LABEL (priv->subject_label), subject); 
    8795 
    8896                str = _get_readable_date (tny_header_get_date_sent (header)); 
  • trunk/libtinymailui-gtk/tny-gtk-msg-window.c

    r1277 r1477  
    9797        { 
    9898                g_assert (TNY_IS_MSG (msg)); 
     99                const gchar *subject; 
    99100 
    100101                header = TNY_HEADER (tny_msg_get_header (msg)); 
    101                 gtk_window_set_title (GTK_WINDOW (self),  
    102                         tny_header_get_subject (header)); 
     102                subject = tny_header_get_subject (header); 
     103                if (subject) 
     104                        gtk_window_set_title (GTK_WINDOW (self), subject); 
    103105                g_object_unref (G_OBJECT (header)); 
    104106        }