]> git.lyx.org Git - lyx.git/blobdiff - src/Chktex.C
Fix working of the spellchecker dialog with ispell when there are no
[lyx.git] / src / Chktex.C
index 9b112ed1f5d34035edc641d4c4e7a27fc1035276..fbe1f047fcb7207f5acd38b81fc57068605b23ca 100644 (file)
@@ -3,7 +3,7 @@
  * 
  *           LyX, The Document Processor        
  *          Copyright 1995 Matthias Ettrich
- *           Copyright 1995-1999 The LyX Team.
+ *           Copyright 1995-2001 The LyX Team.
  *
  *           This file is Copyright 1997-1998
  *           Asger Alstrup
@@ -14,7 +14,6 @@
 #include <config.h>
 
 #include <fstream>
-#include <cstdlib> // atoi
 
 #ifdef __GNUG__
 #pragma implementation
 #include "support/syscall.h"
 #include "support/syscontr.h"
 #include "support/path.h"
+#include "support/lstrings.h"
 #include "gettext.h"
 
 using std::ifstream;
+using std::getline;
 
 /*
  * CLASS Chktex
@@ -46,7 +47,7 @@ Chktex::Chktex(string const & chktex, string const & f, string const & p)
 int Chktex::run(TeXErrors &terr)
 {
        // run bibtex
-       string log = ChangeExtension(file, ".log", true);
+       string log = OnlyFilename(ChangeExtension(file, ".log"));
        string tmp = cmd + " -q -v0 -b0 -x " + file + " -o " + log;
         Systemcalls one;
        int result= one.startscript(Systemcalls::System, tmp);
@@ -64,18 +65,22 @@ int Chktex::scanLogFile(TeXErrors & terr)
        string token;
        int retval = 0;
 
-       string tmp = ChangeExtension(file, ".log", true);
+       string tmp = OnlyFilename(ChangeExtension(file, ".log"));
 
        ifstream ifs(tmp.c_str());
        while (getline(ifs, token)) {
-               string srcfile, line, pos, warno, warning;
+               string srcfile;
+               string line;
+               string pos;
+               string warno;
+               string warning;
                token = split(token, srcfile, ':');
                token = split(token, line, ':');
                token = split(token, pos, ':');
                token = split(token, warno, ':');
                token = split(token, warning, ':');
 
-               int lineno = atoi(line.c_str());
+               int lineno = lyx::atoi(line);
                warno = _("ChkTeX warning id #") + warno;
                terr.insertError(lineno, warno, warning);
                ++retval;