home *** CD-ROM | disk | FTP | other *** search
- Newsgroups: gnu.utils.bug
- Path: sparky!uunet!cis.ohio-state.edu!aktis.COM!jik
- From: jik@aktis.COM (Jonathan I. Kamens)
- Subject: GNU tar gnu.c doesn't check malloc return value
- Message-ID: <9212301848.AA08274@pad-thai.aktis.com>
- Sender: gnulists@ai.mit.edu
- Organization: Gnus Not Usenet
- Distribution: gnu
- Date: Wed, 30 Dec 1992 08:48:04 GMT
- Approved: bug-gnu-utils@prep.ai.mit.edu
- Lines: 61
-
- For GNU tar version 1.11.1.
-
- *** 1.1 1992/12/30 18:44:33
- --- gnu.c 1992/12/30 18:47:04
- ***************
- *** 98,111 ****
- {
- struct dirname *dp;
-
- ! dp=(struct dirname *)malloc(sizeof(struct dirname));
- ! if(!dp)
- ! abort();
- dp->next=dir_list;
- dir_list=dp;
- dp->dev=dev;
- dp->ino=ino;
- ! dp->name=malloc(strlen(name)+1);
- strcpy(dp->name,name);
- dp->dir_text=text;
- dp->allnew=0;
- --- 98,109 ----
- {
- struct dirname *dp;
-
- ! dp=(struct dirname *)ck_malloc(sizeof(struct dirname));
- dp->next=dir_list;
- dir_list=dp;
- dp->dev=dev;
- dp->ino=ino;
- ! dp->name=ck_malloc(strlen(name)+1);
- strcpy(dp->name,name);
- dp->dir_text=text;
- dp->allnew=0;
- ***************
- *** 421,432 ****
- n_strs++;
- p_buf+=tmp;
- }
- ! vec=(char **)malloc(sizeof(char *)*(n_strs+1));
- for(p_vec=vec,p_buf=buf;*p_buf;p_buf+=strlen(p_buf)+1)
- *p_vec++= p_buf;
- *p_vec= 0;
- qsort((PTR)vec,n_strs,sizeof(char *),dirent_cmp);
- ! new_buf=(char *)malloc(p_buf-buf+2);
- for(p_vec=vec,p_buf=new_buf;*p_vec;p_vec++) {
- char *p_tmp;
-
- --- 419,430 ----
- n_strs++;
- p_buf+=tmp;
- }
- ! vec=(char **)ck_malloc(sizeof(char *)*(n_strs+1));
- for(p_vec=vec,p_buf=buf;*p_buf;p_buf+=strlen(p_buf)+1)
- *p_vec++= p_buf;
- *p_vec= 0;
- qsort((PTR)vec,n_strs,sizeof(char *),dirent_cmp);
- ! new_buf=(char *)ck_malloc(p_buf-buf+2);
- for(p_vec=vec,p_buf=new_buf;*p_vec;p_vec++) {
- char *p_tmp;
-
-
-