Commit dd0db6a
committed
Do not clean tempdir if we fail to unmount
Ran into this issue by chance in bootupd where a the following drop ordering
```rust
drop(tempdir)
drop(mount) // unmounts thing mounted at tempdir
```
was causing all the contents of the mounted device to be deleted because
the tempdir was being deleted. We might run into the same issue with our
Tempdir impl if we fail to unount the ESP and tempdir is dropped
deleting everything the ESP.
To preven that, explicitly set `disable_cleanup` to false on the Tempdir
and only enable cleanup after we've successfully unmounted whatever was
mounted
Signed-off-by: Pragyan Poudyal <pragyanpoudyal41999@gmail.com>1 parent 60d5461 commit dd0db6a
1 file changed
Lines changed: 11 additions & 5 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
67 | 67 | | |
68 | 68 | | |
69 | 69 | | |
70 | | - | |
| 70 | + | |
| 71 | + | |
71 | 72 | | |
72 | 73 | | |
73 | 74 | | |
| |||
81 | 82 | | |
82 | 83 | | |
83 | 84 | | |
84 | | - | |
| 85 | + | |
| 86 | + | |
85 | 87 | | |
86 | 88 | | |
87 | 89 | | |
| |||
91 | 93 | | |
92 | 94 | | |
93 | 95 | | |
94 | | - | |
| 96 | + | |
| 97 | + | |
95 | 98 | | |
96 | 99 | | |
97 | 100 | | |
| |||
109 | 112 | | |
110 | 113 | | |
111 | 114 | | |
112 | | - | |
| 115 | + | |
| 116 | + | |
113 | 117 | | |
114 | 118 | | |
115 | 119 | | |
| |||
120 | 124 | | |
121 | 125 | | |
122 | 126 | | |
123 | | - | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
124 | 130 | | |
125 | 131 | | |
126 | 132 | | |
| |||
0 commit comments