| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 | 
							- #include "MacUpdateThread.hpp"
 
- #include <OBSApp.hpp>
 
- #include <utility/WhatsNewInfoThread.hpp>
 
- #include <qt-wrappers.hpp>
 
- #include "moc_MacUpdateThread.cpp"
 
- static const char *MAC_BRANCHES_URL = "https://obsproject.com/update_studio/branches.json";
 
- static const char *MAC_DEFAULT_BRANCH = "stable";
 
- bool GetBranch(std::string &selectedBranch)
 
- {
 
- 	const char *config_branch = config_get_string(App()->GetAppConfig(), "General", "UpdateBranch");
 
- 	if (!config_branch)
 
- 		return true;
 
- 	bool found = false;
 
- 	for (const UpdateBranch &branch : App()->GetBranches()) {
 
- 		if (branch.name != config_branch)
 
- 			continue;
 
- 		/* A branch that is found but disabled will just silently fall back to
 
- 		 * the default. But if the branch was removed entirely, the user should
 
- 		 * be warned, so leave this false *only* if the branch was removed. */
 
- 		found = true;
 
- 		if (branch.is_enabled) {
 
- 			selectedBranch = branch.name.toStdString();
 
- 		}
 
- 		break;
 
- 	}
 
- 	return found;
 
- }
 
- void MacUpdateThread::infoMsg(const QString &title, const QString &text)
 
- {
 
- 	OBSMessageBox::information(App()->GetMainWindow(), title, text);
 
- }
 
- void MacUpdateThread::info(const QString &title, const QString &text)
 
- {
 
- 	QMetaObject::invokeMethod(this, "infoMsg", Qt::BlockingQueuedConnection, Q_ARG(QString, title),
 
- 				  Q_ARG(QString, text));
 
- }
 
- void MacUpdateThread::run()
 
- try {
 
- 	std::string text;
 
- 	std::string branch = MAC_DEFAULT_BRANCH;
 
- 	/* ----------------------------------- *
 
- 	 * get branches from server            */
 
- 	if (FetchAndVerifyFile("branches", "obs-studio/updates/branches.json", MAC_BRANCHES_URL, &text))
 
- 		App()->SetBranchData(text);
 
- 	/* ----------------------------------- *
 
- 	 * Validate branch selection           */
 
- 	if (!GetBranch(branch)) {
 
- 		config_set_string(App()->GetAppConfig(), "General", "UpdateBranch", MAC_DEFAULT_BRANCH);
 
- 		info(QTStr("Updater.BranchNotFound.Title"), QTStr("Updater.BranchNotFound.Text"));
 
- 	}
 
- 	emit Result(QString::fromStdString(branch), manualUpdate);
 
- } catch (std::string &text) {
 
- 	blog(LOG_WARNING, "%s: %s", __FUNCTION__, text.c_str());
 
- }
 
 
  |