diff --git a/df.md b/df.md
index 36d625c4872e965b4b66fc54046e9ed9ece00be3..35671fc2e5cba8c13636b9b17ec2a98841c2ac14 100644
--- a/df.md
+++ b/df.md
@@ -68,7 +68,7 @@ void dijkstra(graph g, int src, int num, int dist[num], int prev[num]) {
     while (!queue_is_empty(q)) {
         p = queue_pop(q);
         for v in the neighborhood_of(g, p) {
-            d_new = dist[v] + weight(g, p, v);
+            d_new = dist[p] + weight(g, p, v);
             if (d_new < dist[v]) {
                 dist[v] = d_new;
                 prev[v] = p;