[grisbi-bugs] [Grisbi 0001875]: Plantage du programme quand je veux accéder a un de mes comptes

Grisbi Bug Tracker bugtracker at grisbi.org
Jeu 18 Oct 04:53:45 CEST 2018


The following issue has been RESOLVED. 
====================================================================== 
http://www.grisbi.org/bugsreports/view.php?id=1875 
====================================================================== 
Reported By:                Patbol
Assigned To:                pbiava
====================================================================== 
Project:                    Grisbi
Issue ID:                   1875
Category:                   Main
Reproducibility:            always
Severity:                   block
Priority:                   normal
Status:                     resolved
OS:                         Autre(Other) 
Unstable Impact:            Yes 
Version OS:                  
Version GTK:                 
Resolution:                 fixed
Fixed in Version:           development (git)
====================================================================== 
Date Submitted:             2018-10-12 22:31 CEST
Last Modified:              2018-10-18 04:53 CEST
====================================================================== 
Summary:                    Plantage du programme quand je veux accéder a un de
mes comptes
Description: 
Bonjour,
le programme plante uniquement quand je veux accéder a un compte, mais pas aux
rubriques échéancier, tiers etc
j'ai le message suivant Grisbi a terminé son exécution en raison d'une erreur
de segmentation 

Voici la copie du rapport de traçage
0   Grisbi-bin                          0x000000010940f3a5
debug_traitement_sigsegv + 709
	1   libsystem_platform.dylib            0x00007fff5e176f5a _sigtramp + 26
	2   ???                                 0x00000001095e9080 0x0 + 4452159616
	3   Grisbi-bin                          0x00000001094b8fad
gsb_gui_navigation_change_account + 141
	4   Grisbi-bin                          0x00000001094b6396
gsb_gui_navigation_select_line + 230
	5   libgobject-2.0.0.dylib              0x000000010ad7f9d0
g_cclosure_marshal_VOID__VOIDv + 176
	6   libgobject-2.0.0.dylib              0x000000010ad7bf5b _g_closure_invoke_va
+ 539
	7   libgobject-2.0.0.dylib              0x000000010ad9d1c9 g_signal_emit_valist
+ 1801
	8   libgobject-2.0.0.dylib              0x000000010ad9e994 g_signal_emit + 356
	9   libgtk-3.0.dylib                    0x000000010a42105c
_gtk_tree_selection_internal_select_node + 892
	10  libgtk-3.0.dylib                    0x000000010a4225f9
gtk_tree_selection_select_path + 505
	11  libgtk-3.0.dylib                    0x000000010a422992
gtk_tree_selection_select_iter + 418
	12  Grisbi-bin                          0x00000001094b952c
gsb_gui_navigation_set_selection_branch + 172
	13  Grisbi-bin                          0x00000001094b9585
gsb_gui_navigation_set_selection_branch + 261
	14  Grisbi-bin                          0x00000001094b9443
gsb_gui_navigation_set_selection + 211


====================================================================== 

---------------------------------------------------------------------- 
 (0004676) LudovicRousseau (developer) - 2018-10-13 22:05
 http://www.grisbi.org/bugsreports/view.php?id=1875#c4676 
---------------------------------------------------------------------- 
Est-ce que ça plante aussi avec un fichier de comptes neuf ? 

---------------------------------------------------------------------- 
 (0004679) Patbol (reporter) - 2018-10-14 15:52
 http://www.grisbi.org/bugsreports/view.php?id=1875#c4679 
---------------------------------------------------------------------- 
Je viens de créer un nouveau compte avec quelques opération pas de plantage 

---------------------------------------------------------------------- 
 (0004680) LudovicRousseau (developer) - 2018-10-14 16:12
 http://www.grisbi.org/bugsreports/view.php?id=1875#c4680 
---------------------------------------------------------------------- 
Pouvez vous m'envoyer le fichier de compte après anonymisation
(ludovic.rousseau at free.fr) ?
(si la version anonyme fait toujours planter) 

---------------------------------------------------------------------- 
 (0004681) Patbol (reporter) - 2018-10-14 17:33
 http://www.grisbi.org/bugsreports/view.php?id=1875#c4681 
---------------------------------------------------------------------- 
Voici le fichier il plante toujours 

---------------------------------------------------------------------- 
 (0004682) LudovicRousseau (developer) - 2018-10-16 21:05
 http://www.grisbi.org/bugsreports/view.php?id=1875#c4682 
---------------------------------------------------------------------- 
Bonne nouvelle, pas de problème pour reproduire le plantage.

Le 1er problème est avec la ligne :
	record = custom_list -> visibles_rows [custom_list -> num_visibles_rows -
custom_list -> nb_rows_by_transaction];
https://github.com/grisbi/grisbi/blob/master/src/transaction_list_select.c#L87

