Program: 184515
Project: 184515
Buggy source:
void initializeFirstTime(){
  if (mFirstTimeInitialized)   return;
  mOrientationListener=new OrientationEventListener(Camera.this){
    @Override public void onOrientationChanged(    int orientation){
      if (orientation != ORIENTATION_UNKNOWN) {
        mLastOrientation=orientation;
      }
    }
  }
;
  mOrientationListener.enable();
  mLocationManager=(LocationManager)getSystemService(Context.LOCATION_SERVICE);
  readPreference();
  if (mRecordLocation)   startReceivingLocationUpdates();
  mContentResolver=getContentResolver();
  if (!mIsImageCaptureIntent) {
    findViewById(R.id.video_button).setOnClickListener(this);
    mLastPictureButton=(ImageView)findViewById(R.id.review_button);
    mLastPictureButton.setOnClickListener(this);
    mThumbController=new ThumbnailController(mLastPictureButton,mContentResolver);
    mThumbController.loadData(ImageManager.getLastImageThumbPath());
    if (!mThumbController.isUriValid()) {
      updateLastImage();
    }
    mThumbController.updateDisplayIfNeeded();
  }
 else {
    findViewById(R.id.review_button).setVisibility(View.INVISIBLE);
    findViewById(R.id.video_button).setVisibility(View.INVISIBLE);
    ViewGroup cameraView=(ViewGroup)findViewById(R.id.camera);
    getLayoutInflater().inflate(R.layout.post_picture_panel,cameraView);
    mPostCaptureAlert=findViewById(R.id.post_picture_panel);
  }
  findViewById(R.id.photo_indicator).setVisibility(View.VISIBLE);
  mShutterButton=(ShutterButton)findViewById(R.id.camera_button);
  mShutterButton.setOnShutterButtonListener(this);
  mShutterButton.setVisibility(View.VISIBLE);
  mFocusRectangle=(FocusRectangle)findViewById(R.id.focus_rectangle);
  updateFocusIndicator();
  mGpsIndicator=(ImageView)findViewById(R.id.gps_indicator);
  mGpsIndicator.setImageResource(R.drawable.ic_gps_active_camera);
  ImageManager.ensureOSXCompatibleFolder();
  calculatePicturesRemaining();
  installIntentFilter();
  initializeFocusTone();
  initializeZoom();
  mFirstTimeInitialized=true;
}

Fixed version (ground truth):
void initializeFirstTime(){
  if (mFirstTimeInitialized)   return;
  mOrientationListener=new OrientationEventListener(Camera.this){
    @Override public void onOrientationChanged(    int orientation){
      if (orientation != ORIENTATION_UNKNOWN) {
        mLastOrientation=orientation;
      }
    }
  }
;
  mOrientationListener.enable();
  mLocationManager=(LocationManager)getSystemService(Context.LOCATION_SERVICE);
  readPreference();
  if (mRecordLocation)   startReceivingLocationUpdates();
  mContentResolver=getContentResolver();
  if (!mIsImageCaptureIntent) {
    findViewById(R.id.video_button).setOnClickListener(this);
    mLastPictureButton=(ImageView)findViewById(R.id.review_button);
    mLastPictureButton.setOnClickListener(this);
    mThumbController=new ThumbnailController(mLastPictureButton,mContentResolver);
    mThumbController.loadData(ImageManager.getLastImageThumbPath());
    updateThumbnailButton();
  }
 else {
    findViewById(R.id.review_button).setVisibility(View.INVISIBLE);
    findViewById(R.id.video_button).setVisibility(View.INVISIBLE);
    ViewGroup cameraView=(ViewGroup)findViewById(R.id.camera);
    getLayoutInflater().inflate(R.layout.post_picture_panel,cameraView);
    mPostCaptureAlert=findViewById(R.id.post_picture_panel);
  }
  findViewById(R.id.photo_indicator).setVisibility(View.VISIBLE);
  mShutterButton=(ShutterButton)findViewById(R.id.camera_button);
  mShutterButton.setOnShutterButtonListener(this);
  mShutterButton.setVisibility(View.VISIBLE);
  mFocusRectangle=(FocusRectangle)findViewById(R.id.focus_rectangle);
  updateFocusIndicator();
  mGpsIndicator=(ImageView)findViewById(R.id.gps_indicator);
  mGpsIndicator.setImageResource(R.drawable.ic_gps_active_camera);
  ImageManager.ensureOSXCompatibleFolder();
  calculatePicturesRemaining();
  installIntentFilter();
  initializeFocusTone();
  initializeZoom();
  mFirstTimeInitialized=true;
}