After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 711567 - Cannot save a custom report if a path contain diacritic chars
Cannot save a custom report if a path contain diacritic chars
Status: RESOLVED FIXED
Product: GnuCash
Classification: Other
Component: Reports
2.4.x
Other Windows
: Normal normal
: ---
Assigned To: gnucash-reports-maint
gnucash-reports-maint
: 640062 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2013-11-06 20:22 UTC by yenidai
Modified: 2018-06-29 23:21 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description yenidai 2013-11-06 20:22:15 UTC
Used operating system: Windows 8.1.

An user account contain one diacritic mark, so the path to reports folder looks like:
C:\Users\Łukasz\.gnucash\saved-reports-2.4

And if I try to create a custom report, a GnuCash show me a message box:
"Cannot open a file C:\Users\Łukasz\.gnucash\saved-reports-2.4. Error: system-error - No such file or directory"

And a report is not saved, although a save button became disabled.
Comment 1 yenidai 2013-11-24 20:10:19 UTC
Temporary solution:

Open a new report and prepare for save (but dont save)
Download a Process Explorer from SysInternals(MS)
Setup a capture for a gnucash.exe (only for this process)
Try to save a report
Find a real report path in a Process Explorer - you are should find something similar "C:\Users\Ĺukasz\.gnucash\saved-reports-2.4"
Run a cmd.exe with administrator rights.
Move to c:\users and create a symlink to your real directory with "command mklink /d "Ĺ?ukasz" Łukasz"
Comment 2 Geert Janssens 2014-02-14 11:41:56 UTC
Thank you for your report.

Meanwhile GnuCash 2.6.1 has been released which contains a number of fixes related to non-English locales. Can you test if you still encounter this problem with that version ?
Comment 3 yenidai 2014-02-21 18:29:39 UTC
GnuCash 2.6.1 has this problem too. Moreover - when I try to save a report, program simply crash.
From my point of view - a version 2.6.1 works worse than 2.4.x :(
Comment 4 Geert Janssens 2014-03-10 11:38:40 UTC
I can indeed reproduce the bug on a windows XP machine by creating a user named Łukasz.

That helped me fixing the crash already (see commit https://github.com/Gnucash/gnucash/commit/faf05aab ).

The core of this bug, being that non-ascii characters in the path are interpreted wrongly will take more time to get fixed. It's clear there is some locale mixup going on here. Figuring out where on a Windows box is ... hard.
Comment 5 Geert Janssens 2014-09-03 19:44:47 UTC
*** Bug 640062 has been marked as a duplicate of this bug. ***
Comment 6 Geert Janssens 2014-09-21 21:07:42 UTC
Tldr summary: this particular bug will be fixed in the upcoming gnucash 2.6.4.

Longer background:

It took me a while to find the root cause of this bug. It's actually not in GnuCash but in guile, a library used by GnuCash.

GnuCash on Windows currently uses guile 1.8, while guile 2.0 has been release for some time now. On the #guile irc channel I was told to try with guile 2.0 as that may carry a fix for the bug.

I did try to build this version of guile on Windows but it has several Windows-only bugs still. So for now I have decided to work around the issue by accessing the troublesome files from our C code instead of using guile's functions for that.

This has fixed loading and saving of saved reports (the subject of this bug). There are other parts of gnucash though that suffer the same problem. I have created bug 737089 to follow up on this.
Comment 7 John Ralls 2017-09-24 22:49:56 UTC
Reassign version to 2.4.x so that individual 2.4 versions can be retired.
Comment 8 John Ralls 2018-06-29 23:21:04 UTC
GnuCash bug tracking has moved to a new Bugzilla host. This bug has been copied to https://bugs.gnucash.org/show_bug.cgi?id=711567. Please update any external references or bookmarks.