summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorDenis Shienkov <scapig2@yandex.ru>2011-11-26 19:59:40 +0400
committerDenis Shienkov <scapig2@yandex.ru>2011-11-26 19:59:40 +0400
commit611667f5ff150587ec28edbbf9a04e39807bbafa (patch)
tree54cbded308451474e9ee0e6a1c86c12a8c8a6639 /src
parent6d23bbe4dd98e191b33e326f968b49cb562b475b (diff)
*nix: SerialPort, modified transformation port name in port location for MacOSX based on previous commit.
Diffstat (limited to 'src')
-rw-r--r--src/serialportengine_p_unix.cpp25
1 files changed, 19 insertions, 6 deletions
diff --git a/src/serialportengine_p_unix.cpp b/src/serialportengine_p_unix.cpp
index d4b413bf..b201f0e9 100644
--- a/src/serialportengine_p_unix.cpp
+++ b/src/serialportengine_p_unix.cpp
@@ -412,22 +412,35 @@ bool UnixSerialPortEngine::select(int timeout,
return true;
}
+#if defined (Q_OS_MAC)
+static const QString defaultPathPrefix = "/dev/cu.";
+static const QString notUsedPathPrefix = "/dev/tty.";
+#else
static const QString defaultPathPrefix = "/dev/";
+#endif
QString UnixSerialPortEngine::toSystemLocation(const QString &port) const
{
- QString ret;
- if (!port.contains(defaultPathPrefix))
- ret.append(defaultPathPrefix);
- ret.append(port);
+ QString ret = port;
+
+#if defined (Q_OS_MAC)
+ ret.remove(notUsedPathPrefix);
+#endif
+
+ if (!ret.contains(defaultPathPrefix))
+ ret.prepend(defaultPathPrefix);
return ret;
}
QString UnixSerialPortEngine::fromSystemLocation(const QString &location) const
{
QString ret = location;
- if (ret.contains(defaultPathPrefix))
- ret.remove(defaultPathPrefix);
+
+#if defined (Q_OS_MAC)
+ ret.remove(notUsedPathPrefix);
+#endif
+
+ ret.remove(defaultPathPrefix);
return ret;
}