diff --git a/src/html/helpdata.cpp b/src/html/helpdata.cpp
index 7cf0465e1e..6ba01be7f7 100644
--- a/src/html/helpdata.cpp
+++ b/src/html/helpdata.cpp
@@ -569,8 +569,8 @@ bool wxHtmlHelpData::AddBook(const wxString& book)
charset = wxEmptyString;
#ifdef __WXMAC__
- // wxIsAbsolutePath is broken
- bookFull = wxGetCwd() + ":" + book;
+ if (wxIsAbsolutePath(book)) bookFull = book;
+ else bookFull = wxGetCwd() + book; // no slash or dot
wxFileName fn( bookFull );
bookFull = fn.GetFullPath( wxPATH_UNIX );
#else
diff --git a/src/html/helpfrm.cpp b/src/html/helpfrm.cpp
index f5b05c3df3..78ca55abb0 100644
--- a/src/html/helpfrm.cpp
+++ b/src/html/helpfrm.cpp
@@ -347,7 +347,11 @@ bool wxHtmlHelpFrame::Create(wxWindow* parent, wxWindowID id,
wxLayoutConstraints *b4 = new wxLayoutConstraints;
m_ContentsBox = new wxTreeCtrl(dummy, wxID_HTML_TREECTRL,
wxDefaultPosition, wxDefaultSize,
- wxTR_HAS_BUTTONS | wxSUNKEN_BORDER);
+#ifdef __WXMAC__
+ wxSUNKEN_BORDER|wxTR_MAC_BUTTONS|wxTR_NO_LINES|wxTR_ROW_LINES );
+#else
+ wxSUNKEN_BORDER|wxTR_HAS_BUTTONS );
+#endif
m_ContentsBox->AssignImageList(ContentsImageList);
b4->top.Below (m_Bookmarks, 10);