diff options
Diffstat (limited to 'shared/mga_dma.c')
-rw-r--r-- | shared/mga_dma.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/shared/mga_dma.c b/shared/mga_dma.c index 5e95c9f9..96fd97ff 100644 --- a/shared/mga_dma.c +++ b/shared/mga_dma.c @@ -642,9 +642,12 @@ int mga_do_cleanup_dma( drm_device_t *dev ) if ( dev->dev_private ) { drm_mga_private_t *dev_priv = dev->dev_private; - DRM_IOREMAPFREE( dev_priv->warp ); - DRM_IOREMAPFREE( dev_priv->primary ); - DRM_IOREMAPFREE( dev_priv->buffers ); + if ( dev_priv->warp != NULL ) + DRM_IOREMAPFREE( dev_priv->warp ); + if ( dev_priv->primary != NULL ) + DRM_IOREMAPFREE( dev_priv->primary ); + if ( dev_priv->buffers != NULL ) + DRM_IOREMAPFREE( dev_priv->buffers ); if ( dev_priv->head != NULL ) { mga_freelist_cleanup( dev ); |