LinkNode *edgelist[numverts]; // structural springs for(i = 0; i < numedges; i++) { LinkNode *tNode = NULL; tNode = edgelist[springs[i].ij]; if(!tNode) { BLI_linklist_prepend(&tNode,&springs[i]); } else { BLI_linklist_append(&tNode,&springs[i]); // crashing here } tNode = edgelist[springs[i].kl]; if(!tNode) { BLI_linklist_prepend(&tNode,&springs[i]); } else { BLI_linklist_append(&tNode,&springs[i]); } }