Program: 124523
Project: 124523
Buggy source:
@Override public void onActivityCreated(final Bundle savedInstanceState){
  super.onActivityCreated(savedInstanceState);
  setEmptyText(getString(R.string.exchange_rates_fragment_empty_text));
  adapter=new ResourceCursorAdapter(activity,R.layout.exchange_rate_row,null,true){
    @Override public void bindView(    final View view,    final Context context,    final Cursor cursor){
      final ExchangeRate exchangeRate=ExchangeRatesProvider.getExchangeRate(cursor);
      final BigDecimal bdRate=new BigDecimal(exchangeRate.rate);
      final boolean isDefaultCurrency=exchangeRate.currencyCode.equals(defaultCurrency);
      view.setBackgroundResource(isDefaultCurrency ? R.color.bg_less_bright : R.color.bg_bright);
      final View defaultView=view.findViewById(R.id.exchange_rate_row_default);
      defaultView.setVisibility(isDefaultCurrency ? View.VISIBLE : View.INVISIBLE);
      final TextView currencyCodeView=(TextView)view.findViewById(R.id.exchange_rate_row_currency_code);
      currencyCodeView.setText(exchangeRate.currencyCode);
      final CurrencyAmountView rateView=(CurrencyAmountView)view.findViewById(R.id.exchange_rate_row_rate);
      rateView.setCurrencyCode(null);
      rateView.setAmount(WalletUtils.localValue(Utils.COIN,bdRate));
      final CurrencyAmountView walletView=(CurrencyAmountView)view.findViewById(R.id.exchange_rate_row_balance);
      walletView.setCurrencyCode(null);
      walletView.setAmount(WalletUtils.localValue(balance,bdRate));
      walletView.setStrikeThru(Constants.TEST);
      walletView.setTextColor(getResources().getColor(R.color.fg_less_significant));
    }
  }
;
  setListAdapter(adapter);
  getLoaderManager().initLoader(0,null,this);
}

Fixed version (ground truth):
@Override public void onActivityCreated(final Bundle savedInstanceState){
  super.onActivityCreated(savedInstanceState);
  setEmptyText(getString(R.string.exchange_rates_fragment_empty_text));
  adapter=new ResourceCursorAdapter(activity,R.layout.exchange_rate_row,null,true){
    @Override public void bindView(    final View view,    final Context context,    final Cursor cursor){
      final ExchangeRate exchangeRate=ExchangeRatesProvider.getExchangeRate(cursor);
      final boolean isDefaultCurrency=exchangeRate.currencyCode.equals(defaultCurrency);
      view.setBackgroundResource(isDefaultCurrency ? R.color.bg_less_bright : R.color.bg_bright);
      final View defaultView=view.findViewById(R.id.exchange_rate_row_default);
      defaultView.setVisibility(isDefaultCurrency ? View.VISIBLE : View.INVISIBLE);
      final TextView currencyCodeView=(TextView)view.findViewById(R.id.exchange_rate_row_currency_code);
      currencyCodeView.setText(exchangeRate.currencyCode);
      final CurrencyAmountView rateView=(CurrencyAmountView)view.findViewById(R.id.exchange_rate_row_rate);
      rateView.setCurrencyCode(null);
      rateView.setPrecision(Constants.LOCAL_PRECISION);
      rateView.setAmount(WalletUtils.localValue(Utils.COIN,exchangeRate.rate));
      final CurrencyAmountView walletView=(CurrencyAmountView)view.findViewById(R.id.exchange_rate_row_balance);
      walletView.setCurrencyCode(null);
      walletView.setPrecision(Constants.LOCAL_PRECISION);
      walletView.setAmount(WalletUtils.localValue(balance,exchangeRate.rate));
      walletView.setStrikeThru(Constants.TEST);
      walletView.setTextColor(getResources().getColor(R.color.fg_less_significant));
    }
  }
;
  setListAdapter(adapter);
  getLoaderManager().initLoader(0,null,this);
}