diff options
Diffstat (limited to 'src/platform/windows.c')
| -rw-r--r-- | src/platform/windows.c | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/src/platform/windows.c b/src/platform/windows.c index 96678ab..50cb722 100644 --- a/src/platform/windows.c +++ b/src/platform/windows.c @@ -15,6 +15,7 @@ #include <io.h> #include <windows.h> +#include <string.h> #include <sys/types.h> #include "platform.h" @@ -90,6 +91,9 @@ void *cc4group_mmap(void *start, size_t length, int prot, int flags, int fd, off return ret; } +#undef DWORD_HI +#undef DWORD_LO + int cc4group_munmap(void *addr, size_t length) { (void)length; @@ -102,6 +106,13 @@ char* cc4group_absolutePath(const char* path) return _fullpath(NULL, path, 0); } - -#undef DWORD_HI -#undef DWORD_LO +char* cc4group_basename(const char* path) +{ + char fname[_MAX_FNAME]; + char ext[_MAX_EXT]; + _splitpath(path, NULL, NULL, fname, ext); + char* result = malloc(sizeof(char) * (strlen(fname) + strlen(ext) + 1); + strcpy(result, fname); + strcat(result, ext); + return result; +} |
