From 46087d220e136fc89f05d1c542ae16723240d692 Mon Sep 17 00:00:00 2001
From: Adhidarma Hadiwinoto <me@adhisimon.org>
Date: Mon, 2 Dec 2019 23:37:58 +0700
Subject: [PATCH] write to config tmp before install

---
 lib/apiserver/routers/smstools-config.js | 4 +++-
 lib/smstools-config/setter.js            | 1 +
 2 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/lib/apiserver/routers/smstools-config.js b/lib/apiserver/routers/smstools-config.js
index 1b1d981..2906067 100644
--- a/lib/apiserver/routers/smstools-config.js
+++ b/lib/apiserver/routers/smstools-config.js
@@ -137,8 +137,10 @@ async function pageModemDelete(req, res) {
     });
 }
 
-function pageInstallConfig(req, res) {
+async function pageInstallConfig(req, res) {
     logger.info('ROUTER-SMSTOOLS-CONFIG: Going to write configuration and restart smsd service');
+    await smstoolsConfigSetter.writeConfig();
+
     const fileToExec = `${process.cwd()}/bin/smstools-config-install`;
     childProcess.execFile(fileToExec, [config.smstools_config_file || '/etc/smsd.conf'], (err, stdout, stderr) => {
         res.json({
diff --git a/lib/smstools-config/setter.js b/lib/smstools-config/setter.js
index 5cc9c3e..8438cf7 100644
--- a/lib/smstools-config/setter.js
+++ b/lib/smstools-config/setter.js
@@ -25,6 +25,7 @@ async function writeConfig() {
 
     return null;
 }
+exports.writeConfig = writeConfig;
 
 exports.set = async (keyword, value) => {
     if (!keyword) return smstoolsConfigData;
-- 
1.9.0