Commit Graph

80 Commits

Author SHA1 Message Date
Vadim Zeitlin
3625820490 Fixes for parsing invalid HTML without tag ends.
The code in wxHtmlParser supposed in many places that a '<' character must be
always followed by a '>' one and could create (and sometimes dereference)
invalid iterators if this wasn't the case resulting in asserts from MSVC debug
CRT and possibly crashes.

Fix this by ensuring that only valid iterators are used and add a trivial unit
test for wxHtmlParser which checks that it can parse invalid HTML without
crashing.

Closes #12869.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66678 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-01-13 14:49:55 +00:00
Michael Wetherell
948c6134e7 Use wxFS_SEEKABLE flag loading images.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66121 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-11-11 15:51:09 +00:00
Vadim Zeitlin
5276b0a53c Use wxDELETE() and wxDELETEA() when possible.
Use wxDELETE[A]() functions which automatically NULL out their arguments after
deleting them instead of doing it manually.

Closes #9685.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64656 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-06-20 18:18:23 +00:00
Václav Slavík
8d94819c43 Remove wxUSE_WCHAR_T checks.
wxWidgets requires wchar_t for some time now; wx/chartype.h has a check
to fail complation without it. Simplify code by removing now-dead code
for the !wxUSE_WCHAR_T case.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63991 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-16 10:43:18 +00:00
Václav Slavík
319106d6e2 Support XHTML &apos; entity.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63191 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-01-19 14:47:20 +00:00
Vadim Zeitlin
9a83f86094 Globally replace _T() with wxT().
Standardize on using a single macro across all wxWidgets sources and solve the name clash with Sun CC standard headers (see #10660).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61508 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-07-23 20:30:22 +00:00
Vadim Zeitlin
c0c133e13b add wx-prefixed and semicolon-requiring versions of DECLARE_NO_{COPY,ASSIGN}_CLASS macros
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58757 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-02-08 11:45:59 +00:00
Vadim Zeitlin
e822d1bd5f fix more Borland release build warnings about unused variable/code without effect
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56463 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-10-20 10:30:49 +00:00
Václav Slavík
c0213e2ace fixed memory corruption in wxHTML when parsing '&;' in the markup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55389 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-08-31 14:00:07 +00:00
Václav Slavík
d9359369af removed wxSTRING_TEXT() macro in favour of wxS()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@50991 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-01-02 17:33:31 +00:00
Václav Slavík
2826ef0c63 use typed containers in wxHtmlParser instead of type-unsafe wxList/wxHashTable
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49057 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-10-05 22:56:55 +00:00
Václav Slavík
d989875a52 fixed memory leak in RestoreState
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48431 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-08-28 14:51:46 +00:00
Václav Slavík
b1a3a96499 fixed wxHTML parsing to run in O(n) even in UTF8 build
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48390 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-08-26 10:04:11 +00:00
Václav Slavík
3c47c04740 use wxVector<T> instead of OBJARRAY macros for wxHtmlTextPieces (slightly better performance)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48339 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-08-22 15:21:46 +00:00
Václav Slavík
4f7e8fda39 rewrote wxHtmlEntitiesParser::Parse() using iterators, optimized for the common case of no entities in the input
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48318 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-08-22 06:18:12 +00:00
Václav Slavík
c471f7e18f slight optimization for wxHtmlEntitiesParser::GetEntityChar() in UTF-8 build: use wx_str() instead of c_str()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48317 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-08-22 06:17:24 +00:00
Václav Slavík
95ebbfe1fd fixed wxHtmlParser::SkipCommentTag() to run the initial test in O(1) instead of O(n) in UTF8 build, makes big difference for large HTML files
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48316 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-08-22 05:45:11 +00:00
Václav Slavík
96d665d249 marked const wxHtmlEntitiesParser methods as such
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48227 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-08-20 20:08:40 +00:00
Václav Slavík
5bce3e6feb use wxString argument and not wxChar* in wxHtmlParser::AddText(), for compatibility with STL build without implicit wxString conversions
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46403 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-06-11 12:11:15 +00:00
Václav Slavík
19817fd33e fixed HTML entities parsing broken by wxString changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46038 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-05-15 12:54:36 +00:00
Václav Slavík
b4f4d3dd61 WX_PRECOMP, not WXPRECOMP
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45700 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-27 21:35:43 +00:00
Václav Slavík
193d0c9310 PCH-less compilation fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45699 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-27 21:32:40 +00:00
Vadim Zeitlin
4609ee2ef8 fix the problem with parsing HTML comments (closes bug 1116708; based on patch 1168583)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45336 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-04-08 21:02:03 +00:00
Włodzimierz Skiba
670f993563 Include wx/app.h according to precompiled headers of wx/wx.h (with other minor cleaning).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38945 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-04-28 12:44:37 +00:00
Włodzimierz Skiba
ad9835c97c Include wx/dynarray.h according to precompiled headers of wx/wx.h (with other minor cleaning).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38841 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-04-19 14:18:39 +00:00
Włodzimierz Skiba
93763ad5ba wx/wxprec.h already includes wx/defs.h (with other minor cleaning).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38788 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-04-18 08:11:26 +00:00
Václav Slavík
e7feeafa56 added ParseInnerSource() to make <pre>-like parsing easier
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@38535 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-04-03 19:34:21 +00:00
Vadim Zeitlin
9e2bd1354a corrected test for NUL in wxHtmlEntitiesParser::Parse() (patch 1443823)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@37938 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-03-09 14:16:49 +00:00
Julian Smart
3919d5306a Worked around a crash in wxHTML on WinCE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@37776 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-03-02 12:51:22 +00:00
Vadim Zeitlin
17a1ebd101 first round of Intel compiler warning fixes: down from a few thousands just to slightly more than 100
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35688 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-09-25 19:59:19 +00:00
Vadim Zeitlin
fbfb8bcc3f added missing consts and pass objects by const reference instead of by value (patch 1205869)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35665 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-09-24 21:43:15 +00:00
Mart Raudsepp
8907154c1a Nuke #pragma implementation/interface's
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35650 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-09-23 12:56:45 +00:00
Włodzimierz Skiba
902725eefe Source cleaning inspired by and included in patch '[ 1215450 ] cleanup: unreachable code.'
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@34548 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-06-06 16:47:04 +00:00
Włodzimierz Skiba
e7274ba212 Fix to bug #1046289. dtor of wxMetaTagParser must be executed earlier than dtor of 'charset'.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@29844 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-10-14 17:19:04 +00:00
Włodzimierz Skiba
d1da887276 Source cleaning: whitespaces, tabs, -1/wxID_ANY/wxDefaultCoord/wxNOT_FOUND, TRUE/true, FALSE/false.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@29462 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-09-27 19:15:07 +00:00
Vadim Zeitlin
25271309f0 use wxLogTrace(htmldebug) instead of wxLogDebug() for messages about HTML syntax errors
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@28297 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-07-18 10:05:06 +00:00
Julian Smart
655719367a Use old licence name
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@27408 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-05-23 20:53:33 +00:00
Julian Smart
77ffb5937e Name and version changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@27404 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-05-23 14:56:36 +00:00
Václav Slavík
e02ecf7c9a don't crash if there's no wxFileSystem instance
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@26964 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-04-25 19:39:57 +00:00
Robert Roebling
7127d12912 Make wxHTML compile (and work) under CE.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@26842 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-04-17 12:10:43 +00:00
Václav Slavík
5af11a9413 Content-Type parsing should be case insensitive
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@23293 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-08-29 09:59:00 +00:00
Václav Slavík
14f355c2b5 added support for gcc precompiled headers
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@22723 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-08-09 12:46:53 +00:00
Václav Slavík
89d96c130a no real change, removed commented out code forgotten there
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@22612 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-08-05 20:30:26 +00:00
Václav Slavík
34fdf76231 added build options sanity checks into all main libraries
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@22577 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-08-04 13:19:44 +00:00
Vadim Zeitlin
2eb10e2a17 more warning fixes; removed references to wxToolBarBase from wxRTTI
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@22225 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-07-22 01:42:41 +00:00
Vadim Zeitlin
28b4db7f89 ugly fix for warnings when wxUSE_STL==0 not breaking compilation when wxUSE_STL==1
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21942 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-07-13 22:53:49 +00:00
Mattia Barbon
1b80d34a52 Warning fixes for wxUSE_STL=1.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21929 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-07-12 20:36:50 +00:00
Vadim Zeitlin
dfa4a244f0 VC++ warning fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21885 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-07-10 22:55:28 +00:00
Mattia Barbon
222ed1d678 STL-ification patch for wxMSW and wxGTK.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21876 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-07-10 19:55:12 +00:00
Václav Slavík
13fd234c9c fixed Content-Type lookup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21026 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-06-10 21:23:53 +00:00