]> git.saurik.com Git - wxWidgets.git/blobdiff - src/html/helpdata.cpp
correct test for wxDEBUG_LEVEL in last commit
[wxWidgets.git] / src / html / helpdata.cpp
index 96f4e23cabf6d8a41d8fc9162a3ad073dbfc0797..506fc99d8fe6b6f0620c94cda83f03f9832552f3 100644 (file)
@@ -127,7 +127,7 @@ public:
 protected:
     virtual void AddText(const wxString& WXUNUSED(txt)) {}
 
-    DECLARE_NO_COPY_CLASS(HP_Parser)
+    wxDECLARE_NO_COPY_CLASS(HP_Parser);
 };
 
 
@@ -170,7 +170,7 @@ class HP_TagHandler : public wxHtmlTagHandler
             m_parentItem = NULL;
         }
 
-    DECLARE_NO_COPY_CLASS(HP_TagHandler)
+    wxDECLARE_NO_COPY_CLASS(HP_TagHandler);
 };
 
 
@@ -701,15 +701,29 @@ bool wxHtmlHelpData::AddBook(const wxString& book)
 
 wxString wxHtmlHelpData::FindPageByName(const wxString& x)
 {
-    int cnt;
     int i;
-    wxFileSystem fsys;
-    wxFSFile *f;
 
-    // 1. try to open given file:
-    cnt = m_bookRecords.GetCount();
-    for (i = 0; i < cnt; i++)
+    bool has_non_ascii = false;
+    wxString::const_iterator it;
+    for (it = x.begin(); it != x.end(); ++it)
+    {
+        wxUniChar ch = *it;
+        if (!ch.IsAscii())
+        {
+            has_non_ascii = true;
+            break;
+        }
+    }
+    
+    int cnt = m_bookRecords.GetCount();
+    
+    if (!has_non_ascii)
     {
+      wxFileSystem fsys;
+      wxFSFile *f;
+      // 1. try to open given file:
+      for (i = 0; i < cnt; i++)
+      {
         f = fsys.OpenFile(m_bookRecords[i].GetFullPath(x));
         if (f)
         {
@@ -717,6 +731,7 @@ wxString wxHtmlHelpData::FindPageByName(const wxString& x)
             delete f;
             return url;
         }
+      }
     }