]> git.lyx.org Git - features.git/commitdiff
findLyxBinary():
authorKornel Benko <kornel@lyx.org>
Fri, 4 Jan 2013 10:05:12 +0000 (11:05 +0100)
committerKornel Benko <kornel@lyx.org>
Fri, 4 Jan 2013 10:05:12 +0000 (11:05 +0100)
Add program suffix test before trying to determine
and use the extension to search for the lyx-executable

src/support/Package.cpp

index a158b49d3ae73d7167e672d68ea60ebfd91d6bd5..6ea458e67c4f637e0ae6cf7a50c54679b8d5db45 100644 (file)
@@ -348,7 +348,14 @@ bool lyxBinaryPath(FileName & lyx_binary, string const & search_dir, string cons
 FileName findLyxBinary(FileName const & abs_binary)
 {
     string ext;
 FileName findLyxBinary(FileName const & abs_binary)
 {
     string ext;
-    if (!abs_binary.extension().empty()) {
+    string checkname = abs_binary.toFilesystemEncoding();
+    int check_len = checkname.length();
+    int prgsuffixlen = string(PROGRAM_SUFFIX).length();
+    if ((prgsuffixlen > 0) && (check_len > prgsuffixlen) &&
+       (checkname.substr(check_len-prgsuffixlen) == string(PROGRAM_SUFFIX))) {
+       ext = "";
+    }
+    else if (!abs_binary.extension().empty()) {
         ext = "." + abs_binary.extension();
     }
     
         ext = "." + abs_binary.extension();
     }