In article <[EMAIL PROTECTED]>
Jun Kuriyama <[EMAIL PROTECTED]> writes:

> When entering fdisk editor after booting from CD-ROM, I cannot delete
> NTFS partition by "D" key.  "D" key only shows cursor up (NTFS is at
> offset 63, offset 0 seems boot selector for NT).
> 
> Can I do something for debugging?

I think this patch solves the problem.

---
TAKAHASHI Yoshihiro <[EMAIL PROTECTED]>
Index: chunk.c
===================================================================
RCS file: /home/ncvs/src/lib/libdisk/chunk.c,v
retrieving revision 1.45
diff -u -r1.45 chunk.c
--- chunk.c     15 Nov 2002 13:24:29 -0000      1.45
+++ chunk.c     20 Nov 2002 04:57:30 -0000
@@ -416,24 +416,27 @@
 int
 Delete_Chunk2(struct disk *d, struct chunk *c, int rflags)
 {
-       struct chunk *c1 = 0, *c2, *c3;
+       struct chunk *c1, *c2, *c3;
        chunk_e type = c->type;
        u_long offset = c->offset;
 
-       if(type == whole)
+       switch (type) {
+       case whole:
+       case unused:
                return 1;
-#ifndef PC98
-       if (!c1 && (type == freebsd || type == fat || type == unknown))
-               c1 = Find_Mother_Chunk(d->chunks, c->offset, c->end, extended);
-#endif
-       if (!c1 && (type == freebsd || type == fat || type == unknown))
-               c1 = Find_Mother_Chunk(d->chunks, c->offset, c->end, whole);
-#ifndef PC98
-       if (!c1 && type == extended)
+       case extended:
                c1 = Find_Mother_Chunk(d->chunks, c->offset, c->end, whole);
-#endif
-       if (!c1 && type == part)
+               break;
+       case part:
                c1 = Find_Mother_Chunk(d->chunks, c->offset, c->end, freebsd);
+               break;
+       default:
+               c1 = Find_Mother_Chunk(d->chunks, c->offset, c->end, extended);
+               if (!c1)
+                       c1 = Find_Mother_Chunk(d->chunks, c->offset, c->end,
+                                              whole);
+               break;
+       }
        if (!c1)
                return 1;
        for (c2 = c1->part; c2; c2 = c2->next) {

Reply via email to