diff --git a/display.cpp b/display.cpp index 2fc5863..6f70997 100644 --- a/display.cpp +++ b/display.cpp @@ -104,7 +104,6 @@ void display_manager::parse_options() void display_manager::set_preset(const char *preset) { - strncpy(m_ds.monitor, preset, sizeof(m_ds.monitor)-1); for (size_t i = 0; i < strlen(m_ds.monitor); i++) m_ds.monitor[i] = tolower(m_ds.monitor[i]); memset(&range[0], 0, sizeof(struct monitor_range) * MAX_RANGES); diff --git a/display.h b/display.h index c453f56..e3acf7f 100644 --- a/display.h +++ b/display.h @@ -135,7 +135,7 @@ class display_manager void set_current_mode(modeline *mode) { m_current_mode = mode; } // setters (display_manager) - void set_monitor(const char *preset) { set_preset(preset); } + void set_monitor(const char *preset) { strncpy(m_ds.monitor, preset, sizeof(m_ds.monitor)-1); set_preset(preset); } void set_modeline(const char *modeline) { strncpy(m_ds.user_modeline, modeline, sizeof(m_ds.user_modeline)-1); } void set_crt_range(int i, const char *range) { strncpy(m_ds.crt_range[i], range, sizeof(m_ds.crt_range[i])-1); } void set_lcd_range(const char *range) { strncpy(m_ds.lcd_range, range, sizeof(m_ds.lcd_range)-1); }