X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=src%2Fhb-category.c;fp=src%2Fhb-category.c;h=948788649f591bcd242a47e0c898993beff7ce08;hb=35b9973e4de7d69ad8841ead996a2e6cf1d85f08;hp=f3d43bd549c28af3953c9e114a6f8558324ee43b;hpb=88ee1e67be75d5618016c6f0685c91e38966774e;p=chaz%2Fhomebank diff --git a/src/hb-category.c b/src/hb-category.c index f3d43bd..9487886 100644 --- a/src/hb-category.c +++ b/src/hb-category.c @@ -1,5 +1,5 @@ /* HomeBank -- Free, easy, personal accounting for everyone. - * Copyright (C) 1995-2017 Maxime DOYEN + * Copyright (C) 1995-2018 Maxime DOYEN * * This file is part of HomeBank. * @@ -470,6 +470,9 @@ guint32 *new_key; newcat->imported = imported; newcat->flags |= GF_SUB; + //#1713413 take parent type into account + if(parent->flags & GF_INCOME) + newcat->flags |= GF_INCOME; DB( g_print(" -> insert subcat '%s' id: %d\n", newcat->name, newcat->key) ); @@ -667,6 +670,7 @@ GList *lcat; GList *lst_acc, *lnk_acc; GList *lnk_txn; GList *lpay, *lrul, *list; +guint i, nbsplit; lcat = list = g_hash_table_get_values(GLOBALS->h_cat); while (list != NULL) @@ -689,7 +693,20 @@ GList *lpay, *lrul, *list; { Transaction *txn = lnk_txn->data; - category_fill_usage_count(txn->kcat); + //#1689308 count split as well + if( txn->flags & OF_SPLIT ) + { + nbsplit = da_splits_count(txn->splits); + for(i=0;isplits[i]; + + category_fill_usage_count(split->kcat); + } + } + else + category_fill_usage_count(txn->kcat); + lnk_txn = g_list_next(lnk_txn); } lnk_acc = g_list_next(lnk_acc); @@ -712,7 +729,20 @@ GList *lpay, *lrul, *list; { Archive *entry = list->data; - category_fill_usage_count(entry->kcat); + //#1689308 count split as well + if( entry->flags & OF_SPLIT ) + { + nbsplit = da_splits_count(entry->splits); + for(i=0;isplits[i]; + + category_fill_usage_count(split->kcat); + } + } + else + category_fill_usage_count(entry->kcat); + list = g_list_next(list); }