Program: 57736
Project: 57736
Buggy source:
/** 
 * 实现接口申明的方法。
 * @param position :the position of item in drawer
 */
@Override public void onNavigationDrawerItemSelected(int position){
  FragmentManager fragmentManager=getFragmentManager();
switch (position) {
case 0:
    fragmentManager.beginTransaction().replace(R.id.container,Base64Fragment.newInstance(position + 1)).commit();
  break;
case 1:
fragmentManager.beginTransaction().replace(R.id.container,MD5Fragment.newInstance(position + 1)).commit();
break;
case 2:
fragmentManager.beginTransaction().replace(R.id.container,SHAFragment.newInstance(position + 1,"String_Node_Str")).commit();
break;
case 3:
fragmentManager.beginTransaction().replace(R.id.container,SHAFragment.newInstance(position + 1,"String_Node_Str")).commit();
break;
case 4:
fragmentManager.beginTransaction().replace(R.id.container,SHAFragment.newInstance(position + 1,"String_Node_Str")).commit();
break;
case 5:
fragmentManager.beginTransaction().replace(R.id.container,SHAFragment.newInstance(position + 1,"String_Node_Str")).commit();
break;
case 6:
fragmentManager.beginTransaction().replace(R.id.container,HmacFragment.newInstance(position + 1,"String_Node_Str")).commit();
break;
case 7:
fragmentManager.beginTransaction().replace(R.id.container,HmacFragment.newInstance(position + 1,"String_Node_Str")).commit();
break;
case 8:
fragmentManager.beginTransaction().replace(R.id.container,HmacFragment.newInstance(position + 1,"String_Node_Str")).commit();
break;
case 9:
fragmentManager.beginTransaction().replace(R.id.container,HmacFragment.newInstance(position + 1,"String_Node_Str")).commit();
break;
case 10:
fragmentManager.beginTransaction().replace(R.id.container,HmacFragment.newInstance(position + 1,"String_Node_Str")).commit();
break;
default :
fragmentManager.beginTransaction().replace(R.id.container,PlaceholderFragment.newInstance(position + 1)).commit();
break;
}
}

Fixed version (ground truth):
/** 
 * 实现接口申明的方法。
 * @param position :the position of item in drawer
 */
@Override public void onNavigationDrawerItemSelected(int position){
  FragmentManager fragmentManager=getFragmentManager();
switch (position) {
case 0:
    fragmentManager.beginTransaction().replace(R.id.container,Base64Fragment.newInstance(position + 1)).commit();
  break;
case 1:
fragmentManager.beginTransaction().replace(R.id.container,MD5Fragment.newInstance(position + 1)).commit();
break;
case 2:
fragmentManager.beginTransaction().replace(R.id.container,SHAFragment.newInstance(position + 1,"String_Node_Str")).commit();
break;
case 3:
fragmentManager.beginTransaction().replace(R.id.container,SHAFragment.newInstance(position + 1,"String_Node_Str")).commit();
break;
case 4:
fragmentManager.beginTransaction().replace(R.id.container,SHAFragment.newInstance(position + 1,"String_Node_Str")).commit();
break;
case 5:
fragmentManager.beginTransaction().replace(R.id.container,SHAFragment.newInstance(position + 1,"String_Node_Str")).commit();
break;
case 6:
fragmentManager.beginTransaction().replace(R.id.container,HmacFragment.newInstance(position + 1,"String_Node_Str")).commit();
break;
case 7:
fragmentManager.beginTransaction().replace(R.id.container,HmacFragment.newInstance(position + 1,"String_Node_Str")).commit();
break;
case 8:
fragmentManager.beginTransaction().replace(R.id.container,HmacFragment.newInstance(position + 1,"String_Node_Str")).commit();
break;
case 9:
fragmentManager.beginTransaction().replace(R.id.container,HmacFragment.newInstance(position + 1,"String_Node_Str")).commit();
break;
case 10:
fragmentManager.beginTransaction().replace(R.id.container,HmacFragment.newInstance(position + 1,"String_Node_Str")).commit();
break;
case 11:
fragmentManager.beginTransaction().replace(R.id.container,DESFragment.newInstance(position + 1)).commit();
break;
default :
fragmentManager.beginTransaction().replace(R.id.container,PlaceholderFragment.newInstance(position + 1)).commit();
break;
}
}