[grisbi-bugs] [Grisbi 0002089]: Problème pour lire et écrire un fichier .gsb

Grisbi Bug Tracker bugtracker at grisbi.org
Dim 17 Jan 18:50:04 CET 2021


The following issue has been RESOLVED. 
====================================================================== 
https://www.grisbi.org/bugsreports/view.php?id=2089 
====================================================================== 
Reported By:                LudovicRousseau
Assigned To:                pbiava
====================================================================== 
Project:                    Grisbi
Issue ID:                   2089
Category:                   Main
Reproducibility:            always
Severity:                   crash
Priority:                   normal
Status:                     resolved
OS:                         Autre(Other) 
Unstable Impact:            Yes 
Version OS:                  
Version GTK:                 
Resolution:                 fixed
Fixed in Version:           2.0.x
====================================================================== 
Date Submitted:             2021-01-16 11:33 CET
Last Modified:              2021-01-17 18:50 CET
====================================================================== 
Summary:                    Problème pour lire et écrire un fichier .gsb
Description: 
Grisbi version 2.0.0 64 bits Windows
Avec le fichier joint, au chargement j'ai une erreur avec une fenêtre vide et
juste un bouton Fermer.

Ensuite le fichier s'ouvre.
Si je sauvegarde le fichier (Ctrl-S) j'ai encore cette fenêtre vide avec juste
le bouton Fermer.
====================================================================== 

---------------------------------------------------------------------- 
 (0005896) pbiava (administrator) - 2021-01-16 15:36
 https://www.grisbi.org/bugsreports/view.php?id=2089#c5896 
---------------------------------------------------------------------- 
J'ai supprimé votre fichier car il contient des données personnelles. Sous
Linux j'ai le message ci-dessous qui s'affiche.

Je regarde sous Windows. 

---------------------------------------------------------------------- 
 (0005897) pbiava (administrator) - 2021-01-16 15:47
 https://www.grisbi.org/bugsreports/view.php?id=2089#c5897 
---------------------------------------------------------------------- 
Sous Windows 10 je n'ai pas de message. En premier lieu vous pourriez mettre ici
une copie d'écran pour que je vois ce qui se passe ? 

---------------------------------------------------------------------- 
 (0005898) LudovicRousseau (administrator) - 2021-01-16 17:19
 https://www.grisbi.org/bugsreports/view.php?id=2089#c5898 
---------------------------------------------------------------------- 
Le message d'erreur c'est parce que le fichier est lisible par tous après une
copie depuis Windows.
J'ai un peu corrigé le code dans
https://github.com/grisbi/grisbi/commit/d562c19f530b95aa64ee9a66c32d2f427058892f

Maintenant je refais le test dans une VM Windows 10 et je n'ai plus le
problème. Le problème ne vient pas du contenu du fichier ?

C'est possible d'avoir des logs sur Windows ? Sans faire une compilation
spéciale ? 

---------------------------------------------------------------------- 
 (0005899) LudovicRousseau (administrator) - 2021-01-16 18:30
 https://www.grisbi.org/bugsreports/view.php?id=2089#c5899 
---------------------------------------------------------------------- 
Voila le message d'erreur que j'ai 

---------------------------------------------------------------------- 
 (0005900) LudovicRousseau (administrator) - 2021-01-16 18:41
 https://www.grisbi.org/bugsreports/view.php?id=2089#c5900 
---------------------------------------------------------------------- 
J'ai encore le problème avec une version anonymisée et sans aucune entrée
dans le fichier. 

---------------------------------------------------------------------- 
 (0005901) pbiava (administrator) - 2021-01-16 20:54
 https://www.grisbi.org/bugsreports/view.php?id=2089#c5901 
---------------------------------------------------------------------- 
Ce qui est étonnant c'est qu'on ait pas la case à cocher dans cette fenêtre. 

---------------------------------------------------------------------- 
 (0005902) LudovicRousseau (administrator) - 2021-01-16 22:53
 https://www.grisbi.org/bugsreports/view.php?id=2089#c5902 
---------------------------------------------------------------------- 
J'ai déjà eu ce genre de boîte de dialogue quand le texte n'est pas en UTF-8
valide.
Il faut que j'essaie avec Grisbi en anglais. 

---------------------------------------------------------------------- 
 (0005903) LudovicRousseau (administrator) - 2021-01-16 23:25
 https://www.grisbi.org/bugsreports/view.php?id=2089#c5903 
---------------------------------------------------------------------- 
En mettant Grisbi en anglais j'ai aussi une boite de dialogue sans texte.
La différence est que le bouton est maintenant "Close" à la place de "Fermer".
Super. 

---------------------------------------------------------------------- 
 (0005904) LudovicRousseau (administrator) - 2021-01-16 23:29
 https://www.grisbi.org/bugsreports/view.php?id=2089#c5904 
---------------------------------------------------------------------- 
J'ai le même comportement avec Grisbi 1.2.2 64 bits pour Windows. Une boite de
dialogue vide à l'ouverture du fichier toto.gsb. 

