diff --git a/inc/io.php b/inc/io.php
index 9160f4718ac033531bd29b0f9291050dd5968138..1d458ace961e3ae456238a267dce4b7fa285f7e0 100644
--- a/inc/io.php
+++ b/inc/io.php
@@ -16,12 +16,12 @@
  * @todo use safemode hack
  * @author  Andreas Gohr <andi@splitbrain.org>
  */
-function io_sweepNS($id){
+function io_sweepNS($id,$basedir='datadir'){
   global $conf;
 
   //scan all namespaces
   while(($id = getNS($id)) !== false){
-    $dir = $conf['datadir'].'/'.utf8_encodeFN(str_replace(':','/',$id));
+    $dir = $conf[$basedir].'/'.utf8_encodeFN(str_replace(':','/',$id));
 
     //try to delete dir else return
     if(!@rmdir($dir)) return;
diff --git a/lib/exe/media.php b/lib/exe/media.php
index ae0b6efe7710ab2b7ec98d7f02d0c23f456ac8c5..144cd19f4db49757dea1e55f469ac20663ff0d7b 100644
--- a/lib/exe/media.php
+++ b/lib/exe/media.php
@@ -82,6 +82,7 @@ function media_delete($delid){
   $file = mediaFN($delid);
   if(@unlink($file)){
     msg(str_replace('%s',noNS($delid),$lang['deletesucc']),1);
+    io_sweepNS($delid,'mediadir');
     return true;
   }
   //something went wrong