Qt 5.2.1 is a bug-fix release. It maintains both forward and backward
compatibility (source and binary) with Qt 5.2.0.

For more details, refer to the online documentation included in this
distribution. The documentation is also available online:

  http://qt-project.org/doc/

The Qt version 5.2 series is binary compatible with the 5.1.x series.
Applications compiled for 5.1 will continue to run with 5.2.

Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:

  http://bugreports.qt-project.org/

Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.

****************************************************************************
*                          Library                                         *
****************************************************************************

 - The creadersync example should not return true when an empty buffer was read.
 - Improved data receiving in creaderasync example. Received data should be
   accumulated at each triggering of readyRead() during wait timeout.

 - QSerialPort:
   * [QTBUG-33938] Fixed crash when closing serial port on Windows. Now the
     signals/slots are used instead of overriding the QWinEventNotifier::event().
   * Improved the low-level data writing on Windows. Now a whole writeBuffer
     is written instead of chunks.
