X-Git-Url: http://git.madism.org/?p=apps%2Fmadmutt.git;a=blobdiff_plain;f=lib-lib%2Ffile.h;h=f2efefd7555357af8b90d01f1c39ebb4c02e5fa8;hp=91a2d2ad88611e42e70f0fedc75ac3dd481c70bf;hb=4dbc0e4a9d573611d4f521400a2e16f47c176639;hpb=fcaada9d60ee8f52bbc8503c06fe061ca9e2fa68 diff --git a/lib-lib/file.h b/lib-lib/file.h index 91a2d2a..f2efefd 100644 --- a/lib-lib/file.h +++ b/lib-lib/file.h @@ -48,7 +48,15 @@ void mutt_unlink(const char *); FILE *safe_fopen(const char *, const char *); int mutt_rename_file(char *, char *); -int safe_fclose(FILE **); + +static inline int m_fclose(FILE **f) { + if (*f) { + int res = fclose(*f); + *f = NULL; + return res; + } + return 0; +} char *mutt_read_line(char *, ssize_t *, FILE *, int *); @@ -56,10 +64,12 @@ int mutt_copy_stream(FILE *, FILE *); int mutt_copy_bytes(FILE *, FILE *, ssize_t); /****************************************************************************/ -/* ligben-like funcs */ +/* path manipulations */ /****************************************************************************/ const char *mutt_basename(const char *); +ssize_t m_dirname(char *, ssize_t, const char *); + char *mutt_concat_path(char *, ssize_t, const char *, const char *); void mutt_sanitize_filename(char *, short); @@ -67,7 +77,15 @@ ssize_t mutt_quote_filename(char *, ssize_t, const char *); /* replace any %s with src, or appends " $src" */ ssize_t m_file_fmt(char *dst, ssize_t n, const char *fmt, const char *src); +ssize_t m_quotefile_fmt(char *, ssize_t, const char *, const char *); + int m_tempfd(char *dst, ssize_t n, const char *dir, const char *fmt); FILE *m_tempfile(char *dst, ssize_t n, const char *dir, const char *fmt); +/****************************************************************************/ +/* misc */ +/****************************************************************************/ + +time_t m_decrease_mtime(const char *f, struct stat *st); + #endif /* MUTT_LIB_LIB_FILE_H */