VirtualBox

Changeset 50611 in vbox for trunk/src/VBox


Ignore:
Timestamp:
Feb 26, 2014 2:58:39 PM (11 years ago)
Author:
vboxsync
Message:

DnD/DnDURIList: Handle symlinks to directories.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/GuestHost/DragAndDrop/DnDURIList.cpp

    r50610 r50611  
    315315                        return rc;
    316316                    rc = RTFileQuerySize(pszNewFile, &cbSize);
     317                    if (rc == VERR_IS_A_DIRECTORY) /* Happens for symlinks. */
     318                        rc = VINF_SUCCESS;
     319
    317320                    if (RT_FAILURE(rc))
    318321                        break;
    319322
    320                     m_lstTree.append(DnDURIObject(DnDURIObject::File,
    321                                                   pszNewFile, &pszNewFile[cbBaseLen],
    322                                                   objInfo1.Attr.fMode, cbSize));
    323                     m_cbTotal += cbSize;
     323                    if (RTFS_IS_FILE(objInfo.Attr.fMode))
     324                    {
     325                        m_lstTree.append(DnDURIObject(DnDURIObject::File,
     326                                                      pszNewFile, &pszNewFile[cbBaseLen],
     327                                                      objInfo1.Attr.fMode, cbSize));
     328                        m_cbTotal += cbSize;
     329                    }
     330                    else /* Handle symlink directories. */
     331                        rc = appendPathRecursive(pszNewFile, cbBaseLen, fFlags);
    324332#ifdef DEBUG_andy
    325333                    LogFlowFunc(("strSrcPath=%s, strDstPath=%s, fMode=0x%x, cbSize=%RU64, cbTotal=%zu\n",
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