// set memory limits.
if ( function_exists( 'memory_get_usage' ) ) {
$current_limit = @ini_get( 'memory_limit' );
- if ( -1 != $current_limit && ( -1 == WP_MEMORY_LIMIT || ( intval( $current_limit ) < abs( intval( WP_MEMORY_LIMIT ) ) ) ) )
+ $current_limit_int = intval( $current_limit );
+ if ( false !== stripos( $current_limit, 'G' ) )
+ $current_limit_int *= 1024;
+ $wp_limit_int = intval( WP_MEMORY_LIMIT );
+ if ( false !== stripos( WP_MEMORY_LIMIT, 'G' ) )
+ $wp_limit_int *= 1024;
+
+ if ( -1 != $current_limit && ( -1 == WP_MEMORY_LIMIT || $current_limit_int < $wp_limit_int ) )
@ini_set( 'memory_limit', WP_MEMORY_LIMIT );
}