Claus sent me more patches against 1.1.6fix4 to make it work with
cygwin and I integratd one fix to 1.2.0cvs. First a small question,
probably to Lars: I have to call popen with "rb" under cygwin, but
linux does not seem to like that. Therefore, I had to keep a #ifdef
__CYGWIN__ in do_popen, which I do not like. Therefore, some code has
to be moved to the os:: class. What should I do?

- create a os::popen(const string &), which just encapsulates popen

- move do_popen to os::, but therefore duplicate code in 3 different
  files.

- maybe you have a great idea on how to do that:)

Claus, what happens when the 'b' is not there? Maybe there are just
some '\r' that we can remove from the output of the command?

The good news is that, with those changes, most of Claus' patch to
1.1.6fix4 is integrated in 1.2.0cvs, AFAIK. What remains is the
following one-liner. Could someone (Lars, Dekel?) have a quick look
and confirm whether this one can go in?

JMarc

diff -urN lyx-1.1.6fix4/src/LaTeX.C wlyx-1.1.6fix4/src/LaTeX.C
--- lyx-1.1.6fix4/src/LaTeX.C	Thu Nov 29 11:14:32 2001
+++ wlyx-1.1.6fix4/src/LaTeX.C	Thu Jan 17 11:08:08 2002
@@ -632,10 +637,14 @@
 
 	string const logfile = OnlyFilename(ChangeExtension(file, ".log"));
 
-	LRegex reg1("\\)* *\\(([^ )]+).*");
+// Claus Hentschel: Inserted curly brace in reg1 for correct pdf depency entry
+	LRegex reg1("\\)* *\\(([^ ){]+).*");
 	LRegex reg2("File: ([^ ]+).*");
 	LRegex reg3("No file ([^ ]+)\\..*");
 	LRegex reg4("\\\\openout[0-9]+.*=.*`([^ ]+)'\\..*");
	LRegex reg5("Writing index file ([^ ]+).*");
 	LRegex unwanted("^.*\\.(aux|log|dvi|bbl|ind|glo)$");
 	
 	ifstream ifs(logfile.c_str());

Reply via email to