mirror of
https://github.com/profanity-im/profanity.git
synced 2024-11-03 19:37:16 -05:00
Only rotate logs if user didn't specify a log file
This commit is contained in:
parent
57666bcb77
commit
0277ffe6ae
@ -1857,7 +1857,7 @@ static struct cmd_t command_defs[] = {
|
|||||||
"Manage profanity log settings.")
|
"Manage profanity log settings.")
|
||||||
CMD_ARGS(
|
CMD_ARGS(
|
||||||
{ "where", "Show the current log file location." },
|
{ "where", "Show the current log file location." },
|
||||||
{ "rotate on|off", "Rotate log, default on." },
|
{ "rotate on|off", "Rotate log, default on. Does not take effect if you specified a filename yourself when starting Profanity." },
|
||||||
{ "maxsize <bytes>", "With rotate enabled, specifies the max log size, defaults to 1048580 (1MB)." },
|
{ "maxsize <bytes>", "With rotate enabled, specifies the max log size, defaults to 1048580 (1MB)." },
|
||||||
{ "shared on|off", "Share logs between all instances, default: on. When off, the process id will be included in the log filename. Does not take effect if you specified a filename yourself when starting Profanity." })
|
{ "shared on|off", "Share logs between all instances, default: on. When off, the process id will be included in the log filename. Does not take effect if you specified a filename yourself when starting Profanity." })
|
||||||
CMD_NOEXAMPLES
|
CMD_NOEXAMPLES
|
||||||
|
@ -56,6 +56,7 @@
|
|||||||
|
|
||||||
static FILE* logp;
|
static FILE* logp;
|
||||||
static gchar* mainlogfile = NULL;
|
static gchar* mainlogfile = NULL;
|
||||||
|
static gboolean user_provided_log = FALSE;
|
||||||
|
|
||||||
static GTimeZone* tz;
|
static GTimeZone* tz;
|
||||||
static GDateTime* dt;
|
static GDateTime* dt;
|
||||||
@ -150,6 +151,11 @@ log_init(log_level_t filter, char* log_file)
|
|||||||
{
|
{
|
||||||
level_filter = filter;
|
level_filter = filter;
|
||||||
tz = g_time_zone_new_local();
|
tz = g_time_zone_new_local();
|
||||||
|
|
||||||
|
if (log_file) {
|
||||||
|
user_provided_log = TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
gchar* lf = files_get_log_file(log_file);
|
gchar* lf = files_get_log_file(log_file);
|
||||||
|
|
||||||
logp = fopen(lf, "a");
|
logp = fopen(lf, "a");
|
||||||
@ -198,7 +204,7 @@ log_msg(log_level_t level, const char* const area, const char* const msg)
|
|||||||
fflush(logp);
|
fflush(logp);
|
||||||
g_free(date_fmt);
|
g_free(date_fmt);
|
||||||
|
|
||||||
if (prefs_get_boolean(PREF_LOG_ROTATE)) {
|
if (prefs_get_boolean(PREF_LOG_ROTATE) && !user_provided_log) {
|
||||||
long result = ftell(logp);
|
long result = ftell(logp);
|
||||||
if (result != -1 && result >= prefs_get_max_log_size()) {
|
if (result != -1 && result >= prefs_get_max_log_size()) {
|
||||||
_rotate_log_file();
|
_rotate_log_file();
|
||||||
|
Loading…
Reference in New Issue
Block a user