summaryrefslogtreecommitdiff
path: root/noncore/apps/opie-console/filetransfer.cpp
Side-by-side diff
Diffstat (limited to 'noncore/apps/opie-console/filetransfer.cpp') (more/less context) (show whitespace changes)
-rw-r--r--noncore/apps/opie-console/filetransfer.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/noncore/apps/opie-console/filetransfer.cpp b/noncore/apps/opie-console/filetransfer.cpp
index 14787f6..8ca0df2 100644
--- a/noncore/apps/opie-console/filetransfer.cpp
+++ b/noncore/apps/opie-console/filetransfer.cpp
@@ -18,4 +18,5 @@ FileTransfer::FileTransfer( Type t, IOLayer* lay )
signal(SIGPIPE, SIG_IGN );
+ m_pid = 0;
m_not = 0l;
m_proc = 0l;
@@ -49,4 +50,5 @@ void FileTransfer::sendFile( const QString& file ) {
case -1:
emit error( StartError, tr("Was not able to fork") );
+ slotExec();
break;
case 0:{
@@ -178,5 +180,4 @@ void FileTransfer::slotRead() {
if ( lis[0].simplifyWhiteSpace() == "Transfer" ) {
qWarning("sent!!!!");
- emit sent();
return;
}
@@ -237,5 +238,5 @@ void FileTransfer::slotProgress( const QStringList& list ) {
void FileTransfer::cancel() {
if(m_pid > 0) ::kill(m_pid,9 );
- delete m_not;
+
}
void FileTransfer::slotExec() {
@@ -250,4 +251,6 @@ void FileTransfer::slotExec() {
close( m_comm[0] );
close( m_comm[1] );
+ layer()->closeRawIO( m_fd );
emit sent();
+ m_pid = 0;
}