summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorcinap_lenrek <cinap_lenrek@felloff.net>2020-11-16 19:56:13 +0100
committercinap_lenrek <cinap_lenrek@felloff.net>2020-11-16 19:56:13 +0100
commite8111e517d0129f33594c4718691e41ced0b2018 (patch)
tree950d76be07cbed5dcfeeadc4d36ca8402027b907
parentfc36bf0711654fa841750f69615112eb4a047e87 (diff)
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.
-rw-r--r--sys/src/cmd/nusb/cam/cam.c2
1 files changed, 2 insertions, 0 deletions
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);