fullscreen problems
[vg.git] / vg_mem.h
index be11ddd2ef4ce43741b1d23f89eb1718c9a4680f..48969d9d13be9588f811b898f9454fd9de96c609 100644 (file)
--- a/vg_mem.h
+++ b/vg_mem.h
@@ -157,11 +157,7 @@ static void *_vg_linear_alloc( void *buffer, u32 size,
       vg_print_backtrace();
       size = vg_align8( size );
    }
-#ifdef _WIN32
-   if( ((u32)buffer) % 8 ){
-#else
    if( ((u64)buffer) % 8 ){
-#endif
       vg_fatal_error( "unaligned buffer (%p)", buffer );
    }
 
@@ -201,11 +197,7 @@ static void *_vg_linear_alloc( void *buffer, u32 size,
    alloc->last_alloc_size = size;
    alloc->cur += size;
 
-#ifdef _WIN32
-   if( ((u32)data) % 8 ){
-#else
    if( ((u64)data) % 8 ){
-#endif
       vg_fatal_error( "unaligned" );
    }
 
@@ -278,7 +270,7 @@ static void *_vg_linear_extend( void *buffer, void *data, u32 extra,
                                    const char *constr_name )
 {
    if( !data )
-      return _vg_linear_alloc( buffer, extra, constr_name );
+      return _vg_linear_alloc( buffer, vg_align8(extra), constr_name );
 
    vg_linear_allocator *alloc = vg_linear_header( buffer );
 
@@ -286,7 +278,7 @@ static void *_vg_linear_extend( void *buffer, void *data, u32 extra,
       vg_fatal_error( "This block has been fixed!" );
 
    u32 new_size = alloc->last_alloc_size + extra;
-   return vg_linear_resize( buffer, data, new_size );
+   return vg_linear_resize( buffer, data, vg_align8(new_size) );
 }
 
 /* get the current usage of allocator */