I'm going to call this a possible fix....I've only been running it for a few
minutes.
But...before this every time I started WSJT-X with HRD Logger already
running it would timeout immediately. And anytime I started WSJT-X first
and then HRD Logger WSJT-X would start timing out immediately. I tried both
of these now and there are no problems now.
Just for reference I am running Windows 7 32-bit.
As of now I've been running for about 20 minutes with no timeouts at all
which is a LOT longer than ever before with both of these running. I've got
trace turned on and I can see the frequency calls flying by at 1 second
intervals with no delays occurring.
All I did was move the waitForBytesWritten outside the if block. Just a
hunch on my part but for some odd/unknown reason it works. Perhaps the
hrd_->state was interfering somehow?
Mike W9MDB
--- HRDTransceiver.cpp (revision 4261)
+++ HRDTransceiver.cpp (working copy)
@@ -723,9 +723,9 @@
bytes_to_send = message->size_;
bytes_sent = hrd_->write (reinterpret_cast<char *> (message.data ()),
bytes_to_send);
}
-
+ bool writeTimeout = hrd_->waitForBytesWritten (socket_wait_time);
if (bytes_sent < bytes_to_send
- || !hrd_->waitForBytesWritten (socket_wait_time)
+ || !writeTimeout
|| QTcpSocket::ConnectedState != hrd_->state ())
{
#if WSJT_TRACE_CAT
------------------------------------------------------------------------------
Slashdot TV.
Video for Nerds. Stuff that matters.
http://tv.slashdot.org/
_______________________________________________
wsjt-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/wsjt-devel