Fixed: Generate debug report before deleting broken prefix directory after bootstrap second stage failure to get stat info at time of failure

This commit is contained in:
agnostic-apollo 2025-03-28 12:32:09 +05:00
parent 6eb533cb2e
commit 1e686e55f3
No known key found for this signature in database
GPG key ID: BCCC0287E9DCCAED

View file

@ -231,12 +231,14 @@ final class TermuxInstaller {
AppShell appShell = AppShell.execute(activity, executionCommand, null, new TermuxShellEnvironment(), null, true); AppShell appShell = AppShell.execute(activity, executionCommand, null, new TermuxShellEnvironment(), null, true);
boolean stderrSet = !executionCommand.resultData.stderr.toString().isEmpty(); boolean stderrSet = !executionCommand.resultData.stderr.toString().isEmpty();
if (appShell == null || !executionCommand.isSuccessful() || executionCommand.resultData.exitCode != 0 || stderrSet) { if (appShell == null || !executionCommand.isSuccessful() || executionCommand.resultData.exitCode != 0 || stderrSet) {
// Delete prefix directory as otherwise when app is restarted, the broken prefix directory would be used and logged into // Generate debug report before deleting broken prefix directory to get `stat` info at time of failure.
showBootstrapErrorDialog(activity, whenDone, MarkdownUtils.getMarkdownCodeForString(executionCommand.toString(), true));
// Delete prefix directory as otherwise when app is restarted, the broken prefix directory would be used and logged into.
Logger.logInfo(LOG_TAG, "Deleting broken termux prefix.");
error = FileUtils.deleteFile("termux prefix directory", TERMUX_PREFIX_DIR_PATH, true); error = FileUtils.deleteFile("termux prefix directory", TERMUX_PREFIX_DIR_PATH, true);
if (error != null) if (error != null)
Logger.logErrorExtended(LOG_TAG, error.toString()); Logger.logErrorExtended(LOG_TAG, error.toString());
showBootstrapErrorDialog(activity, whenDone, MarkdownUtils.getMarkdownCodeForString(executionCommand.toString(), true));
return; return;
} }
} }