Switched to a transaction for TelldusCoreEvents as well. This since Windows seems to behave strange otherwise.
This commit is contained in:
parent
9f7928076e
commit
6ace9fb071
3 changed files with 6 additions and 3 deletions
|
@ -137,6 +137,8 @@ void Manager::run() {
|
||||||
while( d->eventSocket.connected() ) {
|
while( d->eventSocket.connected() ) {
|
||||||
logMessage("-> OVERLAPPED read");
|
logMessage("-> OVERLAPPED read");
|
||||||
std::string data(d->eventSocket.read());
|
std::string data(d->eventSocket.read());
|
||||||
|
Message message("Tack");
|
||||||
|
d->eventSocket.write(message);
|
||||||
logMessage("<- OVERLAPPED result:");
|
logMessage("<- OVERLAPPED result:");
|
||||||
logMessage(data);
|
logMessage(data);
|
||||||
if (data.length() == 0) {
|
if (data.length() == 0) {
|
||||||
|
|
|
@ -85,12 +85,13 @@ void Socket::disconnect() {
|
||||||
}
|
}
|
||||||
|
|
||||||
void Socket::write(const TelldusService::Message &msg) {
|
void Socket::write(const TelldusService::Message &msg) {
|
||||||
DWORD bytesWritten = 0;
|
this->writeOverlapped(msg);
|
||||||
|
/*DWORD bytesWritten = 0;
|
||||||
if (WriteFile(d->hPipe, msg.data(), (DWORD)msg.length(), &bytesWritten, NULL)) {
|
if (WriteFile(d->hPipe, msg.data(), (DWORD)msg.length(), &bytesWritten, NULL)) {
|
||||||
FlushFileBuffers(d->hPipe);
|
FlushFileBuffers(d->hPipe);
|
||||||
} else {
|
} else {
|
||||||
d->connected = false;
|
d->connected = false;
|
||||||
}
|
}*/
|
||||||
}
|
}
|
||||||
|
|
||||||
void Socket::writeOverlapped(const TelldusService::Message &msg) {
|
void Socket::writeOverlapped(const TelldusService::Message &msg) {
|
||||||
|
|
|
@ -130,7 +130,7 @@ void TelldusCore::rawDeviceEventSlot(const QString &data, int controllerId) {
|
||||||
|
|
||||||
void TelldusCore::sendEventMessage(const Message &msg) {
|
void TelldusCore::sendEventMessage(const Message &msg) {
|
||||||
foreach(Socket *s, d->eventSockets) {
|
foreach(Socket *s, d->eventSockets) {
|
||||||
s->write(msg);
|
std::string ret = s->readWriteOverlapped(msg);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue