X-Git-Url: https://git.siccegge.de//index.cgi?p=frida%2Ffrida.git;a=blobdiff_plain;f=src%2Fgui%2FMainwindow.cxx;h=9f1d353ab2a568c14609c051133ebf87143e62ce;hp=5643beb23731e7017f0b39b6066297fc05cdac92;hb=74555b2a9a524c568772bcea1332019a911bf86f;hpb=119d1aff7df9c3235177c3bf55bd618feb3c1519 diff --git a/src/gui/Mainwindow.cxx b/src/gui/Mainwindow.cxx index 5643beb..9f1d353 100644 --- a/src/gui/Mainwindow.cxx +++ b/src/gui/Mainwindow.cxx @@ -18,7 +18,8 @@ namespace { } Mainwindow::Mainwindow(InformationManager* mgr) - : manager(mgr) { + : manager(mgr) + , logger(log4cxx::Logger::getLogger("Mainwindow")) { openAction = new QAction(tr("&Open"), this); // saveAction = new QAction(tr("&Save"), this); exitAction = new QAction(tr("E&xit"), this); @@ -88,8 +89,14 @@ void Mainwindow::addFunction(Function* fun) { Disassembler * dis = manager->getDisassembler(); BasicBlock * block = dis->getBasicBlock(fun->getStartAddress()); + uint64_t start_address(std::numeric_limits::max()); + for (auto b : fun->blocks()) { + if (b.first < start_address) + start_address = b.first; + } + local__add_basic_block(block, manager->getDisassembler(), blocks, scene, - block->getStartAddress(), 100); + start_address, 100); QGraphicsView * view = new QGraphicsView(scene); w->addTab(view, "CFG");