diff options
author | nrootconauto <nrootconauto@gmail.com> | 2022-08-18 16:57:36 -0400 |
---|---|---|
committer | nrootconauto <nrootconauto@gmail.com> | 2022-08-18 16:57:36 -0400 |
commit | 8be75971d5926dd01a84b9b4b2a8fd01ec07e748 (patch) | |
tree | 4fb682fa217f689bb105b9f5b6a4eff79652ff2a | |
parent | a4e0eb3e125fe109fca835ab23a438e60740dc59 (diff) |
DUDE DelTree now doesn't delete "." and ".."(sorry for now testing that).v0.3.00
Signed-off-by: nrootconauto <nrootconauto@gmail.com>
-rw-r--r-- | HCRT.BIN | bin | 799328 -> 799440 bytes | |||
-rw-r--r-- | T/BlkDev/DskA.HC | 9 | ||||
-rw-r--r-- | T/HCRT.DBG.Z | bin | 210216 -> 210333 bytes |
3 files changed, 6 insertions, 3 deletions
Binary files differ diff --git a/T/BlkDev/DskA.HC b/T/BlkDev/DskA.HC index 8873c7e..3b48caf 100644 --- a/T/BlkDev/DskA.HC +++ b/T/BlkDev/DskA.HC @@ -42,7 +42,7 @@ public Bool Del(U8 *f1) { if(!StrCmp(".",cur->name)||!StrCmp("..",cur->name)) ; else - __Del(cur->full_name); + __Del(cur->full_name); } DirTreeDel(finds); } @@ -125,7 +125,7 @@ I64 DelTreeDirs(CDirEntry *tmpde1) while (tmpde1) { tmpde2=tmpde1->next; - if (IsDir(tmpde1->full_name)) + if (IsDir(tmpde1->full_name)&&!StrCmp(tmpde1->name,".")&&!StrCmp(tmpde1->name,"..")) { if (tmpde1->sub) res+=DelTreeDirs(tmpde1->sub); @@ -143,13 +143,16 @@ I64 DelTreeFiles(CDirEntry *tmpde1) while (tmpde1) { tmpde2=tmpde1->next; + if(!StrCmp(tmpde1->name,".")&&!StrCmp(tmpde1->name,"..")) + goto next; if (IsDir(tmpde1->full_name)) { if (tmpde1->sub) res+=DelTreeFiles(tmpde1->sub); } - else + else res+=__Del(tmpde1->full_name); + next: DirEntryDel(tmpde1); tmpde1=tmpde2; } diff --git a/T/HCRT.DBG.Z b/T/HCRT.DBG.Z Binary files differindex 59262ee..cf5bf4b 100644 --- a/T/HCRT.DBG.Z +++ b/T/HCRT.DBG.Z |