diff -r 5dc02b23752f -r 3e2da88830cd src/network/socket/qnativesocketengine_unix.cpp --- a/src/network/socket/qnativesocketengine_unix.cpp Tue Jul 06 15:10:48 2010 +0300 +++ b/src/network/socket/qnativesocketengine_unix.cpp Wed Aug 18 10:37:55 2010 +0300 @@ -851,11 +851,7 @@ // Symbian does not support signals natively and Open C returns EINTR when moving to offline writtenBytes = ::write(socketDescriptor, data, len); #else - // loop while ::write() returns -1 and errno == EINTR, in case - // of an interrupting signal. - do { - writtenBytes = qt_safe_write(socketDescriptor, data, len); - } while (writtenBytes < 0 && errno == EINTR); + writtenBytes = qt_safe_write(socketDescriptor, data, len); #endif if (writtenBytes < 0) { @@ -899,9 +895,7 @@ #ifdef Q_OS_SYMBIAN r = ::read(socketDescriptor, data, maxSize); #else - do { - r = qt_safe_read(socketDescriptor, data, maxSize); - } while (r == -1 && errno == EINTR); + r = qt_safe_read(socketDescriptor, data, maxSize); #endif if (r < 0) {