MCPcopy Create free account
hub / github.com/Adaptix-Framework/AdaptixC2 / Close

Method Close

AdaptixClient/Source/UI/Widgets/AdaptixWidget.cpp:486–543  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

484bool AdaptixWidget::IsSynchronized() { return this->synchronized; }
485
486void AdaptixWidget::Close()
487{
488 if (TickWorker)
489 disconnect(TickWorker, nullptr, this, nullptr);
490
491 if (TickThread) {
492 TickThread->quit();
493 TickThread->wait();
494 }
495
496 delete TickWorker;
497 TickWorker = nullptr;
498
499 delete TickThread;
500 TickThread = nullptr;
501
502 if (ChannelWsWorker) {
503 disconnect(ChannelWsWorker, nullptr, this, nullptr);
504 disconnect(ChannelWsWorker, nullptr, ScriptManager, nullptr);
505 QMetaObject::invokeMethod(ChannelWsWorker, "stopWorker", Qt::BlockingQueuedConnection);
506 }
507
508 if (ChannelThread) {
509 ChannelThread->quit();
510 ChannelThread->wait();
511 }
512
513 delete ChannelWsWorker;
514 ChannelWsWorker = nullptr;
515
516 delete ChannelThread;
517 ChannelThread = nullptr;
518
519 this->ClearAdaptix();
520
521 delete AxConsoleDock;
522 delete LogsDock;
523 delete ChatDock;
524 delete ListenersDock;
525 delete SessionsTableDock;
526 delete SessionsGraphDock;
527 delete TasksDock;
528 delete TunnelsDock;
529 delete DownloadsDock;
530 delete ScreenshotsDock;
531 delete CredentialsDock;
532 delete TargetsDock;
533
534 delete dockTop;
535 delete dockBottom;
536 delete mainDockWidget;
537
538 delete dialogSyncPacket;
539 dialogSyncPacket = nullptr;
540
541 delete profile;
542 profile = nullptr;
543}

Callers 2

~MainUIMethod · 0.45
onCloseProjectMethod · 0.45

Calls 2

ClearAdaptixMethod · 0.95
invokeMethodFunction · 0.85

Tested by

no test coverage detected