fiddle with the alloc requested size instead of the buffer pointer to keep the buffer 32bit aligned

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@28175 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Jonathan Gordon 2010-09-26 12:56:02 +00:00
parent 74dbb3c27b
commit dcc0d7dfdc

View file

@ -45,12 +45,12 @@ void* skin_buffer_alloc(size_t size)
{
void *retval = NULL;
#ifdef ROCKBOX
/* 32-bit aligned */
size = (size + 3) & ~3;
if (size > skin_buffer_freespace())
return NULL;
retval = buffer_front;
buffer_front += size;
/* 32-bit aligned */
buffer_front = (void *)(((unsigned long)buffer_front + 3) & ~3);
#else
retval = malloc(size);
#endif