summaryrefslogtreecommitdiff
path: root/firmware/common
diff options
context:
space:
mode:
authorBjörn Stenberg <bjorn@haxx.se>2002-11-01 15:26:06 +0000
committerBjörn Stenberg <bjorn@haxx.se>2002-11-01 15:26:06 +0000
commit307f5d846e1513ef609b76e2d6cea035c8465b33 (patch)
treed93d38a60d136e41cd1f6894594f55618ece316e /firmware/common
parent54d5e2cb2734d1520d234db878fa75cca68784a1 (diff)
downloadrockbox-307f5d846e1513ef609b76e2d6cea035c8465b33.zip
rockbox-307f5d846e1513ef609b76e2d6cea035c8465b33.tar.gz
rockbox-307f5d846e1513ef609b76e2d6cea035c8465b33.tar.bz2
rockbox-307f5d846e1513ef609b76e2d6cea035c8465b33.tar.xz
Added remove()
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2801 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/common')
-rw-r--r--firmware/common/dir.h1
-rw-r--r--firmware/common/file.c14
2 files changed, 15 insertions, 0 deletions
diff --git a/firmware/common/dir.h b/firmware/common/dir.h
index 1ac8fcd..6b275ab 100644
--- a/firmware/common/dir.h
+++ b/firmware/common/dir.h
@@ -72,6 +72,7 @@ typedef struct DIRtag
extern DIR* opendir(char* name);
extern int closedir(DIR* dir);
+extern int mkdir(char* name);
extern struct dirent* readdir(DIR* dir);
diff --git a/firmware/common/file.c b/firmware/common/file.c
index ae55604..7f0e0cd 100644
--- a/firmware/common/file.c
+++ b/firmware/common/file.c
@@ -184,6 +184,20 @@ int close(int fd)
return rc;
}
+int remove(const char* name)
+{
+ int rc;
+ int fd = open(name, O_WRONLY);
+ if ( fd < 0 )
+ return fd;
+
+ rc = fat_remove(&(openfiles[fd].fatfile));
+
+ close(fd);
+
+ return rc;
+}
+
static int readwrite(int fd, void* buf, int count, bool write)
{
int sectors;