@@ -55,9 +55,11 @@ FText UProjectVersionFromGitBPLibrary::GetProjectVersion()
5555 FString TagNameArg;
5656
5757 ExecProcess (TEXT (" git" ), TEXT (" rev-list --tags --max-count=1" ), &OutReturnCode, &OutStdOut, &OutStdErr, *OptionalWorkingDirectory);
58+ OutStdOut.TrimStartAndEndInline ();
5859
59- TagNameArg = FString (TEXT (" describe --tags " )) + OutStdOut. TrimStartAndEnd () ;
60+ TagNameArg = FString (TEXT (" describe --tags " )) + OutStdOut;
6061 ExecProcess (TEXT (" git" ), *TagNameArg, &OutReturnCode, &OutStdOut, &OutStdErr, *OptionalWorkingDirectory);
62+ OutStdOut.TrimStartAndEndInline ();
6163 // UE_LOG(ProjectVersionFromGit, Log, TEXT("-------- Git tag: %s"), *OutStdOut);
6264
6365 const FRegexPattern myPattern (TEXT (" ([0-9]\\ .[0-9]\\ .[0-9])+" ));
@@ -79,7 +81,7 @@ FText UProjectVersionFromGitBPLibrary::GetProjectVersion()
7981 }
8082 else
8183 {
82- OutStdOut = OutStdOut. TrimStartAndEnd ();
84+ OutStdOut. TrimStartAndEndInline ();
8385 TArray<FString> OutArrayParse;
8486 OutStdOut.ParseIntoArrayWS (OutArrayParse, TEXT (" ." ));
8587
@@ -251,13 +253,15 @@ FText UProjectVersionFromGitBPLibrary::GetProjectVersionBranchName()
251253 if (GEngine->IsEditor ())
252254 {
253255 ExecProcess (TEXT (" git" ), TEXT (" symbolic-ref --short HEAD" ), &OutReturnCode, &OutStdOut, &OutStdErr, *OptionalWorkingDirectory);
256+ OutStdOut.TrimStartAndEndInline ();
257+
254258 if (OutStdOut.IsEmpty ())
255259 {
256260 BranchName = FText::FromString (TEXT (" unknown" ));
257261 }
258262 else
259263 {
260- BranchName = FText::FromString (OutStdOut. TrimStartAndEnd () );
264+ BranchName = FText::FromString (OutStdOut);
261265 }
262266 }
263267 }
@@ -275,16 +279,20 @@ FText UProjectVersionFromGitBPLibrary::GetProjectVersionCommitHash()
275279 static const FString OptionalWorkingDirectory = FPaths::ConvertRelativePathToFull (FPaths::ProjectDir ());
276280
277281 ExecProcess (TEXT (" git" ), TEXT (" status --short" ), &OutReturnCode, &OutStdOut, &OutStdErr, *OptionalWorkingDirectory);
282+ OutStdOut.TrimStartAndEndInline ();
278283 GitStdOutput = OutStdOut;
284+ OutStdOut.Reset ();
279285
280- if (OutStdOut.IsEmpty ())
286+ ExecProcess (TEXT (" git" ), TEXT (" describe --always --abbrev=8" ), &OutReturnCode, &OutStdOut, &OutStdErr, *OptionalWorkingDirectory);
287+ OutStdOut.TrimStartAndEndInline ();
288+
289+ if (GitStdOutput.IsEmpty ())
281290 {
282- ExecProcess (TEXT (" git" ), TEXT (" describe --always --abbrev=8" ), &OutReturnCode, &OutStdOut, &OutStdErr, *OptionalWorkingDirectory);
283- CommitHash = FText::FromString (OutStdOut.TrimStartAndEnd ());
291+ CommitHash = FText::FromString (OutStdOut);
284292 }
285293 else
286294 {
287- CommitHash = FText::FromString (TEXT (" unknown " ) );
295+ CommitHash = FText::FromString (FString ( TEXT (" unclean- " )) + OutStdOut );
288296 }
289297 }
290298
0 commit comments