diff --git a/src/chartserver/chart_operator.go b/src/chartserver/chart_operator.go index da2cabe6d..618713d53 100644 --- a/src/chartserver/chart_operator.go +++ b/src/chartserver/chart_operator.go @@ -154,7 +154,12 @@ func getTheTwoCharts(chartVersions helm_repo.ChartVersions) (latestChart *helm_r if latestChart == nil { latestChart = chartVersion } else { - lVersion, _ := semver.NewVersion(latestChart.Version) + lVersion, err := semver.NewVersion(latestChart.Version) + if err != nil { + //ignore it, just logged + hlog.Warningf("Malformed semversion %s for the chart %s", latestChart.Version, chartVersion.Name) + continue + } if lVersion.LessThan(currentV) { latestChart = chartVersion } diff --git a/src/chartserver/utils.go b/src/chartserver/utils.go index d1a3a53f9..029e5e793 100644 --- a/src/chartserver/utils.go +++ b/src/chartserver/utils.go @@ -18,8 +18,10 @@ const ( func WriteError(w http.ResponseWriter, code int, err error) { errorObj := make(map[string]string) errorObj["error"] = err.Error() - errorContent, _ := json.Marshal(errorObj) - + errorContent, errorMarshal := json.Marshal(errorObj) + if errorMarshal != nil { + errorContent = []byte(err.Error()) + } w.WriteHeader(code) w.Write(errorContent) }