X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=libpagemap%2Fpm_memusage.c;h=71a5783e4c28cd555100f43fd7b010d03cbe7a6d;hb=01b1cb727c240a0ed5ab48ed7021cc3fa5d46a1c;hp=70cfedecfacd6714a165dda8ec52da002ddd2be4;hpb=50c29925a3a59aa6cfbaa9868dcb091d75ef87a1;p=android-x86%2Fsystem-extras.git diff --git a/libpagemap/pm_memusage.c b/libpagemap/pm_memusage.c index 70cfedec..71a5783e 100644 --- a/libpagemap/pm_memusage.c +++ b/libpagemap/pm_memusage.c @@ -89,15 +89,15 @@ void pm_memusage_pswap_add_offset(pm_memusage_t *mu, unsigned int offset) { if (mu->p_swap == NULL) return; - if (offset > mu->p_swap->array_size) { + if (offset >= mu->p_swap->array_size) { fprintf(stderr, "SWAP offset %d is out of swap bounds.\n", offset); return; + } + + if (mu->p_swap->offset_array[offset] == USHRT_MAX) { + fprintf(stderr, "SWAP offset %d ref. count if overflowing ushort type.\n", offset); } else { - if (mu->p_swap->offset_array[offset] == USHRT_MAX) { - fprintf(stderr, "SWAP offset %d ref. count if overflowing ushort type.\n", offset); - } else { - mu->p_swap->offset_array[offset]++; - } + mu->p_swap->offset_array[offset]++; } soff = malloc(sizeof(pm_swap_offset_t));