mirror of
https://github.com/subsurface/subsurface.git
synced 2025-02-19 22:16:15 +00:00
Don't close config file when changing preferences
On Linux and MacOS the subsurface_close_conf() doesn't really close the config file (it flushes writes on MacOS), but on Windows it does actually close the registry hkey. Which is bad, if you change the settings multiple times - we assume that the config file is open the whole time. So add a "subsurface_flush_conf()" function, and call *that* when changing configuration parameters. And call the close function only at the very end. Alternatively, maybe we should just open the config file separately every time. I don't much care, maybe somebody else does. Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
2d1a316d84
commit
725e4582d9
7 changed files with 28 additions and 3 deletions
|
@ -423,7 +423,9 @@ static void preferences_dialog(GtkWidget *w, gpointer data)
|
|||
subsurface_set_conf("SAC", PREF_BOOL, BOOL_TO_PTR(visible_cols.sac));
|
||||
subsurface_set_conf("OTU", PREF_BOOL, BOOL_TO_PTR(visible_cols.otu));
|
||||
subsurface_set_conf("divelist_font", PREF_STRING, divelist_font);
|
||||
subsurface_close_conf();
|
||||
|
||||
/* Flush the changes out to the system */
|
||||
subsurface_flush_conf();
|
||||
}
|
||||
gtk_widget_destroy(dialog);
|
||||
}
|
||||
|
@ -769,6 +771,11 @@ void run_ui(void)
|
|||
gtk_main();
|
||||
}
|
||||
|
||||
void exit_ui(void)
|
||||
{
|
||||
subsurface_close_conf();
|
||||
}
|
||||
|
||||
typedef struct {
|
||||
cairo_rectangle_int_t rect;
|
||||
const char *text;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue