123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110 |
- /*
- * wmfs2 by Martin Duquesnoy <xorg62@gmail.com> { for(i = 2011; i < 2111; ++i) ©(i); }
- * File created by David Delassus.
- * For license, see COPYING.
- */
- #include "wmfs.h"
- #include "util.h"
- void
- log_init(void)
- {
- char *path = NULL;
- xasprintf(&path, "%s/wmfs-%s.log", P_tmpdir, DisplayString(W->dpy));
- if(path)
- {
- /* open log */
- if(!(W->log = fopen(path, "a")))
- warnx("Can't open log file '%s': %s\n", path, strerror(errno));
- free(path);
- }
- }
- /** Print a warning on standard error output and in the log file
- * \param format Format string (same syntax as printf)
- */
- void
- warnl(const char *format, ...)
- {
- va_list args;
- if(W->log)
- {
- va_start(args, format);
- vfprintf(W->log, format, args);
- fprintf(W->log, "\n");
- va_end(args);
- }
- va_start(args, format);
- vwarn(format, args);
- va_end(args);
- }
- /** Print an error on standard error output and in the log file
- * \param eval Exit value
- * \param format Format string (same syntax as printf)
- */
- void
- errl(int eval, const char *format, ...)
- {
- va_list args;
- if(W->log)
- {
- va_start(args, format);
- vfprintf(W->log, format, args);
- fprintf(W->log, "\n");
- va_end(args);
- fclose (W->log);
- }
- va_start(args, format);
- verr(eval, format, args);
- }
- /** Print a warning on standard error output and in the log file
- * \param format Format string (same syntax as printf)
- */
- void
- warnxl(const char *format, ...)
- {
- va_list args;
- if(W->log)
- {
- va_start(args, format);
- vfprintf(W->log, format, args);
- fprintf(W->log, "\n");
- va_end(args);
- }
- va_start(args, format);
- vwarnx(format, args);
- va_end(args);
- }
- /** Print an error on standard error output and in the log file
- * \param eval Exit value
- * \param format Format string (same syntax as printf)
- */
- void
- errxl(int eval, const char *format, ...)
- {
- va_list args;
- if(W->log)
- {
- va_start(args, format);
- vfprintf(W->log, format, args);
- fprintf(W->log, "\n");
- va_end(args);
- fclose (W->log);
- }
- va_start(args, format);
- verrx(eval, format, args);
- }
|