Opened 2 years ago

Closed 2 years ago

#3275 closed defect (fixed)

wxGUI: encoding error when saving workspace

Reported by: mlennert Owned by: grass-dev@…
Priority: normal Milestone: 7.2.2
Component: wxGUI Version: svn-trunk
Keywords: wxGUI workspace encoding Cc:
CPU: Unspecified Platform: Unspecified

Description

Trying to save my workspace, I get the following error:

Échec d'écriture des paramètres de l'espace de travail courant.

Raison: 'ascii' codec can't encode character u'\u20ac' in position 34: ordinal not in range(128)

Traceback (most recent call last):
  File "/home/mlennert/SRC/GRASS/grass_trunk/dist.x86_64-pc-linux-gnu/gui/wxpython/lmgr/frame.py", line 1634, in SaveToWorkspaceFile
    WriteWorkspaceFile(lmgr=self, file=tmpfile)
  File "/home/mlennert/SRC/GRASS/grass_trunk/dist.x86_64-pc-linux-gnu/gui/wxpython/core/workspace.py", line 906, in __init__
    self.__writeOverlay(mapdisp)
  File "/home/mlennert/SRC/GRASS/grass_trunk/dist.x86_64-pc-linux-gnu/gui/wxpython/core/workspace.py", line 1522, in __writeOverlay
    self.__writeOverlayParams(disp_size, overlay.cmd, overlay.coords)
  File "/home/mlennert/SRC/GRASS/grass_trunk/dist.x86_64-pc-linux-gnu/gui/wxpython/core/workspace.py", line 1570, in __writeOverlayParams
    self.file.write('%s<value>%s</value>\n' % (' ' * self.indent, prm.split("=", 1)[1]))
UnicodeEncodeError: 'ascii' codec can't encode character u'\u20ac' in position 34: ordinal not in range(128)

The weird part is that I don't even know where I would have a non-ascii character. Maybe some translation has happened of parameters for the workspace parameter file ?

Change History (6)

comment:1 Changed 2 years ago by mlennert

Vaclav made me realize that I did have a non-ascii character in my display: u'\u20ac' is a Euro sign.

comment:2 in reply to:  1 Changed 2 years ago by mlennert

Replying to mlennert:

Vaclav made me realize that I did have a non-ascii character in my display: u'\u20ac' is a Euro sign.

This does not make this less an error, though. I suppose this is linked to the GSoC cartography work trying to save more elements of the current map display ?

comment:3 Changed 2 years ago by annakrat

In 70531:

wxGUI: encode values when saving workspace with overlays (see #3275)

comment:4 Changed 2 years ago by marisn

There have been fixes for #3340 related to encoding. At the moment loading/saving workspace with various non-latin chars seems to work fine. Can this be closed?

comment:5 in reply to:  4 Changed 2 years ago by mlennert

Milestone: 7.2.17.2.2

Replying to marisn:

There have been fixes for #3340 related to encoding. At the moment loading/saving workspace with various non-latin chars seems to work fine. Can this be closed?

r70531 still needs backporting so I would keep this ticket open until that has happened. Changing milestone to 7.2.2 to harmonize with the rest.

comment:6 Changed 2 years ago by annakrat

Resolution: fixed
Status: newclosed

Backported in r71057.

Note: See TracTickets for help on using tickets.