From b15e3fae84192caa430ed2b8b1269d9e8896d7d0 Mon Sep 17 00:00:00 2001 From: LV-426 Date: Tue, 28 Apr 2015 02:49:40 +0300 Subject: rz_server: avoid casting to 'None' --- src/server/rz_server.py | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) (limited to 'src') diff --git a/src/server/rz_server.py b/src/server/rz_server.py index c5e5e17d..e856e8f2 100644 --- a/src/server/rz_server.py +++ b/src/server/rz_server.py @@ -11,6 +11,7 @@ import os import re import signal import traceback +import types import db_controller as dbc import rz_api @@ -99,13 +100,15 @@ class Config(object): k, v = map(str.strip, kv_arr) if '' == v: v = None - if None != cfg.get(k): - # apply type conversion based on default value type - type_f = type(cfg[k]) - if bool == type_f: - v = v in ("True", "true") # workaround bool('false') = True - else: - v = type_f(v) + if v is None: continue + + type_f = type(cfg[k]) + if bool == type_f: + v = v in ("True", "true") # workaround bool('false') = True + elif types.NoneType != type_f: + v = type_f(v) + + # FIXME: handle type cast for keys which default to None (always str) # [!] we can't use k.lower() as we are loading Flask configuration # keys which are expected to be capitalized -- cgit v1.3.1