From 375e21af07172a3d6a0e9c901141f773123add52 Mon Sep 17 00:00:00 2001 From: Pavel Labath Date: Sat, 13 Nov 2010 19:40:43 +0100 Subject: [PATCH] Fix a small leak + some cleanup --- src/conky.cc | 12 ++---------- src/conky.h | 10 ---------- src/x11.cc | 10 +++++----- 3 files changed, 7 insertions(+), 25 deletions(-) diff --git a/src/conky.cc b/src/conky.cc index 103fdb20..05fa95ab 100644 --- a/src/conky.cc +++ b/src/conky.cc @@ -182,9 +182,7 @@ int top_cpu, top_mem, top_time; int top_io; #endif int top_running; -int output_methods; static conky::simple_config_setting extra_newline("extra_newline", false, false); -enum x_initialiser_state x_initialised = NO; static volatile int g_signal_pending; /* Update interval */ @@ -2491,11 +2489,6 @@ void clean_up_x11(void) XDestroyRegion(x11_stuff.region); x11_stuff.region = NULL; } - if(display) { - XCloseDisplay(display); - display = NULL; - } - x_initialised = NO; } #endif @@ -2517,11 +2510,10 @@ void clean_up_without_threads(void *memtofree1, void* memtofree2) free_and_zero(info.cpu_usage); #ifdef BUILD_X11 - if (x_initialised == YES) { + if(out_to_x.get(*state)) clean_up_x11(); - }else{ + else fonts.clear(); //in set_default_configurations a font is set but not loaded - } #endif /* BUILD_X11 */ if (info.first_process) { diff --git a/src/conky.h b/src/conky.h index 80ed1b0b..98f391eb 100644 --- a/src/conky.h +++ b/src/conky.h @@ -319,16 +319,6 @@ extern conky::range_config_setting max_user_text; /* path to config file */ extern std::string current_config; -#define TO_STDERR 4 - -enum x_initialiser_state { - NO = 0, - YES = 1, - NEVER = 2 -}; -extern int output_methods; -extern enum x_initialiser_state x_initialised; - #define DEFAULT_TEXT_BUFFER_SIZE_S "##DEFAULT_TEXT_BUFFER_SIZE" #define NOBATTERY 0 diff --git a/src/x11.cc b/src/x11.cc index 5e9103b5..ff7acac1 100644 --- a/src/x11.cc +++ b/src/x11.cc @@ -1036,13 +1036,13 @@ void get_x11_desktop_info(Display *current_display, Atom atom) } } -#define NOT_IN_X "Not running in X" +static const char NOT_IN_X[] = "Not running in X"; void print_monitor(struct text_object *obj, char *p, int p_max_size) { (void)obj; - if(x_initialised != YES) { + if(not out_to_x.get(*state)) { strncpy(p, NOT_IN_X, p_max_size); return; } @@ -1053,7 +1053,7 @@ void print_monitor_number(struct text_object *obj, char *p, int p_max_size) { (void)obj; - if(x_initialised != YES) { + if(not out_to_x.get(*state)) { strncpy(p, NOT_IN_X, p_max_size); return; } @@ -1064,7 +1064,7 @@ void print_desktop(struct text_object *obj, char *p, int p_max_size) { (void)obj; - if(x_initialised != YES) { + if(not out_to_x.get(*state)) { strncpy(p, NOT_IN_X, p_max_size); return; } @@ -1075,7 +1075,7 @@ void print_desktop_number(struct text_object *obj, char *p, int p_max_size) { (void)obj; - if(x_initialised != YES) { + if(not out_to_x.get(*state)) { strncpy(p, NOT_IN_X, p_max_size); return; }