I would prefer:

```rust
let children = try!(readdir(rm_stack.last().unwrap())));
```

here and then

```rust
if !has_child_dir {
    match rmdir(&rm_stack.pop().unwrap()) {
        // ...
    }
}
```
below to avoid the `clone`.