From e8111e517d0129f33594c4718691e41ced0b2018 Mon Sep 17 00:00:00 2001 From: cinap_lenrek Date: Mon, 16 Nov 2020 19:56:13 +0100 Subject: nusb/cam: don't videoclose() when open failed The fsdestroyfid() is called regardless if the open succeeded or failed. This causes erroneous videoclose() when opening the frame or video file while the camera is active. --- sys/src/cmd/nusb/cam/cam.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sys/src/cmd/nusb/cam/cam.c b/sys/src/cmd/nusb/cam/cam.c index c2cc07eea..eabe10d2e 100644 --- a/sys/src/cmd/nusb/cam/cam.c +++ b/sys/src/cmd/nusb/cam/cam.c @@ -284,6 +284,8 @@ fsdestroyfid(Fid *fid) { ReadState *rs; + if(fid->omode == -1) + return; rs = fid->aux; if(rs != nil){ free(rs->buf); -- cgit v1.2.3