while (ml)
{
struct map_placement *mp = ml->mp;
- mp->prev = mp->next;
+
+ mp->prev->next = mp->next;
if (mp->next)
mp->next->prev = mp->prev;
free(mp);
ml = ml->next;
free(tmp);
}
+ p->map_links = NULL;
struct map_part **parts = get_map_parts(p);
if (parts == NULL) return;
mp->placement = p;
mp->next = parts[i]->placement->next;
+ mp->prev = parts[i]->placement;
parts[i]->placement->next = mp;
if (mp->next) mp->next->prev = mp;