| 535 | } |
| 536 | |
| 537 | bool InsGraphCheck(sample_info_t* si, minsn_t** minsn) |
| 538 | { |
| 539 | qstring buf; |
| 540 | tag_remove(&buf, get_custom_viewer_curline(si->cv, false)); |
| 541 | const char* pLine = buf.c_str(); |
| 542 | const char* pDot = qstrchr(pLine, '.'); |
| 543 | if (pDot == NULL) |
| 544 | return false; |
| 545 | |
| 546 | int nBlock = atoi(pLine); |
| 547 | int nSerial = atoi(pDot + 1); |
| 548 | mbl_array_t* mba = *si->mba; |
| 549 | |
| 550 | if (nBlock > mba->qty) |
| 551 | return false; |
| 552 | |
| 553 | mblock_t* blk = mba->get_mblock(nBlock); |
| 554 | *minsn = blk->head; |
| 555 | int i; |
| 556 | for (i = 0; i < nSerial; ++i) { |
| 557 | *minsn = (*minsn)->next; |
| 558 | if (*minsn == NULL) |
| 559 | break; |
| 560 | } |
| 561 | |
| 562 | if (*minsn == NULL) |
| 563 | return false; |
| 564 | |
| 565 | return true; |
| 566 | } |
| 567 | |
| 568 | static bool idaapi ct_keyboard(TWidget * /*v*/, int key, int shift, void *ud) |
| 569 | { |
no outgoing calls
no test coverage detected