From ac370f31cefb4a71f5ff0d8ab53939bb9aece6b3 Mon Sep 17 00:00:00 2001 From: Chigozirim Igweamaka Date: Tue, 11 Jun 2024 03:34:46 +0100 Subject: [PATCH] Exit with an error if any parameter is <= 0 --- wav/wav.go | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/wav/wav.go b/wav/wav.go index 8b99bbc..b55453b 100644 --- a/wav/wav.go +++ b/wav/wav.go @@ -4,6 +4,7 @@ import ( "bytes" "encoding/binary" "errors" + "fmt" "io/ioutil" "os" ) @@ -66,6 +67,13 @@ func WriteWavFile(filename string, data []byte, sampleRate int, channels int, bi } defer f.Close() + if sampleRate <= 0 || channels <= 0 || bitsPerSample <= 0 { + return fmt.Errorf( + "values must be greater than zero (sampleRate: %d, channels: %d, bitsPerSample: %d)", + sampleRate, channels, bitsPerSample, + ) + } + err = writeWavHeader(f, data, sampleRate, channels, bitsPerSample) if err != nil { return err