From e8f85a57c27ecbdaecfd147099cbc42945a0c41c Mon Sep 17 00:00:00 2001 From: Konstantin Date: Mon, 10 Oct 2016 17:36:51 +0300 Subject: [PATCH] Add types error handler (log) the usual warning not panic --- g_docs.go | 21 +++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/g_docs.go b/g_docs.go index 4d9f279..a0ae1f6 100644 --- a/g_docs.go +++ b/g_docs.go @@ -779,15 +779,24 @@ func parseObject(d *ast.Object, k string, m *swagger.Schema, realTypes *[]string mp.Default = res[1] switch realType{ case "int","int64", "int32", "int16", "int8": - mp.Default, _ = strconv.Atoi(res[1]) + if mp.Default, err = strconv.Atoi(res[1]); err != nil{ + ColorLog("[WARN] Invalid default value type(%s): %s\n",realType, res[1]) + } + case "bool": - mp.Default, _ = strconv.ParseBool(res[1]) + if mp.Default, err = strconv.ParseBool(res[1]); err != nil{ + ColorLog("[WARN] Invalid default value type(%s): %s\n",realType, res[1]) + } case "float64": - mp.Default, _ = strconv.ParseFloat(res[1], 64) + if mp.Default, err = strconv.ParseFloat(res[1], 64); err != nil{ + ColorLog("[WARN] Invalid default value type(%s): %s\n",realType, res[1]) + } case "float32": - mp.Default, _ = strconv.ParseFloat(res[1], 32) - default: - mp.Default = res[1] + if mp.Default, err = strconv.ParseFloat(res[1], 32); err != nil{ + ColorLog("[WARN] Invalid default value type(%s): %s\n",realType, res[1]) + } + default: + mp.Default = res[1] } }else{ ColorLog("[WARN] Invalid default value: %s\n", defaultValue)