-
由 Phil Elwell 提交于
The previous commit (0adbfd46) fixed a memory leak but also freed a block in the success case, causing a stale pointer to be used with potentially fatal results. Only free the vchi_instance block in the case that vchi_connect fails; once connected, the instance is retained for subsequent connections. Simplifying the code by removing a bunch of gotos and returning errors directly. Signed-off-by: NPhil Elwell <phil@raspberrypi.org> Fixes: 0adbfd46 ("staging: bcm2835-audio: fix memory leak in bcm2835_audio_open_connection()") Cc: stable <stable@vger.kernel.org> # 4.12+ Tested-by: NStefan Wahren <stefan.wahren@i2se.com> Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
c97d96b4