diff --git a/bsps/shared/dev/flash/flash_sim_flashdev.c b/bsps/shared/dev/flash/flash_sim_flashdev.c index ca4086cc93..edcdf407bc 100644 --- a/bsps/shared/dev/flash/flash_sim_flashdev.c +++ b/bsps/shared/dev/flash/flash_sim_flashdev.c @@ -414,6 +414,7 @@ rtems_flashdev *flash_sim_flashdev_init( ntable->area = flashdev_malloc( &ntable->attr, total_pages * ntable->attr.page_size_bytes ); if ( ntable->area == NULL ) { + free( ftable ); free_nand_priv( ntable ); return NULL; } @@ -422,6 +423,7 @@ rtems_flashdev *flash_sim_flashdev_init( if ( ntable->attr.type == RTEMS_FLASHDEV_NAND ) { ntable->oob = flashdev_malloc( &ntable->attr, total_pages * ntable->attr.page_oob_bytes ); if ( ntable->oob == NULL ) { + free( ftable ); free_nand_priv( ntable ); return NULL; }