Program: 187930
Project: 187930
Buggy source:
private void updateChannelsList(){
  mRSSCursor.requery();
  mAtomCursor.requery();
  int rssCursorItems=mRSSCursor.count();
  int atmCursorItems=mAtomCursor.count();
  String[] namesList=new String[rssCursorItems + atmCursorItems];
  int namesRowIndex=mRSSCursor.getColumnIndex(News.RSSFeeds.CHANNEL_NAME);
  int idRowIndex=mRSSCursor.getColumnIndex(News.RSSFeeds._ID);
  List<HashMap> dataList=new Vector<HashMap>();
  mRSSCursor.first();
  mAtomCursor.first();
  for (int i=0; i < rssCursorItems; i++) {
    HashMap<String,String> data=new HashMap<String,String>();
    String tID=mRSSCursor.getString(idRowIndex);
    Log.d(_TAG,"String_Node_Str" + tID + "String_Node_Str");
    Cursor tempCursor=News.mContentResolver.query(News.RSSFeedContents.CONTENT_URI,RSS_CONTENTS_PROJECTION,News.RSSFeedContents.CHANNEL_ID + "String_Node_Str" + tID,null,"String_Node_Str");
    int count=tempCursor.count();
    tempCursor.close();
    data.put(News._ID,tID);
    data.put(News.RSSFeeds.CHANNEL_NAME,mRSSCursor.getString(namesRowIndex));
    data.put(News.MESSAGE_COUNT,Integer.toString(count));
    data.put(News.FEED_TYPE,News.FEED_TYPE_RSS);
    dataList.add(data);
    mRSSCursor.next();
  }
  namesRowIndex=mAtomCursor.getColumnIndex(News.AtomFeeds.FEED_TITLE);
  idRowIndex=mAtomCursor.getColumnIndex(News.AtomFeeds._ID);
  for (int i=0; i < atmCursorItems; i++) {
    HashMap<String,String> data=new HashMap<String,String>();
    String tID=mAtomCursor.getString(idRowIndex);
    Log.d(_TAG,"String_Node_Str" + tID + "String_Node_Str");
    Cursor tempCursor=News.mContentResolver.query(News.AtomFeedContents.CONTENT_URI,ATOM_CONTENTS_PROJECTION,News.AtomFeedContents.FEED_ID + "String_Node_Str" + tID,null,"String_Node_Str");
    int count=tempCursor.count();
    tempCursor.close();
    data.put(News._ID,tID);
    data.put(News.AtomFeeds.FEED_TITLE,mAtomCursor.getString(namesRowIndex));
    data.put(News.MESSAGE_COUNT,Integer.toString(count));
    data.put(News.FEED_TYPE,News.FEED_TYPE_ATOM);
    dataList.add(data);
    mAtomCursor.next();
  }
  ListAdapter channelsAdapter=new ChannelListAdapter(this,dataList);
  Log.d(_TAG,"String_Node_Str" + channelsAdapter.getCount() + "String_Node_Str");
  mChannelsView.setAdapter(channelsAdapter);
  mChannelsView.debug();
}

Fixed version (ground truth):
private void updateChannelsList(){
  mRSSCursor.requery();
  mAtomCursor.requery();
  int rssCursorItems=mRSSCursor.count();
  int atmCursorItems=mAtomCursor.count();
  String[] namesList=new String[rssCursorItems + atmCursorItems];
  int namesRowIndex=mRSSCursor.getColumnIndex(News.RSSFeeds.CHANNEL_NAME);
  int idRowIndex=mRSSCursor.getColumnIndex(News.RSSFeeds._ID);
  List<HashMap> dataList=new Vector<HashMap>();
  mRSSCursor.first();
  mAtomCursor.first();
  for (int i=0; i < rssCursorItems; i++) {
    HashMap<String,String> data=new HashMap<String,String>();
    String tID=mRSSCursor.getString(idRowIndex);
    Log.d(_TAG,"String_Node_Str" + tID + "String_Node_Str");
    Cursor tempCursor=News.mContentResolver.query(News.RSSFeedContents.CONTENT_URI,RSS_CONTENTS_PROJECTION,News.RSSFeedContents.CHANNEL_ID + "String_Node_Str" + tID,null,"String_Node_Str");
    int count=tempCursor.count();
    tempCursor.close();
    data.put(News._ID,tID);
    data.put(News.RSSFeeds.CHANNEL_NAME,mRSSCursor.getString(namesRowIndex));
    data.put(News.MESSAGE_COUNT,Integer.toString(count));
    data.put(News.FEED_TYPE,News.FEED_TYPE_RSS);
    dataList.add(data);
    mRSSCursor.next();
  }
  namesRowIndex=mAtomCursor.getColumnIndex(News.AtomFeeds.FEED_TITLE);
  idRowIndex=mAtomCursor.getColumnIndex(News.AtomFeeds._ID);
  for (int i=0; i < atmCursorItems; i++) {
    HashMap<String,String> data=new HashMap<String,String>();
    String tID=mAtomCursor.getString(idRowIndex);
    Log.d(_TAG,"String_Node_Str" + tID + "String_Node_Str");
    Cursor tempCursor=News.mContentResolver.query(News.AtomFeedContents.CONTENT_URI,ATOM_CONTENTS_PROJECTION,News.AtomFeedContents.FEED_ID + "String_Node_Str" + tID,null,"String_Node_Str");
    int count=tempCursor.count();
    tempCursor.close();
    data.put(News._ID,tID);
    data.put(News.AtomFeeds.FEED_TITLE,mAtomCursor.getString(namesRowIndex));
    data.put(News.MESSAGE_COUNT,Integer.toString(count));
    data.put(News.FEED_TYPE,News.FEED_TYPE_ATOM);
    dataList.add(data);
    mAtomCursor.next();
  }
  ListAdapter channelsAdapter=new ChannelListAdapter(this,dataList);
  if (dataList.size() == 0) {
    Toast.makeText(this,"String_Node_Str",Toast.LENGTH_LONG).show();
  }
  Log.d(_TAG,"String_Node_Str" + channelsAdapter.getCount() + "String_Node_Str");
  mChannelsView.setAdapter(channelsAdapter);
  mChannelsView.debug();
}