Skip to content

Commit

Permalink
stored instanceCoordinator in unique pointer
Browse files Browse the repository at this point in the history
  • Loading branch information
guhitb committed Jan 26, 2024
1 parent 1899c42 commit 85b2e19
Show file tree
Hide file tree
Showing 3 changed files with 12 additions and 10 deletions.
10 changes: 5 additions & 5 deletions src/main.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -398,15 +398,15 @@ int main(int argc, char* argv[])
// 1. This current process will start as normal.
// 2. The package will be queued for install until a profile is selected.

MudletInstanceCoordinator instanceCoordinator("MudletInstanceCoordinator");
const bool firstInstanceOfMudlet = instanceCoordinator.tryToStart();
std::unique_ptr<MudletInstanceCoordinator> instanceCoordinator = std::make_unique<MudletInstanceCoordinator>("MudletInstanceCoordinator");
const bool firstInstanceOfMudlet = instanceCoordinator->tryToStart();

const QStringList positionalArguments = parser.positionalArguments();
if (!positionalArguments.isEmpty()) {
const QString absPath = QDir(positionalArguments.first()).absolutePath();
instanceCoordinator.queuePackage(absPath);
instanceCoordinator->queuePackage(absPath);
if (!firstInstanceOfMudlet) {
const bool successful = instanceCoordinator.installPackagesRemotely();
const bool successful = instanceCoordinator->installPackagesRemotely();
if (successful) {
return 0;
} else {
Expand Down Expand Up @@ -625,7 +625,7 @@ int main(int argc, char* argv[])
#endif

// Pass ownership of MudletInstanceCoordinator to mudlet.
mudlet::self()->registerInstanceCoordinator(&instanceCoordinator);
mudlet::self()->takeOwnershipOfInstanceCoordinator(std::move(instanceCoordinator));

// Handle "QEvent::FileOpen" events.
FileOpenHandler fileOpenHandler;
Expand Down
7 changes: 4 additions & 3 deletions src/mudlet.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -85,6 +85,7 @@
#include <QToolTip>
#include <QVariantHash>
#include <QRandomGenerator>
#include <memory>
#include <zip.h>
#include <QStyle>
#if defined(Q_OS_WIN32)
Expand Down Expand Up @@ -4747,14 +4748,14 @@ void mudlet::activateProfile(Host* pHost)
mInstanceCoordinator->installPackagesToHost(mpCurrentActiveHost);
}

void mudlet::registerInstanceCoordinator(MudletInstanceCoordinator* instanceCoordinator)
void mudlet::takeOwnershipOfInstanceCoordinator(std::unique_ptr<MudletInstanceCoordinator> instanceCoordinator)
{
mInstanceCoordinator = instanceCoordinator;
mInstanceCoordinator = std::move(instanceCoordinator);
}

MudletInstanceCoordinator* mudlet::getInstanceCoordinator()
{
return mInstanceCoordinator;
return mInstanceCoordinator.get();
}
void mudlet::setGlobalStyleSheet(const QString& styleSheet)
{
Expand Down
5 changes: 3 additions & 2 deletions src/mudlet.h
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@
#include "ShortcutsManager.h"
#include "TMediaData.h"
#include "utils.h"
#include <memory>

#if defined(INCLUDE_UPDATER)
#include "updater.h"
Expand Down Expand Up @@ -307,7 +308,7 @@ class mudlet : public QMainWindow, public Ui::main_window


void activateProfile(Host*);
void registerInstanceCoordinator(MudletInstanceCoordinator*);
void takeOwnershipOfInstanceCoordinator(std::unique_ptr<MudletInstanceCoordinator>);
MudletInstanceCoordinator* getInstanceCoordinator();
void addConsoleForNewHost(Host*);
QPair<bool, bool> addWordToSet(const QString&);
Expand Down Expand Up @@ -478,7 +479,7 @@ class mudlet : public QMainWindow, public Ui::main_window
QSystemTrayIcon mTrayIcon;
bool mUsingMudletDictionaries = false;
bool mWindowMinimized = false;
MudletInstanceCoordinator* mInstanceCoordinator;
std::unique_ptr<MudletInstanceCoordinator> mInstanceCoordinator;
// How many graphemes do we need before we run the spell checker on a "word" in the command line:
int mMinLengthForSpellCheck = 3;

Expand Down

0 comments on commit 85b2e19

Please sign in to comment.