[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: kdelibs/kioslave/ftp
From: Dirk Mueller <mueller () kde ! org>
Date: 2004-01-18 11:00:05
Message-ID: 20040118110005.881F4906D () office ! kde ! org
[Download RAW message or body]
CVS commit by mueller:
handle signals in select() loop
M +17 -13 ftp.cc 1.193
--- kdelibs/kioslave/ftp/ftp.cc #1.192:1.193
@@ -1034,4 +1034,5 @@ int Ftp::ftpAcceptConnect()
fd_set mask;
+ for ( ;; ) {
FD_ZERO(&mask);
FD_SET(sDatal,&mask);
@@ -1039,9 +1040,12 @@ int Ftp::ftpAcceptConnect()
if ( m_bPasv )
return sDatal;
- if ( KSocks::self()->select( sDatal + 1, &mask, NULL, NULL, 0L ) == 0)
- {
+ int r = KSocks::self()->select( sDatal + 1, &mask, NULL, NULL, 0L );
+ if ( r == 0 || ( r < 0 && errno != EINTR && errno != EAGAIN )) {
::close( sDatal );
return -2;
}
+ if ( r > 0 )
+ break;
+ }
l = sizeof(addr);
@@ -1664,5 +1668,5 @@ void Ftp::listDir( const KURL &url )
realURL.setPath( m_initialPath );
kdDebug(7102) << "REDIRECTION to " << realURL.prettyURL() << endl;
- redirection( realURL.url() );
+ redirection( realURL );
path = m_initialPath;
finished();
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic