=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/rcs/rcs.c,v retrieving revision 1.82 retrieving revision 1.83 diff -c -r1.82 -r1.83 *** src/usr.bin/rcs/rcs.c 2015/01/16 06:40:11 1.82 --- src/usr.bin/rcs/rcs.c 2015/06/13 20:15:21 1.83 *************** *** 1,4 **** ! /* $OpenBSD: rcs.c,v 1.82 2015/01/16 06:40:11 deraadt Exp $ */ /* * Copyright (c) 2004 Jean-Francois Brousseau * All rights reserved. --- 1,4 ---- ! /* $OpenBSD: rcs.c,v 1.83 2015/06/13 20:15:21 nicm Exp $ */ /* * Copyright (c) 2004 Jean-Francois Brousseau * All rights reserved. *************** *** 157,180 **** while (!TAILQ_EMPTY(&(rfp->rf_access))) { rap = TAILQ_FIRST(&(rfp->rf_access)); TAILQ_REMOVE(&(rfp->rf_access), rap, ra_list); ! xfree(rap->ra_name); ! xfree(rap); } while (!TAILQ_EMPTY(&(rfp->rf_symbols))) { rsp = TAILQ_FIRST(&(rfp->rf_symbols)); TAILQ_REMOVE(&(rfp->rf_symbols), rsp, rs_list); rcsnum_free(rsp->rs_num); ! xfree(rsp->rs_name); ! xfree(rsp); } while (!TAILQ_EMPTY(&(rfp->rf_locks))) { rlp = TAILQ_FIRST(&(rfp->rf_locks)); TAILQ_REMOVE(&(rfp->rf_locks), rlp, rl_list); rcsnum_free(rlp->rl_num); ! xfree(rlp->rl_name); ! xfree(rlp); } if (rfp->rf_head != NULL) --- 157,180 ---- while (!TAILQ_EMPTY(&(rfp->rf_access))) { rap = TAILQ_FIRST(&(rfp->rf_access)); TAILQ_REMOVE(&(rfp->rf_access), rap, ra_list); ! free(rap->ra_name); ! free(rap); } while (!TAILQ_EMPTY(&(rfp->rf_symbols))) { rsp = TAILQ_FIRST(&(rfp->rf_symbols)); TAILQ_REMOVE(&(rfp->rf_symbols), rsp, rs_list); rcsnum_free(rsp->rs_num); ! free(rsp->rs_name); ! free(rsp); } while (!TAILQ_EMPTY(&(rfp->rf_locks))) { rlp = TAILQ_FIRST(&(rfp->rf_locks)); TAILQ_REMOVE(&(rfp->rf_locks), rlp, rl_list); rcsnum_free(rlp->rl_num); ! free(rlp->rl_name); ! free(rlp); } if (rfp->rf_head != NULL) *************** *** 184,200 **** if (rfp->rf_file != NULL) fclose(rfp->rf_file); ! if (rfp->rf_path != NULL) ! xfree(rfp->rf_path); ! if (rfp->rf_comment != NULL) ! xfree(rfp->rf_comment); ! if (rfp->rf_expand != NULL) ! xfree(rfp->rf_expand); ! if (rfp->rf_desc != NULL) ! xfree(rfp->rf_desc); if (rfp->rf_pdata != NULL) rcsparse_free(rfp); ! xfree(rfp); } /* --- 184,198 ---- if (rfp->rf_file != NULL) fclose(rfp->rf_file); ! ! free(rfp->rf_path); ! free(rfp->rf_comment); ! free(rfp->rf_expand); ! free(rfp->rf_desc); if (rfp->rf_pdata != NULL) rcsparse_free(rfp); ! ! free(rfp); } /* *************** *** 349,356 **** rfp->rf_flags |= RCS_SYNCED; ! if (fn != NULL) ! xfree(fn); } /* --- 347,353 ---- rfp->rf_flags |= RCS_SYNCED; ! free(fn); } /* *************** *** 420,426 **** out: (void)fclose(src); (void)fclose(dst); ! xfree(buf); return (0); } --- 417,423 ---- out: (void)fclose(src); (void)fclose(dst); ! free(buf); return (0); } *************** *** 509,516 **** } TAILQ_REMOVE(&(file->rf_access), ap, ra_list); ! xfree(ap->ra_name); ! xfree(ap); /* not synced anymore */ file->rf_flags &= ~RCS_SYNCED; --- 506,513 ---- } TAILQ_REMOVE(&(file->rf_access), ap, ra_list); ! free(ap->ra_name); ! free(ap); /* not synced anymore */ file->rf_flags &= ~RCS_SYNCED; *************** *** 582,590 **** } TAILQ_REMOVE(&(file->rf_symbols), symp, rs_list); ! xfree(symp->rs_name); rcsnum_free(symp->rs_num); ! xfree(symp); /* not synced anymore */ file->rf_flags &= ~RCS_SYNCED; --- 579,587 ---- } TAILQ_REMOVE(&(file->rf_symbols), symp, rs_list); ! free(symp->rs_name); rcsnum_free(symp->rs_num); ! free(symp); /* not synced anymore */ file->rf_flags &= ~RCS_SYNCED; *************** *** 743,750 **** TAILQ_REMOVE(&(file->rf_locks), lkp, rl_list); rcsnum_free(lkp->rl_num); ! xfree(lkp->rl_name); ! xfree(lkp); /* not synced anymore */ file->rf_flags &= ~RCS_SYNCED; --- 740,747 ---- TAILQ_REMOVE(&(file->rf_locks), lkp, rl_list); rcsnum_free(lkp->rl_num); ! free(lkp->rl_name); ! free(lkp); /* not synced anymore */ file->rf_flags &= ~RCS_SYNCED; *************** *** 762,769 **** char *tmp; tmp = xstrdup(desc); ! if (file->rf_desc != NULL) ! xfree(file->rf_desc); file->rf_desc = tmp; file->rf_flags &= ~RCS_SYNCED; } --- 759,765 ---- char *tmp; tmp = xstrdup(desc); ! free(file->rf_desc); file->rf_desc = tmp; file->rf_flags &= ~RCS_SYNCED; } *************** *** 779,786 **** char *tmp; tmp = xstrdup(comment); ! if (file->rf_comment != NULL) ! xfree(file->rf_comment); file->rf_comment = tmp; file->rf_flags &= ~RCS_SYNCED; } --- 775,781 ---- char *tmp; tmp = xstrdup(comment); ! free(file->rf_comment); file->rf_comment = tmp; file->rf_flags &= ~RCS_SYNCED; } *************** *** 839,845 **** for (i = 0; (i < nbln) && (dlp != NULL); i++) { ndlp = TAILQ_NEXT(dlp, l_list); TAILQ_REMOVE(&(dlines->l_lines), dlp, l_list); ! xfree(dlp); dlp = ndlp; /* last line is gone - reset dlp */ if (dlp == NULL) { --- 834,840 ---- for (i = 0; (i < nbln) && (dlp != NULL); i++) { ndlp = TAILQ_NEXT(dlp, l_list); TAILQ_REMOVE(&(dlines->l_lines), dlp, l_list); ! free(dlp); dlp = ndlp; /* last line is gone - reset dlp */ if (dlp == NULL) { *************** *** 1020,1026 **** return (NULL); rbuf = rcs_patchfile(data, dlen, patch, plen, rcs_patch_lines); ! xfree(data); if (rbuf == NULL) break; --- 1015,1021 ---- return (NULL); rbuf = rcs_patchfile(data, dlen, patch, plen, rcs_patch_lines); ! free(data); if (rbuf == NULL) break; *************** *** 1246,1255 **** rcs_freedelta(rdp); ! if (path_tmp1 != NULL) ! xfree(path_tmp1); ! if (path_tmp2 != NULL) ! xfree(path_tmp2); return (0); } --- 1241,1248 ---- rcs_freedelta(rdp); ! free(path_tmp1); ! free(path_tmp2); return (0); } *************** *** 1343,1350 **** } tmp = xstrdup(buf); ! if (file->rf_expand != NULL) ! xfree(file->rf_expand); file->rf_expand = tmp; /* not synced anymore */ file->rf_flags &= ~RCS_SYNCED; --- 1336,1342 ---- } tmp = xstrdup(buf); ! free(file->rf_expand); file->rf_expand = tmp; /* not synced anymore */ file->rf_flags &= ~RCS_SYNCED; *************** *** 1419,1442 **** if (rdp->rd_next != NULL) rcsnum_free(rdp->rd_next); ! if (rdp->rd_author != NULL) ! xfree(rdp->rd_author); ! if (rdp->rd_locker != NULL) ! xfree(rdp->rd_locker); ! if (rdp->rd_state != NULL) ! xfree(rdp->rd_state); ! if (rdp->rd_log != NULL) ! xfree(rdp->rd_log); ! if (rdp->rd_text != NULL) ! xfree(rdp->rd_text); while ((rb = TAILQ_FIRST(&(rdp->rd_branches))) != NULL) { TAILQ_REMOVE(&(rdp->rd_branches), rb, rb_list); rcsnum_free(rb->rb_num); ! xfree(rb); } ! xfree(rdp); } /* --- 1411,1429 ---- if (rdp->rd_next != NULL) rcsnum_free(rdp->rd_next); ! free(rdp->rd_author); ! free(rdp->rd_locker); ! free(rdp->rd_state); ! free(rdp->rd_log); ! free(rdp->rd_text); while ((rb = TAILQ_FIRST(&(rdp->rd_branches))) != NULL) { TAILQ_REMOVE(&(rdp->rd_branches), rb, rb_list); rcsnum_free(rb->rb_num); ! free(rb); } ! free(rdp); } /* *************** *** 1701,1708 **** if ((rdp = rcs_findrev(rfp, rev)) == NULL) return (-1); ! if (rdp->rd_text != NULL) ! xfree(rdp->rd_text); len = buf_len(bp); dtext = buf_release(bp); --- 1688,1694 ---- if ((rdp = rcs_findrev(rfp, rev)) == NULL) return (-1); ! free(rdp->rd_text); len = buf_len(bp); dtext = buf_release(bp); *************** *** 1717,1724 **** rdp->rd_tlen = 0; } ! if (dtext != NULL) ! xfree(dtext); return (0); } --- 1703,1709 ---- rdp->rd_tlen = 0; } ! free(dtext); return (0); } *************** *** 1736,1743 **** if ((rdp = rcs_findrev(rfp, rev)) == NULL) return (-1); ! if (rdp->rd_log != NULL) ! xfree(rdp->rd_log); rdp->rd_log = xstrdup(logtext); rfp->rf_flags &= ~RCS_SYNCED; --- 1721,1727 ---- if ((rdp = rcs_findrev(rfp, rev)) == NULL) return (-1); ! free(rdp->rd_log); rdp->rd_log = xstrdup(logtext); rfp->rf_flags &= ~RCS_SYNCED; *************** *** 1776,1783 **** if ((rdp = rcs_findrev(rfp, rev)) == NULL) return (-1); ! if (rdp->rd_state != NULL) ! xfree(rdp->rd_state); rdp->rd_state = xstrdup(state); --- 1760,1766 ---- if ((rdp = rcs_findrev(rfp, rev)) == NULL) return (-1); ! free(rdp->rd_state); rdp->rd_state = xstrdup(state);