summaryrefslogtreecommitdiffstats
path: root/macos.c
diff options
context:
space:
mode:
authorGravatar Linus Torvalds <torvalds@linux-foundation.org>2012-05-02 10:03:48 -0700
committerGravatar Linus Torvalds <torvalds@linux-foundation.org>2012-05-02 10:03:48 -0700
commit725e4582d9c7174b70fe197bb27345960457549e (patch)
treeb51b3ebd8867e5577ef460602af2b880b4d5ec17 /macos.c
parent2d1a316d848441a7d1137cb51b1ee0b8222aaa74 (diff)
downloadsubsurface-725e4582d9c7174b70fe197bb27345960457549e.tar.gz
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>
Diffstat (limited to 'macos.c')
-rw-r--r--macos.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/macos.c b/macos.c
index f6c4bd6c0..931d4fa1e 100644
--- a/macos.c
+++ b/macos.c
@@ -59,13 +59,18 @@ const void *subsurface_get_conf(char *name, pref_type_t type)
return NULL;
}
-void subsurface_close_conf(void)
+void subsurface_flush_conf(void)
{
int ok = CFPreferencesAppSynchronize(SUBSURFACE_PREFERENCES);
if (!ok)
fprintf(stderr,"Could not save preferences\n");
}
+void subsurface_close_conf(void)
+{
+ /* Nothing */
+}
+
const char *subsurface_USB_name()
{
return "/dev/tty.SLAB_USBtoUART";