From e27575da12f60133bc4f0f4ced8b6f234d93382a Mon Sep 17 00:00:00 2001 From: Tim 'mithro' Ansell Date: Thu, 21 Dec 2017 14:05:27 +0100 Subject: [PATCH] htmlgen: Fix generation with empty tilegrid.json Signed-off-by: Tim 'mithro' Ansell --- htmlgen/htmlgen.py | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/htmlgen/htmlgen.py b/htmlgen/htmlgen.py index 6099886e..cea4f588 100755 --- a/htmlgen/htmlgen.py +++ b/htmlgen/htmlgen.py @@ -1,6 +1,7 @@ #!/usr/bin/env python3 import os, sys, json, re +from io import StringIO import argparse @@ -40,7 +41,7 @@ db_dir = os.path.join(get_setting("XRAY_DATABASE_DIR"), get_setting("XRAY_DATABA def db_open(fn): filename = os.path.join(db_dir, fn) if not os.path.exists(filename): - return open("/dev/null") + return StringIO("") return open(os.path.join(db_dir, fn)) def out_open(fn): @@ -144,7 +145,20 @@ maskbits = dict() print("Loading tilegrid.") with db_open("tilegrid.json") as f: - grid = json.load(f) + data = f.read() + if not data: + grid = { + "segments": {}, + "tiles": { + "NULL": { + "grid_x": 0, + "grid_y":0, + "type":"NULL", + } + } + } + else: + grid = json.loads(data) for segname, segdata in grid["segments"].items(): segtype = segdata["type"].lower()