VirtualBox

Changeset 85875 in vbox for trunk/src/VBox/Runtime/r3


Ignore:
Timestamp:
Aug 24, 2020 4:22:01 PM (5 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
140046
Message:

Main: bugref:9224: Added RTFileQuerySectorSize into IPRT

Location:
trunk/src/VBox/Runtime/r3
Files:
5 added
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Runtime/r3/posix/fileio-posix.cpp

    r85495 r85875  
    680680        *pcbSize = st.st_size;
    681681        if (   st.st_size != 0
    682 #if defined(RT_OS_SOLARIS)
     682#if defined(RT_OS_SOLARIS) || defined(RT_OS_DARWIN)
    683683            || (!S_ISBLK(st.st_mode) && !S_ISCHR(st.st_mode))
    684 #elif defined(RT_OS_FREEBSD) || defined(RT_OS_NETBSD)
     684#elif defined(RT_OS_FREEBSD) || defined(RT_OS_NETBSD) || defined(RT_OS_DARWIN)
    685685            || !S_ISCHR(st.st_mode)
    686686#else
     
    705705            }
    706706        }
    707         /* must be a block device, fail on failure. */
     707
     708        /* Always fail block devices.  Character devices doesn't all need to be
     709           /dev/rdisk* nodes, they should return ENOTTY but include EINVAL too. */
     710        if (!S_ISBLK(st.st_mode) && (errno == ENOTTY || errno == EINVAL))
     711            return VINF_SUCCESS;
    708712
    709713#elif defined(RT_OS_SOLARIS)
Note: See TracChangeset for help on using the changeset viewer.

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