The `GETDICTEXT` macro used to perfom one pass on the provided int
list to check the actual item types brefore allocating and filling
the target buffer. The python list was not read again causing the
buffer to be filled with the last value read during the type check.
This patch performs the type check as well as buffer fill in one go.
The buffer is freed if an item is found to be of a wrong type.
Fixes: https://github.com/alsa-project/alsa-python/pull/3 Signed-off-by: François Laignel <fengalin@free.fr> Signed-off-by: Jaroslav Kysela <perex@perex.cz>