Skip to content

Commit 50d4e88

Browse files
fix: remove memory leak when processing gocv images (#28)
1 parent ac33747 commit 50d4e88

1 file changed

Lines changed: 4 additions & 2 deletions

File tree

internal/adapter/http/controls/controls.go

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,6 @@ func StreamVideoHandler(w http.ResponseWriter, r *http.Request) {
5757
if err != nil {
5858
http.Error(w, "Error capturing image: %v", http.StatusServiceUnavailable)
5959
}
60-
// defer img.Close()
6160

6261
resizedFrame := gocv.NewMat()
6362

@@ -73,7 +72,10 @@ func StreamVideoHandler(w http.ResponseWriter, r *http.Request) {
7372
if _, err := partWriter.Write(buf.GetBytes()); err != nil {
7473
log.Println("Error while processing buffer")
7574
}
76-
75+
76+
buf.Close()
77+
resizedFrame.Close()
78+
img.Close()
7779
// we want to record around 10 fps
7880
// this mean every second send 10 images
7981
// Let's assume reading, encoding and writing do not consume any resources

0 commit comments

Comments
 (0)