qpa: Fix memory leak of QFontEngineBox object

Delete QFontEngineBox object in QFontDatabase::load() if the object can not
be used.

cherry-picked from qt5/qtbase effbc9edc57fd8a2e40729a76004fe4f5fafcf49
original patch from jianliang79 <jianliang79@gmail.com>

Modified to match changes in QAtomicInt API.

Change-Id: I1cf7398f582c918426a73973347efe4425100eec
Reviewed-by: jian liang <jianliang79@gmail.com>
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
Reviewed-by: Julien Brianceau <jbrianceau@nds.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
Accept defeat when select(2)ing without a monotonic clock

We prefer to use the monotonic clock because it's never affected by time
jumps (such as the user changing the date, or the system adjusting for
any other reasons, including automatic leap seconds). But if a system
doesn't have a monotonic clock, we simply accept the regular, real time
clock and hope it doesn't jump.

This is better than the current code that never restarts a call. The
side-effect is that a 30-second select may become a 3630-second select
if someone sets the clock back one hour.

Task-number: QTBUG-22301
Change-Id: Ia5a3bb453cd475f45b03637e2549165589fd2524
(cherry-picked from qtbase commit c64d602df3712c0d147b7b689d29f79c700e63bc)
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>