diff --git a/log/include/log.h b/log/include/log.h index 6fec854796809a140a070e2c5d9a4dccec4b574d..152437bf5e0569b36c0ecec3a0f0831b855d147a 100644 --- a/log/include/log.h +++ b/log/include/log.h @@ -27,7 +27,6 @@ void setscale(short s); char *colorname(char *Result, short c); void scroll(); void trykbd(); -void markcolor(log_hwrec **hw, struct LOC_wantsolder *LINK); void confirmsimtype(log_nrec *n); void scancn(cnrec *cn, struct LOC_checkcombine *LINK); void addblobs(blobrec **blbase, short x1, short y1, short x2, short y2); diff --git a/log/include/wire.h b/log/include/wire.h index 6271973b2553ba6ee191a743b01252fdf25378dd..f1bcdcf117a47d5bdae959c6ef73915401bc808f 100644 --- a/log/include/wire.h +++ b/log/include/wire.h @@ -40,12 +40,6 @@ void delhwire(log_hwrec *hw); void closerwire(short x, short y); -/* Local variables for wantsolder: */ -struct LOC_wantsolder -{ - int hasred, hasgreen, hasyellow, hasblue; -}; - void chghw(log_hwrec *hw, log_nrec *oldnode, log_nrec *n); void chgvw(log_vwrec *vw, log_nrec *oldnode, log_nrec *n); diff --git a/log/src/label.c b/log/src/label.c index 19cee85a2495f4247aa27e993c179fda469de4c8..3f3644e096a0b189550b259c80bc366d949fc5f2 100644 --- a/log/src/label.c +++ b/log/src/label.c @@ -394,4 +394,5 @@ void displabel(log_lrec **l) { unlinklabel(*l); Free(*l); + l = NULL; } diff --git a/log/src/log.c b/log/src/log.c index fb6fa9a5a55e2b61b60210ff6554ff437789cd9b..d491bf56c80dae2b8ef6cdb50aa3ec7787b92d1e 100644 --- a/log/src/log.c +++ b/log/src/log.c @@ -2381,21 +2381,21 @@ static void purgesignaltab() void garbagecoll() { - log_nrec *n, *n1; + log_nrec *node; log_grec *g; log_hwrec *hw; log_vwrec *vw; - short i, pg, FORLIM, FORLIM1; + short pg, FORLIM1; - n = gg.nbase; - while (n != NULL) + node = gg.nbase; + while (node != NULL) { - if (!n->keep) - n->ref = 0; - n = n->next; + if (!node->keep) + node->ref = 0; + node = node->next; } - FORLIM = gg.numpages; - for (pg = 0; pg < FORLIM; pg++) + + for (pg = 0; pg < gg.numpages; pg++) { hw = gg.hwbase[pg]; while (hw != NULL) @@ -2403,36 +2403,39 @@ void garbagecoll() hw->node->ref++; hw = hw->next; } + vw = gg.vwbase[pg]; while (vw != NULL) { vw->node->ref++; vw = vw->next; } + g = gg.gbase[pg]; while (g != NULL) { FORLIM1 = g->kind->numpins; - for (i = 0; i < FORLIM1; i++) + for (short i = 0; i < FORLIM1; i++) g->pin[i]->ref++; g = g->next; } } - FORLIM = gg.lastsignal; - for (i = 0; i < FORLIM; i++) + + for (short i = 0; i < gg.lastsignal; i++) { if (gg.signaltab[i].np != NULL) gg.signaltab[i].np->ref++; } callsimtools(act_refnodes); purgesignaltab(); - n = gg.nbase; - while (n != NULL) + + node = gg.nbase; + while (node != NULL) { - n1 = n->next; - if (n->ref == 0 && !n->keep) - disposenode(&n); - n = n1; + log_nrec *nextnode = node->next; + if (node->ref == 0 && !node->keep) + disposenode(&node); + node = nextnode; } } @@ -3283,32 +3286,6 @@ static void trykbdscroll() } -void markcolor(log_hwrec **hw, struct LOC_wantsolder *LINK) -{ - if (*hw == NULL) - return; - switch ((*hw)->wcolr) - { - - case log_wcol_red: - LINK->hasred = true; - break; - - case log_wcol_green: - LINK->hasgreen = true; - break; - - case log_wcol_yellow: - LINK->hasyellow = true; - break; - - case log_wcol_blue: - LINK->hasblue = true; - break; - } -} - - void confirmsimtype(log_nrec *n) { log_grec *g; diff --git a/log/src/page.c b/log/src/page.c index b9ba5feb899a070c905a2f912ef8df3fae493aa7..4772d39673d980283afdad95acbcdd435be22b58 100644 --- a/log/src/page.c +++ b/log/src/page.c @@ -12,7 +12,8 @@ void chpage(short pg) stamp(&gg.pagestamp[pg - 1]); gg.pagechanged[pg - 1] = true; r = gg.pageregions[pg - 1]; - while (r != NULL) { + while (r != NULL) + { stamp(&r->regstamp); r = r->next; } diff --git a/log/src/wire.c b/log/src/wire.c index f8ad535df78f2e0b3b414a9eb88199d845c821fb..53c39b350fb8da8ca12ba0138ff1d4a70acf357b 100644 --- a/log/src/wire.c +++ b/log/src/wire.c @@ -10,6 +10,38 @@ void fryhwire(log_hwrec *hw); void fryvwire(log_vwrec *vw); +/* Local variables for wantsolder: */ +struct LOC_wantsolder +{ + int hasred, hasgreen, hasyellow, hasblue; +}; + +void markcolor(log_hwrec **hw, struct LOC_wantsolder *LINK) +{ + if (*hw == NULL) + return; + switch ((*hw)->wcolr) + { + + case log_wcol_red: + LINK->hasred = true; + break; + + case log_wcol_green: + LINK->hasgreen = true; + break; + + case log_wcol_yellow: + LINK->hasyellow = true; + break; + + case log_wcol_blue: + LINK->hasblue = true; + break; + } +} + + /*=================== NEWHW ====================*/ /*= =*/ /*= Create a Horizontal Wire. =*/