Skip to content

Commit

Permalink
Fixed possible null pointer error
Browse files Browse the repository at this point in the history
  • Loading branch information
pvince committed Nov 15, 2016
1 parent ebb2e97 commit 993a44a
Show file tree
Hide file tree
Showing 2 changed files with 32 additions and 16 deletions.
46 changes: 30 additions & 16 deletions src/main/java/hudson/scm/SSCMUtils.java
Original file line number Diff line number Diff line change
Expand Up @@ -25,13 +25,16 @@ public class SSCMUtils {
*/
public static String getServerFromURL(String URL)
{
Matcher changeMatcher = URI_PATTERN.matcher(URL);

String result = "";

if(changeMatcher.find() && changeMatcher.groupCount() == 4)
if(URL != null)
{
result = changeMatcher.group(1);
Matcher changeMatcher = URI_PATTERN.matcher(URL);

if(changeMatcher.find() && changeMatcher.groupCount() == 4)
{
result = changeMatcher.group(1);
}
}

return result;
Expand All @@ -47,13 +50,16 @@ public static String getServerFromURL(String URL)
*/
public static String getPortFromURL(String URL)
{
Matcher changeMatcher = URI_PATTERN.matcher(URL);

String result = "";

if(changeMatcher.find() && changeMatcher.groupCount() == 4)
if(URL != null)
{
result = changeMatcher.group(2);
Matcher changeMatcher = URI_PATTERN.matcher(URL);

if(changeMatcher.find() && changeMatcher.groupCount() == 4)
{
result = changeMatcher.group(2);
}
}

return result;
Expand All @@ -69,13 +75,16 @@ public static String getPortFromURL(String URL)
*/
public static String getBranchFromURL(String URL)
{
Matcher changeMatcher = URI_PATTERN.matcher(URL);

String result = "";

if(changeMatcher.find() && changeMatcher.groupCount() == 4)
if(URL != null)
{
result = changeMatcher.group(3);
Matcher changeMatcher = URI_PATTERN.matcher(URL);

if(changeMatcher.find() && changeMatcher.groupCount() == 4)
{
result = changeMatcher.group(3);
}
}

return result;
Expand All @@ -91,20 +100,25 @@ public static String getBranchFromURL(String URL)
*/
public static String getRepositoryFromURL(String URL)
{
Matcher changeMatcher = URI_PATTERN.matcher(URL);

String result = "";

if(changeMatcher.find() && changeMatcher.groupCount() == 4)
if(URL != null)
{
result = changeMatcher.group(4);
Matcher changeMatcher = URI_PATTERN.matcher(URL);

if(changeMatcher.find() && changeMatcher.groupCount() == 4)
{
result = changeMatcher.group(4);
}
}

return result;
}

public static boolean validateSSCMURL(String URL)
{
if(URL == null)
return false;

Matcher changeMatcher = URI_PATTERN.matcher(URL);

Expand Down
2 changes: 2 additions & 0 deletions src/test/java/hudson/scm/SSCMUtilsTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -122,6 +122,8 @@ public void testInvalidURL_Repo() throws Exception {

public void testValidateURL() throws Exception {
assertTrue(SSCMUtils.validateSSCMURL(URL));

assertFalse(SSCMUtils.validateSSCMURL(null));
}

public static Test suite() {
Expand Down

0 comments on commit 993a44a

Please sign in to comment.