summaryrefslogtreecommitdiff
path: root/apps/codecs.c
diff options
context:
space:
mode:
authorThomas Martitz <kugel@rockbox.org>2010-05-06 17:35:13 +0000
committerThomas Martitz <kugel@rockbox.org>2010-05-06 17:35:13 +0000
commit0a1d7c28b7e9da555d26d489cde2da26e2cc9ca0 (patch)
treea21521e6e4b8fe0131c4d9e8bae6d8cc78125fe9 /apps/codecs.c
parentc61e89c0eda126c2c1a4a3983520c35fe30db156 (diff)
downloadrockbox-0a1d7c28b7e9da555d26d489cde2da26e2cc9ca0.zip
rockbox-0a1d7c28b7e9da555d26d489cde2da26e2cc9ca0.tar.gz
rockbox-0a1d7c28b7e9da555d26d489cde2da26e2cc9ca0.tar.bz2
rockbox-0a1d7c28b7e9da555d26d489cde2da26e2cc9ca0.tar.xz
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
Diffstat (limited to 'apps/codecs.c')
-rw-r--r--apps/codecs.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/apps/codecs.c b/apps/codecs.c
index 8976871..b20aa7f 100644
--- a/apps/codecs.c
+++ b/apps/codecs.c
@@ -73,6 +73,26 @@ size_t codec_size;
extern void* plugin_get_audio_buffer(size_t *buffer_size);
+#undef open
+static int open(const char* pathname, int flags, ...)
+{
+#ifdef SIMULATOR
+ int fd;
+ if (flags & O_CREAT)
+ {
+ va_list ap;
+ va_start(ap, flags);
+ fd = sim_open(pathname, flags, va_arg(ap, mode_t));
+ va_end(ap);
+ }
+ else
+ fd = sim_open(pathname, flags);
+
+ return fd;
+#else
+ return file_open(pathname, flags);
+#endif
+}
struct codec_api ci = {
0, /* filesize */