X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/69379916942701f59b6fff72dd09eaa0a9aba89c..976f924083419b6a7feb1ff7d597c746a70abf1a:/src/html/m_pre.cpp diff --git a/src/html/m_pre.cpp b/src/html/m_pre.cpp index 2594df910c..91cc6579d8 100644 --- a/src/html/m_pre.cpp +++ b/src/html/m_pre.cpp @@ -4,7 +4,7 @@ // Author: Vaclav Slavik // RCS-ID: $Id$ // Copyright: (c) 1999 Vaclav Slavik -// Licence: wxWindows Licence +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) @@ -36,29 +36,38 @@ static wxString LINKAGEMODE HtmlizeWhitespaces(const wxString& str) { wxString out; size_t len = str.Len(); + size_t linepos = 0; for (size_t i = 0; i < len; i++) { switch (str[i]) { case wxT('<'): while (i < len && str[i] != wxT('>')) + { out << str[i++]; + linepos++; + } out << wxT('>'); + linepos++; break; case wxT(' '): out << wxT(" "); + linepos++; break; case wxT('\n'): out << wxT("
"); + linepos = 0; break; case wxT('\t'): { - for (size_t j = 8 - i%8; j > 0; j--) + for (size_t j = 8 - linepos % 8; j > 0; j--) out << wxT(" "); + linepos += 8 - linepos % 8; } break; default: out << str[i]; + linepos++; break; } }