Cleanup an error string when QSP::clearError() is called
Cleanup an error string when QSP::clearError() is called

QSP::clearError() calls setError() with an empty error string.
But setError() anyway calls the qt_error_string() that sets an
error string from an system error which occurred before, that
is garbage in this case.

Thus, we need to call qt_error_string() only if the input
QSP::SerialPortError is not NoError.

(cherry-picked from 6ae78369d1156e653df6a2e539230a89cf963b00)
Change-Id: I949f30ca8bf260c8884e819524909fd6cd32ad5e
Reviewed-by: Denis Shienkov <6a9c747bd2ba446682324cf340d3b86f30cf4d55@gmail.com>

RoadWorksSoftware/QtSerialPort-OS2,RoadWorksSoftware/QtSerialPort-OS2