diff --git a/csaf/models.go b/csaf/models.go index dcdbcf2..4b66811 100644 --- a/csaf/models.go +++ b/csaf/models.go @@ -426,17 +426,17 @@ type nWriter struct { } func (nw *nWriter) Write(p []byte) (int, error) { - n, err := nw.Write(p) + n, err := nw.Writer.Write(p) nw.n += int64(n) return n, err } // WriteTo saves a metadata provider to a writer. func (pmd *ProviderMetadata) WriteTo(w io.Writer) (int64, error) { - enc := json.NewEncoder(w) - enc.SetIndent("", " ") nw := nWriter{w, 0} - err := enc.Encode(&nw) + enc := json.NewEncoder(&nw) + enc.SetIndent("", " ") + err := enc.Encode(pmd) return nw.n, err } diff --git a/csaf/rolie.go b/csaf/rolie.go index 78d8c63..b79c56a 100644 --- a/csaf/rolie.go +++ b/csaf/rolie.go @@ -70,10 +70,10 @@ func LoadROLIEFeed(r io.Reader) (*ROLIEFeed, error) { // WriteTo saves a ROLIE feed to a writer. func (rf *ROLIEFeed) WriteTo(w io.Writer) (int64, error) { - enc := json.NewEncoder(w) - enc.SetIndent("", " ") nw := nWriter{w, 0} - err := enc.Encode(&nw) + enc := json.NewEncoder(&nw) + enc.SetIndent("", " ") + err := enc.Encode(rf) return nw.n, err }