aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lib/rclip.cc12
1 files changed, 12 insertions, 0 deletions
diff --git a/lib/rclip.cc b/lib/rclip.cc
index d2e4bdb..91870cc 100644
--- a/lib/rclip.cc
+++ b/lib/rclip.cc
@@ -67,6 +67,8 @@ reset(void)
a.addStringT(getConnectName());
if (skt->sendBufferStore(a)) {
if (skt->getBufferStore(a) == 1) {
+ if (!strcmp(a.getString(0), "NAK"))
+ status = rfsv::E_PSI_GEN_NSUP;
if (!strcmp(a.getString(0), "Ok"))
status = rfsv::E_PSI_GEN_NONE;
}
@@ -96,6 +98,9 @@ sendCommand(enum commands cc)
if (status == rfsv::E_PSI_FILE_DISC)
return false;
}
+ if (status != rfsv::E_PSI_GEN_NONE)
+ return false;
+
bool result;
bufferStore a;
a.addByte(cc);
@@ -174,6 +179,9 @@ initClipbd() {
Enum<rfsv::errs> ret;
bufferStore a;
+ if (status != rfsv::E_PSI_GEN_NONE)
+ return status;
+
sendCommand(RCLIP_INIT);
if ((ret = getResponse(a)) == rfsv::E_PSI_GEN_NONE) {
if ((a.getLen() != 3) || (a.getByte(0) != RCLIP_INIT) ||
@@ -187,6 +195,10 @@ Enum<rfsv::errs> rclip::
getResponse(bufferStore & data)
{
Enum<rfsv::errs> ret = rfsv::E_PSI_GEN_NONE;
+
+ if (status == rfsv::E_PSI_GEN_NSUP)
+ return status;
+
if (skt->getBufferStore(data) == 1)
return ret;
else