From cfc954cf98c0e652b7113e9fec970afab4310f89 Mon Sep 17 00:00:00 2001 From: Francisco Javier Trujillo Mata Date: Thu, 30 Nov 2023 23:45:12 +0100 Subject: [PATCH 1/2] Implement unlink --- src/libcglue/glue.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/libcglue/glue.c b/src/libcglue/glue.c index 5b8be3c9..33ab233d 100755 --- a/src/libcglue/glue.c +++ b/src/libcglue/glue.c @@ -601,8 +601,13 @@ int _link(const char *old, const char *new) { #ifdef F__unlink int _unlink(const char *path) { - errno = ENOSYS; - return -1; /* not supported */ + char dest[MAXNAMLEN + 1]; + if(__path_absolute(path, dest, MAXNAMLEN) < 0) { + errno = ENAMETOOLONG; + return -1; + } + + return __set_errno(sceIoRemove(dest)); } #endif From 9f14f4a98e2246cbcd235391c758984b03babd4a Mon Sep 17 00:00:00 2001 From: Francisco Javier Trujillo Mata Date: Thu, 30 Nov 2023 23:45:28 +0100 Subject: [PATCH 2/2] Fix path for statvfs --- src/libcglue/glue.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/libcglue/glue.c b/src/libcglue/glue.c index 33ab233d..3e1ccc5f 100755 --- a/src/libcglue/glue.c +++ b/src/libcglue/glue.c @@ -1038,6 +1038,12 @@ int statvfs (const char *__path, struct statvfs *__buf) { SceDevInf inf; SceDevctlCmd cmd; + char dest[MAXNAMLEN + 1]; + + if(__path_absolute(__path, dest, MAXNAMLEN) < 0) { + errno = ENAMETOOLONG; + return -1; + } cmd.dev_inf = &inf; memset(&inf, 0, sizeof(SceDevInf));