filemanager/src/filemanager/src/operationservice/fmoperationremove.cpp
changeset 16 ada7962b4308
parent 14 1957042d8c7e
child 33 328cf6fbe40c
--- a/filemanager/src/filemanager/src/operationservice/fmoperationremove.cpp	Fri Apr 16 14:53:38 2010 +0300
+++ b/filemanager/src/filemanager/src/operationservice/fmoperationremove.cpp	Mon May 03 12:24:39 2010 +0300
@@ -19,6 +19,7 @@
 #include "fmcommon.h"
 #include "fmoperationbase.h"
 #include "fmdrivedetailstype.h"
+#include "fmutils.h"
 
 #include <QDir>
 #include <QFileInfo>
@@ -93,7 +94,14 @@
         }
         IncreaseProgressOnce();
     } else if (fi.isDir()) {
-       ret = recursiveRemoveDir( fileName );
+       if( FmUtils::isDefaultFolder( fileName ) ){
+           ret = FmErrRemoveDefaultFolder;
+       }
+       else{
+           ret = recursiveRemoveDir( fileName );
+       }
+
+
     } else {
         qWarning( "Things other than file and directory are not copied" );
         ret = FmErrIsNotFileOrFolder;
@@ -147,6 +155,8 @@
 
 void FmOperationRemove::IncreaseProgressOnce()
 {
+    if( mTotalCount <= 0 )
+        return;
     mRemovedCount++;
     int step = ( mRemovedCount * 100 ) / mTotalCount;
     if( step > mCurrentStep ) {