]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - sound/core/init.c
saner FASYNC handling on file close
[linux-2.6-omap-h63xx.git] / sound / core / init.c
index ef2352c2e45116a824f4e8275e590a2c7394594b..b47ff8b44be8dda901e0c88bd2c3089c2d4704ad 100644 (file)
@@ -264,8 +264,11 @@ static int snd_disconnect_release(struct inode *inode, struct file *file)
        }
        spin_unlock(&shutdown_lock);
 
-       if (likely(df))
+       if (likely(df)) {
+               if ((file->f_flags & FASYNC) && df->disconnected_f_op->fasync)
+                       df->disconnected_f_op->fasync(-1, file, 0);
                return df->disconnected_f_op->release(inode, file);
+       }
 
        panic("%s(%p, %p) failed!", __func__, inode, file);
 }