pulse: prevent double-free when pulse_hw_constraint returns error
When pulse_hw_constraint returns error, snd_pcm_ioplug_delete() is called.
It will then call pulse_close() where "snd_pcm_pulse_t *pcm" will be free.
Then if goto the "error" label, the "snd_pcm_pulse_t *pcm" will be double-free.
To prevent this, just jump over the code which might cause double-free.
Signed-off-by: Kui Wang <wangkuisuper@hotmail.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>