From 81a92184cf62673c3347715ca8ef9367af6587be Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Fri, 6 Dec 2013 18:54:47 +0100 Subject: [SERVER] Clean up properly when deleting an image --- src/server/image.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/server/image.c b/src/server/image.c index d31ab15..956d3fe 100644 --- a/src/server/image.c +++ b/src/server/image.c @@ -1206,11 +1206,19 @@ static int image_ensureDiskSpace(uint64_t size) } image_release( current ); } - if ( oldest == NULL || mtime == 0 || time(NULL) - mtime < 86400 ) return FALSE; + if ( oldest == NULL || mtime == 0 || time( NULL ) - mtime < 86400 ) return FALSE; oldest = image_lock( oldest ); if ( oldest == NULL ) return FALSE; memlogf( "[INFO] '%s' has to go!", oldest->lower_name ); unlink( oldest->path ); + size_t len = strlen( oldest->path ) + 5 + 1; + char buffer[len]; + snprintf( buffer, len, "%s.map", oldest->path ); + unlink( buffer ); + snprintf( buffer, len, "%s.crc", oldest->path ); + unlink( buffer ); + snprintf( buffer, len, "%s.meta", oldest->path ); + unlink( buffer ); image_remove( oldest ); image_release( oldest ); } -- cgit v1.2.3-55-g7522