Branch: refs/heads/master
  Home:   https://github.com/synfig/synfig
  Commit: 163100eb6ca41432e118d1d88aed4ff8ac404b24
      
https://github.com/synfig/synfig/commit/163100eb6ca41432e118d1d88aed4ff8ac404b24
  Author: ice0 <konop...@gmail.com>
  Date:   2022-07-09 (Sat, 09 Jul 2022)

  Changed paths:
    M synfig-studio/src/gui/app.cpp
    M synfig-studio/src/gui/pluginmanager.cpp

  Log Message:
  -----------
  fix: Missing menu in Synfig when path to plugins contains non-Latin symbols 
(Windows) (#2652)

![Screenshot_49](https://user-images.githubusercontent.com/5604544/170628153-f75d542c-03b1-4286-ba02-06ff9b4026e5.png)

It shows an error on start:
```
synfig(23672) [10:56:14] info: Init UI Manager...
synfig(23672) [10:56:14] error: building menus and toolbars failed: Error on 
line 1 char 10067: Document ended unexpectedly with elements still open в?" 
в??toolbarв?? was the last element opened
```

After adding the output with invalid XML, we can see where the problem
is:
```
<menuitem action='C:/msys64/...<Non-Latin 
path>...\plugins\add-skeleton-simple/plugin.xml'/>
```

The most interesting thing here is the slashes. According to the Gtk
documentation (https://docs.gtk.org/gtk3/class.UIManager.html):

> The name and action attributes must not contain “/” characters after
> parsing (since that would mess up path lookup) and must be usable
> as XML attributes when enclosed in doublequotes, thus they must
> not “”” characters or references to the " entity.

Unfortunately, I haven't found anything about non-ASCII characters in
`action` attribute, so I propose to use plugin folder name here (instead
of path to plugin).




_______________________________________________
Synfig-devl mailing list
Synfig-devl@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/synfig-devl

Reply via email to