diff options
Diffstat (limited to 'src/stdlib/files.c')
| -rw-r--r-- | src/stdlib/files.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/stdlib/files.c b/src/stdlib/files.c index 7fd4c2c7..88d78676 100644 --- a/src/stdlib/files.c +++ b/src/stdlib/files.c @@ -110,9 +110,11 @@ static file_t *_load_file(const char *filename, FILE *file) { // Convert to relative path (if applicable) char buf[PATH_MAX]; char *cwd = getcwd(buf, sizeof(buf)); - size_t cwd_len = strlen(cwd); - if (strncmp(cwd, filename, cwd_len) == 0 && filename[cwd_len] == '/') - ret->relative_filename = &filename[cwd_len + 1]; + if (cwd != NULL) { + size_t cwd_len = strlen(cwd); + if (strncmp(cwd, filename, cwd_len) == 0 && filename[cwd_len] == '/') + ret->relative_filename = &filename[cwd_len + 1]; + } } return ret; } |
