forked from Mirror/Ryujinx
Preserve command line arguments when updater restarts Ryujinx (#1643)
Command line arguements are not preserved by the updater, and this causes an issue when the updater restarts Ryujinx in portable mode as it will create/use/modify its default directory instead. This simple pull addresses the first part of #1594 As far as the second part of the issue, where the updater perhaps overzealously deletes everything but log files and folders, which causes problems in portable installs with a user subfolder or something else inside the Ryujinx folder. Perhaps an UpdateList.txt containing a list of files that the updater deletes is included in the ryujinx.zip/tar.gz/etc and placed in the upacked directory for the updater to use upon the next upgrade. The build system can run something like `forfiles /s /m *.txt /c "cmd /c echo @relpath"` or the correct command for the OS and include it in the distribution, or it could be generated by the updater itself.
This commit is contained in:
parent
423da5cc91
commit
b5a760bde9
1 changed files with 2 additions and 1 deletions
|
@ -45,6 +45,7 @@ namespace Ryujinx.Ui
|
||||||
{
|
{
|
||||||
string ryuName = RuntimeInformation.IsOSPlatform(OSPlatform.Windows) ? "Ryujinx.exe" : "Ryujinx";
|
string ryuName = RuntimeInformation.IsOSPlatform(OSPlatform.Windows) ? "Ryujinx.exe" : "Ryujinx";
|
||||||
string ryuExe = System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, ryuName);
|
string ryuExe = System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, ryuName);
|
||||||
|
string ryuArg = String.Join(" ", Environment.GetCommandLineArgs());
|
||||||
|
|
||||||
if (!RuntimeInformation.IsOSPlatform(OSPlatform.Windows))
|
if (!RuntimeInformation.IsOSPlatform(OSPlatform.Windows))
|
||||||
{
|
{
|
||||||
|
@ -52,7 +53,7 @@ namespace Ryujinx.Ui
|
||||||
unixFileInfo.FileAccessPermissions |= FileAccessPermissions.UserExecute;
|
unixFileInfo.FileAccessPermissions |= FileAccessPermissions.UserExecute;
|
||||||
}
|
}
|
||||||
|
|
||||||
Process.Start(ryuExe);
|
Process.Start(ryuExe, ryuArg);
|
||||||
|
|
||||||
Environment.Exit(0);
|
Environment.Exit(0);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue