Browse Source

SONAR-15424 Compute Engine fails with NPE when analysing PR without main branch

tags/9.2.0.49834
Duarte Meneses 2 years ago
parent
commit
5377194709

+ 6
- 1
sonar-scanner-engine/src/main/java/org/sonar/scanner/scan/branch/ProjectBranches.java View File

@@ -22,6 +22,7 @@ package org.sonar.scanner.scan.branch;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import javax.annotation.CheckForNull;
import javax.annotation.concurrent.Immutable;

@@ -30,6 +31,9 @@ import javax.annotation.concurrent.Immutable;
*/
@Immutable
public class ProjectBranches {
// matches server-side default when creating a project. See BranchDto#DEFAULT_MAIN_BRANCH_NAME
private static final String DEFAULT_MAIN_BRANCH_NAME = "master";

private final Map<String, BranchInfo> branches;
private final String defaultBranchName;

@@ -43,7 +47,8 @@ public class ProjectBranches {
mainBranchName = branchName;
}
}
this.defaultBranchName = mainBranchName;

this.defaultBranchName = Objects.requireNonNullElse(mainBranchName, DEFAULT_MAIN_BRANCH_NAME);
}

@CheckForNull

+ 1
- 0
sonar-scanner-engine/src/test/java/org/sonar/scanner/scan/branch/ProjectBranchesTest.java View File

@@ -70,5 +70,6 @@ public class ProjectBranchesTest {
public void isEmpty() {
assertThat(underTest.isEmpty()).isFalse();
assertThat(new ProjectBranches(Collections.emptyList()).isEmpty()).isTrue();
assertThat(new ProjectBranches(Collections.emptyList()).defaultBranchName()).isEqualTo("master");
}
}

Loading…
Cancel
Save