summaryrefslogtreecommitdiff
path: root/prism/util/pm_string.c
diff options
context:
space:
mode:
Diffstat (limited to 'prism/util/pm_string.c')
-rw-r--r--prism/util/pm_string.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/prism/util/pm_string.c b/prism/util/pm_string.c
index dfc121b6a2..e9e597113f 100644
--- a/prism/util/pm_string.c
+++ b/prism/util/pm_string.c
@@ -116,6 +116,13 @@ pm_string_mapped_init(pm_string_t *string, const char *filepath) {
return false;
}
+ // Ensure it is a file and not a directory
+ if (S_ISDIR(sb.st_mode)) {
+ errno = EISDIR;
+ close(fd);
+ return false;
+ }
+
// mmap the file descriptor to virtually get the contents
size_t size = (size_t) sb.st_size;
uint8_t *source = NULL;