Index: trunk/BNC/bnccaster.cpp
===================================================================
--- trunk/BNC/bnccaster.cpp	(revision 1228)
+++ trunk/BNC/bnccaster.cpp	(revision 1229)
@@ -483,16 +483,10 @@
 ////////////////////////////////////////////////////////////////////////////
 int bncCaster::myWrite(QTcpSocket* sock, const char* buf, int bufLen) {
-  int bytesWritten = 0;
-  for (;;) {
-    int newBytes = sock->write(buf+bytesWritten, bufLen-bytesWritten);
-    if (newBytes < 0) {
-      return newBytes;
-    }
-    else {
-      bytesWritten += newBytes;
-    }
-    if (bytesWritten == bufLen) {
-      return bytesWritten;
-    }
-  }
-}
+  sock->write(buf, bufLen);
+  for (int ii = 1; ii <= 10; ii++) {
+    if (sock->waitForBytesWritten(10)) {  // wait 10 ms
+      return bufLen;
+    }
+  }
+  return -1;
+}
