From: Matthew F. <mat...@ga...> - 2009-04-17 16:03:11
|
Karel Marissens wrote: > As it might be interesting for someone else I'll describe here what (I > think) happens when rm -r is executed from the terminal: As you've already seen, there's no guarantee things will execute in this order. Basically, it's not safe to to traverse your filesystem depth-first. But calling code has no way of knowing this. > Another problem is that when a removal action is stopped by the user, / > to/remove will still be in the to_remove list. > > Oh well, I suppose I'll simply have to make some tradeoffs... Agreed. Another one of your problems is that rm -r is not a "transaction" as seen by the filesystem. It requires many API calls, all of which are independent. Matt Flaschen |