talons

Fork of Claws Mail https://www.claws-mail
Log | Files | Refs | README | LICENSE

commit 78810ba2ca3a5bf00c32746f7b18d21b647a27a8
parent e17a222d124381a898e899103e64dab3889b61eb
Author: Colin Leroy <colin@colino.net>
Date:   Wed, 12 Sep 2012 09:23:13 +0000

2012-09-12 [colin]	3.8.1cvs52

	* src/addressbook.c
	* src/addrharvest.c
	* src/addrindex.c
	* src/addritem.c
	* src/compose.c
	* src/edittags.c
	* src/folder.c
	* src/imap.c
	* src/inc.c
	* src/ldif.c
	* src/mainwindow.c
	* src/mbox.c
	* src/mimeview.c
	* src/mutt.c
	* src/partial_download.c
	* src/prefs_filtering_action.c
	* src/prefs_toolbar.c
	* src/printing.c
	* src/procheader.c
	* src/procmime.c
	* src/procmsg.c
	* src/summaryview.c
	* src/textview.c
	* src/common/utils.c
	* src/etpan/imap-thread.c
	* src/gtk/gtkaspell.c
	* src/plugins/pgpcore/sgpgme.c
		More fixes from bug #1961:
		- Write-only variables
		- Null pointer dereferences
		- A couple other fixes for which the reporter
		  was unsure, but which showed problems.
		More details in bug #1961 comments.

Diffstat:
MChangeLog | 36++++++++++++++++++++++++++++++++++++
MPATCHSETS | 1+
Mconfigure.ac | 2+-
Msrc/addressbook.c | 17+++++------------
Msrc/addrharvest.c | 7++-----
Msrc/addrindex.c | 2--
Msrc/addritem.c | 2+-
Msrc/common/utils.c | 16++++++++--------
Msrc/compose.c | 11++---------
Msrc/edittags.c | 10++++++----
Msrc/etpan/imap-thread.c | 2--
Msrc/folder.c | 8+-------
Msrc/gtk/gtkaspell.c | 25++-----------------------
Msrc/imap.c | 15+--------------
Msrc/inc.c | 2+-
Msrc/ldif.c | 1-
Msrc/mainwindow.c | 2--
Msrc/mbox.c | 4----
Msrc/mimeview.c | 4+---
Msrc/mutt.c | 4++--
Msrc/partial_download.c | 4----
Msrc/plugins/pgpcore/sgpgme.c | 2--
Msrc/prefs_filtering_action.c | 1+
Msrc/prefs_toolbar.c | 4+---
Msrc/printing.c | 2--
Msrc/procheader.c | 2+-
Msrc/procmime.c | 6++----
Msrc/procmsg.c | 7++-----
Msrc/summaryview.c | 7-------
Msrc/textview.c | 4++--
30 files changed, 79 insertions(+), 131 deletions(-)

