Program: 53155
Project: 53155
Buggy source:
/** 
 * @return a memoizing {@link Supplier} that caches the output of{@code security -v -p codesigning} to find all valid code signing identities.
 */
public static Supplier<ImmutableSet<CodeSignIdentity>> createCodeSignIdentitiesSupplier(final ProcessExecutor processExecutor){
  return Suppliers.memoize(new Supplier<ImmutableSet<CodeSignIdentity>>(){
    @Override public ImmutableSet<CodeSignIdentity> get(){
      ProcessExecutorParams processExecutorParams=ProcessExecutorParams.builder().setCommand(ImmutableList.of("String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str")).build();
      Set<ProcessExecutor.Option> options=EnumSet.of(ProcessExecutor.Option.EXPECTING_STD_OUT);
      ProcessExecutor.Result result;
      try {
        result=processExecutor.launchAndExecute(processExecutorParams,options,Optional.<String>absent(),Optional.<Long>absent(),Optional.<Function<Process,Void>>absent());
      }
 catch (      InterruptedException|IOException e) {
        LOG.warn("String_Node_Str");
        return ImmutableSet.of();
      }
      if (result.getExitCode() != 0) {
        throw new RuntimeException("String_Node_Str" + result.getStderr());
      }
      Matcher matcher=CODE_SIGN_IDENTITY_PATTERN.matcher(result.getStdout().get());
      ImmutableSet.Builder<CodeSignIdentity> builder=ImmutableSet.builder();
      while (matcher.find()) {
        String hash=matcher.group(1);
        String fullName=matcher.group(2);
        CodeSignIdentity identity=CodeSignIdentity.builder().setHash(hash).setFullName(fullName).build();
        builder.add(identity);
        LOG.debug("String_Node_Str" + identity.toString());
      }
      ImmutableSet<CodeSignIdentity> allValidIdentities=builder.build();
      if (allValidIdentities.isEmpty()) {
        LOG.warn("String_Node_Str");
      }
 else       if (allValidIdentities.size() > 1) {
        LOG.warn("String_Node_Str" + "String_Node_Str");
      }
      return allValidIdentities;
    }
  }
);
}

Fixed version (ground truth):
/** 
 * @return a memoizing {@link Supplier} that caches the output of{@code security -v -p codesigning} to find all valid code signing identities.
 */
public static Supplier<ImmutableSet<CodeSignIdentity>> createCodeSignIdentitiesSupplier(final ProcessExecutor processExecutor){
  return Suppliers.memoize(new Supplier<ImmutableSet<CodeSignIdentity>>(){
    @Override public ImmutableSet<CodeSignIdentity> get(){
      ProcessExecutorParams processExecutorParams=ProcessExecutorParams.builder().setCommand(ImmutableList.of("String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str","String_Node_Str")).build();
      Set<ProcessExecutor.Option> options=EnumSet.of(ProcessExecutor.Option.EXPECTING_STD_OUT);
      ProcessExecutor.Result result;
      try {
        result=processExecutor.launchAndExecute(processExecutorParams,options,Optional.<String>absent(),Optional.<Long>absent(),Optional.<Function<Process,Void>>absent());
      }
 catch (      InterruptedException|IOException e) {
        LOG.warn("String_Node_Str");
        return ImmutableSet.of();
      }
      if (result.getExitCode() != 0) {
        throw new RuntimeException("String_Node_Str" + result.getStderr());
      }
      Matcher matcher=CODE_SIGN_IDENTITY_PATTERN.matcher(result.getStdout().get());
      ImmutableSet.Builder<CodeSignIdentity> builder=ImmutableSet.builder();
      while (matcher.find()) {
        String hash=matcher.group(1);
        String fullName=matcher.group(2);
        CodeSignIdentity identity=CodeSignIdentity.builder().setHash(hash).setFullName(fullName).build();
        builder.add(identity);
        LOG.debug("String_Node_Str" + identity.toString());
      }
      ImmutableSet<CodeSignIdentity> allValidIdentities=builder.build();
      if (allValidIdentities.isEmpty()) {
        LOG.warn("String_Node_Str");
      }
 else       if (allValidIdentities.size() > 1) {
        LOG.info("String_Node_Str" + "String_Node_Str");
      }
      return allValidIdentities;
    }
  }
);
}