[LyX/master] Fix bug #12466

Enrico Forestieri forenr at lyx.org
Sun Feb 13 03:30:57 UTC 2022


commit 777ccce5617aea9b15f27902b9133146eff4e87b
Author: Enrico Forestieri <forenr at lyx.org>
Date:   Sun Feb 13 04:57:27 2022 +0100

    Fix bug #12466
    
    Amend 109ea2be by reintroducing the command prefix that was
    inadvertently removed. The prefix sets the proper environment
    for latex.
---
 src/support/ForkedCalls.cpp |    8 +++++---
 1 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/src/support/ForkedCalls.cpp b/src/support/ForkedCalls.cpp
index e770c4d..b946215 100644
--- a/src/support/ForkedCalls.cpp
+++ b/src/support/ForkedCalls.cpp
@@ -305,6 +305,8 @@ int ForkedCall::generateChild()
 	if (command_.empty())
 		return 1;
 
+	string const prefixed_command = cmd_prefix_ + command_;
+
 #if !defined (_WIN32)
 	// POSIX
 
@@ -312,8 +314,8 @@ int ForkedCall::generateChild()
 	// in a contiguous block of memory. The array contains pointers
 	// to each word.
 	// Don't forget the terminating `\0' character.
-	char const * const c_str = command_.c_str();
-	vector<char> vec(c_str, c_str + command_.size() + 1);
+	char const * const c_str = prefixed_command.c_str();
+	vector<char> vec(c_str, c_str + prefixed_command.size() + 1);
 
 	// Splitting the command up into an array of words means replacing
 	// the whitespace between words with '\0'. Life is complicated
@@ -377,7 +379,7 @@ int ForkedCall::generateChild()
 	if (lyxerr.debugging(Debug::FILES)) {
 		vector<char *>::iterator ait = argv.begin();
 		vector<char *>::iterator const aend = argv.end();
-		lyxerr << "<command>\n\t" << command_
+		lyxerr << "<command>\n\t" << prefixed_command
 		       << "\n\tInterpreted as:\n\n";
 		for (; ait != aend; ++ait)
 			if (*ait)


More information about the lyx-cvs mailing list