uade123: Fix crash bug on uade_read() [CORRECTIVE]
uade123: Fix crash bug on uade_read() [CORRECTIVE]

uade123 could crash if uade_read() returns -1 because ao_play() could
read memory out of bounds. Despite this, invalid data would be played
through ao_play().

This could happen when libuade runs out of memory, IPC to uadecore breaks,
uadecore would send an invalid command, or libuade stack would send an
invalid event.

Thanks to Misty De Meo <mistydemeo@gmail.com> for pointing out the bug.

mvtiaine/uade,mvtiaine/uade,mvtiaine/uade,mvtiaine/uade