diff options
author | koekeishiya <aasvi93@hotmail.com> | 2017-09-12 11:29:13 +0200 |
---|---|---|
committer | koekeishiya <aasvi93@hotmail.com> | 2017-09-12 11:29:13 +0200 |
commit | 3e935e4fd23c06cdf67bd315280a0b1d637ad339 (patch) | |
tree | 3a735e336cd226df5a15b2ca2469d08c5be2607d /src/hotload.c | |
parent | e7737919e49e9b14649d5df4edb1534584527c40 (diff) | |
download | skhd-3e935e4fd23c06cdf67bd315280a0b1d637ad339.tar.gz skhd-3e935e4fd23c06cdf67bd315280a0b1d637ad339.zip |
code cleanup
Diffstat (limited to 'src/hotload.c')
-rw-r--r-- | src/hotload.c | 28 |
1 files changed, 26 insertions, 2 deletions
diff --git a/src/hotload.c b/src/hotload.c index 8f39b15..c0e8279 100644 --- a/src/hotload.c +++ b/src/hotload.c @@ -16,7 +16,8 @@ copy_string(const char *s) return result; } -char *file_directory(const char *file) +internal char * +file_directory(const char *file) { char *last_slash = strrchr(file, '/'); *last_slash = '\0'; @@ -25,13 +26,36 @@ char *file_directory(const char *file) return directory; } -char *file_name(const char *file) +internal char * +file_name(const char *file) { char *last_slash = strrchr(file, '/'); char *name = copy_string(last_slash + 1); return name; } +bool hotloader_watched_file(struct hotloader *hotloader, char *absolutepath) +{ + bool success = false; + for(unsigned index = 0; success == 0 && index < hotloader->watch_count; ++index) { + struct watched_file *watch_info = &hotloader->watch_list[index]; + + char *directory = file_directory(absolutepath); + char *filename = file_name(absolutepath); + + if(strcmp(watch_info->directory, directory) == 0) { + if(strcmp(watch_info->filename, filename) == 0) { + success = true; + } + } + + free(filename); + free(directory); + } + + return success; +} + void hotloader_add_file(struct hotloader *hotloader, const char *file) { if(!hotloader->enabled) { |