diff --git a/ChangeLog b/ChangeLog @@ -1,3 +1,39 @@ +2012-09-12 [colin] 3.8.1cvs52 + + * src/addressbook.c + * src/addrharvest.c + * src/addrindex.c + * src/addritem.c + * src/compose.c + * src/edittags.c + * src/folder.c + * src/imap.c + * src/inc.c + * src/ldif.c + * src/mainwindow.c + * src/mbox.c + * src/mimeview.c + * src/mutt.c + * src/partial_download.c + * src/prefs_filtering_action.c + * src/prefs_toolbar.c + * src/printing.c + * src/procheader.c + * src/procmime.c + * src/procmsg.c + * src/summaryview.c + * src/textview.c + * src/common/utils.c + * src/etpan/imap-thread.c + * src/gtk/gtkaspell.c + * src/plugins/pgpcore/sgpgme.c + More fixes from bug #1961: + - Write-only variables + - Null pointer dereferences + - A couple other fixes for which the reporter + was unsure, but which showed problems. + More details in bug #1961 comments. + 2012-09-12 [colin] 3.8.1cvs51 * src/compose.c diff --git a/PATCHSETS b/PATCHSETS @@ -4426,3 +4426,4 @@ ( cvs diff -u -r 1.115.2.255 -r 1.115.2.256 src/main.c; ) > 3.8.1cvs49.patchset ( cvs diff -u -r 1.1.2.3 -r 1.1.2.4 claws-mail.pc.in; ) > 3.8.1cvs50.patchset ( cvs diff -u -r 1.382.2.610 -r 1.382.2.611 src/compose.c; cvs diff -u -r 1.79.2.75 -r 1.79.2.76 src/mh.c; cvs diff -u -r 1.9.2.55 -r 1.9.2.56 src/common/ssl.c; cvs diff -u -r 1.1.2.37 -r 1.1.2.38 src/plugins/pgpcore/passphrase.c; ) > 3.8.1cvs51.patchset +( cvs diff -u -r 1.60.2.149 -r 1.60.2.150 src/addressbook.c; cvs diff -u -r 1.6.10.27 -r 1.6.10.28 src/addrharvest.c; cvs diff -u -r 1.28.2.49 -r 1.28.2.50 src/addrindex.c; cvs diff -u -r 1.13.2.22 -r 1.13.2.23 src/addritem.c; cvs diff -u -r 1.382.2.611 -r 1.382.2.612 src/compose.c; cvs diff -u -r 1.1.2.28 -r 1.1.2.29 src/edittags.c; cvs diff -u -r 1.213.2.210 -r 1.213.2.211 src/folder.c; cvs diff -u -r 1.179.2.259 -r 1.179.2.260 src/imap.c; cvs diff -u -r 1.149.2.109 -r 1.149.2.110 src/inc.c; cvs diff -u -r 1.12.2.25 -r 1.12.2.26 src/ldif.c; cvs diff -u -r 1.274.2.350 -r 1.274.2.351 src/mainwindow.c; cvs diff -u -r 1.28.2.52 -r 1.28.2.53 src/mbox.c; cvs diff -u -r 1.83.2.194 -r 1.83.2.195 src/mimeview.c; cvs diff -u -r 1.6.10.21 -r 1.6.10.22 src/mutt.c; cvs diff -u -r 1.1.2.27 -r 1.1.2.28 src/partial_download.c; cvs diff -u -r 1.1.4.78 -r 1.1.4.79 src/prefs_filtering_action.c; cvs diff -u -r 1.30.2.73 -r 1.30.2.74 src/prefs_toolbar.c; cvs diff -u -r 1.1.2.38 -r 1.1.2.39 src/printing.c; cvs diff -u -r 1.47.2.58 -r 1.47.2.59 src/procheader.c; cvs diff -u -r 1.49.2.149 -r 1.49.2.150 src/procmime.c; cvs diff -u -r 1.150.2.126 -r 1.150.2.127 src/procmsg.c; cvs diff -u -r 1.395.2.452 -r 1.395.2.453 src/summaryview.c; cvs diff -u -r 1.96.2.247 -r 1.96.2.248 src/textview.c; cvs diff -u -r 1.36.2.200 -r 1.36.2.201 src/common/utils.c; cvs diff -u -r 1.1.4.119 -r 1.1.4.120 src/etpan/imap-thread.c; cvs diff -u -r 1.9.2.80 -r 1.9.2.81 src/gtk/gtkaspell.c; cvs diff -u -r 1.1.2.73 -r 1.1.2.74 src/plugins/pgpcore/sgpgme.c; ) > 3.8.1cvs52.patchset diff --git a/configure.ac b/configure.ac @@ -12,7 +12,7 @@ MINOR_VERSION=8 MICRO_VERSION=1 INTERFACE_AGE=0 BINARY_AGE=0 -EXTRA_VERSION=51 +EXTRA_VERSION=52 EXTRA_RELEASE= EXTRA_GTK2_VERSION= diff --git a/src/addressbook.c b/src/addressbook.c @@ -2900,7 +2900,7 @@ static void addressbook_treenode_delete_cb(GtkAction *action, gpointer data) /* Confirm deletion */ delType = ADDRTREE_DEL_NONE; if( obj->type == ADDR_ITEM_FOLDER ) { - if( iface->externalQuery ) { + if( iface && iface->externalQuery ) { message = g_strdup_printf( _( "Do you want to delete the query " \ "results and addresses in '%s' ?" ), @@ -2967,7 +2967,7 @@ static void addressbook_treenode_delete_cb(GtkAction *action, gpointer data) cache = adbase->addressCache; /* Remove query results folder */ - if( iface->externalQuery ) { + if( iface && iface->externalQuery ) { AdapterFolder *adapter = ADAPTER_FOLDER(obj); ItemFolder *folder = adapter->itemFolder; @@ -3708,11 +3708,9 @@ static void addressbook_folder_refresh_one_person( GtkCMCTree *clist, ItemPerson static void addressbook_folder_remove_one_person( GtkCMCTree *clist, ItemPerson *person ) { GtkCMCTreeNode *node; - gint row; if( person == NULL ) return; node = gtk_cmctree_find_by_row_data( clist, NULL, person ); - row = gtk_cmclist_find_row_from_data( GTK_CMCLIST(clist), person ); if( node ) { addressbook_folder_remove_node( clist, node ); } @@ -3875,15 +3873,15 @@ static void addressbook_set_clist( AddressObject *obj, gboolean refresh ) { if( obj->type == ADDR_DATASOURCE ) { ads = ADAPTER_DSOURCE(obj); - ds = ADAPTER_DSOURCE(obj)->dataSource; + ds = ads->dataSource; if( ds ) { /* Load root folder */ ItemFolder *rootFolder = NULL; rootFolder = addrindex_ds_get_root_folder( ds ); addressbook_folder_load_person( - ctreelist, addrindex_ds_get_root_folder( ds ) ); + ctreelist, rootFolder ); addressbook_folder_load_group( - ctreelist, addrindex_ds_get_root_folder( ds ) ); + ctreelist, rootFolder ); } } else { @@ -4577,8 +4575,6 @@ static void addressbook_perform_search( AddressDataSource *ds, gchar *searchTerm, GtkCMCTreeNode *pNode ) { - AddrBookBase *adbase; - AddressCache *cache; ItemFolder *folder; gchar *name; gint queryID; @@ -4598,9 +4594,6 @@ static void addressbook_perform_search( else { return; } - /* Get reference to address cache */ - adbase = ( AddrBookBase * ) ds->rawDataSource; - cache = adbase->addressCache; /* Create a folder for the search results */ name = g_strdup_printf( _queryFolderLabel_, searchTerm ); diff --git a/src/addrharvest.c b/src/addrharvest.c @@ -577,13 +577,10 @@ static void addrharvest_parse_address( mgu_str_ltc2space( buffer, '(', ')' ); g_strstrip( buffer ); - if( g_ascii_strcasecmp( buffer, email ) == 0 ) { + if( g_ascii_strcasecmp( buffer, email ) == 0 ) name = g_strdup(""); - } - else { - name = buffer; + else name = conv_unmime_header(buffer, NULL, TRUE); - } /* Insert into address book */ #ifndef USE_NEW_ADDRBOOK diff --git a/src/addrindex.c b/src/addrindex.c @@ -1572,7 +1572,6 @@ static int addrindex_write_ldap( FILE *fp, AddressDataSource *ds, gint lvl ) { * \param file Address index file. */ static void addrindex_read_index( AddressIndex *addrIndex, XMLFile *file ) { - guint prev_level; XMLTag *xtag; AddressInterface *iface = NULL, *dsIFace = NULL; AddressDataSource *ds; @@ -1580,7 +1579,6 @@ static void addrindex_read_index( AddressIndex *addrIndex, XMLFile *file ) { addrIndex->loadedFlag = FALSE; for (;;) { - prev_level = file->level; rc = xml_parse_next_tag( file ); if( file->level == 0 ) return; diff --git a/src/addritem.c b/src/addritem.c @@ -589,7 +589,7 @@ void addritem_person_add_attribute( * \param attrib Attribute to remove. */ void addritem_person_remove_attribute( ItemPerson *person, const gchar *attrib ) { - cm_return_if_fail( person != NULL || attrib != NULL ); + cm_return_if_fail( person != NULL && attrib != NULL ); GList *attrib_list; attrib_list = person->listAttrib; diff --git a/src/common/utils.c b/src/common/utils.c @@ -706,7 +706,7 @@ void eliminate_parenthesis(gchar *str, gchar op, gchar cl) register gchar *srcp, *destp; gint in_brace; - srcp = destp = str; + destp = str; while ((destp = strchr(destp, op))) { in_brace = 1; @@ -730,7 +730,7 @@ void extract_parenthesis(gchar *str, gchar op, gchar cl) register gchar *srcp, *destp; gint in_brace; - srcp = destp = str; + destp = str; while ((srcp = strchr(destp, op))) { if (destp > str) @@ -759,7 +759,7 @@ static void extract_parenthesis_with_skip_quote(gchar *str, gchar quote_chr, gint in_brace; gboolean in_quote = FALSE; - srcp = destp = str; + destp = str; while ((srcp = strchr_with_skip_quote(destp, quote_chr, op))) { if (destp > str) @@ -805,7 +805,7 @@ void eliminate_address_comment(gchar *str) register gchar *srcp, *destp; gint in_brace; - srcp = destp = str; + destp = str; while ((destp = strchr(destp, '"'))) { if ((srcp = strchr(destp + 1, '"'))) { @@ -822,7 +822,7 @@ void eliminate_address_comment(gchar *str) } } - srcp = destp = str; + destp = str; while ((destp = strchr_with_skip_quote(destp, '"', '('))) { in_brace = 1; @@ -2886,7 +2886,7 @@ gint canonicalize_file_replace(const gchar *file) gchar *normalize_newlines(const gchar *str) { - const gchar *p = str; + const gchar *p; gchar *out, *outp; out = outp = g_malloc(strlen(str) + 1); @@ -4021,7 +4021,7 @@ void get_hex_str(gchar *out, guchar ch) INT_TO_HEX(hex, ch >> 4); *out++ = hex; INT_TO_HEX(hex, ch & 0x0f); - *out++ = hex; + *out = hex; } #undef REF_DEBUG @@ -5250,7 +5250,7 @@ size_t fast_strftime(gchar *buf, gint buflen, const gchar *format, struct tm *lt *curpos++ = *format++; } } - *curpos++ = '\0'; + *curpos = '\0'; return total_done; } diff --git a/src/compose.c b/src/compose.c @@ -889,10 +889,7 @@ static void compose_create_tags(GtkTextView *text, Compose *compose) for (i = 0; i < 8; i++) { if (success[i] == FALSE) { - GtkStyle *style; - g_warning("Compose: color allocation failed.\n"); - style = gtk_widget_get_style(GTK_WIDGET(text)); quote_color1 = quote_color2 = quote_color3 = quote_bgcolor1 = quote_bgcolor2 = quote_bgcolor3 = signature_color = uri_color = black; @@ -2344,8 +2341,8 @@ Compose *compose_reedit(MsgInfo *msginfo, gboolean batch) } if (fp != NULL) { - gboolean prev_autowrap = compose->autowrap; - GtkTextBuffer *buffer = textbuf; + gboolean prev_autowrap; + GtkTextBuffer *buffer; BLOCK_WRAP(); while (fgets(buf, sizeof(buf), fp) != NULL) { strcrchomp(buf); @@ -2568,8 +2565,6 @@ void compose_entry_append(Compose *compose, const gchar *address, gchar *tmp = g_strdup(begin); gchar *o_tmp = tmp; tmp[cur-begin]='\0'; - cur++; - begin = cur; while (*tmp == ' ' || *tmp == '\t') tmp++; compose_add_header_entry(compose, header, tmp, pref_type); @@ -7036,8 +7031,6 @@ static GtkWidget *compose_create_others(Compose *compose) G_CALLBACK(compose_savemsg_select_cb), compose); - rowcount++; - return table; } diff --git a/src/edittags.c b/src/edittags.c @@ -236,7 +236,7 @@ static void apply_popup_delete (GtkAction *action, gpointer data) static void apply_popup_delete_all (GtkAction *action, gpointer data) { - GSList *cur; + GSList *cur, *tags; GtkTreeModel *model; SummaryView *summaryview = NULL; @@ -252,13 +252,14 @@ static void apply_popup_delete_all (GtkAction *action, gpointer data) if (mainwindow_get_mainwindow() != NULL) summaryview = mainwindow_get_mainwindow()->summaryview; - cur = tags_get_list(); + cur = tags = tags_get_list(); for (; cur; cur = cur->next) { gint id = GPOINTER_TO_INT(cur->data); if (summaryview) summary_set_tag(summaryview, -id, NULL); tags_remove_tag(id); } + g_slist_free(tags); tags_write_tags(); APPLYWINDOW_UNLOCK(); @@ -756,13 +757,14 @@ static void apply_window_list_view_insert_tag(GtkWidget *list_view, static void apply_window_load_tags (void) { - GSList *cur; + GSList *cur, *tags; gint id; apply_window_list_view_clear_tags(applywindow.taglist); - cur = tags_get_list(); + cur = tags = tags_get_list(); for (; cur; cur = cur->next) { id = GPOINTER_TO_INT(cur->data); apply_window_list_view_insert_tag(applywindow.taglist, NULL, id); } + g_slist_free(tags); } diff --git a/src/etpan/imap-thread.c b/src/etpan/imap-thread.c @@ -2649,10 +2649,8 @@ imap_fetch_result_to_envelop_list(clist * fetch_result, carray ** p_env_list) { clistiter * cur; - unsigned int i; carray * env_list; - i = 0; env_list = carray_new(16); if (fetch_result) { diff --git a/src/folder.c b/src/folder.c @@ -407,7 +407,7 @@ void folder_item_remove(FolderItem *item) cm_return_if_fail(item->folder != NULL); cm_return_if_fail(item->folder->node != NULL); - start_node = node = item->node; + start_node = item->node; node = item->folder->node; @@ -2775,13 +2775,11 @@ void folder_item_write_cache(FolderItem *item) MsgInfo *folder_item_get_msginfo(FolderItem *item, gint num) { - Folder *folder; MsgInfo *msginfo = NULL; cm_return_val_if_fail(item != NULL, NULL); if (item->no_select) return NULL; - folder = item->folder; if (!item->cache) folder_item_read_cache(item); @@ -2799,7 +2797,6 @@ MsgInfo *folder_item_get_msginfo(FolderItem *item, gint num) MsgInfo *folder_item_get_msginfo_by_msgid(FolderItem *item, const gchar *msgid) { - Folder *folder; MsgInfo *msginfo; cm_return_val_if_fail(item != NULL, NULL); @@ -2807,7 +2804,6 @@ MsgInfo *folder_item_get_msginfo_by_msgid(FolderItem *item, const gchar *msgid) if (item->no_select) return FALSE; - folder = item->folder; if (!item->cache) folder_item_read_cache(item); @@ -3342,8 +3338,6 @@ gint folder_item_move_to(FolderItem *src, FolderItem *dest, FolderItem **new_ite tmp = folder_item_parent(tmp); } - tmp = folder_item_parent(src); - src_identifier = folder_item_get_identifier(src); dst_identifier = folder_item_get_identifier(dest); diff --git a/src/gtk/gtkaspell.c b/src/gtk/gtkaspell.c @@ -561,7 +561,7 @@ static void entry_delete_cb(GtkTextBuffer *textbuf, GtkAspell *gtkaspell) { int origpos; - gint start, end; + gint start; cm_return_if_fail(gtkaspell->gtkaspeller->speller); @@ -569,7 +569,6 @@ static void entry_delete_cb(GtkTextBuffer *textbuf, return; start = gtk_text_iter_get_offset(startiter); - end = gtk_text_iter_get_offset(enditer); origpos = get_textview_buffer_offset(gtkaspell->gtktext); if (start) { check_at(gtkaspell, start - 1); @@ -961,12 +960,9 @@ static gboolean check_at(GtkAspell *gtkaspell, gint from_pos) { gint start, end; char buf[GTKASPELLWORDSIZE]; - GtkTextView *gtktext; cm_return_val_if_fail(from_pos >= 0, FALSE); - gtktext = gtkaspell->gtktext; - if (!get_word_from_pos(gtkaspell, from_pos, buf, sizeof(buf), &start, &end)) return FALSE; @@ -1272,7 +1268,7 @@ void gtkaspell_unblock_check(GtkAspell *gtkaspell) static void replace_real_word(GtkAspell *gtkaspell, const gchar *newword) { - int oldlen, newlen, wordlen; + int oldlen, newlen; gint origpos; gint pos; GtkTextView *gtktext; @@ -1287,7 +1283,6 @@ static void replace_real_word(GtkAspell *gtkaspell, const gchar *newword) origpos = gtkaspell->orig_pos; pos = origpos; oldlen = gtkaspell->end_pos - gtkaspell->start_pos; - wordlen = strlen(gtkaspell->theword); newlen = strlen(newword); /* FIXME: multybyte characters? */ @@ -1342,10 +1337,7 @@ static void replace_real_word_cb(gpointer data, const gchar *newword) /* Accept this word for this session */ static void add_word_to_session_cb(GtkWidget *w, gpointer data) { - GtkTextView *gtktext; GtkAspell *gtkaspell = (GtkAspell *) data; - gtktext = gtkaspell->gtktext; - enchant_dict_add_to_session(gtkaspell->gtkaspeller->speller, gtkaspell->theword, strlen(gtkaspell->theword)); @@ -1436,7 +1428,6 @@ static void replace_with_create_dialog_cb(GtkWidget *w, gpointer data) static PangoFontDescription *font_desc; GtkWidget *dialog; GtkWidget *label; - GtkWidget *w_hbox; GtkWidget *hbox; GtkWidget *vbox; GtkWidget *entry; @@ -1474,8 +1465,6 @@ static void replace_with_create_dialog_cb(GtkWidget *w, gpointer data) thelabel = g_strdup_printf(_("<span weight=\"bold\" " "size=\"larger\">Replace \"%s\" with: </span>"), utf8buf); - /* for title label */ - w_hbox = gtk_hbox_new(FALSE, 0); icon = gtk_image_new_from_stock(GTK_STOCK_DIALOG_QUESTION, GTK_ICON_SIZE_DIALOG); @@ -1524,8 +1513,6 @@ static void replace_with_create_dialog_cb(GtkWidget *w, gpointer data) gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 0); gtk_widget_show(label); - hbox = gtk_hbox_new(TRUE, 0); - gtkut_stock_button_set_create(&confirm_area, &cancel_button, GTK_STOCK_CANCEL, &ok_button, GTK_STOCK_OK, @@ -1813,8 +1800,6 @@ static GtkWidget *make_dictionary_list_submenu(GtkAspell *gtkaspell) if (gtkaspellcheckers->dictionary_list == NULL) gtkaspell_get_dictionary_list(FALSE); - tmp = gtkaspellcheckers->dictionary_list; - menu = gtk_menu_new(); curmenu = menu; @@ -1868,12 +1853,10 @@ static GSList *make_sug_menu(GtkAspell *gtkaspell) { GtkWidget *item, *submenu; char *caption; - GtkTextView *gtktext; GtkAccelGroup *accel; GList *l = gtkaspell->suggestions_list; gchar *utf8buf; GSList *list = NULL; - gtktext = gtkaspell->gtktext; if (l == NULL) return NULL; @@ -2274,10 +2257,6 @@ static void switch_to_alternate_cb(GtkWidget *w, static void set_point_continue(GtkAspell *gtkaspell) { - GtkTextView *gtktext; - - gtktext = gtkaspell->gtktext; - gtkaspell->ctx.set_position(gtkaspell->ctx.data, gtkaspell->orig_pos); if (gtkaspell->continue_check) diff --git a/src/imap.c b/src/imap.c @@ -1749,7 +1749,6 @@ static gint imap_do_copy_msgs(Folder *folder, FolderItem *dest, gint ok = MAILIMAP_NO_ERROR; GHashTable *uid_hash; gint last_num = 0; - gboolean single = FALSE; g_return_val_if_fail(folder != NULL, -1); g_return_val_if_fail(dest != NULL, -1); @@ -1763,8 +1762,6 @@ static gint imap_do_copy_msgs(Folder *folder, FolderItem *dest, } msginfo = (MsgInfo *)msglist->data; - if (msglist->next == NULL) - single = TRUE; src = msginfo->folder; if (src == dest) { g_warning("the src folder is identical to the dest.\n"); @@ -3077,9 +3074,7 @@ static GSList *imap_get_uncached_messages(IMAPSession *session, GSList *result = NULL; GSList * cur; uncached_data *data = g_new0(uncached_data, 1); - int finished; - finished = 0; cur = numlist; data->total = g_slist_length(numlist); data->ok = MAILIMAP_NO_ERROR; @@ -3965,7 +3960,7 @@ static gint get_list_of_uids(IMAPSession *session, Folder *folder, IMAPFolderIte GSList *uidlist, *elem; int r = -1; clist * lep_uidlist; - gint ok, nummsgs = 0, lastuid_old; + gint ok, nummsgs = 0; if (session == NULL) { return -1; @@ -4015,8 +4010,6 @@ static gint get_list_of_uids(IMAPSession *session, Folder *folder, IMAPFolderIte return -1; } - lastuid_old = item->lastuid; - for (elem = uidlist; elem != NULL; elem = g_slist_next(elem)) { guint msgnum; @@ -4041,7 +4034,6 @@ gint imap_get_num_list(Folder *folder, FolderItem *_item, GSList **msgnum_list, gint nummsgs; GSList *uidlist = NULL; gchar *dir; - gboolean selected_folder; gint known_list_len = 0; debug_print("get_num_list\n"); @@ -4085,9 +4077,6 @@ gint imap_get_num_list(Folder *folder, FolderItem *_item, GSList **msgnum_list, statusbar_print_all(_("Scanning folder %s ..."), FOLDER_ITEM(item)->folder->name); - selected_folder = (session->mbox != NULL) && - (!strcmp(session->mbox, item->item.path)); - if (item->should_trash_cache) { *old_uids_valid = FALSE; debug_print("get_num_list: trashing num list\n"); @@ -5702,7 +5691,6 @@ char* imap_modified_utf7_to_utf8(const char *mbox, gboolean change_spaces) const char *src; char *dst, *res = g_malloc(2*strlen(mbox)+1); - bitbuf = 0; dst = res; src = mbox; if(!dst) return NULL; @@ -5836,7 +5824,6 @@ char* imap_utf8_to_modified_utf7(const char *src, gboolean change_spaces) /* Encode US-ASCII characters as themselves */ if (c < 0x80) { ucs4 = c; - utf8total = 1; } else if (utf8total) { /* save UTF8 bits into UCS4 */ ucs4 = (ucs4 << 6) | (c & 0x3FUL); diff --git a/src/inc.c b/src/inc.c @@ -183,7 +183,7 @@ static void inc_finished(MainWindow *mainwin, gboolean new_messages, gboolean au if (cur_account && cur_account->inbox) item = folder_find_item_from_identifier(cur_account->inbox); - if (item == NULL && cur_account->folder) + if (item == NULL && cur_account && cur_account->folder) item = cur_account->folder->inbox; if (item == NULL) item = folder_get_default_inbox(); diff --git a/src/ldif.c b/src/ldif.c @@ -718,7 +718,6 @@ static void ldif_read_file( LdifFile *ldifFile, AddressCache *cache ) { mgu_free_list( listValue ); lastTag = NULL; listValue = NULL; - last64 = FALSE; } lastTag = g_strdup( tagName ); diff --git a/src/mainwindow.c b/src/mainwindow.c @@ -2918,7 +2918,6 @@ void main_window_toggle_message_view(MainWindow *mainwin) } break; case WIDE_LAYOUT: - ppaned = mainwin->hpaned; container = mainwin->vpaned; if (gtk_widget_get_parent(mainwin->messageview->vbox) != NULL) { mainwin->messageview->visible = FALSE; @@ -3391,7 +3390,6 @@ void main_window_set_menu_sensitive(MainWindow *mainwin) messageview_is_visible(mainwin->messageview)); summaryview = mainwin->summaryview; - menu_path = "Menu/View/Sort/DontSort"; switch (summaryview->sort_key) { case SORT_BY_NUMBER: diff --git a/src/mbox.c b/src/mbox.c @@ -154,15 +154,11 @@ gint proc_mbox(FolderItem *dest, const gchar *mbox, gboolean apply_filter, empty_lines = 0; lines = 0; - more = FALSE; /* process all lines from mboxrc file */ while (fgets(buf, sizeof(buf), mbox_fp) != NULL) { int offset; - /* eof not reached, expect more lines */ - more = TRUE; - /* eat empty lines */ if (buf[0] == '\n' || buf[0] == '\r') { empty_lines++; diff --git a/src/mimeview.c b/src/mimeview.c @@ -1050,13 +1050,11 @@ static void update_signature_noticeview(MimeView *mimeview, MimeInfo *mimeinfo, icon = STOCK_PIXMAP_PRIVACY_FAILED; break; case SIGNATURE_CHECK_FAILED: - button_text = _("Check again"); - func = check_signature_cb; - icon = STOCK_PIXMAP_PRIVACY_UNKNOWN; case SIGNATURE_CHECK_TIMEOUT: button_text = _("Check again"); func = check_signature_cb; icon = STOCK_PIXMAP_PRIVACY_UNKNOWN; + break; default: break; } diff --git a/src/mutt.c b/src/mutt.c @@ -212,9 +212,9 @@ static GSList *mutt_parse_rcplist( gchar *rcpList, gint *addrCount ) { list = NULL; cnt = 0; pStart = rcpList; - while( *pStart ) { + while( pStart && *pStart ) { ptr = pStart; - address = name = NULL; + address = NULL; pName = pAddr = NULL; /* Chew up spaces */ while( *ptr ) { diff --git a/src/partial_download.c b/src/partial_download.c @@ -72,7 +72,6 @@ int partial_msg_in_uidl_list(MsgInfo *msginfo) gchar uidl[POPBUFSIZE]; time_t recv_time; time_t now; - gint partial_recv; gchar *sanitized_uid = NULL; if (!msginfo->extradata) @@ -112,7 +111,6 @@ int partial_msg_in_uidl_list(MsgInfo *msginfo) gchar tmp[POPBUFSIZE]; strretchomp(buf); recv_time = RECV_TIME_NONE; - partial_recv = POP3_TOTALLY_RECEIVED; if (sscanf(buf, "%s\t%ld\t%s", uidl, (long int *) &recv_time, tmp) < 2) { @@ -386,7 +384,6 @@ gchar *partial_get_filename(const gchar *server, const gchar *login, gchar uidl[POPBUFSIZE]; time_t recv_time; time_t now; - gint partial_recv; gchar *sanitized_uid = g_strdup(login); subst_for_filename(sanitized_uid); @@ -416,7 +413,6 @@ gchar *partial_get_filename(const gchar *server, const gchar *login, gchar tmp[POPBUFSIZE]; strretchomp(buf); recv_time = RECV_TIME_NONE; - partial_recv = POP3_TOTALLY_RECEIVED; if (sscanf(buf, "%s\t%ld\t%s", uidl, (long int *) &recv_time, tmp) < 2) { diff --git a/src/plugins/pgpcore/sgpgme.c b/src/plugins/pgpcore/sgpgme.c @@ -85,7 +85,6 @@ gpgme_verify_result_t sgpgme_verify_signature(gpgme_ctx_t ctx, gpgme_data_t sig, SignatureStatus sgpgme_sigstat_gpgme_to_privacy(gpgme_ctx_t ctx, gpgme_verify_result_t status) { - unsigned long validity = 0; gpgme_signature_t sig = NULL; if (GPOINTER_TO_INT(status) == -GPG_ERR_SYSTEM_ERROR) { @@ -103,7 +102,6 @@ SignatureStatus sgpgme_sigstat_gpgme_to_privacy(gpgme_ctx_t ctx, gpgme_verify_re debug_print("sig == NULL\n"); return SIGNATURE_UNCHECKED; } - validity = sig->validity; debug_print("err code %d\n", gpg_err_code(sig->status)); switch (gpg_err_code(sig->status)) { diff --git a/src/prefs_filtering_action.c b/src/prefs_filtering_action.c @@ -543,6 +543,7 @@ static void prefs_filtering_action_create(void) gtk_combo_box_append_text(GTK_COMBO_BOX(tags_combo), (gpointer) name); g_free(name); } + g_slist_free(tags); prefs_filtering_action_check_widget_width(tags_combo); gtk_combo_box_set_active(GTK_COMBO_BOX(tags_combo), 0); diff --git a/src/prefs_toolbar.c b/src/prefs_toolbar.c @@ -1602,11 +1602,9 @@ static gboolean icon_window_button_press(GtkWidget *widget, GdkEventButton *event, ToolbarPage *prefs_toolbar ) { - GtkWidget *event_widget, *button; + GtkWidget *event_widget; gboolean restore = TRUE; - button = prefs_toolbar->icon_button; - /* Test where mouse was clicked */ event_widget = gtk_get_event_widget((GdkEvent *)event); if (event_widget != widget) { diff --git a/src/printing.c b/src/printing.c @@ -884,7 +884,6 @@ static void printing_textview_cb_begin_print(GtkPrintOperation *op, GtkPrintCont PangoFontDescription *desc; int start, ii; PangoLayoutIter *iter; - double start_pos; gint header_end_pos; gint num_header_lines; gint dummy; @@ -923,7 +922,6 @@ static void printing_textview_cb_begin_print(GtkPrintOperation *op, GtkPrintCont page_height = 0; start = 0; ii = 0; - start_pos = 0.; iter = pango_layout_get_iter(print_data->layout); /* find the last character of the header */ diff --git a/src/procheader.c b/src/procheader.c @@ -284,7 +284,7 @@ static gboolean header_is_addr_field(const gchar *hdr) Header * procheader_parse_header(gchar * buf) { - gchar *p = buf; + gchar *p; Header * header; gboolean addr_field = FALSE; diff --git a/src/procmime.c b/src/procmime.c @@ -1536,7 +1536,6 @@ static void procmime_parse_multipart(MimeInfo *mimeinfo, gboolean short_scan) gchar buf[BUFFSIZE]; FILE *fp; int result = 0; - gboolean done = FALSE; gboolean start_found = FALSE; gboolean end_found = FALSE; @@ -1572,10 +1571,9 @@ static void procmime_parse_multipart(MimeInfo *mimeinfo, gboolean short_scan) hentry[6].body, hentry[7].body, mimeinfo->data.filename, lastoffset, len, short_scan); - if (result == 1 && short_scan) { - done = TRUE; + if (result == 1 && short_scan) break; - } + } if (buf[2 + boundary_len] == '-' && diff --git a/src/procmsg.c b/src/procmsg.c @@ -827,7 +827,6 @@ static GSList *procmsg_list_sort_by_account(FolderItem *queue, GSList *list) debug_print("\n"); parse_again: - nothing_to_sort = TRUE; cur = orig; while (cur) { gchar *file = NULL; @@ -844,6 +843,7 @@ parse_again: nothing_to_sort = FALSE; goto parse_again; } + nothing_to_sort = TRUE; cur = cur->next; } @@ -875,7 +875,7 @@ static gboolean procmsg_is_last_for_account(FolderItem *queue, MsgInfo *msginfo, { gchar *file = folder_item_fetch_msg(queue, msginfo->msgnum); PrefsAccount *ac = procmsg_get_account_from_file(file); - GSList *cur = elem; + GSList *cur; g_free(file); for (cur = elem; cur; cur = cur->next) { MsgInfo *cur_msginfo = (MsgInfo *)cur->data; @@ -1526,8 +1526,6 @@ static gint procmsg_send_message_queue_full(const gchar *file, gboolean keep_ses gboolean save_clear_text = TRUE; gchar *tmp_enc_file = NULL; - int local = 0; - cm_return_val_if_fail(file != NULL, -1); if ((fp = g_fopen(file, "rb")) == NULL) { @@ -1671,7 +1669,6 @@ send_mail: } else if (mailac && mailac->use_mail_command && mailac->mail_command && (* mailac->mail_command)) { mailval = send_message_local(mailac->mail_command, fp); - local = 1; } else { if (!mailac) { mailac = account_find_from_smtp_server(from, smtpserver); diff --git a/src/summaryview.c b/src/summaryview.c @@ -3896,7 +3896,6 @@ static void summary_mark_row(SummaryView *summaryview, GtkCMCTreeNode *row) static void summary_lock_row(SummaryView *summaryview, GtkCMCTreeNode *row) { - gboolean changed = FALSE; GtkCMCTree *ctree = GTK_CMCTREE(summaryview->ctree); MsgInfo *msginfo; @@ -3906,11 +3905,9 @@ static void summary_lock_row(SummaryView *summaryview, GtkCMCTreeNode *row) summaryview->deleted--; if (MSG_IS_MOVE(msginfo->flags)) { summaryview->moved--; - changed = TRUE; } if (MSG_IS_COPY(msginfo->flags)) { summaryview->copied--; - changed = TRUE; } procmsg_msginfo_set_to_folder(msginfo, NULL); summary_msginfo_change_flags(msginfo, MSG_LOCKED, 0, MSG_DELETED, @@ -6018,7 +6015,6 @@ static void summary_tags_menu_item_activate_item_cb(GtkMenuItem *menu_item, for (; sel != NULL; sel = sel->next) { MsgInfo *msginfo; GSList *tags = NULL; - gint id; GtkCheckMenuItem *item; msginfo = gtk_cmctree_node_get_row_data (GTK_CMCTREE(summaryview->ctree), @@ -6031,7 +6027,6 @@ static void summary_tags_menu_item_activate_item_cb(GtkMenuItem *menu_item, for (; tags; tags = tags->next) { gint num_checked = GPOINTER_TO_INT(g_hash_table_lookup(menu_allsel_table, tags->data)); - id = GPOINTER_TO_INT(tags->data); item = g_hash_table_lookup(menu_table, GINT_TO_POINTER(tags->data)); if (item && !gtk_check_menu_item_get_active(item)) { gtk_check_menu_item_set_active @@ -6620,7 +6615,6 @@ static gboolean summary_key_pressed(GtkWidget *widget, GdkEventKey *event, GtkCMCTree *ctree = GTK_CMCTREE(widget); GtkCMCTreeNode *node; MessageView *messageview; - TextView *textview; GtkAdjustment *adj; gboolean mod_pressed; @@ -6631,7 +6625,6 @@ static gboolean summary_key_pressed(GtkWidget *widget, GdkEventKey *event, return FALSE; messageview = summaryview->messageview; - textview = messageview->mimeview->textview; mod_pressed = ((event->state & (GDK_SHIFT_MASK|GDK_MOD1_MASK)) != 0); diff --git a/src/textview.c b/src/textview.c @@ -1361,7 +1361,7 @@ static void textview_make_clickable_parts(TextView *textview, gtk_text_buffer_get_end_iter(buffer, &iter); /* parse for clickable parts, and build a list of begin and end positions */ - for (walk = mybuf, n = 0;;) { + for (walk = mybuf;;) { gint last_index = PARSE_ELEMS; gchar *scanpos = NULL; @@ -1481,7 +1481,7 @@ static void textview_make_clickable_parts_later(TextView *textview, offset = gtk_text_iter_get_offset(&start_iter); /* parse for clickable parts, and build a list of begin and end positions */ - for (walk = mybuf, n = 0;;) { + for (walk = mybuf;;) { gint last_index = PARSE_ELEMS; gchar *scanpos = NULL;