From 7266ebf56acbd34978d8bb99a2a87a15d0afdea9 Mon Sep 17 00:00:00 2001 From: Kaz Kylheku Date: Tue, 28 Jan 2014 21:39:03 -0800 Subject: * stream.c (remove_path, rename_path): New functions. * stream.h (remove_path, rename_path): Declared. * utf8.c (w_remove, w_rename): New functions. * utf8.h (w_remove, w_rename): Declared. * eval.c (eval_init): Registered remove_path and rename_path as intrinsics. --- utf8.c | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'utf8.c') diff --git a/utf8.c b/utf8.c index 36354277..26e5795d 100644 --- a/utf8.c +++ b/utf8.c @@ -383,3 +383,21 @@ FILE *w_freopen(const wchar_t *wname, const wchar_t *wmode, FILE *fold) free(mode); return f; } + +int w_remove(const wchar_t *wpath) +{ + char *path = utf8_dup_to(wpath); + int err = remove(path); + free(path); + return err; +} + +int w_rename(const wchar_t *wfrom, const wchar_t *wto) +{ + char *from = utf8_dup_to(wfrom); + char *to = utf8_dup_to(wto); + int err = rename(from, to); + free(to); + free(from); + return err; +} -- cgit v1.2.3