]> git.saurik.com Git - wxWidgets.git/blobdiff - utils/tex2rtf/src/texutils.cpp
fix for VC6 sorry
[wxWidgets.git] / utils / tex2rtf / src / texutils.cpp
index 349d232b428520bbe49676c4a0dcae85962f5420..4133290545e73ad2c6d89c372026548bfbd9f7cc 100644 (file)
@@ -41,10 +41,8 @@ using namespace std;
 #include <ctype.h>
 #include "tex2any.h"
 
-#if !WXWIN_COMPATIBILITY_2_4
 static inline wxChar* copystring(const wxChar* s)
     { return wxStrcpy(new wxChar[wxStrlen(s) + 1], s); }
-#endif
 
 wxHashTable TexReferences(wxKEY_STRING);
 wxList BibList(wxKEY_STRING);
@@ -209,7 +207,7 @@ wxChar *FindTopicName(TexChunk *chunk)
  *
  */
 
-void StartSimulateArgument(wxChar *data)
+void StartSimulateArgument(const wxChar *data)
 {
   wxStrcpy(currentArgData, data);
   haveArgData = true;
@@ -225,8 +223,11 @@ void EndSimulateArgument(void)
  *
  */
 
-int ParseUnitArgument(wxChar *unitArg)
+int ParseUnitArgument(const wxChar *unitArg_)
 {
+  wxWxCharBuffer unitBuf(unitArg_);
+  wxChar *unitArg = unitBuf.data();
+
   float conversionFactor = 1.0;
   float unitValue = 0.0;
   int len = wxStrlen(unitArg);
@@ -450,7 +451,7 @@ void ReadTexReferences(wxChar *filename)
         // were massive memory leaks
         TexReferences.DeleteContents(true);
         TexReferences.Put(
-            labelStr.c_str(),
+            labelStr,
             new TexRef(
                 labelStr.c_str(),
                 fileStr.c_str(),
@@ -472,15 +473,15 @@ void BibEatWhiteSpace(wxString& line)
 {
     while(!line.empty() && (line[0] == _T(' ') || line[0] == _T('\t') || line[0] == (wxChar)EOF))
     {
-        if (line[0] == 10)
+        if (line[0] == '\r')
             BibLine ++;
         line = line.substr(1);
     }
 
     // Ignore end-of-line comments
-    if (line[0] == _T('%') || line[0] == _T(';') || line[0] == _T('#'))
+    if ( !line.empty() && (line[0] == _T('%') || line[0] == _T(';') || line[0] == _T('#')))
     {
-        line = wxEmptyString;
+        line.clear();
     }
 }
 
@@ -562,13 +563,13 @@ wxString BibReadToEOL(wxString& line)
     // If in quotes, read white space too. If not,
     // stop at white space or comment.
     while (!line.empty() && line[0] != _T('"') &&
-           (inQuotes || ((line[0] != _T(' ')) && (line[0] != 9) &&
+           (inQuotes || ((line[0] != _T(' ')) && (line[0] != '\t') &&
                           (line[0] != _T(';')) && (line[0] != _T('%')) && (line[0] != _T('#')))))
     {
         val << line[0];
         line = line.substr(1);
     }
-    if (line[0] == '"')
+    if (!line.empty() && line[0] == '"')
         line = line.substr(1);
 
     return val;
@@ -706,7 +707,7 @@ void BibReadValue(wxSTD istream& istr, wxChar *buffer, bool ignoreBraces = true,
     wxUnusedVar(stopping);
 }
 
-bool ReadBib(wxChar *filename)
+bool ReadBib(const wxChar *filename)
 {
   if (!wxFileExists(filename))
       return false;
@@ -1158,7 +1159,7 @@ void ResolveBibReferences(void)
 }
 
 // Remember we need to resolve this citation
-void AddCitation(wxChar *citeKey)
+void AddCitation(const wxChar *citeKey)
 {
   if (!CitationList.Member(citeKey))
     CitationList.Add(citeKey);
@@ -1169,7 +1170,7 @@ void AddCitation(wxChar *citeKey)
   }
 }
 
-TexRef *FindReference(wxChar *key)
+TexRef *FindReference(const wxChar *key)
 {
   return (TexRef *)TexReferences.Get(key);
 }
@@ -1185,6 +1186,7 @@ bool StringTobool(const wxString& val)
     up.MakeUpper();
 
     if (up.IsSameAs(_T("YES")) ||
+        up.IsSameAs(_T("TRUE")) ||
         up.IsSameAs(_T("ON")) ||
         up.IsSameAs(_T("OK")) |
         up.IsSameAs(_T("1")))
@@ -1524,7 +1526,7 @@ bool ReadCustomMacros(const wxString& filename)
                 macro->macroBody = copystring(macroBody.c_str());
 
             BibEatWhiteSpace(line);
-            CustomMacroList.Append(macroName.c_str(), macro);
+            CustomMacroList.Append(macroName, macro);
             AddMacroDef(ltCUSTOM_MACRO, macroName.c_str(), noArgs);
         }