From 233071bfbc801899e8cab5ec7b56452b309b891c Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Sun, 22 Jul 2012 15:00:21 +0000 Subject: TAILQ_FOREACH_SAFE --- snow.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/snow.c b/snow.c index b234dab..572ca26 100644 --- a/snow.c +++ b/snow.c @@ -42,8 +42,8 @@ TAILQ_HEAD(, particle) head; extern int LINES; extern int COLS; static int d_flag = 0; - -char flake[] = ".*#"; +static int ocurs; +static char flake[] = ".*#"; #ifndef nitems #define nitems(s) (sizeof(s) / sizeof((s)[0])) @@ -67,8 +67,6 @@ die(int signo) int main() { - int ocurs; - signal(SIGWINCH, resize); signal(SIGINT, die); signal(SIGTERM, die); @@ -86,8 +84,7 @@ main() while (!d_flag) { erase(); - for (pp = TAILQ_FIRST(&head); pp; pp = pnext) { - pnext = TAILQ_NEXT(pp, link); + TAILQ_FOREACH_SAFE(pp, &head, link, pnext) { if (pp->y >= LINES || pp->x < 0 || pp->x >= COLS) { TAILQ_REMOVE(&head, pp, link); free(pp); -- cgit v1.2.3