Changeset 67116 in vbox for trunk/src/VBox/Runtime/common/vfs
- Timestamp:
- May 26, 2017 12:51:18 PM (8 years ago)
- svn:sync-xref-src-repo-rev:
- 115783
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Runtime/common/vfs/vfsbase.cpp
r66767 r67116 1914 1914 1915 1915 1916 RTDECL(int) RTVfsNewFsStream(PCRTVFSFSSTREAMOPS pFsStreamOps, size_t cbInstance, RTVFS hVfs, RTVFSLOCK hLock, 1916 RTDECL(int) RTVfsNewFsStream(PCRTVFSFSSTREAMOPS pFsStreamOps, size_t cbInstance, RTVFS hVfs, RTVFSLOCK hLock, bool fReadOnly, 1917 1917 PRTVFSFSSTREAM phVfsFss, void **ppvInstance) 1918 1918 { … … 1925 1925 Assert(!pFsStreamOps->fReserved); 1926 1926 RTVFSOBJ_ASSERT_OPS(&pFsStreamOps->Obj, RTVFSOBJTYPE_FS_STREAM); 1927 AssertPtr(pFsStreamOps->pfnNext); 1927 if (fReadOnly) 1928 AssertPtr(pFsStreamOps->pfnNext); 1929 else 1930 AssertPtr(pFsStreamOps->pfnAdd); 1928 1931 Assert(cbInstance > 0); 1929 1932 AssertPtr(ppvInstance); … … 1950 1953 1951 1954 pThis->uMagic = RTVFSFSSTREAM_MAGIC; 1952 pThis->fFlags = RTFILE_O_READ | RTFILE_O_OPEN | RTFILE_O_DENY_NONE; 1955 pThis->fFlags = fReadOnly 1956 ? RTFILE_O_READ | RTFILE_O_OPEN | RTFILE_O_DENY_NONE 1957 : RTFILE_O_WRITE | RTFILE_O_CREATE | RTFILE_O_DENY_ALL; 1953 1958 pThis->pOps = pFsStreamOps; 1954 1959 … … 2018 2023 *phVfsObj = NIL_RTVFSOBJ; 2019 2024 2025 AssertReturn(pThis->fFlags & RTFILE_O_READ, VERR_INVALID_FUNCTION); 2026 2020 2027 return pThis->pOps->pfnNext(pThis->Base.pvThis, ppszName, penmType, phVfsObj); 2021 2028 } 2022 2029 2030 2031 RTDECL(int) RTVfsFsStrmAdd(RTVFSFSSTREAM hVfsFss, const char *pszPath, RTVFSOBJ hVfsObj, uint32_t fFlags) 2032 { 2033 RTVFSFSSTREAMINTERNAL *pThis = hVfsFss; 2034 AssertPtrReturn(pThis, VERR_INVALID_HANDLE); 2035 AssertReturn(pThis->uMagic == RTVFSFSSTREAM_MAGIC, VERR_INVALID_HANDLE); 2036 AssertPtrNullReturn(pszPath, VERR_INVALID_POINTER); 2037 AssertPtrReturn(hVfsObj, VERR_INVALID_HANDLE); 2038 AssertReturn(hVfsObj->uMagic == RTVFSOBJ_MAGIC, VERR_INVALID_HANDLE); 2039 AssertReturn(pThis->fFlags & RTFILE_O_WRITE, VERR_INVALID_FUNCTION); 2040 2041 return pThis->pOps->pfnAdd(pThis->Base.pvThis, pszPath, hVfsObj, fFlags); 2042 } 2023 2043 2024 2044
Note:
See TracChangeset
for help on using the changeset viewer.