- if (block->getNextBlock(0) != 0)
- local__add_basic_block(dis->getBasicBlock(block->getNextBlock(0)), dis, scene, starty, startx+1);
- if (block->getNextBlock(1) != 0)
- local__add_basic_block(dis->getBasicBlock(block->getNextBlock(1)), dis, scene, starty, startx-1);
+ BasicBlockWidget *tmp, *nextl(NULL), *nextr(NULL);
+ BasicBlock * tmpblock;
+ if (block->getNextBlock(0) != 0) {
+ tmpblock = dis->getBasicBlock(block->getNextBlock(0));
+ tmp = local__add_basic_block(tmpblock, dis,
+ known_blocks,
+ scene, starty, startx+1);
+ nextl = tmp;
+ tmp->addPrevious(widget);
+ }
+ if (block->getNextBlock(1) != 0) {
+ tmpblock = dis->getBasicBlock(block->getNextBlock(1));
+ tmp = local__add_basic_block(tmpblock, dis,
+ known_blocks,
+ scene, starty, startx-1);
+ nextr = tmp;
+ tmp->addPrevious(widget);
+ }
+ widget->addNext(nextl, nextr);
+ return widget;