diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2011-09-13 18:30:01 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2011-09-13 18:30:01 +0000 |
commit | dff3dc0bb29d5e569b2e50027b424fd42ee6fa9c (patch) | |
tree | 06ddb3eed1a4bcfd4adc2fe01412199866458862 | |
parent | 66498207f1d54a0e58ddcc3eb1723b754866ad9b (diff) |
restore the use of Glib::ustring when iterating over possibly illegal characters in a pathname
git-svn-id: svn://localhost/ardour2/branches/2.0-ongoing@10071 d708f5d6-7413-0410-9779-e7cbd77b26cf
-rw-r--r-- | libs/ardour/utils.cc | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/libs/ardour/utils.cc b/libs/ardour/utils.cc index 8d8f48323b..bf92bc0379 100644 --- a/libs/ardour/utils.cc +++ b/libs/ardour/utils.cc @@ -33,6 +33,8 @@ #include <wordexp.h> #endif +#include <glibmm/ustring.h> + #include <pbd/error.h> #include <pbd/stacktrace.h> #include <pbd/xml++.h> @@ -93,8 +95,12 @@ legalize_for_path (string str) { string::size_type pos; string legal_chars = "abcdefghijklmnopqrtsuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_+=: "; - string legal; + Glib::ustring legal; + /* this is the one place in Ardour where we need to iterate across + * potential multibyte characters, and thus we need Glib::ustring + */ + legal = str; pos = 0; @@ -103,7 +109,7 @@ legalize_for_path (string str) pos += 1; } - return legal; + return string (legal); } string bump_name_once(std::string name) |