Program: 7248
Project: 7248
Buggy source:
public CLIMain(final LaunchOptions options,final CLIConfig cliConfig) throws URISyntaxException, IOException {
  this.options=options;
  this.cliConfig=cliConfig;
  final PrintStream output=cliConfig.getOutput();
  final TableRenderer tableRenderer=cliConfig.getTableRenderer();
  cliConfig.getClientConfig().setVerifySSLCert(options.isVerifySSL());
  Injector injector=Guice.createInjector(new AbstractModule(){
    @Override protected void configure(){
      bind(CConfiguration.class).toInstance(CConfiguration.create());
      bind(PrintStream.class).toInstance(output);
      bind(CLIConfig.class).toInstance(cliConfig);
      bind(ClientConfig.class).toInstance(cliConfig.getClientConfig());
      bind(TableRenderer.class).toInstance(tableRenderer);
    }
  }
);
  InstanceURIParser instanceURIParser=injector.getInstance(InstanceURIParser.class);
  if (options.isAutoconnect()) {
    try {
      CLIConfig.ConnectionInfo connectionInfo=instanceURIParser.parse(options.getUri());
      cliConfig.tryConnect(connectionInfo,output,options.isDebug());
      cliConfig.getClientConfig().setHostname(connectionInfo.getHostname());
      cliConfig.getClientConfig().setPort(connectionInfo.getPort());
      cliConfig.getClientConfig().setSSLEnabled(connectionInfo.isSSLEnabled());
      cliConfig.getClientConfig().setNamespace(connectionInfo.getNamespace());
    }
 catch (    Exception e) {
      if (options.isDebug()) {
        e.printStackTrace(output);
      }
    }
  }
  this.commands=ImmutableList.of(injector.getInstance(DefaultCommands.class),new CommandSet<Command>(ImmutableList.<Command>of(new HelpCommand(getCommandsSupplier()),new SearchCommandsCommand(getCommandsSupplier()))));
  Map<String,Completer> completers=injector.getInstance(DefaultCompleters.class).get();
  cli=new CLI<Command>(Iterables.concat(commands),completers);
  cli.setExceptionHandler(new CLIExceptionHandler<Exception>(){
    @Override public boolean handleException(    PrintStream output,    Exception e,    int timesRetried){
      if (e instanceof SSLHandshakeException) {
        output.printf("String_Node_Str",VERIFY_SSL_OPTION.getLongOpt());
      }
 else       if (e instanceof InvalidCommandException) {
        InvalidCommandException ex=(InvalidCommandException)e;
        output.printf("String_Node_Str",ex.getInput());
      }
 else {
        output.println("String_Node_Str" + e.getMessage());
      }
      if (options.isDebug()) {
        e.printStackTrace(output);
      }
      return false;
    }
  }
);
  cli.addCompleterSupplier(injector.getInstance(EndpointSupplier.class));
  updateCLIPrompt(cliConfig.getClientConfig());
  cliConfig.addHostnameChangeListener(new CLIConfig.ConnectionChangeListener(){
    @Override public void onConnectionChanged(    ClientConfig clientConfig){
      updateCLIPrompt(clientConfig);
    }
  }
);
}

Fixed version (ground truth):
public CLIMain(final LaunchOptions options,final CLIConfig cliConfig) throws URISyntaxException, IOException {
  this.options=options;
  this.cliConfig=cliConfig;
  final PrintStream output=cliConfig.getOutput();
  final TableRenderer tableRenderer=cliConfig.getTableRenderer();
  cliConfig.getClientConfig().setVerifySSLCert(options.isVerifySSL());
  Injector injector=Guice.createInjector(new AbstractModule(){
    @Override protected void configure(){
      bind(LaunchOptions.class).toInstance(options);
      bind(CConfiguration.class).toInstance(CConfiguration.create());
      bind(PrintStream.class).toInstance(output);
      bind(CLIConfig.class).toInstance(cliConfig);
      bind(ClientConfig.class).toInstance(cliConfig.getClientConfig());
      bind(TableRenderer.class).toInstance(tableRenderer);
    }
  }
);
  InstanceURIParser instanceURIParser=injector.getInstance(InstanceURIParser.class);
  if (options.isAutoconnect()) {
    try {
      CLIConfig.ConnectionInfo connectionInfo=instanceURIParser.parse(options.getUri());
      cliConfig.tryConnect(connectionInfo,output,options.isDebug());
      cliConfig.getClientConfig().setHostname(connectionInfo.getHostname());
      cliConfig.getClientConfig().setPort(connectionInfo.getPort());
      cliConfig.getClientConfig().setSSLEnabled(connectionInfo.isSSLEnabled());
      cliConfig.getClientConfig().setNamespace(connectionInfo.getNamespace());
    }
 catch (    Exception e) {
      if (options.isDebug()) {
        e.printStackTrace(output);
      }
    }
  }
  this.commands=ImmutableList.of(injector.getInstance(DefaultCommands.class),new CommandSet<Command>(ImmutableList.<Command>of(new HelpCommand(getCommandsSupplier()),new SearchCommandsCommand(getCommandsSupplier()))));
  Map<String,Completer> completers=injector.getInstance(DefaultCompleters.class).get();
  cli=new CLI<Command>(Iterables.concat(commands),completers);
  cli.setExceptionHandler(new CLIExceptionHandler<Exception>(){
    @Override public boolean handleException(    PrintStream output,    Exception e,    int timesRetried){
      if (e instanceof SSLHandshakeException) {
        output.printf("String_Node_Str",VERIFY_SSL_OPTION.getLongOpt());
      }
 else       if (e instanceof InvalidCommandException) {
        InvalidCommandException ex=(InvalidCommandException)e;
        output.printf("String_Node_Str",ex.getInput());
      }
 else {
        output.println("String_Node_Str" + e.getMessage());
      }
      if (options.isDebug()) {
        e.printStackTrace(output);
      }
      return false;
    }
  }
);
  cli.addCompleterSupplier(injector.getInstance(EndpointSupplier.class));
  updateCLIPrompt(cliConfig.getClientConfig());
  cliConfig.addHostnameChangeListener(new CLIConfig.ConnectionChangeListener(){
    @Override public void onConnectionChanged(    ClientConfig clientConfig){
      updateCLIPrompt(clientConfig);
    }
  }
);
}