[Commits] [SCM] claws branch, master, updated. 3.10.0-67-g1fcddc0
Colin
colin at claws-mail.org
Sat Jun 7 21:00:53 CEST 2014
The branch master of project "claws" (Claws Mail) has been updated
via 1fcddc03040d954d5fee040c8c2443d22e753416 (commit)
from 2267232d4cc846a901ddda2b1badd3e69a82d8e0 (commit)
- Log -----------------------------------------------------------------
commit 1fcddc03040d954d5fee040c8c2443d22e753416
Author: Colin Leroy <colin at colino.net>
Date: Sat Jun 7 21:00:39 2014 +0200
More coverity fixes
diff --git a/src/addressbook.c b/src/addressbook.c
index ffd6909..4cbfc42 100644
--- a/src/addressbook.c
+++ b/src/addressbook.c
@@ -3299,7 +3299,7 @@ static GtkCMCTreeNode *addressbook_find_group_node( GtkCMCTreeNode *parent, Item
AddressObject *obj;
obj = gtk_cmctree_node_get_row_data( GTK_CMCTREE(addrbook.ctree), node );
- if( obj->type == ADDR_ITEM_GROUP ) {
+ if(obj && obj->type == ADDR_ITEM_GROUP ) {
ItemGroup *g = ADAPTER_GROUP(obj)->itemGroup;
if( g == group ) return node;
}
diff --git a/src/crash.c b/src/crash.c
index d3c5022..279290a 100644
--- a/src/crash.c
+++ b/src/crash.c
@@ -334,7 +334,7 @@ static void crash_debug(unsigned long crash_pid,
pid_t pid;
if (pipe(choutput) == -1) {
- g_print("can't pipe - error %s", errno);
+ g_print("can't pipe - error %s", strerror(errno));
return;
}
diff --git a/src/folderview.c b/src/folderview.c
index e9b0943..2ce7f9c 100644
--- a/src/folderview.c
+++ b/src/folderview.c
@@ -892,6 +892,8 @@ static GtkCMCTreeNode *folderview_find_next_with_flag(GtkCMCTree *ctree,
for (; node != NULL; node = gtkut_ctree_node_next(ctree, node)) {
item = gtk_cmctree_node_get_row_data(ctree, node);
+ if (!item)
+ continue;
if (item->stype == F_TRASH || item->stype == F_DRAFT)
continue;
switch (flag) {
@@ -1690,7 +1692,7 @@ static void set_special_folder(GtkCMCTree *ctree, FolderItem *item,
tmp = gtk_cmctree_node_get_row_data
(ctree, sibling);
- if (tmp->stype != F_NORMAL)
+ if (tmp && tmp->stype != F_NORMAL)
sibling = GTK_CMCTREE_ROW(sibling)->sibling;
else
break;
diff --git a/src/jpilot.c b/src/jpilot.c
index 26f073e..a0ca9f3 100644
--- a/src/jpilot.c
+++ b/src/jpilot.c
@@ -620,7 +620,10 @@ static gint jpilot_get_file_info( JPilotFile *pilotFile, unsigned char **buf, in
return MGU_ERROR_READ;
}
- fseek(in, dbh.app_info_offset, SEEK_SET);
+ if (fseek(in, dbh.app_info_offset, SEEK_SET) < 0) {
+ fclose(in);
+ return MGU_ERROR_READ;
+ }
*buf = ( char * ) malloc(rec_size);
if (!(*buf)) {
fclose(in);
@@ -692,7 +695,7 @@ static int read_header(FILE *pc_in, PC3RecordHeader *header) {
}
memcpy(packed_header, &l, sizeof(l));
len=ntohl(l);
- if (len > 255) {
+ if (len > 255 || len < sizeof(l)) {
return -1;
}
num = fread(packed_header+sizeof(l), len-sizeof(l), 1, pc_in);
@@ -819,6 +822,8 @@ static gint jpilot_read_db_files( JPilotFile *pilotFile, GList **records ) {
}
if( feof( in ) ) {
fclose( in );
+ if (mem_rh)
+ free_mem_rec_header( &mem_rh );
return MGU_EOF;
}
}
@@ -866,7 +871,10 @@ static gint jpilot_read_db_files( JPilotFile *pilotFile, GList **records ) {
unique_id = mem_rh->unique_id;
}
}
- fseek( in, next_offset, SEEK_SET );
+ if (fseek( in, next_offset, SEEK_SET ) < 0) {
+ fclose(in);
+ return MGU_ERROR_READ;
+ }
while( ! feof( in ) ) {
fpos = ftell( in );
if( out_of_order ) {
@@ -1048,7 +1056,7 @@ static void jpilot_parse_label( JPilotFile *pilotFile, gchar *labelEntry, ItemPe
if( labelEntry ) {
*buffer = '\0';
- strcpy( buffer, labelEntry );
+ g_strlcpy( buffer, labelEntry, sizeof(buffer) );
node = list = jpilot_parse_email( buffer );
while( node ) {
email = addritem_create_item_email();
@@ -1201,17 +1209,10 @@ static void jpilot_load_address(
}
if( person->listEMail ) {
- if( cat_id > -1 && cat_id < JPILOT_NUM_CATEG ) {
- /* Add to specified category */
- addrcache_folder_add_person(
- pilotFile->addressCache,
- folderInd[cat_id], person );
- }
- else {
- /* Add to root folder */
- addrcache_add_person(
- pilotFile->addressCache, person );
- }
+ /* Add to specified category */
+ addrcache_folder_add_person(
+ pilotFile->addressCache,
+ folderInd[cat_id], person );
}
else {
addritem_free_item_person( person );
@@ -1599,7 +1600,7 @@ gchar *jpilot_find_pilotdb( void ) {
homedir = get_home_dir();
if( ! homedir ) return g_strdup( "" );
- strcpy( str, homedir );
+ g_strlcpy( str, homedir , sizeof(str));
len = strlen( str );
if( len > 0 ) {
if( str[ len-1 ] != G_DIR_SEPARATOR ) {
diff --git a/src/ldapquery.c b/src/ldapquery.c
index 2c504ab..ae2789d 100644
--- a/src/ldapquery.c
+++ b/src/ldapquery.c
@@ -527,7 +527,7 @@ static GList *ldapqry_build_items_fl(
if (attrib->name && strcmp(attrib->name, "jpegPhoto")) {
addritem_person_add_attribute( person, attrib );
} else {
- if (qry && qry->server && qry->server->control) {
+ if (qry->server && qry->server->control) {
gchar *dir = g_strconcat( get_rc_dir(), G_DIR_SEPARATOR_S,
ADDRBOOK_DIR, G_DIR_SEPARATOR_S, NULL );
gchar *filename = g_strdup_printf("%s-%s-%s",
@@ -974,8 +974,12 @@ gint ldapqry_read_data_th( LdapQuery *qry ) {
qry->thread = g_malloc0( sizeof( pthread_t ) );
/* Setup thread */
- pthread_create( qry->thread, NULL,
- (void *) ldapqry_search, (void *) qry );
+ if (pthread_create( qry->thread, NULL,
+ (void *) ldapqry_search, (void *) qry ) != 0) {
+ g_free(qry->thread);
+ qry->thread = NULL;
+ ADDRQUERY_RETVAL(qry) = LDAPRC_SEARCH;
+ }
}
}
return ADDRQUERY_RETVAL(qry);
diff --git a/src/ldapupdate.c b/src/ldapupdate.c
index df12439..f304164 100644
--- a/src/ldapupdate.c
+++ b/src/ldapupdate.c
@@ -403,11 +403,6 @@ Rdn *ldapsvr_modify_dn(GHashTable *hash, gchar *dn) {
update_rdn(rdn, compare, rest);
return rdn;
}
- else {
- /* We cannot remove dn */
- rdn_free(rdn);
- return NULL;
- }
}
else {
compare = g_hash_table_lookup(hash, rdn->attribute);
@@ -416,11 +411,6 @@ Rdn *ldapsvr_modify_dn(GHashTable *hash, gchar *dn) {
update_rdn(rdn, compare, rest);
return rdn;
}
- else {
- /* We cannot remove dn */
- rdn_free(rdn);
- return NULL;
- }
}
rdn_free(rdn);
return NULL;
diff --git a/src/ldif.c b/src/ldif.c
index a34c40e..54d90aa 100644
--- a/src/ldif.c
+++ b/src/ldif.c
@@ -167,8 +167,6 @@ void ldif_field_toggle( Ldif_FieldRec *rec ) {
*/
static gint ldif_hash_free_vis( gpointer key, gpointer value, gpointer data ) {
ldif_free_fieldrec( ( Ldif_FieldRec * ) value );
- value = NULL;
- key = NULL;
return -1;
}
diff --git a/src/main.c b/src/main.c
index 0202a20..6d0a1c0 100644
--- a/src/main.c
+++ b/src/main.c
@@ -1608,9 +1608,15 @@ static void exit_claws(MainWindow *mainwin)
if(mainwin->folderview->opened) {
FolderItem *item;
- item = gtk_cmctree_node_get_row_data(GTK_CMCTREE(mainwin->folderview->ctree), mainwin->folderview->opened);
- summary_save_prefs_to_folderitem(mainwin->folderview->summaryview, item);
- prefs_common.last_opened_folder = folder_item_get_identifier(item);
+ item = gtk_cmctree_node_get_row_data(
+ GTK_CMCTREE(mainwin->folderview->ctree),
+ mainwin->folderview->opened);
+ if (item) {
+ summary_save_prefs_to_folderitem(
+ mainwin->folderview->summaryview, item);
+ prefs_common.last_opened_folder =
+ folder_item_get_identifier(item);
+ }
}
/* save all state before exiting */
diff --git a/src/mimeview.c b/src/mimeview.c
index 8b20d5c..088ad29 100644
--- a/src/mimeview.c
+++ b/src/mimeview.c
@@ -1710,8 +1710,9 @@ static void mimeview_drag_data_get(GtkWidget *widget,
}
procheader_header_array_destroy(headers);
}
- fclose(fp);
}
+ if (fp != NULL)
+ fclose(fp);
if (name)
filename = g_path_get_basename(name);
g_free(name);
diff --git a/src/mutt.c b/src/mutt.c
index 4e51af1..4564347 100644
--- a/src/mutt.c
+++ b/src/mutt.c
@@ -64,8 +64,6 @@ void mutt_set_file( MuttFile* muttFile, const gchar *value ) {
*/
static gint mutt_free_table_vis( gpointer key, gpointer value, gpointer data ) {
g_free( key );
- key = NULL;
- value = NULL;
return TRUE;
}
diff --git a/src/partial_download.c b/src/partial_download.c
index d7b0ce6..9a79faa 100644
--- a/src/partial_download.c
+++ b/src/partial_download.c
@@ -316,7 +316,11 @@ static int partial_uidl_mark_mail(MsgInfo *msginfo, int download)
}
fclose(fp);
- rename_force(pathnew, filename);
+ if (rename_force(pathnew, filename) != 0) {
+ g_free(pathnew);
+ goto bail;
+ }
+
g_free(pathnew);
msginfo->planned_download = download;
msgcache_update_msg(msginfo->folder->cache, msginfo);
diff --git a/src/pine.c b/src/pine.c
index 355e636..5d29ee5 100644
--- a/src/pine.c
+++ b/src/pine.c
@@ -66,8 +66,6 @@ void pine_set_file( PineFile* pineFile, const gchar *value ) {
*/
static gint pine_free_table_vis( gpointer key, gpointer value, gpointer data ) {
g_free( key );
- key = NULL;
- value = NULL;
return TRUE;
}
@@ -510,9 +508,9 @@ static void pine_build_items( PineFile *pineFile, AddressCache *cache, gchar *li
}
}
else {
- email = pine_insert_table(
- pineFile, cache, rec->address,
- rec->name, rec->comments );
+ pine_insert_table(
+ pineFile, cache, rec->address,
+ rec->name, rec->comments );
}
pine_free_rec( rec );
-----------------------------------------------------------------------
Summary of changes:
src/addressbook.c | 2 +-
src/crash.c | 2 +-
src/folderview.c | 4 +++-
src/jpilot.c | 33 +++++++++++++++++----------------
src/ldapquery.c | 10 +++++++---
src/ldapupdate.c | 10 ----------
src/ldif.c | 2 --
src/main.c | 12 +++++++++---
src/mimeview.c | 3 ++-
src/mutt.c | 2 --
src/partial_download.c | 6 +++++-
src/pine.c | 8 +++-----
12 files changed, 48 insertions(+), 46 deletions(-)
hooks/post-receive
--
Claws Mail
More information about the Commits
mailing list