-rw-r--r-- | noncore/apps/advancedfm/advancedfmMenu.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/noncore/apps/advancedfm/advancedfmMenu.cpp b/noncore/apps/advancedfm/advancedfmMenu.cpp index 9181810..3986b1f 100644 --- a/noncore/apps/advancedfm/advancedfmMenu.cpp +++ b/noncore/apps/advancedfm/advancedfmMenu.cpp | |||
@@ -521,129 +521,129 @@ bool AdvancedFm::moveDirectory( const QString & src, const QString & dest ) { | |||
521 | if( copyDirectory( src, dest ) ) { | 521 | if( copyDirectory( src, dest ) ) { |
522 | QString cmd = "rm -rf " + src; | 522 | QString cmd = "rm -rf " + src; |
523 | err = system((const char*)cmd); | 523 | err = system((const char*)cmd); |
524 | } else | 524 | } else |
525 | err = -1; | 525 | err = -1; |
526 | 526 | ||
527 | if(err!=0) { | 527 | if(err!=0) { |
528 | QMessageBox::message(tr("Note"),tr("<p>Could not move %1</p>").arg( src)); | 528 | QMessageBox::message(tr("Note"),tr("<p>Could not move %1</p>").arg( src)); |
529 | return false; | 529 | return false; |
530 | } | 530 | } |
531 | return true; | 531 | return true; |
532 | } | 532 | } |
533 | 533 | ||
534 | bool AdvancedFm::copyDirectory( const QString & src, const QString & dest ) { | 534 | bool AdvancedFm::copyDirectory( const QString & src, const QString & dest ) { |
535 | 535 | ||
536 | QString cmd = "/bin/cp -fpR " + src + " " + dest; | 536 | QString cmd = "/bin/cp -fpR " + src + " " + dest; |
537 | owarn << cmd << oendl; | 537 | owarn << cmd << oendl; |
538 | int err = system( (const char *) cmd ); | 538 | int err = system( (const char *) cmd ); |
539 | if ( err != 0 ) { | 539 | if ( err != 0 ) { |
540 | QMessageBox::message("AdvancedFm", tr( "<p>Could not copy %1 to %2</p>").arg( src ).arg( dest ) ); | 540 | QMessageBox::message("AdvancedFm", tr( "<p>Could not copy %1 to %2</p>").arg( src ).arg( dest ) ); |
541 | return false; | 541 | return false; |
542 | } | 542 | } |
543 | 543 | ||
544 | return true; | 544 | return true; |
545 | } | 545 | } |
546 | 546 | ||
547 | 547 | ||
548 | bool AdvancedFm::copyFile( const QString & src, const QString & dest ) { | 548 | bool AdvancedFm::copyFile( const QString & src, const QString & dest ) { |
549 | if(QFileInfo(src).isDir()) { | 549 | if(QFileInfo(src).isDir()) { |
550 | if( copyDirectory( src, dest )) { | 550 | if( copyDirectory( src, dest )) { |
551 | // setOtherTabCurrent(); | 551 | // setOtherTabCurrent(); |
552 | rePopulate(); | 552 | rePopulate(); |
553 | return true; | 553 | return true; |
554 | } | 554 | } |
555 | else | 555 | else |
556 | return false; | 556 | return false; |
557 | } | 557 | } |
558 | 558 | ||
559 | 559 | ||
560 | bool success = true; | 560 | bool success = true; |
561 | struct stat status; | 561 | struct stat status; |
562 | QFile srcFile(src); | 562 | QFile srcFile(src); |
563 | QFile destFile(dest); | 563 | QFile destFile(dest); |
564 | int err=0; | 564 | int err=0; |
565 | int read_fd=0; | 565 | int read_fd=0; |
566 | int write_fd=0; | 566 | int write_fd=0; |
567 | struct stat stat_buf; | 567 | struct stat stat_buf; |
568 | off_t offset = 0; | 568 | off_t offset = 0; |
569 | if(!srcFile.open( IO_ReadOnly|IO_Raw)) { | 569 | if(!srcFile.open( IO_ReadOnly|IO_Raw)) { |
570 | // owarn << "open failed" << oendl; | 570 | // owarn << "open failed" << oendl; |
571 | return success = false; | 571 | return success = false; |
572 | } | 572 | } |
573 | read_fd = srcFile.handle(); | 573 | read_fd = srcFile.handle(); |
574 | if(read_fd != -1) { | 574 | if(read_fd != -1) { |
575 | fstat (read_fd, &stat_buf); | 575 | fstat (read_fd, &stat_buf); |
576 | if( !destFile.open( IO_WriteOnly|IO_Raw ) ) { | 576 | if( !destFile.open( IO_WriteOnly|IO_Raw ) ) { |
577 | // owarn << "destfile open failed" << oendl; | 577 | // owarn << "destfile open failed" << oendl; |
578 | return success = false; | 578 | return success = false; |
579 | } | 579 | } |
580 | write_fd = destFile.handle(); | 580 | write_fd = destFile.handle(); |
581 | if(write_fd != -1) { | 581 | if(write_fd != -1) { |
582 | err = sendfile(write_fd, read_fd, &offset, stat_buf.st_size); | 582 | err = sendfile(write_fd, read_fd, &offset, stat_buf.st_size); |
583 | if( err == -1) { | 583 | if( err == -1) { |
584 | QString msg; | 584 | QString msg; |
585 | switch(err) { | 585 | switch(errno) { |
586 | case EBADF : msg = "The input file was not opened for reading or the output file was not opened for writing. "; | 586 | case EBADF : msg = "The input file was not opened for reading or the output file was not opened for writing. "; |
587 | case EINVAL: msg = "Descriptor is not valid or locked. "; | 587 | case EINVAL: msg = "Descriptor is not valid or locked. "; |
588 | case ENOMEM: msg = "Insufficient memory to read from in_fd."; | 588 | case ENOMEM: msg = "Insufficient memory to read from in_fd."; |
589 | case EIO: msg = "Unspecified error while reading from in_fd."; | 589 | case EIO: msg = "Unspecified error while reading from in_fd."; |
590 | }; | 590 | }; |
591 | success = false; | 591 | success = false; |
592 | // owarn << msg << oendl; | 592 | // owarn << msg << oendl; |
593 | } | 593 | } |
594 | } else { | 594 | } else { |
595 | success = false; | 595 | success = false; |
596 | } | 596 | } |
597 | } else { | 597 | } else { |
598 | success = false; | 598 | success = false; |
599 | } | 599 | } |
600 | srcFile.close(); | 600 | srcFile.close(); |
601 | destFile.close(); | 601 | destFile.close(); |
602 | // Set file permissions | 602 | // Set file permissions |
603 | if( stat( QFile::encodeName(src), &status ) == 0 ) { | 603 | if( stat( QFile::encodeName(src), &status ) == 0 ) { |
604 | chmod( QFile::encodeName(dest), status.st_mode ); | 604 | chmod( QFile::encodeName(dest), status.st_mode ); |
605 | } | 605 | } |
606 | 606 | ||
607 | return success; | 607 | return success; |
608 | } | 608 | } |
609 | 609 | ||
610 | void AdvancedFm::runCommand() { | 610 | void AdvancedFm::runCommand() { |
611 | if( !CurrentView()->currentItem()) return; | 611 | if( !CurrentView()->currentItem()) return; |
612 | QDir *thisDir = CurrentDir(); | 612 | QDir *thisDir = CurrentDir(); |
613 | 613 | ||
614 | QString curFile; | 614 | QString curFile; |
615 | curFile = thisDir->canonicalPath() +"/"+ CurrentView()->currentItem()->text(0); | 615 | curFile = thisDir->canonicalPath() +"/"+ CurrentView()->currentItem()->text(0); |
616 | 616 | ||
617 | InputDialog *fileDlg; | 617 | InputDialog *fileDlg; |
618 | fileDlg = new InputDialog(this,tr("Run Command"),TRUE, 0); | 618 | fileDlg = new InputDialog(this,tr("Run Command"),TRUE, 0); |
619 | fileDlg->setInputText(curFile); | 619 | fileDlg->setInputText(curFile); |
620 | fileDlg->exec(); | 620 | fileDlg->exec(); |
621 | //QString command; | 621 | //QString command; |
622 | 622 | ||
623 | if( fileDlg->result() == 1 ) { | 623 | if( fileDlg->result() == 1 ) { |
624 | // odebug << fileDlg->LineEdit1->text() << oendl; | 624 | // odebug << fileDlg->LineEdit1->text() << oendl; |
625 | QStringList command; | 625 | QStringList command; |
626 | 626 | ||
627 | command << "/bin/sh"; | 627 | command << "/bin/sh"; |
628 | command << "-c"; | 628 | command << "-c"; |
629 | command << fileDlg->LineEdit1->text(); | 629 | command << fileDlg->LineEdit1->text(); |
630 | Output *outDlg; | 630 | Output *outDlg; |
631 | outDlg = new Output( command, this, tr("AdvancedFm Output"), true); | 631 | outDlg = new Output( command, this, tr("AdvancedFm Output"), true); |
632 | QPEApplication::execDialog( outDlg ); | 632 | QPEApplication::execDialog( outDlg ); |
633 | qApp->processEvents(); | 633 | qApp->processEvents(); |
634 | 634 | ||
635 | } | 635 | } |
636 | } | 636 | } |
637 | 637 | ||
638 | void AdvancedFm::runCommandStd() { | 638 | void AdvancedFm::runCommandStd() { |
639 | if( !CurrentView()->currentItem()) return; | 639 | if( !CurrentView()->currentItem()) return; |
640 | QString curFile; | 640 | QString curFile; |
641 | QDir *thisDir = CurrentDir(); | 641 | QDir *thisDir = CurrentDir(); |
642 | QListView *thisView = CurrentView(); | 642 | QListView *thisView = CurrentView(); |
643 | if( thisView->currentItem()) | 643 | if( thisView->currentItem()) |
644 | curFile = thisDir->canonicalPath() +"/"+ thisView->currentItem()->text(0); | 644 | curFile = thisDir->canonicalPath() +"/"+ thisView->currentItem()->text(0); |
645 | 645 | ||
646 | InputDialog *fileDlg; | 646 | InputDialog *fileDlg; |
647 | fileDlg = new InputDialog(this,tr("Run Command"),TRUE, 0); | 647 | fileDlg = new InputDialog(this,tr("Run Command"),TRUE, 0); |
648 | fileDlg->setInputText(curFile); | 648 | fileDlg->setInputText(curFile); |
649 | fileDlg->exec(); | 649 | fileDlg->exec(); |