VirtualBox

Ignore:
Timestamp:
Aug 31, 2011 12:19:14 PM (13 years ago)
Author:
vboxsync
Message:

Main/GuestCtrl: Handle files correctly where the file size can be retrieved but content cannot be read due to limited access rights.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Main/src-client/GuestCtrlImplTasks.cpp

    r38290 r38579  
    539539                RTFILE hFileDest;
    540540                int vrc = RTFileOpen(&hFileDest, aTask->strDest.c_str(),
    541                                      RTFILE_O_READWRITE | RTFILE_O_OPEN_CREATE | RTFILE_O_DENY_WRITE);
     541                                     RTFILE_O_WRITE | RTFILE_O_OPEN_CREATE | RTFILE_O_DENY_WRITE);
    542542                if (RT_FAILURE(vrc))
    543543                    rc = GuestTask::setProgressErrorInfo(VBOX_E_IPRT_ERROR, aTask->progress,
     
    558558                            if (!aOutputData.size())
    559559                            {
    560                                 if (cbToRead)
     560                                /*
     561                                 * Only bitch about an unexpected end of a file when there already
     562                                 * was data read from that file. If this was the very first read we can
     563                                 * be (almost) sure that this file is not meant to be read by the specified user.
     564                                 */
     565                                if (   cbTransfered
     566                                    && cbToRead)
     567                                {
    561568                                    rc = GuestTask::setProgressErrorInfo(VBOX_E_IPRT_ERROR, aTask->progress,
    562                                                                          Guest::tr("Unexpected end of file \"%s\" (%u bytes left)"),
    563                                                                          aTask->strSource.c_str(), cbToRead);
     569                                                                         Guest::tr("Unexpected end of file \"%s\" (%u bytes left, %u bytes written)"),
     570                                                                         aTask->strSource.c_str(), cbToRead, cbTransfered);
     571                                }
    564572                                break;
    565573                            }
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette