PIPacketExtractor fix

This commit is contained in:
2024-04-04 12:34:00 +03:00
parent eb21c85170
commit ebf2b08bb1
2 changed files with 7 additions and 3 deletions

View File

@@ -707,7 +707,7 @@ bool PISerial::openDevice() {
PIString wp = "//./" + p; PIString wp = "//./" + p;
PRIVATE->hCom = CreateFileA(wp.dataAscii(), ds, sm, 0, OPEN_EXISTING, FILE_ATTRIBUTE_SYSTEM | FILE_FLAG_OVERLAPPED, 0); PRIVATE->hCom = CreateFileA(wp.dataAscii(), ds, sm, 0, OPEN_EXISTING, FILE_ATTRIBUTE_SYSTEM | FILE_FLAG_OVERLAPPED, 0);
if (PRIVATE->hCom == INVALID_HANDLE_VALUE) { if (PRIVATE->hCom == INVALID_HANDLE_VALUE) {
piCoutObj << "Unable to open \"" << p << "\""; piCoutObj << "Unable to open \"" << p << "\"" << errorString();
fd = -1; fd = -1;
return false; return false;
} }

View File

@@ -305,13 +305,17 @@ PIString PIPacketExtractor::constructFullPathDevice() const {
bool PIPacketExtractor::openDevice() { bool PIPacketExtractor::openDevice() {
if (dev) return dev->open(); if (dev) {
if (!dev->isOpened()) return dev->open();
}
return false; return false;
} }
bool PIPacketExtractor::closeDevice() { bool PIPacketExtractor::closeDevice() {
if (dev) return dev->close(); if (dev) {
if (dev->isOpened()) return dev->close();
}
return false; return false;
} }