Make open() posix compliant api-wise. A few calls (those with O_CREAT) need the additional optional mode parameter so add it. Impact for the core is almost zero, as open() is a wrapper macro for the real open function which doesn't take the variable parameter.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@25844 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Thomas Martitz 2010-05-06 17:35:13 +00:00
parent c61e89c0ed
commit 0a1d7c28b7
76 changed files with 179 additions and 122 deletions

View file

@ -63,13 +63,20 @@ int fileexists(const char * fname)
}
#ifndef SIMULATOR
int my_open(const char *file, int flags)
int my_open(const char *file, int flags, ...)
{
if(fpoint==8)
return -1;
#undef open
filearray[fpoint]=rb->open(file, flags);
if (flags & O_CREAT)
{
va_list ap;
va_start(ap, flags);
filearray[fpoint]=rb->open(file, flags, va_arg(ap, mode_t));
va_end(ap);
}
else
filearray[fpoint]=rb->open(file, flags);
if(filearray[fpoint]<0)
return filearray[fpoint];