Program: 33915
Project: 33915
Buggy source:
@Override protected void onCreate(Bundle savedInstanceState){
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_start);
  mDrawerLayout=(DrawerLayout)findViewById(R.id.nav_drawer_layout);
  mDrawerList=(ListView)findViewById(R.id.left_drawer);
  ArrayList<ListItem> navDrawer=new ArrayList<ListItem>();
  navDrawer.add(new NavDrawerItem("String_Node_Str",R.drawable.ic_action_event_selectable,R.layout.nav_drawer_item));
  navDrawer.add(new NavDrawerItem("String_Node_Str",R.drawable.ic_action_group_selectable,R.layout.nav_drawer_item));
  navDrawer.add(new NavDrawerItem("String_Node_Str",R.drawable.ic_action_sort_by_size_selectable,R.layout.nav_drawer_item));
  navDrawer.add(new NavDrawerItem("String_Node_Str",R.drawable.ic_action_settings_selectable,R.layout.nav_drawer_item_small));
  mDrawerList.setAdapter(new ListViewAdapter(this,navDrawer,null));
  mDrawerList.setOnItemClickListener(this);
  mDrawerToggle=new ActionBarDrawerToggle(this,mDrawerLayout,R.drawable.ic_drawer,R.string.drawer_open,R.string.drawer_close){
    /** 
 * Called when a drawer has settled in a completely closed state. 
 */
    public void onDrawerClosed(    View view){
      super.onDrawerClosed(view);
      setupActionBarForPosition(mCurrentSelectedNavigationItemPosition);
    }
    /** 
 * Called when a drawer has settled in a completely open state. 
 */
    public void onDrawerOpened(    View drawerView){
      super.onDrawerOpened(drawerView);
      resetActionBar();
      getActionBar().setTitle("String_Node_Str");
    }
  }
;
  mDrawerLayout.setDrawerListener(mDrawerToggle);
  getActionBar().setDisplayHomeAsUpEnabled(true);
  getActionBar().setHomeButtonEnabled(true);
  if (savedInstanceState != null) {
    mCurrentSelectedNavigationItemPosition=savedInstanceState.getInt(STATE_SELECTED_NAVIGATION_ITEM_POSITION,0);
    Fragment f=getSupportFragmentManager().findFragmentByTag(MAIN_FRAGMENT_TAG);
    if (f == null) {
      Log.d("String_Node_Str","String_Node_Str");
      switchToModeForPosition(mCurrentSelectedNavigationItemPosition);
    }
 else {
      Log.d("String_Node_Str","String_Node_Str");
      setupActionBarForPosition(mCurrentSelectedNavigationItemPosition);
    }
    if (savedInstanceState.containsKey(STATE_SELECTED_YEAR_SPINNER_POSITION) && getActionBar().getNavigationMode() == ActionBar.NAVIGATION_MODE_LIST) {
      getActionBar().setSelectedNavigationItem(savedInstanceState.getInt(STATE_SELECTED_YEAR_SPINNER_POSITION));
    }
  }
 else {
    switchToModeForPosition(0);
  }
}

Fixed version (ground truth):
@Override protected void onCreate(Bundle savedInstanceState){
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_start);
  mDrawerLayout=(DrawerLayout)findViewById(R.id.nav_drawer_layout);
  mDrawerList=(ListView)findViewById(R.id.left_drawer);
  ArrayList<ListItem> navDrawer=new ArrayList<ListItem>();
  navDrawer.add(new NavDrawerItem("String_Node_Str",R.drawable.ic_action_event_selectable,R.layout.nav_drawer_item));
  navDrawer.add(new NavDrawerItem("String_Node_Str",R.drawable.ic_action_group_selectable,R.layout.nav_drawer_item));
  navDrawer.add(new NavDrawerItem("String_Node_Str",R.drawable.ic_action_sort_by_size_selectable,R.layout.nav_drawer_item));
  navDrawer.add(new NavDrawerItem("String_Node_Str",R.drawable.ic_action_settings_selectable,R.layout.nav_drawer_item_small));
  mDrawerList.setAdapter(new NavigationDrawerAdapter(this,navDrawer,null));
  mDrawerList.setOnItemClickListener(this);
  mDrawerToggle=new ActionBarDrawerToggle(this,mDrawerLayout,R.drawable.ic_drawer,R.string.drawer_open,R.string.drawer_close){
    /** 
 * Called when a drawer has settled in a completely closed state. 
 */
    public void onDrawerClosed(    View view){
      super.onDrawerClosed(view);
      setupActionBarForPosition(mCurrentSelectedNavigationItemPosition);
    }
    /** 
 * Called when a drawer has settled in a completely open state. 
 */
    public void onDrawerOpened(    View drawerView){
      super.onDrawerOpened(drawerView);
      resetActionBar();
      getActionBar().setTitle("String_Node_Str");
    }
  }
;
  mDrawerLayout.setDrawerListener(mDrawerToggle);
  getActionBar().setDisplayHomeAsUpEnabled(true);
  getActionBar().setHomeButtonEnabled(true);
  if (savedInstanceState != null) {
    mCurrentSelectedNavigationItemPosition=savedInstanceState.getInt(STATE_SELECTED_NAVIGATION_ITEM_POSITION,0);
    Fragment f=getSupportFragmentManager().findFragmentByTag(MAIN_FRAGMENT_TAG);
    if (f == null) {
      Log.d("String_Node_Str","String_Node_Str");
      switchToModeForPosition(mCurrentSelectedNavigationItemPosition);
    }
 else {
      Log.d("String_Node_Str","String_Node_Str");
      setupActionBarForPosition(mCurrentSelectedNavigationItemPosition);
    }
    if (savedInstanceState.containsKey(STATE_SELECTED_YEAR_SPINNER_POSITION) && getActionBar().getNavigationMode() == ActionBar.NAVIGATION_MODE_LIST) {
      getActionBar().setSelectedNavigationItem(savedInstanceState.getInt(STATE_SELECTED_YEAR_SPINNER_POSITION));
    }
  }
 else {
    switchToModeForPosition(0);
  }
}