]> git.saurik.com Git - wxWidgets.git/blobdiff - src/html/helpdata.cpp
fixed a (harmless) BoundsChecker warning
[wxWidgets.git] / src / html / helpdata.cpp
index 9c2fe511302a73681ecd8d695fa245008f71ee76..312857dedfde84d9b0d492abb350909e01102df5 100644 (file)
@@ -452,11 +452,18 @@ bool wxHtmlHelpData::AddBookParam(const wxFSFile& bookfile,
     int IndexOld = m_IndexCnt,
         ContentsOld = m_ContentsCnt;
 
     int IndexOld = m_IndexCnt,
         ContentsOld = m_ContentsCnt;
 
-    if (! path.IsEmpty())
+    if (!path.IsEmpty())
         fsys.ChangePathTo(path, TRUE);
 
         fsys.ChangePathTo(path, TRUE);
 
-    bookr = new wxHtmlBookRecord(fsys.GetPath(), title, deftopic);
+    size_t booksCnt = m_BookRecords.GetCount();
+    for (size_t i = 0; i < booksCnt; i++)
+    {
+        if ( m_BookRecords[i].GetBookFile() == bookfile.GetLocation() )
+            return TRUE; // book is (was) loaded
+    }
 
 
+    bookr = new wxHtmlBookRecord(bookfile.GetLocation(), fsys.GetPath(), title, deftopic);
+    
     if (m_ContentsCnt % wxHTML_REALLOC_STEP == 0)
         m_Contents = (wxHtmlContentsItem*) realloc(m_Contents, (m_ContentsCnt + wxHTML_REALLOC_STEP) * sizeof(wxHtmlContentsItem));
     m_Contents[m_ContentsCnt].m_Level = 0;
     if (m_ContentsCnt % wxHTML_REALLOC_STEP == 0)
         m_Contents = (wxHtmlContentsItem*) realloc(m_Contents, (m_ContentsCnt + wxHTML_REALLOC_STEP) * sizeof(wxHtmlContentsItem));
     m_Contents[m_ContentsCnt].m_Level = 0;