Calling FindFirst() with an URL without wildcards returned the correct
result, but didn't reset m_findIter, which kept its value from the
previous search that could have been invalidated since then, e.g. if
RemoveFile() has been called. Using this value could result in a crash
during the next call to FindNext().
Fix this by ensuring that we always reset m_findIter to the valid (even
if pointing to the end) value as the first thing we do in FindFirst().
Closes#18744.
Use CATCH macros directly and define separate test cases instead of
using a useless FileSystemTestCase class.
Also add INFO() macros to provide information about the context in case
of test failure.
No real changes.
This is now done automatically in the GitHub action of wxWidgets/website
repository.
Do mention that rebuilding the web site requires the release to be
available.
This is more user-friendly than GitHub links with their tons of files.
Also use the recently added #vX.Y.Z_msw anchor to link directly to MSW
binaries downloads from the corresponding file.
Closes https://github.com/wxWidgets/wxWidgets/pull/1820
Upgrade the submodule to a version which doesn't try to use SSE2 with
this old compiler, as it doesn't support the required intrinsics.
See https://github.com/wxWidgets/libpng/pull/4
This works around a problem in our build system which doesn't set rpath
correctly when linking our own libraries, which means that "qa" library,
for example, doesn't record the path to its "xml" library dependency.
We already worked around this by linking any program using "qa" with
"xml" too, however this doesn't do anything if "--as-needed" flag is in
effect, as is the case by default under Ubuntu 18.04, so make our
workaround work by forcefully disabling this flag.
Real solution would be to use -Wl,-rpath correctly and then stop linking
with "xml" library unnecessarily in e.g. test_gui bakefile.
Our tests don't compile under Mac when targeting 10.9 and using C++17 as
they try to use C++17 std::uncaught_exceptions() which is only available
since 10.12 under macOS.
We could avoid the use of this function in the tests in this build
configuration, but for now just target 10.12 instead. Yet another
alternative would be to downgrade to using C++14.
Somehow this wasn't necessary on the old Ubuntu version, but is needed
under Bionic.
Ideally configure shouldn't refuse to build everything if just Qt5OpenGL
is not found, and just disable OpenGL support, but this enhancement can
be done later.
Note that using C++98 results in tests build failure with clang as
libc++ doesn't allow using custom std::swap() specialization for
non-const references in its iter_swap(), it really requires using rvalue
references, which are, of course, only available in C++11 and later.
Move Precise (12.04) build to Trusty (4.04), move one of the existing
Trusty builds to Xenial (16.04) and all the other ones to Bionic (18.04)
to test under reasonably recent platforms too, and mostly.
No real changes, just remove patterns of the form "AAA*_BBB_CCC" as
everything they match is also matched by the "AAA*_CCC" pattern which is
also present.
See https://github.com/wxWidgets/wxWidgets/pull/1813
Unfortunately the fix of the previous commit broke the build because of
the existence of non-GUI functions using GUI-only wxWindowID class.
This will need to be fixed in a better way later, but for now add the
required header back.
See https://github.com/wxWidgets/wxWidgets/pull/1815