---------------------------------------------------------------------- 
 (0005905) R1 (reporter) - 2021-01-17 10:24
 https://www.grisbi.org/bugsreports/view.php?id=2089#c5905 
---------------------------------------------------------------------- 
Pour info: je n'ai pas le soucis avec le fichier toto.gsb ci dessus et Grisbi
1.9.98 (GTK+ version : 3.24.24 / Grisbi git hash : fdb9c10ec) sous Windows 10,
en français. 

---------------------------------------------------------------------- 
 (0005906) pbiava (administrator) - 2021-01-17 11:07
 https://www.grisbi.org/bugsreports/view.php?id=2089#c5906 
---------------------------------------------------------------------- 
Le commit d562c19f ne concerne pas Windows donc je ne vois pas le rapport direct
avec notre affaire. Toutefois je ne connais pas la façon dont Windows gère les
droits des fichiers.

Le fichier toto.gsb s'ouvre sans message sur Win10 à jour. J'ai l'option
"Forcer l'enregistrement des fichiers verrouillés" cochée et je suis
administrateur de mon poste. 

---------------------------------------------------------------------- 
 (0005907) LudovicRousseau (administrator) - 2021-01-17 17:04
 https://www.grisbi.org/bugsreports/view.php?id=2089#c5907 
---------------------------------------------------------------------- 
J'arrive bien à ouvrir quand même le fichier sur mon Windows 10.
Mais j'ai d'abord cette boîte de dialogue sans texte (je ne sais pas ce qu'il y
a de spécial sur ce Windows)..

Problème présent à la fois sur Grisbi 1.2.2 et 2.0.0 sur cette machine.
Pour l'instant je reproduis le problème à chaque fois. 

---------------------------------------------------------------------- 
 (0005908) pbiava (administrator) - 2021-01-17 17:06
 https://www.grisbi.org/bugsreports/view.php?id=2089#c5908 
---------------------------------------------------------------------- 
J'ai bien le message sous Linux avec toto.gsb mais rien sous Win10 et grisbi
1.9.x et 2.0.0. Je vais refaire le test la version 1.2.2 et on verra. 

---------------------------------------------------------------------- 
 (0005909) LudovicRousseau (administrator) - 2021-01-17 17:53
 https://www.grisbi.org/bugsreports/view.php?id=2089#c5909 
---------------------------------------------------------------------- 
J'ai compilé Grisbi avec l'option --enable-early-debug  pour avoir des logs.
Et quand j'ai le dialogue vide j'ai comme log :
Sun Jan 17 16:41:28 2021, 2,129000 : Debug -
gsb_file_save.c:1734:gsb_file_save_save_file - F:\Nouveau dossier\Pierre &
Chloé ôÔ\toto_20210117T164128.gsb
Sun Jan 17 16:41:28 2021, 2,129000 : Debug -
gsb_rgba.c:505:gsb_rgba_get_string_to_save

Le dossier F:\Nouveau dossier\Pierre & Chloé ôÔ\ n'existe pas. Je n'ai même
plus de lecteur F:
J'imagine que le message d'erreur est pour me dire qu'il y a un problème pour
sauvegarder le fichier. Peut-être à cause des caractères "é ôÔ" dans le
chemin la chaîne n'est pas valide UTF-8 et n'est pas affichée. Problème !

Dans mon grisbi.conf (joint) j'ai :
[Backup]
backup-path=F:\\Nouveau dossier\\Pierre & Chloé ôÔ
compress-backup=false
make-backup-every-minutes=false
make-backup-nb-minutes=0
make-backup-single-file=false
remove-backup-files=false
remove-backup-months=12
sauvegarde-fermeture=true
sauvegarde-ouverture=true

Alors que dans les configurations de Grisbi le "Répertoire de sauvegarde"
indique "(Aucun)". Voir copie d'écran.
Encore un problème UTF-8 ? 

---------------------------------------------------------------------- 
 (0005910) LudovicRousseau (administrator) - 2021-01-17 18:02
 https://www.grisbi.org/bugsreports/view.php?id=2089#c5910 
---------------------------------------------------------------------- 
C'est le caractère "&" qui pose problème. 
J'ai la fenêtre vide juste avec :
backup-path=C:\\&

Ici il n'y a PAS de dossier C:\\& donc Grisbi veut afficher un message.
Mais Grisbi devrait afficher le message d'erreur correctement. 

---------------------------------------------------------------------- 
 (0005911) LudovicRousseau (administrator) - 2021-01-17 18:16
 https://www.grisbi.org/bugsreports/view.php?id=2089#c5911 
---------------------------------------------------------------------- 
Bon, c'est pas un bug spécifique à Windows.
J'ai le même problème sur macOS avec le chemin (non existant) :
backup-path=/Users/rousseau/a/& 

---------------------------------------------------------------------- 
 (0005912) pbiava (administrator) - 2021-01-17 18:30
 https://www.grisbi.org/bugsreports/view.php?id=2089#c5912 
