Program: 22810
Project: 22810
Buggy source:
/** 
 * @param context Used to setup the view.
 * @param configuration The current configuration. Used to use when selecting layout, etc.
 * @param lockPatternUtils Used to know the state of the lock pattern settings.
 * @param updateMonitor Used to register for updates on various keyguard relatedstate, and query the initial state at setup.
 * @param callback Used to communicate back to the host keyguard view.
 */
LockScreen(Context context,Configuration configuration,LockPatternUtils lockPatternUtils,KeyguardUpdateMonitor updateMonitor,KeyguardScreenCallback callback){
  super(context);
  mLockPatternUtils=lockPatternUtils;
  mUpdateMonitor=updateMonitor;
  mCallback=callback;
  mEnableMenuKeyInLockScreen=shouldEnableMenuKey();
  mCreationOrientation=configuration.orientation;
  mKeyboardHidden=configuration.hardKeyboardHidden;
  final LayoutInflater inflater=LayoutInflater.from(context);
  if (DBG)   Log.v(TAG,"String_Node_Str" + mCreationOrientation);
  if (mCreationOrientation != Configuration.ORIENTATION_LANDSCAPE) {
    inflater.inflate(R.layout.keyguard_screen_tab_unlock,this,true);
  }
 else {
    inflater.inflate(R.layout.keyguard_screen_tab_unlock_land,this,true);
  }
  mCarrier=(TextView)findViewById(R.id.carrier);
  mCarrier.setSelected(true);
  mCarrier.setTextColor(0xffffffff);
  mDate=(TextView)findViewById(R.id.date);
  mStatus1=(TextView)findViewById(R.id.status1);
  mStatus2=(TextView)findViewById(R.id.status2);
  mEmergencyCallButton=(Button)findViewById(R.id.emergencyCallButton);
  mEmergencyCallButton.setText(R.string.lockscreen_emergency_call);
  mLockPatternUtils.updateEmergencyCallButtonState(mEmergencyCallButton);
  mScreenLocked=(TextView)findViewById(R.id.screenLocked);
  mSelector=(SlidingTab)findViewById(R.id.tab_selector);
  mSelector.setHoldAfterTrigger(true,false);
  mSelector.setLeftHintText(R.string.lockscreen_unlock_label);
  mEmergencyCallButton.setOnClickListener(new View.OnClickListener(){
    public void onClick(    View v){
      mCallback.takeEmergencyCallAction();
    }
  }
);
  setFocusable(true);
  setFocusableInTouchMode(true);
  setDescendantFocusability(ViewGroup.FOCUS_BLOCK_DESCENDANTS);
  updateMonitor.registerInfoCallback(this);
  updateMonitor.registerSimStateCallback(this);
  mAudioManager=(AudioManager)getContext().getSystemService(Context.AUDIO_SERVICE);
  mSilentMode=isSilentMode();
  mSelector.setLeftTabResources(R.drawable.ic_jog_dial_unlock,R.drawable.jog_tab_target_green,R.drawable.jog_tab_bar_left_unlock,R.drawable.jog_tab_left_unlock);
  updateRightTabResources();
  mSelector.setOnTriggerListener(this);
  resetStatusInfo(updateMonitor);
}

Fixed version (ground truth):
/** 
 * @param context Used to setup the view.
 * @param configuration The current configuration. Used to use when selecting layout, etc.
 * @param lockPatternUtils Used to know the state of the lock pattern settings.
 * @param updateMonitor Used to register for updates on various keyguard relatedstate, and query the initial state at setup.
 * @param callback Used to communicate back to the host keyguard view.
 */
LockScreen(Context context,Configuration configuration,LockPatternUtils lockPatternUtils,KeyguardUpdateMonitor updateMonitor,KeyguardScreenCallback callback){
  super(context);
  mLockPatternUtils=lockPatternUtils;
  mUpdateMonitor=updateMonitor;
  mCallback=callback;
  mEnableMenuKeyInLockScreen=shouldEnableMenuKey();
  mCreationOrientation=configuration.orientation;
  mKeyboardHidden=configuration.hardKeyboardHidden;
  if (LockPatternKeyguardView.DEBUG_CONFIGURATION) {
    Log.v(TAG,"String_Node_Str",new RuntimeException());
    Log.v(TAG,"String_Node_Str" + mCreationOrientation + "String_Node_Str"+ context.getResources().getConfiguration().orientation);
  }
  final LayoutInflater inflater=LayoutInflater.from(context);
  if (DBG)   Log.v(TAG,"String_Node_Str" + mCreationOrientation);
  if (mCreationOrientation != Configuration.ORIENTATION_LANDSCAPE) {
    inflater.inflate(R.layout.keyguard_screen_tab_unlock,this,true);
  }
 else {
    inflater.inflate(R.layout.keyguard_screen_tab_unlock_land,this,true);
  }
  mCarrier=(TextView)findViewById(R.id.carrier);
  mCarrier.setSelected(true);
  mCarrier.setTextColor(0xffffffff);
  mDate=(TextView)findViewById(R.id.date);
  mStatus1=(TextView)findViewById(R.id.status1);
  mStatus2=(TextView)findViewById(R.id.status2);
  mEmergencyCallButton=(Button)findViewById(R.id.emergencyCallButton);
  mEmergencyCallButton.setText(R.string.lockscreen_emergency_call);
  mLockPatternUtils.updateEmergencyCallButtonState(mEmergencyCallButton);
  mScreenLocked=(TextView)findViewById(R.id.screenLocked);
  mSelector=(SlidingTab)findViewById(R.id.tab_selector);
  mSelector.setHoldAfterTrigger(true,false);
  mSelector.setLeftHintText(R.string.lockscreen_unlock_label);
  mEmergencyCallButton.setOnClickListener(new View.OnClickListener(){
    public void onClick(    View v){
      mCallback.takeEmergencyCallAction();
    }
  }
);
  setFocusable(true);
  setFocusableInTouchMode(true);
  setDescendantFocusability(ViewGroup.FOCUS_BLOCK_DESCENDANTS);
  updateMonitor.registerInfoCallback(this);
  updateMonitor.registerSimStateCallback(this);
  mAudioManager=(AudioManager)getContext().getSystemService(Context.AUDIO_SERVICE);
  mSilentMode=isSilentMode();
  mSelector.setLeftTabResources(R.drawable.ic_jog_dial_unlock,R.drawable.jog_tab_target_green,R.drawable.jog_tab_bar_left_unlock,R.drawable.jog_tab_left_unlock);
  updateRightTabResources();
  mSelector.setOnTriggerListener(this);
  resetStatusInfo(updateMonitor);
}