version 1.11, 2004/09/25 11:06:50 |
version 1.12, 2004/09/27 14:36:15 |
|
|
void |
void |
rcs_freedelta(struct rcs_delta *rdp) |
rcs_freedelta(struct rcs_delta *rdp) |
{ |
{ |
|
struct rcs_branch *rb; |
struct rcs_delta *crdp; |
struct rcs_delta *crdp; |
|
|
|
if (rdp->rd_num != NULL) |
|
rcsnum_free(rdp->rd_num); |
|
if (rdp->rd_next != NULL) |
|
rcsnum_free(rdp->rd_next); |
|
|
if (rdp->rd_author != NULL) |
if (rdp->rd_author != NULL) |
free(rdp->rd_author); |
free(rdp->rd_author); |
if (rdp->rd_state != NULL) |
if (rdp->rd_state != NULL) |
|
|
free(rdp->rd_log); |
free(rdp->rd_log); |
if (rdp->rd_text != NULL) |
if (rdp->rd_text != NULL) |
free(rdp->rd_text); |
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); |
|
} |
|
|
while ((crdp = TAILQ_FIRST(&(rdp->rd_snodes))) != NULL) { |
while ((crdp = TAILQ_FIRST(&(rdp->rd_snodes))) != NULL) { |
TAILQ_REMOVE(&(rdp->rd_snodes), crdp, rd_list); |
TAILQ_REMOVE(&(rdp->rd_snodes), crdp, rd_list); |