snode* n;
sedge* e;
snode* adjn;
- int d;
+ int d;
int x, y;
for (x = 0; x<g->nnodes; x++) {
N_VAL(from) = 0;
while ((n = PQremove())) {
+#ifdef DEBUG
+ fprintf (stderr, "process %d\n", n->index);
+#endif
N_VAL(n) *= -1;
if (n == to) break;
for (y=0; y<n->n_adj; y++) {
if (N_VAL(adjn) < 0) {
d = -(N_VAL(n) + E_WT(e));
if (N_VAL(adjn) == UNSEEN) {
+#ifdef DEBUG
+ fprintf (stderr, "new %d (%d)\n", adjn->index, -d);
+#endif
N_VAL(adjn) = d;
PQ_insert(adjn);
N_DAD(adjn) = n;
}
else {
if (N_VAL(adjn) < d) {
+#ifdef DEBUG
+ fprintf (stderr, "adjust %d (%d)\n", adjn->index, -d);
+#endif
PQupdate(adjn, d);
N_DAD(adjn) = n;
N_EDGE(adjn) = e;