Go to file
Vadim Zeitlin d82e3d4429 Never read uninitialized memory when decoding UTF-16 again
Pass length value to decode_utf16() and end pointer to
wxDecodeSurrogate() to ensure that we never read beyond the end of the
buffer when decoding UTF-16 when the last (complete) 16 bit value in the
buffer is the first half of a surrogate.

This had been previously partially addressed by ad hoc changes, e.g.
f72aa7b1c9 did it for wxMBConvUTF16swap,
but the problem still remained for wxMBConvUTF16straight. Ensure that
this bug is fixed everywhere now but making it impossible to even try
decoding a surrogate without providing the buffer length.
2017-11-09 23:48:20 +01:00
.github Use HTTPS with Trac links. 2017-07-04 13:15:14 -06:00
3rdparty Replace CppUnit with Catch for unit tests 2017-11-02 01:53:16 +01:00
art Replace images in wxRendererMac::DrawTitleBarBitmap() with drawing code. 2016-01-05 14:51:04 +01:00
build support masked or partially transparent windows in wxqt 2017-11-06 02:05:40 +01:00
demos Make wxQt build again, with less compiler warnings 2017-11-06 02:06:02 +01:00
distrib Updated links and mailing list addresses. 2015-10-30 20:06:09 -06:00
docs Fix or disable currently failing wxGTK GUI tests 2017-11-07 20:56:09 +01:00
include Get rid of wxTextInputStream code dealing with wxEOT 2017-11-08 23:27:13 +01:00
interface Add overview of wxTextCtrl positions and coordinates 2017-11-07 03:46:50 +01:00
lib Delete dummy 2015-06-03 17:17:38 +02:00
locale Complete Slovenian translations 2017-11-07 13:03:37 +01:00
misc Use HTTPS with Trac links. 2017-07-04 13:15:14 -06:00
samples Remove accidental global variable from the font sample 2017-11-07 18:28:54 +01:00
src Never read uninitialized memory when decoding UTF-16 again 2017-11-09 23:48:20 +01:00
tests Add subsections to MBConvTestCase::NonBMPCharTests() 2017-11-09 23:38:03 +01:00
utils Replace CppUnit with Catch for unit tests 2017-11-02 01:53:16 +01:00
.editorconfig Add a simple EditorConfig coding style file 2017-01-20 14:32:12 +01:00
.gitattributes Replace upmake and dependent modules with a monolithic script 2015-10-04 00:11:10 +02:00
.gitignore Ignore build directories under tests/benchmarks 2017-07-16 15:47:04 +02:00
.gitmodules Replace CppUnit with Catch for unit tests 2017-11-02 01:53:16 +01:00
.mailmap Add another email address for Steve Browne 2017-07-16 15:22:05 +02:00
.travis.yml Test UTF-8 build on Travis CI 2017-11-03 23:11:33 +01:00
acinclude.m4 Don't accept nonsensical --without-<toolkit> options in configure 2017-05-27 19:03:32 +02:00
aclocal.m4 Remove cppunit.m4 inclusion from aclocal.m4 2017-11-07 18:27:44 +01:00
appveyor.yml Revert "Test using previous build platform for AppVeyor" 2017-11-03 16:58:33 +01:00
autoconf_inc.m4 Update to bakefile 0.2.11 and rebake everything 2017-10-21 17:42:30 +02:00
autogen.sh Use build/autoconf_prepend-include when running autoconf 2008-02-22 22:31:20 +00:00
BuildGit.txt Updated BuildSVN.txt for git migration. 2015-02-20 18:04:53 -07:00
config.guess Update configure helper scripts to latest versions from GNU project. 2010-11-26 13:31:15 +00:00
config.sub Update configure helper scripts to latest versions from GNU project. 2010-11-26 13:31:15 +00:00
configure Improve build and widget storage 2017-11-06 02:05:40 +01:00
configure.in Improve build and widget storage 2017-11-06 02:05:40 +01:00
descrip.mms Remove controls sample from OpenVMS makefiles 2016-02-03 09:04:53 +01:00
install-sh second try... 1999-06-01 16:14:29 +00:00
Makefile.in support masked or partially transparent windows in wxqt 2017-11-06 02:05:40 +01:00
mkinstalldirs Remove all lines containing cvs/svn "$Id$" keyword. 2013-07-26 16:02:46 +00:00
README.md Use HTTPS with Trac links. 2017-07-04 13:15:14 -06:00
regen Remove all lines containing cvs/svn "$Id$" keyword. 2013-07-26 16:02:46 +00:00
setup.h_vms Remove unused configure --enable-objc_uniquifying option 2017-10-21 19:06:33 +02:00
setup.h.in Remove unused configure --enable-objc_uniquifying option 2017-10-21 19:06:33 +02:00
version-script.in Remove all lines containing cvs/svn "$Id$" keyword. 2013-07-26 16:02:46 +00:00
wx-config-inplace.in Remove all lines containing cvs/svn "$Id$" keyword. 2013-07-26 16:02:46 +00:00
wx-config.in Report libraries in EXTRALIBS_WEBVIEW in wx-config output 2016-03-12 01:46:54 +01:00
wxwin.m4 Work around an apparent autoconf bug in WX_CONFIG_CHECK 2017-01-08 15:42:41 +01:00

About

wxWidgets is a free and open source cross-platform C++ framework for writing advanced GUI applications using native controls.

wxWidgets Logo

wxWidgets allows you to write native-looking GUI applications for all the major desktop platforms and also helps with abstracting the differences in the non-GUI aspects between them. It is free for the use in both open source and commercial applications, comes with the full, easy to read and modify, source and extensive documentation and a collection of more than a hundred examples. You can learn more about wxWidgets at https://www.wxwidgets.org/ and read its documentation online at http://docs.wxwidgets.org/

Platforms

AppVeyor Travis

wxWidgets currently supports the following primary platforms:

  • Windows XP, Vista, 7, 8 and 10 (32/64 bits).
  • Most Unix variants using the GTK+ toolkit (version 2.6 or newer or 3.x).
  • OS X (10.7 or newer) using Cocoa (32/64 bits).

Most popular C++ compilers are supported including but not limited to:

  • Microsoft Visual C++ 2003 or later (up to 2017).
  • g++ 3.4 or later, including MinGW/MinGW-64/TDM under Windows.
  • Clang under OS X and Linux.
  • Intel icc compiler.
  • Oracle (ex-Sun) aCC.

Licence

wxWidgets licence is a modified version of LGPL explicitly allowing not distributing the sources of an application using the library even in the case of static linking.

Further information

If you are looking for support, you can get it from

We would also gladly welcome your contributions.

Have fun!

The wxWidgets Team.