author | llornkcor <llornkcor> | 2002-03-17 01:20:09 (UTC) |
---|---|---|
committer | llornkcor <llornkcor> | 2002-03-17 01:20:09 (UTC) |
commit | 2fe80a98551e89b45798369f1bf91f0368382ba6 (patch) (unidiff) | |
tree | a09d8dd51306563faf3496a05cbaca987665b365 /noncore | |
parent | 6fa31a92ee5ae6b4e9df2713b0ed7b8fb39fff49 (diff) | |
download | opie-2fe80a98551e89b45798369f1bf91f0368382ba6.zip opie-2fe80a98551e89b45798369f1bf91f0368382ba6.tar.gz opie-2fe80a98551e89b45798369f1bf91f0368382ba6.tar.bz2 |
fixed problem with remote directory not being listed after an upload, and fixed
problem with temp file poop with strewn throughout the local filesystem.
-rw-r--r-- | noncore/net/opieftp/opieftp.cpp | 51 | ||||
-rw-r--r-- | noncore/net/opieftp/opieftp.h | 0 |
2 files changed, 36 insertions, 15 deletions
diff --git a/noncore/net/opieftp/opieftp.cpp b/noncore/net/opieftp/opieftp.cpp index 042ed59..6a3a64d 100644 --- a/noncore/net/opieftp/opieftp.cpp +++ b/noncore/net/opieftp/opieftp.cpp | |||
@@ -246,9 +246,14 @@ void OpieFtp::cleanUp() | |||
246 | { | 246 | { |
247 | if(conn) | 247 | if(conn) |
248 | FtpQuit(conn); | 248 | FtpQuit(conn); |
249 | QFile f("./._temp"); | 249 | QString sfile=QDir::homeDirPath(); |
250 | if(f.exists()) | 250 | if(sfile.right(1) != "/") |
251 | f. remove(); | 251 | sfile+="/._temp"; |
252 | else | ||
253 | sfile+="._temp"; | ||
254 | QFile file( sfile); | ||
255 | if(file.exists()) | ||
256 | file.remove(); | ||
252 | } | 257 | } |
253 | 258 | ||
254 | void OpieFtp::tabChanged(QWidget *w) | 259 | void OpieFtp::tabChanged(QWidget *w) |
@@ -295,7 +300,7 @@ void OpieFtp::localUpload() | |||
295 | QMessageBox::message("Note","Cannot upload directories"); | 300 | QMessageBox::message("Note","Cannot upload directories"); |
296 | } | 301 | } |
297 | TabWidget->setCurrentPage(1); | 302 | TabWidget->setCurrentPage(1); |
298 | populateRemoteView(); | 303 | remoteDirList( (const QString &)currentRemoteDir); //this also calls populate |
299 | QCopEnvelope ( "QPE/System", "notBusy()" ); | 304 | QCopEnvelope ( "QPE/System", "notBusy()" ); |
300 | } | 305 | } |
301 | 306 | ||
@@ -397,8 +402,14 @@ void OpieFtp::disConnector() | |||
397 | 402 | ||
398 | bool OpieFtp::remoteDirList(const QString &dir) | 403 | bool OpieFtp::remoteDirList(const QString &dir) |
399 | { | 404 | { |
405 | QString tmp = QDir::homeDirPath(); | ||
406 | if(tmp.right(1) != "/") | ||
407 | tmp+="/._temp"; | ||
408 | else | ||
409 | tmp+="._temp"; | ||
410 | // qDebug("Listing remote dir "+tmp); | ||
400 | QCopEnvelope ( "QPE/System", "busy()" ); | 411 | QCopEnvelope ( "QPE/System", "busy()" ); |
401 | if (!FtpDir( "./._temp", dir.latin1(), conn) ) { | 412 | if (!FtpDir( tmp.latin1(), dir.latin1(), conn) ) { |
402 | QString msg; | 413 | QString msg; |
403 | msg.sprintf("Unable to list the directory\n"+dir+"\n%s",FtpLastResponse(conn) ); | 414 | msg.sprintf("Unable to list the directory\n"+dir+"\n%s",FtpLastResponse(conn) ); |
404 | msg.replace(QRegExp(":"),"\n"); | 415 | msg.replace(QRegExp(":"),"\n"); |
@@ -465,13 +476,19 @@ void OpieFtp::populateLocalView() | |||
465 | 476 | ||
466 | bool OpieFtp::populateRemoteView() | 477 | bool OpieFtp::populateRemoteView() |
467 | { | 478 | { |
479 | // qDebug("populate remoteview"); | ||
480 | QString sfile=QDir::homeDirPath(); | ||
481 | if(sfile.right(1) != "/") | ||
482 | sfile+="/._temp"; | ||
483 | else | ||
484 | sfile+="._temp"; | ||
485 | QFile file( sfile); | ||
468 | Remote_View->clear(); | 486 | Remote_View->clear(); |
469 | QFile tmp("./._temp"); | ||
470 | QString s, File_Name; | 487 | QString s, File_Name; |
471 | QString fileL, fileS, fileDate; | 488 | QString fileL, fileS, fileDate; |
472 | new QListViewItem( Remote_View, "../"); | 489 | new QListViewItem( Remote_View, "../"); |
473 | if (tmp.open(IO_ReadOnly)) { | 490 | if ( file.open(IO_ReadOnly)) { |
474 | QTextStream t( &tmp ); // use a text stream | 491 | QTextStream t( &file ); // use a text stream |
475 | while ( !t.eof()) { | 492 | while ( !t.eof()) { |
476 | s = t.readLine(); | 493 | s = t.readLine(); |
477 | fileL = s.right(s.length()-55); | 494 | fileL = s.right(s.length()-55); |
@@ -485,9 +502,12 @@ bool OpieFtp::populateRemoteView() | |||
485 | if(fileL.find("total",0,TRUE) == -1) | 502 | if(fileL.find("total",0,TRUE) == -1) |
486 | new QListViewItem( Remote_View, fileL, fileS, fileDate); | 503 | new QListViewItem( Remote_View, fileL, fileS, fileDate); |
487 | } | 504 | } |
488 | tmp.close(); | 505 | file.close(); |
506 | if( file.exists()) | ||
507 | file. remove(); | ||
489 | } else | 508 | } else |
490 | qDebug("temp file not opened successfullly"); | 509 | qDebug("temp file not opened successfullly "+sfile); |
510 | |||
491 | return true; | 511 | return true; |
492 | } | 512 | } |
493 | 513 | ||
@@ -522,7 +542,6 @@ void OpieFtp::remoteListClicked(QListViewItem *selectedItem) | |||
522 | if( !remoteChDir( (const QString &)strItem)) { | 542 | if( !remoteChDir( (const QString &)strItem)) { |
523 | currentRemoteDir = oldRemoteCurrentDir; | 543 | currentRemoteDir = oldRemoteCurrentDir; |
524 | strItem=""; | 544 | strItem=""; |
525 | populateRemoteView(); | ||
526 | qDebug("RemoteCurrentDir1 "+oldRemoteCurrentDir); | 545 | qDebug("RemoteCurrentDir1 "+oldRemoteCurrentDir); |
527 | } | 546 | } |
528 | } else if(strItem.find("/",0,TRUE) != -1) { // this is a directory | 547 | } else if(strItem.find("/",0,TRUE) != -1) { // this is a directory |
@@ -532,7 +551,6 @@ void OpieFtp::remoteListClicked(QListViewItem *selectedItem) | |||
532 | strItem=""; | 551 | strItem=""; |
533 | qDebug("RemoteCurrentDir1 "+oldRemoteCurrentDir); | 552 | qDebug("RemoteCurrentDir1 "+oldRemoteCurrentDir); |
534 | 553 | ||
535 | populateRemoteView(); | ||
536 | } else { | 554 | } else { |
537 | currentRemoteDir = currentRemoteDir+strItem; | 555 | currentRemoteDir = currentRemoteDir+strItem; |
538 | } | 556 | } |
@@ -540,10 +558,10 @@ void OpieFtp::remoteListClicked(QListViewItem *selectedItem) | |||
540 | qDebug("download "+strItem); | 558 | qDebug("download "+strItem); |
541 | } | 559 | } |
542 | } | 560 | } |
561 | remoteDirList( (const QString &)currentRemoteDir); //this also calls populate | ||
543 | if(currentRemoteDir.right(1) !="/") | 562 | if(currentRemoteDir.right(1) !="/") |
544 | currentRemoteDir +="/"; | 563 | currentRemoteDir +="/"; |
545 | currentPathEdit->setText( currentRemoteDir ); | 564 | currentPathEdit->setText( currentRemoteDir ); |
546 | remoteDirList( (const QString &)currentRemoteDir); | ||
547 | QCopEnvelope ( "QPE/System", "notBusy()" ); | 565 | QCopEnvelope ( "QPE/System", "notBusy()" ); |
548 | } | 566 | } |
549 | 567 | ||
@@ -724,8 +742,8 @@ void OpieFtp::remoteMakDir() | |||
724 | QMessageBox::message("Note",msg); | 742 | QMessageBox::message("Note",msg); |
725 | } | 743 | } |
726 | QCopEnvelope ( "QPE/System", "notBusy()" ); | 744 | QCopEnvelope ( "QPE/System", "notBusy()" ); |
745 | remoteDirList( (const QString &)currentRemoteDir); //this also calls populate | ||
727 | } | 746 | } |
728 | populateRemoteView(); | ||
729 | } | 747 | } |
730 | 748 | ||
731 | void OpieFtp::remoteDelete() | 749 | void OpieFtp::remoteDelete() |
@@ -744,6 +762,8 @@ void OpieFtp::remoteDelete() | |||
744 | msg.replace(QRegExp(":"),"\n"); | 762 | msg.replace(QRegExp(":"),"\n"); |
745 | QMessageBox::message("Note",msg); | 763 | QMessageBox::message("Note",msg); |
746 | } | 764 | } |
765 | remoteDirList( (const QString &)currentRemoteDir); //this also calls populate | ||
766 | |||
747 | } | 767 | } |
748 | break; | 768 | break; |
749 | }; | 769 | }; |
@@ -758,6 +778,7 @@ void OpieFtp::remoteDelete() | |||
758 | msg.replace(QRegExp(":"),"\n"); | 778 | msg.replace(QRegExp(":"),"\n"); |
759 | QMessageBox::message("Note",msg); | 779 | QMessageBox::message("Note",msg); |
760 | } | 780 | } |
781 | remoteDirList( (const QString &)currentRemoteDir); //this also calls populate | ||
761 | } | 782 | } |
762 | break; | 783 | break; |
763 | }; | 784 | }; |
@@ -783,8 +804,8 @@ void OpieFtp::remoteRename() | |||
783 | QMessageBox::message("Note",msg); | 804 | QMessageBox::message("Note",msg); |
784 | } | 805 | } |
785 | QCopEnvelope ( "QPE/System", "notBusy()" ); | 806 | QCopEnvelope ( "QPE/System", "notBusy()" ); |
807 | remoteDirList( (const QString &)currentRemoteDir); //this also calls populate | ||
786 | } | 808 | } |
787 | populateRemoteView(); | ||
788 | } | 809 | } |
789 | 810 | ||
790 | void OpieFtp::localRename() | 811 | void OpieFtp::localRename() |
diff --git a/noncore/net/opieftp/opieftp.h b/noncore/net/opieftp/opieftp.h index e3ff334..1e5fffa 100644 --- a/noncore/net/opieftp/opieftp.h +++ b/noncore/net/opieftp/opieftp.h | |||