Proper handling of files with configparser

This commit is contained in:
Veronica K. B. Olsen
2020-06-08 17:07:35 +02:00
parent 367a5e8c1c
commit a15e73cf48
2 changed files with 18 additions and 12 deletions
+6 -6
View File
@@ -310,10 +310,10 @@ class Config:
"""
logger.debug("Loading config file")
cnfParse = configparser.ConfigParser()
cnfPath = path.join(self.confPath, self.confFile)
try:
cnfParse.read_file(
open(path.join(self.confPath,self.confFile),mode="r",encoding="utf8")
)
with open(cnfPath, mode="r", encoding="utf8") as inFile:
cnfParse.read_file(inFile)
except Exception as e:
logger.error("Could not load config file")
logger.error(str(e))
@@ -562,10 +562,10 @@ class Config:
cnfParse.set(cnfSec,"lastpath", str(self.lastPath))
# Write config file
cnfPath = path.join(self.confPath, self.confFile)
try:
cnfParse.write(
open(path.join(self.confPath, self.confFile), mode="w", encoding="utf8")
)
with open(cnfPath, mode="w", encoding="utf8") as outFile:
cnfParse.write(outFile)
self.confChanged = False
except Exception as e:
logger.error("Could not save config file")
+12 -6
View File
@@ -265,7 +265,8 @@ class GuiTheme:
# Config File
confParser = configparser.ConfigParser()
try:
confParser.read_file(open(self.confFile,mode="r",encoding="utf8"))
with open(self.confFile, mode="r", encoding="utf8") as inFile:
confParser.read_file(inFile)
except Exception as e:
logger.error("Could not load theme settings from: %s" % self.confFile)
return False
@@ -319,7 +320,8 @@ class GuiTheme:
confParser = configparser.ConfigParser()
try:
confParser.read_file(open(self.syntaxFile, mode="r", encoding="utf8"))
with open(self.syntaxFile, mode="r", encoding="utf8") as inFile:
confParser.read_file(inFile)
except Exception as e:
logger.error("Could not load syntax colours from: %s" % self.syntaxFile)
return False
@@ -370,7 +372,8 @@ class GuiTheme:
themeConf = path.join(self.mainConf.themeRoot, self.guiPath, themeDir, self.confName)
logger.verbose("Checking theme config for '%s'" % themeDir)
try:
confParser.read_file(open(themeConf, mode="r", encoding="utf8"))
with open(themeConf, mode="r", encoding="utf8") as inFile:
confParser.read_file(inFile)
except Exception as e:
self.theParent.makeAlert(
["Could not load theme config file.",str(e)], nwAlert.ERROR
@@ -402,7 +405,8 @@ class GuiTheme:
continue
logger.verbose("Checking theme syntax for '%s'" % syntaxFile)
try:
confParser.read_file(open(syntaxPath, mode="r", encoding="utf8"))
with open(syntaxPath, mode="r", encoding="utf8") as inFile:
confParser.read_file(inFile)
except Exception as e:
self.theParent.makeAlert(
["Could not load syntax file.",str(e)], nwAlert.ERROR
@@ -588,7 +592,8 @@ class GuiIcons:
# Config File
confParser = configparser.ConfigParser()
try:
confParser.read_file(open(self.confFile, mode="r", encoding="utf8"))
with open(self.confFile, mode="r", encoding="utf8") as inFile:
confParser.read_file(inFile)
except Exception as e:
logger.error("Could not load icon theme settings from: %s" % self.confFile)
return False
@@ -682,7 +687,8 @@ class GuiIcons:
themeConf = path.join(themePath, self.confName)
logger.verbose("Checking icon theme config for '%s'" % themeDir)
try:
confParser.read_file(open(themeConf, mode="r", encoding="utf8"))
with open(themeConf, mode="r", encoding="utf8") as inFile:
confParser.read_file(inFile)
except Exception as e:
self.theParent.makeAlert(
["Could not load theme config file.",str(e)], nwAlert.ERROR