summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornrootconauto <nrootconauto@gmail.com>2022-08-18 16:57:36 -0400
committernrootconauto <nrootconauto@gmail.com>2022-08-18 16:57:36 -0400
commit8be75971d5926dd01a84b9b4b2a8fd01ec07e748 (patch)
tree4fb682fa217f689bb105b9f5b6a4eff79652ff2a
parenta4e0eb3e125fe109fca835ab23a438e60740dc59 (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.BINbin799328 -> 799440 bytes
-rw-r--r--T/BlkDev/DskA.HC9
-rw-r--r--T/HCRT.DBG.Zbin210216 -> 210333 bytes
3 files changed, 6 insertions, 3 deletions
diff --git a/HCRT.BIN b/HCRT.BIN
index ac41afb..a4dea49 100644
--- a/HCRT.BIN
+++ b/HCRT.BIN
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
index 59262ee..cf5bf4b 100644
--- a/T/HCRT.DBG.Z
+++ b/T/HCRT.DBG.Z
Binary files differ