cellFsOpen flag fix
This commit is contained in:
@@ -230,6 +230,11 @@ error_code sys_fs_open(vm::cptr<char> path, s32 flags, vm::ptr<u32> fd, s32 mode
|
|||||||
if (flags & CELL_FS_O_CREAT)
|
if (flags & CELL_FS_O_CREAT)
|
||||||
{
|
{
|
||||||
open_mode += fs::create;
|
open_mode += fs::create;
|
||||||
|
|
||||||
|
if (flags & CELL_FS_O_EXCL)
|
||||||
|
{
|
||||||
|
open_mode += fs::excl;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (flags & CELL_FS_O_TRUNC)
|
if (flags & CELL_FS_O_TRUNC)
|
||||||
@@ -242,18 +247,6 @@ error_code sys_fs_open(vm::cptr<char> path, s32 flags, vm::ptr<u32> fd, s32 mode
|
|||||||
open_mode += fs::append;
|
open_mode += fs::append;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (flags & CELL_FS_O_EXCL)
|
|
||||||
{
|
|
||||||
if (flags & CELL_FS_O_CREAT)
|
|
||||||
{
|
|
||||||
open_mode += fs::excl;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
open_mode = {}; // error
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (flags & CELL_FS_O_MSELF)
|
if (flags & CELL_FS_O_MSELF)
|
||||||
{
|
{
|
||||||
open_mode = fs::read;
|
open_mode = fs::read;
|
||||||
|
|||||||
Reference in New Issue
Block a user