Extend CLI debug report command to optionally accept a report path.
This commit is contained in:
@@ -28,12 +28,23 @@ CliDebugReportCommand::CliDebugReportCommand()
|
||||
void
|
||||
CliDebugReportCommand::Execute(int argc, const char* const* argv, CliContext& context)
|
||||
{
|
||||
char buffer[B_FILE_NAME_LENGTH];
|
||||
UiUtils::ReportNameForTeam(context.GetTeam(), buffer, sizeof(buffer));
|
||||
BPath path;
|
||||
find_directory(B_DESKTOP_DIRECTORY, &path);
|
||||
path.Append(buffer);
|
||||
if (argc > 1) {
|
||||
path.SetTo(argv[1]);
|
||||
if (path.InitCheck() != B_OK) {
|
||||
printf("Invalid report path %s given.\n", argv[1]);
|
||||
return;
|
||||
}
|
||||
} else {
|
||||
char buffer[B_FILE_NAME_LENGTH];
|
||||
UiUtils::ReportNameForTeam(context.GetTeam(), buffer, sizeof(buffer));
|
||||
find_directory(B_DESKTOP_DIRECTORY, &path);
|
||||
path.Append(buffer);
|
||||
}
|
||||
|
||||
entry_ref ref;
|
||||
if (get_ref_for_path(path.Path(), &ref) == B_OK)
|
||||
if (get_ref_for_path(path.Path(), &ref) == B_OK) {
|
||||
printf("Saving debug information report to %s...\n", path.Path());
|
||||
context.GetUserInterfaceListener()->DebugReportRequested(&ref);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user