Program: 83625
Project: 83625
Buggy source:
public GameView(Context context,Game game){
  super(context);
  mGame=game;
  mOrientation=Configuration.ORIENTATION_PORTRAIT;
  mHeight=480;
  mWidth=320;
  mPlayerEntityBitmaps=new HashMap<Player,Bitmap[]>();
  Resources res=getResources();
  for (int i=0; i < Game.NUM_PLAYERS; i++) {
    Bitmap[] playerBitmaps=new Bitmap[Entity.TYPES.length];
switch (i) {
case 0:
      playerBitmaps[Entity.FIGHTER]=BitmapFactory.decodeResource(res,R.drawable.fighter_p1);
    playerBitmaps[Entity.BOMBER]=BitmapFactory.decodeResource(res,R.drawable.bomber_p1);
  playerBitmaps[Entity.FRIGATE]=BitmapFactory.decodeResource(res,R.drawable.frigate_p1);
playerBitmaps[Entity.FACTORY]=BitmapFactory.decodeResource(res,R.drawable.factory_p1);
break;
case 1:
playerBitmaps[Entity.FIGHTER]=BitmapFactory.decodeResource(res,R.drawable.fighter_p2);
playerBitmaps[Entity.BOMBER]=BitmapFactory.decodeResource(res,R.drawable.bomber_p2);
playerBitmaps[Entity.FRIGATE]=BitmapFactory.decodeResource(res,R.drawable.frigate_p2);
playerBitmaps[Entity.FACTORY]=BitmapFactory.decodeResource(res,R.drawable.factory_p2);
break;
}
playerBitmaps[Entity.LASER]=BitmapFactory.decodeResource(res,R.drawable.laser);
playerBitmaps[Entity.BOMB]=BitmapFactory.decodeResource(res,R.drawable.bomb);
playerBitmaps[Entity.MISSILE]=BitmapFactory.decodeResource(res,R.drawable.missile);
mPlayerEntityBitmaps.put(game.mPlayers[i],playerBitmaps);
}
mBackgroundBitmap=BitmapFactory.decodeResource(res,R.drawable.background);
mBoundsPaints=new Paint[2];
mBoundsPaints[0]=new Paint();
mBoundsPaints[1]=new Paint();
mBoundsPaints[0].setARGB(192,0,64,255);
mBoundsPaints[1].setARGB(192,192,0,0);
for (Paint paint : mBoundsPaints) {
paint.setStyle(Paint.Style.STROKE);
paint.setStrokeWidth(2);
}
mLaserPaint=new Paint();
mLaserPaint.setARGB(255,255,255,255);
mLaserPaint.setStyle(Paint.Style.FILL_AND_STROKE);
mBitmapPaint=new Paint(Paint.FILTER_BITMAP_FLAG);
}

Fixed version (ground truth):
public GameView(Context context,Game game){
  super(context);
  mGame=game;
  mContext=context;
  mHeight=0;
  mWidth=0;
  mPlayerEntityBitmaps=new HashMap<Player,Bitmap[]>();
  Resources res=getResources();
  for (int i=0; i < Game.NUM_PLAYERS; i++) {
    Bitmap[] playerBitmaps=new Bitmap[Entity.TYPES.length];
switch (i) {
case 0:
      playerBitmaps[Entity.FIGHTER]=BitmapFactory.decodeResource(res,R.drawable.fighter_p1);
    playerBitmaps[Entity.BOMBER]=BitmapFactory.decodeResource(res,R.drawable.bomber_p1);
  playerBitmaps[Entity.FRIGATE]=BitmapFactory.decodeResource(res,R.drawable.frigate_p1);
playerBitmaps[Entity.FACTORY]=BitmapFactory.decodeResource(res,R.drawable.factory_p1);
break;
case 1:
playerBitmaps[Entity.FIGHTER]=BitmapFactory.decodeResource(res,R.drawable.fighter_p2);
playerBitmaps[Entity.BOMBER]=BitmapFactory.decodeResource(res,R.drawable.bomber_p2);
playerBitmaps[Entity.FRIGATE]=BitmapFactory.decodeResource(res,R.drawable.frigate_p2);
playerBitmaps[Entity.FACTORY]=BitmapFactory.decodeResource(res,R.drawable.factory_p2);
break;
}
playerBitmaps[Entity.LASER]=BitmapFactory.decodeResource(res,R.drawable.laser);
playerBitmaps[Entity.BOMB]=BitmapFactory.decodeResource(res,R.drawable.bomb);
playerBitmaps[Entity.MISSILE]=BitmapFactory.decodeResource(res,R.drawable.missile);
mPlayerEntityBitmaps.put(game.mPlayers[i],playerBitmaps);
}
mBackgroundBitmap=BitmapFactory.decodeResource(res,R.drawable.background);
mBoundsPaints=new Paint[2];
mBoundsPaints[0]=new Paint();
mBoundsPaints[1]=new Paint();
mBoundsPaints[0].setARGB(192,0,64,255);
mBoundsPaints[1].setARGB(192,192,0,0);
for (Paint paint : mBoundsPaints) {
paint.setStyle(Paint.Style.STROKE);
paint.setStrokeWidth(2);
}
mLaserPaint=new Paint();
mLaserPaint.setARGB(255,255,255,255);
mLaserPaint.setStyle(Paint.Style.FILL_AND_STROKE);
mBitmapPaint=new Paint(Paint.FILTER_BITMAP_FLAG);
}