summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLiang Qi <liang.qi@theqtcompany.com>2016-03-07 19:32:54 +0100
committerLiang Qi <liang.qi@theqtcompany.com>2016-03-07 19:32:54 +0100
commitf8449352c9af0ee8055c6a85981e092e9d109b9d (patch)
tree458d4f44ce94b764b773cacfc200329c0cb988d5
parent5bee9d9f0f8cf5415ad9337aed88bccac3c15ce1 (diff)
parenta2467f9ec2d09d6d665d169e0fb450169f921b12 (diff)
downloadqtserialport-f8449352c9af0ee8055c6a85981e092e9d109b9d.tar.gz
Merge remote-tracking branch 'origin/5.6' into 5.7
Change-Id: I35f19a7d266f90e957bfe01534a40c4d98b40b34
-rw-r--r--src/serialport/doc/images/blockingmaster-example.pngbin4656 -> 3797 bytes
-rw-r--r--src/serialport/doc/images/blockingslave-example.pngbin4784 -> 3918 bytes
-rw-r--r--src/serialport/doc/images/enumerator-example.pngbin18510 -> 15557 bytes
-rw-r--r--src/serialport/doc/images/terminal-example.pngbin10918 -> 8548 bytes
-rw-r--r--src/serialport/qserialport.cpp5
-rw-r--r--src/serialport/qserialportinfo.cpp9
-rw-r--r--src/serialport/qserialportinfo_freebsd.cpp5
-rw-r--r--src/serialport/qserialportinfo_osx.cpp5
-rw-r--r--src/serialport/qserialportinfo_unix.cpp5
-rw-r--r--src/serialport/qserialportinfo_win.cpp25
-rw-r--r--src/serialport/qserialportinfo_wince.cpp5
-rw-r--r--src/serialport/serialport.pro4
12 files changed, 27 insertions, 36 deletions
diff --git a/src/serialport/doc/images/blockingmaster-example.png b/src/serialport/doc/images/blockingmaster-example.png
index 44aa5ec..9b5fc4a 100644
--- a/src/serialport/doc/images/blockingmaster-example.png
+++ b/src/serialport/doc/images/blockingmaster-example.png
Binary files differ
diff --git a/src/serialport/doc/images/blockingslave-example.png b/src/serialport/doc/images/blockingslave-example.png
index 44aa393..c02ae85 100644
--- a/src/serialport/doc/images/blockingslave-example.png
+++ b/src/serialport/doc/images/blockingslave-example.png
Binary files differ
diff --git a/src/serialport/doc/images/enumerator-example.png b/src/serialport/doc/images/enumerator-example.png
index c4add83..c96d990 100644
--- a/src/serialport/doc/images/enumerator-example.png
+++ b/src/serialport/doc/images/enumerator-example.png
Binary files differ
diff --git a/src/serialport/doc/images/terminal-example.png b/src/serialport/doc/images/terminal-example.png
index 28aa366..9affaae 100644
--- a/src/serialport/doc/images/terminal-example.png
+++ b/src/serialport/doc/images/terminal-example.png
Binary files differ
diff --git a/src/serialport/qserialport.cpp b/src/serialport/qserialport.cpp
index 22dcfd2..3d11b31 100644
--- a/src/serialport/qserialport.cpp
+++ b/src/serialport/qserialport.cpp
@@ -961,6 +961,11 @@ bool QSerialPort::setRequestToSend(bool set)
return false;
}
+ if (d->flowControl == QSerialPort::HardwareControl) {
+ d->setError(QSerialPortErrorInfo(QSerialPort::UnsupportedOperationError));
+ return false;
+ }
+
const bool requestToSend = isRequestToSend();
const bool retval = d->setRequestToSend(set);
if (retval && (requestToSend != set))
diff --git a/src/serialport/qserialportinfo.cpp b/src/serialport/qserialportinfo.cpp
index 84d9f06..21dedb6 100644
--- a/src/serialport/qserialportinfo.cpp
+++ b/src/serialport/qserialportinfo.cpp
@@ -42,6 +42,7 @@
#include "qserialportinfo.h"
#include "qserialportinfo_p.h"
#include "qserialport.h"
+#include "qserialport_p.h"
QT_BEGIN_NAMESPACE
@@ -287,9 +288,13 @@ bool QSerialPortInfo::hasProductIdentifier() const
/*!
\fn QList<qint32> QSerialPortInfo::standardBaudRates()
- Returns a list of available standard baud rates supported by
- the current serial port.
+ Returns a list of available standard baud rates supported
+ by the target platform.
*/
+QList<qint32> QSerialPortInfo::standardBaudRates()
+{
+ return QSerialPortPrivate::standardBaudRates();
+}
/*!
\fn QList<QSerialPortInfo> QSerialPortInfo::availablePorts()
diff --git a/src/serialport/qserialportinfo_freebsd.cpp b/src/serialport/qserialportinfo_freebsd.cpp
index 49612f1..552db89 100644
--- a/src/serialport/qserialportinfo_freebsd.cpp
+++ b/src/serialport/qserialportinfo_freebsd.cpp
@@ -330,11 +330,6 @@ QList<QSerialPortInfo> QSerialPortInfo::availablePorts()
return serialPortInfoList;
}
-QList<qint32> QSerialPortInfo::standardBaudRates()
-{
- return QSerialPortPrivate::standardBaudRates();
-}
-
bool QSerialPortInfo::isBusy() const
{
QString lockFilePath = serialPortLockFilePath(portName());
diff --git a/src/serialport/qserialportinfo_osx.cpp b/src/serialport/qserialportinfo_osx.cpp
index 5491272..4b1486d 100644
--- a/src/serialport/qserialportinfo_osx.cpp
+++ b/src/serialport/qserialportinfo_osx.cpp
@@ -230,11 +230,6 @@ QList<QSerialPortInfo> QSerialPortInfo::availablePorts()
return serialPortInfoList;
}
-QList<qint32> QSerialPortInfo::standardBaudRates()
-{
- return QSerialPortPrivate::standardBaudRates();
-}
-
bool QSerialPortInfo::isBusy() const
{
QString lockFilePath = serialPortLockFilePath(portName());
diff --git a/src/serialport/qserialportinfo_unix.cpp b/src/serialport/qserialportinfo_unix.cpp
index 0b8b517..f59a630 100644
--- a/src/serialport/qserialportinfo_unix.cpp
+++ b/src/serialport/qserialportinfo_unix.cpp
@@ -465,11 +465,6 @@ QList<QSerialPortInfo> QSerialPortInfo::availablePorts()
return serialPortInfoList;
}
-QList<qint32> QSerialPortInfo::standardBaudRates()
-{
- return QSerialPortPrivate::standardBaudRates();
-}
-
bool QSerialPortInfo::isBusy() const
{
QString lockFilePath = serialPortLockFilePath(portName());
diff --git a/src/serialport/qserialportinfo_win.cpp b/src/serialport/qserialportinfo_win.cpp
index 061207a..4e72ea4 100644
--- a/src/serialport/qserialportinfo_win.cpp
+++ b/src/serialport/qserialportinfo_win.cpp
@@ -270,16 +270,22 @@ static QString parseDeviceSerialNumber(const QString &instanceIdentifier)
return instanceIdentifier.mid(firstbound + 1, lastbound - firstbound - 1);
}
-static QString deviceSerialNumber(const QString &instanceIdentifier,
+static QString deviceSerialNumber(QString instanceIdentifier,
DEVINST deviceInstanceNumber)
{
- QString result = parseDeviceSerialNumber(instanceIdentifier);
- if (result.isEmpty()) {
- const DEVINST parentNumber = parentDeviceInstanceNumber(deviceInstanceNumber);
- const QString parentInstanceIdentifier = deviceInstanceIdentifier(parentNumber);
- result = parseDeviceSerialNumber(parentInstanceIdentifier);
+ forever {
+ const QString result = parseDeviceSerialNumber(instanceIdentifier);
+ if (!result.isEmpty())
+ return result;
+ deviceInstanceNumber = parentDeviceInstanceNumber(deviceInstanceNumber);
+ if (deviceInstanceNumber == 0)
+ break;
+ instanceIdentifier = deviceInstanceIdentifier(deviceInstanceNumber);
+ if (instanceIdentifier.isEmpty())
+ break;
}
- return result;
+
+ return QString();
}
QList<QSerialPortInfo> QSerialPortInfo::availablePorts()
@@ -351,11 +357,6 @@ QList<QSerialPortInfo> QSerialPortInfo::availablePorts()
return serialPortInfoList;
}
-QList<qint32> QSerialPortInfo::standardBaudRates()
-{
- return QSerialPortPrivate::standardBaudRates();
-}
-
bool QSerialPortInfo::isBusy() const
{
const HANDLE handle = ::CreateFile(reinterpret_cast<const wchar_t*>(systemLocation().utf16()),
diff --git a/src/serialport/qserialportinfo_wince.cpp b/src/serialport/qserialportinfo_wince.cpp
index 354de30..589a579 100644
--- a/src/serialport/qserialportinfo_wince.cpp
+++ b/src/serialport/qserialportinfo_wince.cpp
@@ -126,11 +126,6 @@ QList<QSerialPortInfo> QSerialPortInfo::availablePorts()
return serialPortInfoList;
}
-QList<qint32> QSerialPortInfo::standardBaudRates()
-{
- return QSerialPortPrivate::standardBaudRates();
-}
-
bool QSerialPortInfo::isBusy() const
{
const HANDLE handle = ::CreateFile(reinterpret_cast<const wchar_t*>(systemLocation().utf16()),
diff --git a/src/serialport/serialport.pro b/src/serialport/serialport.pro
index 92d0795..194958a 100644
--- a/src/serialport/serialport.pro
+++ b/src/serialport/serialport.pro
@@ -5,8 +5,8 @@ QMAKE_DOCS = $$PWD/doc/qtserialport.qdocconf
config_ntddmodm: DEFINES += QT_NO_REDEFINE_GUID_DEVINTERFACE_MODEM
-load(qt_module)
-
include($$PWD/serialport-lib.pri)
+load(qt_module)
+
PRECOMPILED_HEADER =