--- a/core/src/commands.cpp Thu Aug 05 12:06:56 2010 +0100
+++ b/core/src/commands.cpp Fri Aug 06 17:00:19 2010 +0100
@@ -698,6 +698,7 @@
{
delete iFileMan;
iFileNames.Close();
+ iNonExpandedFilenames.ResetAndDestroy();
}
CCmdRm::CCmdRm()
@@ -748,7 +749,13 @@
err = DoDelete(fileName);
}
}
- User::LeaveIfError(err);
+ LeaveIfErr(err, _L("Couldn't delete '%S'"), &fileName);
+ }
+
+ for (TInt i = 0; i < iNonExpandedFilenames.Count(); i++)
+ {
+ TInt err = DoDelete(*iNonExpandedFilenames[i]);
+ LeaveIfErr(err, _L("Couldn't delete '%S'"), iNonExpandedFilenames[i]);
}
}
@@ -770,8 +777,10 @@
{
_LIT(KCmdRmOptRecurse, "recurse");
_LIT(KCmdRmOptForce, "force");
+ _LIT(KCmdRmOptNoexpand, "noexpand");
aOptions.AppendBoolL(iRecurse, KCmdRmOptRecurse);
aOptions.AppendBoolL(iForce, KCmdRmOptForce);
+ aOptions.AppendStringL(iNonExpandedFilenames, KCmdRmOptNoexpand);
}
void CCmdRm::ArgumentsL(RCommandArgumentList& aArguments)