| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change includes a fix for QTBUG-4887 and other exception safety
problems found while testing it.
The QTBUG-4887 fix is to qimage.cpp. QImage doesn't throw exceptions on
failure like a proper class should, instead it tries to fail "nice".
What happens here is that setAlphaChannel would crash on OOM as after
the convertToFormat call, d could be NULL. This new version checks the
result of the conversion before using it.
The other fixes are all cases where exceptions were thrown from
destructors. I added code to the test app to help debug these cases,
and I fixed all the problems I found.
With these changes, tst_exceptionsafety_objects runs and passes on the
Symbian emulator.
Reviewed-by: Shane Kearns
|
|
|
|
| |
Reviewed-by: Trust Me
|
|
|
|
|
|
|
|
|
|
| |
The QTestLib XML output system throws exceptions when the system is
out of memory, which is normally quite reasonable. However when it is
used to report warnings during a catch block, this terminates the
program. So this change temporarily disables allocation failures while
the warning is being recorded.
Reviewed-by: Jason Barron
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
There is one actual bug fix, checking for null pointer return.
The exception safety test code now initialises the fonts system.
The S60 fonts system does not survive OOM testing
without this.
Otherwise some duplicate tests are removed and code tidied up.
Reviewed-by: Liang Qi
Reviewed-by: Harald Fernengel
Reviewed-by: Alessandro Portale
|
|
|
|
| |
Reviewed-by: Trust Me
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The refactoring of current++ and src++ out of the new line makes the
code easier to understand but it also seems to be significant at least
in the ::isComplex case. I suspect that the ordering increment
operations vs throw from new is not well defined, or not implemented as
you might hope (with the ++ happening very last).
The changes in the catch blocks mean that it deletes the created
objects, rather than trying with the first failed object.
The test code has been updated with a +=(Container) test, and to force
testing of both static and moveable types.
Reviewed-by: Harald Fernengel
|
|
|
|
|
|
|
|
|
|
|
| |
The RHeap test functions, such as enabled by the __UHEAP macros, are
only enabled for debug builds. This change puts a wrapper allocator
in place which replicates the debug functions in all builds.
This should allow the exceptionsafety_objects autotest to progress
further on Symbian release builds.
Reviewed-by: axis
|
|
|
|
| |
Reviewed-by: Trust Me
|
| |
|
|
|
|
| |
RevBy: Trust me
|
|
|
|
| |
missing thowing new
|
| |
|
|
|
|
| |
RevBy: Trust me
|
| |
|
|
|
|
| |
parameter for easier tweaking
|
|
|
|
|
| |
Contains some smaller fixes and renaming of macros. Looks big,
but isn't scary at all ;)
|
| |
|
| |
|
|
|