[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