In src/support/os_cygwin.C path styles are converted (when needed) from
one style to another. I discovered a couple of cases in which an
unnecessary conversion takes place.
The default output path style in external_path is windows because this
function is also used when adding fonts though a native Windows API call.
However, this call is not made in an X11 build, so it is not necessary
that the output path style is windows.
Log:
Small fixes for cygwin.
* os_cygwin.C (is_windows_path): avoid unnecessary conversion
when path is relative
(convert_path_list): avoid unnecessary conversion when path
list is empty
(external_path): for an X11 build it is not necessary that
the output path style is windows
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14859
a592a061-630c-0410-9148-
cb99ea01b6c8
bool is_windows_path(string const & p)
{
- return p.empty() ||
- (!contains(p, '\\') && (p.length() <= 1 || p[1] == ':'));
+ return p.empty() || (!contains(p, '\\') && p[0] != '/');
}
string convert_path_list(string const & p, PathStyle const & target)
{
+ if (p.empty())
+ return p;
+
char const * const pc = p.c_str();
PathStyle const actual = cygwin_posix_path_list_p(pc) ? posix : windows;
string external_path(string const & p)
{
+#ifdef X_DISPLAY_MISSING
return convert_path(p, PathStyle(windows));
+#else
+ return convert_path(p, PathStyle(posix));
+#endif
}