Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!uunet!munnari!mulga!jz From: jz@mulga.oz (Justin Zobel) Newsgroups: comp.sources.bugs Subject: vmail bug+fix Message-ID: <2441@mulga.oz> Date: Thu, 26-Nov-87 18:42:05 EST Article-I.D.: mulga.2441 Posted: Thu Nov 26 18:42:05 1987 Date-Received: Sun, 29-Nov-87 20:53:23 EST Organization: Comp Sci, Melbourne Uni, Australia Lines: 63 The commands 'p' and 'n' dump core if used to page past the end of the folder list. Following is a fix. jz *** page.c.orig Thu Nov 5 11:14:46 1987 --- page.c Thu Nov 5 11:23:21 1987 *************** *** 174,180 **** for( ; count > 0 ; count--) { /* skip other pages of current folder */ ! for(f=p ; p->next->name == f->name ; p=p->next) ; if(p->next == (folder) NULL) { addstatus("last folder", true); --- 174,180 ---- for( ; count > 0 ; count--) { /* skip other pages of current folder */ ! for(f=p ; p->next && p->next->name == f->name ; p=p->next) ; if(p->next == (folder) NULL) { addstatus("last folder", true); *************** *** 219,227 **** for( ; count > 0 ; count--) { /* skip other pages of current folder */ ! for(f=p ; p->prev->name == f->name ; p=p->prev) ; ! if(curflr->prev == (folder) NULL) { addstatus("first folder", true); break; } else { --- 219,227 ---- for( ; count > 0 ; count--) { /* skip other pages of current folder */ ! for(f=p ; p->prev && p->prev->name == f->name ; p=p->prev) ; ! if(p->prev == (folder) NULL) { addstatus("first folder", true); break; } else { *************** *** 243,249 **** addstatus("can't go back that many folders", true); else { /* skip other pages of current folder */ ! for(f=p ; p->prev->name == f->name ; p=p->prev) ; alternate = curflr; curflr = p; --- 243,249 ---- addstatus("can't go back that many folders", true); else { /* skip other pages of current folder */ ! for(f=p ; p->prev && p->prev->name == f->name ; p=p->prev) ; alternate = curflr; curflr = p;