---------------------------------------------------------------------- 
En principe au chargement de grisbi si il n'y a pas de backup dans le fichier
grisbi le force avec gsb_dirs_get_user_data_dir (). ça ce semble pas
fonctionner sous grisbi.[EDIT] : sous Wndows

Pour ce qui concerne la lettre &, je me souviens qu'on avait eu il y a longtemps
un problème avec ça sous Linux. Par exemple dans mon fichier de compte j'ai
ça :
Owner="Pierre "&" Sylvie"

[EDIT] grisbi cache la conversion voir l'image jointe

C'est certain que ce doit être difficile à interpréter dans un chemin de
fichier. Maintenant il faut regarder pourquoi le messages n'est pas bon. Je
pense que c'est un problème de conversion UTF8 si on passe le nom du fichier en
paramètre du message ce qui est probable.

 

---------------------------------------------------------------------- 
 (0005913) pbiava (administrator) - 2021-01-17 18:31
 https://www.grisbi.org/bugsreports/view.php?id=2089#c5913 
---------------------------------------------------------------------- 
Image extraite de mon fichier de comptes 

---------------------------------------------------------------------- 
 (0005914) pbiava (administrator) - 2021-01-17 18:46
 https://www.grisbi.org/bugsreports/view.php?id=2089#c5914 
---------------------------------------------------------------------- 
Il faudrait essayer avec ça g_filename_to_uri () et ça g_filename_from_uri ()
suivant le cas 

---------------------------------------------------------------------- 
 (0005915) LudovicRousseau (administrator) - 2021-01-17 18:48
 https://www.grisbi.org/bugsreports/view.php?id=2089#c5915 
---------------------------------------------------------------------- 
Corrigé dans
https://github.com/grisbi/grisbi/commit/d2091ea569a1be0635e47df362a8263563afb311

J'ai aussi fait 2 autres commit pour corriger le même problème à d'autres
endroits.
Mais il doit en rester à corriger. 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2021-01-16 11:33 LudovicRousseauNew Issue                                    
2021-01-16 11:33 LudovicRousseauFile Added: Mes comptes.gsb                    
2021-01-16 15:33 pbiava         File Deleted: Mes comptes.gsb                   

2021-01-16 15:36 pbiava         File Added: Capture-20210116153251-644x253.png  
                 
2021-01-16 15:36 pbiava         Note Added: 0005896                          
2021-01-16 15:47 pbiava         Note Added: 0005897                          
2021-01-16 15:48 pbiava         Assigned To               => pbiava          
2021-01-16 15:48 pbiava         Status                   new => assigned     
2021-01-16 17:19 LudovicRousseauNote Added: 0005898                          
2021-01-16 18:30 LudovicRousseauFile Added: erreur.png                       
2021-01-16 18:30 LudovicRousseauNote Added: 0005899                          
2021-01-16 18:41 LudovicRousseauFile Added: toto.gsb                         
2021-01-16 18:41 LudovicRousseauNote Added: 0005900                          
2021-01-16 20:54 pbiava         Note Added: 0005901                          
2021-01-16 22:53 LudovicRousseauNote Added: 0005902                          
2021-01-16 23:25 LudovicRousseauNote Added: 0005903                          
2021-01-16 23:29 LudovicRousseauNote Added: 0005904                          
2021-01-17 10:24 R1             Note Added: 0005905                          
2021-01-17 11:07 pbiava         Note Added: 0005906                          
2021-01-17 17:04 LudovicRousseauNote Added: 0005907                          
2021-01-17 17:06 pbiava         Note Added: 0005908                          
2021-01-17 17:53 LudovicRousseauFile Added: grisbi.conf                      
2021-01-17 17:53 LudovicRousseauFile Added: preferences.png                    
2021-01-17 17:53 LudovicRousseauNote Added: 0005909                          
2021-01-17 18:02 LudovicRousseauNote Added: 0005910                          
2021-01-17 18:16 LudovicRousseauNote Added: 0005911                          
2021-01-17 18:26 pbiava         Note Added: 0005912                          
2021-01-17 18:27 pbiava         Note Edited: 0005912                         
2021-01-17 18:28 pbiava         Note Edited: 0005912                         
2021-01-17 18:30 pbiava         Note Edited: 0005912                         
2021-01-17 18:31 pbiava         File Added: Capture extrait de mon fichier de
comptes.png                    
2021-01-17 18:31 pbiava         Note Added: 0005913                          
2021-01-17 18:46 pbiava         Note Added: 0005914                          
2021-01-17 18:48 LudovicRousseauNote Added: 0005915                          
2021-01-17 18:50 LudovicRousseauStatus                   assigned => resolved
2021-01-17 18:50 LudovicRousseauResolution               open => fixed       
2021-01-17 18:50 LudovicRousseauFixed in Version          => 2.0.x           
======================================================================



Plus d'informations sur la liste de diffusion bugsreports