[1454] in testers

home help back first fref pref prev next nref lref last post

Re: rt 7.2A: undelete

daemon@ATHENA.MIT.EDU (daemon@ATHENA.MIT.EDU)
Sun Dec 16 18:56:01 1990

Date: Sun, 16 Dec 90 18:55:35 -0500
From: "Jonathan I. Kamens" <jik@pit-manager.MIT.EDU>
To: testers@ATHENA.MIT.EDU
In-Reply-To: testers[1214]


The patch below fixes the bug reported in testers[1214].  The bug is
not severe enough to warrant a change to the 7.2 release at this
point.  When the delete project is picked up for the next release,
this patch will be included.

*** /tmp/,RCSt1016040	Sun Dec 16 18:45:31 1990
--- undelete.c	Sun Dec 16 18:38:30 1990
***************
*** 217,242 ****
  	  retval = do_undelete(leaf);
  	  if (retval) {
  	       error("do_undelete");
! 	       return retval;
  	  }
       }
  
!      if (leaf->dirs) {
! 	  retval = recurs_and_undelete(leaf->dirs);
! 	  if (retval) {
! 	       error("recurs_and_undelete");
! 	       status = retval;
  	  }
-      }
  
!      if (leaf->files) {
! 	  retval = recurs_and_undelete(leaf->files);
! 	  if (retval) {
! 	       error("recurs_and_undelete");
! 	       status = retval;
  	  }
       }
!      
       if (leaf->next) {
  	  retval = recurs_and_undelete(leaf->next);
  	  if (retval) {
--- 217,245 ----
  	  retval = do_undelete(leaf);
  	  if (retval) {
  	       error("do_undelete");
! 	       status = retval;
  	  }
       }
  
!      if (! status) { /* recurse only if if top-level undelete */
! 		     /* succeeded or was not requested        */
! 	  if (leaf->dirs) {
! 	       retval = recurs_and_undelete(leaf->dirs);
! 	       if (retval) {
! 		    error("recurs_and_undelete");
! 		    status = retval;
! 	       }
  	  }
  
! 	  if (leaf->files) {
! 	       retval = recurs_and_undelete(leaf->files);
! 	       if (retval) {
! 		    error("recurs_and_undelete");
! 		    status = retval;
! 	       }
  	  }
       }
! 
       if (leaf->next) {
  	  retval = recurs_and_undelete(leaf->next);
  	  if (retval) {
***************
*** 244,250 ****
  	       status = retval;
  	  }
       }
!      
       free_leaf(leaf);
  
       return status;
--- 247,253 ----
  	       status = retval;
  	  }
       }
! 
       free_leaf(leaf);
  
       return status;

home help back first fref pref prev next nref lref last post