on a :
custom_list -> num_visibles_rows = 0
custom_list -> nb_rows_by_transaction = 1
custom_list -> visibles_rows qui contient quasiment que des pointeurs NULL
Je pense que le souci est que (custom_list -> num_visibles_rows - custom_list ->
nb_rows_by_transaction) = -1 et donc custom_list -> visibles_rows [-1] ne donne
rien de bon. NULL ici d'où le crash à la ligne d'après.

parfois je n'ai pas le même crash mais j'ai des erreur dans les logs :
(grisbi:47717): Gtk-CRITICAL **: 21:00:32.288: gtk_tree_model_rows_reordered:
assertion 'new_order != NULL' failed

et au bout d'un moment (débordement de pile ?) ça crash ici :
    gtk_tree_model_rows_reordered(GTK_TREE_MODEL(custom_list), path, NULL,
neworder);
https://github.com/grisbi/grisbi/blob/master/src/transaction_list.c#L805
avec neworder = NULL

Pierre, tu as une idée où chercher pourquoi custom_list est incohérent ?

Je vais aussi essayer sous GNU/Linux pour voir. 

---------------------------------------------------------------------- 
 (0004683) pbiava (administrator) - 2018-10-17 08:25
 http://www.grisbi.org/bugsreports/view.php?id=1875#c4683 
---------------------------------------------------------------------- 
Il me faudrait le mot de passe pour ouvrir le fichier. 

---------------------------------------------------------------------- 
 (0004685) Patbol (reporter) - 2018-10-17 09:48
 http://www.grisbi.org/bugsreports/view.php?id=1875#c4685 
---------------------------------------------------------------------- 
trapicç& 

---------------------------------------------------------------------- 
 (0004686) LudovicRousseau (developer) - 2018-10-17 12:00
 http://www.grisbi.org/bugsreports/view.php?id=1875#c4686 
---------------------------------------------------------------------- 
Même problème sous Debian GNU/Linux.
Ce n'est pas surprenant vu l'origine du problème. Il n'est pas spécifique à
macOS. 

---------------------------------------------------------------------- 
 (0004687) pbiava (administrator) - 2018-10-18 03:40
 http://www.grisbi.org/bugsreports/view.php?id=1875#c4687 
---------------------------------------------------------------------- 
A quelle occasion ce problème est-il apparu ?

Il semble que ce soit un problème de fichier mais comme il est anonymisé j'ai
du mal à voir d'où ça provient. 

---------------------------------------------------------------------- 
 (0004688) pbiava (administrator) - 2018-10-18 04:08
 http://www.grisbi.org/bugsreports/view.php?id=1875#c4688 
---------------------------------------------------------------------- 
En fait le problème vient bien du fichier.

2 variables sont incohérentes :
		Transactions_view="0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-9-1-3-13-5-6-7"
		One_line_showed="-1"

Pour que ça fonctionne j'ai mis des options standards :
		Transactions_view="18-1-3-13-5-6-7-0-0-12-0-9-8-0-0-0-15-0-0-0-0-0-0-0-0-0-0-0"
		One_line_showed="0"

La question est de savoir comment on en est arrivé là ! 

---------------------------------------------------------------------- 
 (0004689) pbiava (administrator) - 2018-10-18 04:53
 http://www.grisbi.org/bugsreports/view.php?id=1875#c4689 
---------------------------------------------------------------------- 
fixed in github 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2018-10-12 22:31 Patbol         New Issue                                    
2018-10-13 22:05 LudovicRousseauNote Added: 0004676                          
2018-10-14 15:52 Patbol         Note Added: 0004679                          
2018-10-14 16:12 LudovicRousseauNote Added: 0004680                          
2018-10-14 17:33 Patbol         File Added: patbol-obfuscated.gsb               
    
2018-10-14 17:33 Patbol         Note Added: 0004681                          
2018-10-16 21:05 LudovicRousseauNote Added: 0004682                          
2018-10-17 08:25 pbiava         Note Added: 0004683                          
2018-10-17 09:48 Patbol         Note Added: 0004685                          
2018-10-17 12:00 LudovicRousseauNote Added: 0004686                          
2018-10-18 03:40 pbiava         Note Added: 0004687                          
2018-10-18 04:08 pbiava         Note Added: 0004688                          
2018-10-18 04:53 pbiava         Assigned To               => pbiava          
2018-10-18 04:53 pbiava         Status                   new => assigned     
2018-10-18 04:53 pbiava         Status                   assigned => resolved
2018-10-18 04:53 pbiava         Resolution               open => fixed       
2018-10-18 04:53 pbiava         Fixed in Version          => development (git)
2018-10-18 04:53 pbiava         Note Added: 0004689                          
======================================================================



Plus d'informations sur la liste de diffusion bugsreports