libaacs | branch: master | npzacs <npz...@gmail.com> | Mon Feb 22 19:48:36 2016 
+0200| [6d23f9f74ffd2a066e2dc1dce889d3e93dbd1049] | committer: npzacs

Merge file_unlink() from libbluray

> http://git.videolan.org/gitweb.cgi/libaacs.git/?a=commit;h=6d23f9f74ffd2a066e2dc1dce889d3e93dbd1049
---

 src/file/file.h       |    1 +
 src/file/file_posix.c |    6 ++++++
 src/file/file_win32.c |    8 ++++++++
 3 files changed, 15 insertions(+)

diff --git a/src/file/file.h b/src/file/file.h
index 9fd8e6e..8dd9021 100644
--- a/src/file/file.h
+++ b/src/file/file.h
@@ -50,6 +50,7 @@ BD_PRIVATE extern AACS_FILE_H *(*file_open)(const char* 
filename, const char *mo
  * local filesystem
  */
 
+BD_PRIVATE int file_unlink(const char *file);
 BD_PRIVATE int file_mkdir(const char *dir);
 
 #endif /* FILE_H_ */
diff --git a/src/file/file_posix.c b/src/file/file_posix.c
index 20d6193..e10b1b6 100644
--- a/src/file/file_posix.c
+++ b/src/file/file_posix.c
@@ -27,6 +27,7 @@
 
 #include <errno.h>
 #include <inttypes.h>
+#include <stdio.h> // remove()
 #include <stdlib.h>
 #include <string.h>
 
@@ -133,6 +134,11 @@ static AACS_FILE_H *_file_open(const char* filename, const 
char *cmode)
 
 AACS_FILE_H* (*file_open)(const char* filename, const char *mode) = _file_open;
 
+int file_unlink(const char *file)
+{
+    return remove(file);
+}
+
 int file_mkdir(const char *dir)
 {
     return mkdir(dir, S_IRWXU);
diff --git a/src/file/file_win32.c b/src/file/file_win32.c
index c9d66ff..70727d4 100644
--- a/src/file/file_win32.c
+++ b/src/file/file_win32.c
@@ -113,6 +113,14 @@ static AACS_FILE_H *_file_open(const char* filename, const 
char *mode)
 
 AACS_FILE_H* (*file_open)(const char* filename, const char *mode) = _file_open;
 
+int file_unlink(const char *file)
+{
+    wchar_t wfile[MAX_PATH];
+
+    MultiByteToWideChar(CP_UTF8, 0, file, -1, wfile, MAX_PATH);
+    return _wremove(wfile);
+}
+
 int file_mkdir(const char *dir)
 {
     wchar_t wdir[MAX_PATH];

_______________________________________________
libaacs-devel mailing list
libaacs-devel@videolan.org
https://mailman.videolan.org/listinfo/libaacs-devel

Reply via email to