commit: 2d591e76234a78b7c415ae53cab46b0eda97109d
parent: a5bdb3ea9ea9ad475a14f0ea7af1c50132e92097
author: Chris Noxz <chris@noxz.tech>
date: Sat, 17 Jun 2023 14:45:35 +0200
try to create state file if it doesn't exist
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git a/browser.c b/browser.c
@@ -711,7 +711,12 @@ load_state(void)
return;
if ((fp = fopen(CFG_S(StateFile), "r")) == NULL) {
- perror(__NAME__": Error opening state file");
+ /* fail if file exists as it cannot be accessed, else remove state lock
+ * to see if saving the state will create it (ie. the parent exists) */
+ if (access(CFG_S(StateFile), F_OK) == 0)
+ perror(__NAME__": Error opening state file");
+ else
+ gl.state_lock = FALSE;
return;
}
@@ -1020,7 +1025,7 @@ save_state(void)
if (CFG_S(StateFile) == NULL || gl.ipc != IPC_HOST || gl.state_lock)
return;
- if ((fp = fopen(CFG_S(StateFile), "w+")) == NULL) {
+ if ((fp = fopen(CFG_S(StateFile), "w")) == NULL) {
perror(__NAME__": Error opening state file");
return;
}