nus-yam/ex-repair huggingface dataset:
Program: 54074
Project: 54074
Buggy source:
private void initText(ColorStateList textColorHintStateList){
  if (!TextUtils.isEmpty(getText())) {
    CharSequence text=getText();
    setText(null);
    if (textColorHintStateList != null) {
      setHintTextColor(textColorHintStateList);
    }
 else {
      setHintTextColor(baseColor & 0x00ffffff | 0x44000000);
    }
    setText(text);
    setSelection(text.length());
    floatingLabelFraction=1;
    floatingLabelShown=true;
  }
 else {
    if (textColorHintStateList != null) {
      setHintTextColor(textColorHintStateList);
    }
 else {
      setHintTextColor(baseColor & 0x00ffffff | 0x44000000);
    }
  }
}

Fixed version (ground truth):
private void initText(){
  if (!TextUtils.isEmpty(getText())) {
    CharSequence text=getText();
    setText(null);
    if (textColorHintStateList != null) {
      setHintTextColor(textColorHintStateList);
    }
 else {
      setHintTextColor(baseColor & 0x00ffffff | 0x44000000);
    }
    setText(text);
    setSelection(text.length());
    floatingLabelFraction=1;
    floatingLabelShown=true;
  }
 else {
    if (textColorHintStateList != null) {
      setHintTextColor(textColorHintStateList);
    }
 else {
      setHintTextColor(baseColor & 0x00ffffff | 0x44000000);
    }
  }
}
Program: 54075
Project: 54075
Buggy source:
public void setBaseColor(int color,ColorStateList textColorStateList,ColorStateList textColorHintStateList){
  if (baseColor != color) {
    baseColor=color;
  }
  if (textColorStateList == null) {
    textColorStateList=new ColorStateList(new int[][]{new int[]{android.R.attr.state_enabled},EMPTY_STATE_SET},new int[]{baseColor & 0x00ffffff | 0xdf000000,baseColor & 0x00ffffff | 0x44000000});
    setTextColor(textColorStateList);
  }
  if (textColorHintStateList == null) {
    setHintTextColor(baseColor & 0x00ffffff | 0x44000000);
  }
 else {
    setHintTextColor(textColorHintStateList);
  }
  postInvalidate();
}

Fixed version (ground truth):
public void setBaseColor(int color){
  if (baseColor != color) {
    baseColor=color;
  }
  resetTextColor();
  resetHintTextColor();
  postInvalidate();
}
Program: 54077
Project: 54077
Buggy source:
private void initText(ColorStateList textColorHintStateList){
  if (!TextUtils.isEmpty(getText())) {
    CharSequence text=getText();
    setText(null);
    if (textColorHintStateList != null) {
      setHintTextColor(textColorHintStateList);
    }
 else {
      setHintTextColor(baseColor & 0x00ffffff | 0x44000000);
    }
    setText(text);
    setSelection(text.length());
    floatingLabelFraction=1;
    floatingLabelShown=true;
  }
 else {
    if (textColorHintStateList != null) {
      setHintTextColor(textColorHintStateList);
    }
 else {
      setHintTextColor(baseColor & 0x00ffffff | 0x44000000);
    }
  }
}

Fixed version (ground truth):
private void initText(){
  if (!TextUtils.isEmpty(getText())) {
    CharSequence text=getText();
    setText(null);
    if (textColorHintStateList != null) {
      setHintTextColor(textColorHintStateList);
    }
 else {
      setHintTextColor(baseColor & 0x00ffffff | 0x44000000);
    }
    setText(text);
    setSelection(text.length());
    floatingLabelFraction=1;
    floatingLabelShown=true;
  }
 else {
    if (textColorHintStateList != null) {
      setHintTextColor(textColorHintStateList);
    }
 else {
      setHintTextColor(baseColor & 0x00ffffff | 0x44000000);
    }
  }
}
Program: 54078
Project: 54078
Buggy source:
private void initText(){
  if (!TextUtils.isEmpty(getText())) {
    CharSequence text=getText();
    setText(null);
    resetHintTextColor();
    setText(text);
    setSelection(text.length());
    floatingLabelFraction=1;
    floatingLabelShown=true;
  }
 else {
    resetHintTextColor();
  }
}

Fixed version (ground truth):
private void initText(){
  if (!TextUtils.isEmpty(getText())) {
    CharSequence text=getText();
    setText(null);
    resetHintTextColor();
    setText(text);
    setSelection(text.length());
    floatingLabelFraction=1;
    floatingLabelShown=true;
  }
 else {
    resetHintTextColor();
  }
  resetTextColor();
}
Program: 54079
Project: 54079
Buggy source:
private void initText(){
  if (!TextUtils.isEmpty(getText())) {
    CharSequence text=getText();
    setText(null);
    resetHintTextColor();
    setText(text);
    setSelection(text.length());
    floatingLabelFraction=1;
    floatingLabelShown=true;
  }
 else {
    resetHintTextColor();
  }
}

Fixed version (ground truth):
private void initText(){
  if (!TextUtils.isEmpty(getText())) {
    CharSequence text=getText();
    setText(null);
    resetHintTextColor();
    setText(text);
    setSelection(text.length());
    floatingLabelFraction=1;
    floatingLabelShown=true;
  }
 else {
    resetHintTextColor();
  }
  resetTextColor();
}
Program: 54080
Project: 54080
Buggy source:
private void initText(){
  if (!TextUtils.isEmpty(getText())) {
    CharSequence text=getText();
    setText(null);
    resetHintTextColor();
    setText(text);
    setSelection(text.length());
    floatingLabelFraction=1;
    floatingLabelShown=true;
  }
 else {
    resetHintTextColor();
  }
}

Fixed version (ground truth):
private void initText(){
  if (!TextUtils.isEmpty(getText())) {
    CharSequence text=getText();
    setText(null);
    resetHintTextColor();
    setText(text);
    setSelection(text.length());
    floatingLabelFraction=1;
    floatingLabelShown=true;
  }
 else {
    resetHintTextColor();
  }
  resetTextColor();
}
Program: 54081
Project: 54081
Buggy source:
@Override public void onFocusChange(View v,boolean hasFocus){
  if (floatingLabelEnabled && highlightFloatingLabel) {
    if (hasFocus) {
      if (getLabelFocusAnimator().isStarted()) {
        getLabelFocusAnimator().reverse();
      }
 else {
        getLabelFocusAnimator().start();
      }
    }
 else {
      getLabelFocusAnimator().reverse();
    }
    if (outerFocusChangeListener != null) {
      outerFocusChangeListener.onFocusChange(v,hasFocus);
    }
  }
}

Fixed version (ground truth):
@Override public void onFocusChange(View v,boolean hasFocus){
  if (floatingLabelEnabled && highlightFloatingLabel) {
    if (hasFocus) {
      if (getLabelFocusAnimator().isStarted()) {
        getLabelFocusAnimator().reverse();
      }
 else {
        getLabelFocusAnimator().start();
      }
    }
 else {
      getLabelFocusAnimator().reverse();
    }
  }
  if (outerFocusChangeListener != null) {
    outerFocusChangeListener.onFocusChange(v,hasFocus);
  }
}
Program: 54082
Project: 54082
Buggy source:
private void initFloatingLabel(){
  addTextChangedListener(new TextWatcher(){
    @Override public void beforeTextChanged(    CharSequence s,    int start,    int count,    int after){
    }
    @Override public void onTextChanged(    CharSequence s,    int start,    int before,    int count){
    }
    @Override public void afterTextChanged(    Editable s){
      if (floatingLabelEnabled) {
        if (s.length() == 0) {
          if (floatingLabelShown) {
            floatingLabelShown=false;
            getLabelAnimator().reverse();
          }
        }
 else         if (!floatingLabelShown) {
          floatingLabelShown=true;
          if (getLabelAnimator().isStarted()) {
            getLabelAnimator().reverse();
          }
 else {
            getLabelAnimator().start();
          }
        }
      }
    }
  }
);
  innerFocusChangeListener=new OnFocusChangeListener(){
    @Override public void onFocusChange(    View v,    boolean hasFocus){
      if (floatingLabelEnabled && highlightFloatingLabel) {
        if (hasFocus) {
          if (getLabelFocusAnimator().isStarted()) {
            getLabelFocusAnimator().reverse();
          }
 else {
            getLabelFocusAnimator().start();
          }
        }
 else {
          getLabelFocusAnimator().reverse();
        }
        if (outerFocusChangeListener != null) {
          outerFocusChangeListener.onFocusChange(v,hasFocus);
        }
      }
    }
  }
;
  super.setOnFocusChangeListener(innerFocusChangeListener);
}

Fixed version (ground truth):
private void initFloatingLabel(){
  addTextChangedListener(new TextWatcher(){
    @Override public void beforeTextChanged(    CharSequence s,    int start,    int count,    int after){
    }
    @Override public void onTextChanged(    CharSequence s,    int start,    int before,    int count){
    }
    @Override public void afterTextChanged(    Editable s){
      if (floatingLabelEnabled) {
        if (s.length() == 0) {
          if (floatingLabelShown) {
            floatingLabelShown=false;
            getLabelAnimator().reverse();
          }
        }
 else         if (!floatingLabelShown) {
          floatingLabelShown=true;
          if (getLabelAnimator().isStarted()) {
            getLabelAnimator().reverse();
          }
 else {
            getLabelAnimator().start();
          }
        }
      }
    }
  }
);
  innerFocusChangeListener=new OnFocusChangeListener(){
    @Override public void onFocusChange(    View v,    boolean hasFocus){
      if (floatingLabelEnabled && highlightFloatingLabel) {
        if (hasFocus) {
          if (getLabelFocusAnimator().isStarted()) {
            getLabelFocusAnimator().reverse();
          }
 else {
            getLabelFocusAnimator().start();
          }
        }
 else {
          getLabelFocusAnimator().reverse();
        }
      }
      if (outerFocusChangeListener != null) {
        outerFocusChangeListener.onFocusChange(v,hasFocus);
      }
    }
  }
;
  super.setOnFocusChangeListener(innerFocusChangeListener);
}
Program: 54083
Project: 54083
Buggy source:
@Override public void onFocusChange(View v,boolean hasFocus){
  if (floatingLabelEnabled && highlightFloatingLabel) {
    if (hasFocus) {
      if (getLabelFocusAnimator().isStarted()) {
        getLabelFocusAnimator().reverse();
      }
 else {
        getLabelFocusAnimator().start();
      }
    }
 else {
      getLabelFocusAnimator().reverse();
    }
    if (outerFocusChangeListener != null) {
      outerFocusChangeListener.onFocusChange(v,hasFocus);
    }
  }
}

Fixed version (ground truth):
@Override public void onFocusChange(View v,boolean hasFocus){
  if (floatingLabelEnabled && highlightFloatingLabel) {
    if (hasFocus) {
      if (getLabelFocusAnimator().isStarted()) {
        getLabelFocusAnimator().reverse();
      }
 else {
        getLabelFocusAnimator().start();
      }
    }
 else {
      getLabelFocusAnimator().reverse();
    }
  }
  if (outerFocusChangeListener != null) {
    outerFocusChangeListener.onFocusChange(v,hasFocus);
  }
}
Program: 54084
Project: 54084
Buggy source:
private void initFloatingLabel(){
  addTextChangedListener(new TextWatcher(){
    @Override public void beforeTextChanged(    CharSequence s,    int start,    int count,    int after){
    }
    @Override public void onTextChanged(    CharSequence s,    int start,    int before,    int count){
    }
    @Override public void afterTextChanged(    Editable s){
      if (floatingLabelEnabled) {
        if (s.length() == 0) {
          if (floatingLabelShown) {
            floatingLabelShown=false;
            getLabelAnimator().reverse();
          }
        }
 else         if (!floatingLabelShown) {
          floatingLabelShown=true;
          if (getLabelAnimator().isStarted()) {
            getLabelAnimator().reverse();
          }
 else {
            getLabelAnimator().start();
          }
        }
      }
    }
  }
);
  innerFocusChangeListener=new OnFocusChangeListener(){
    @Override public void onFocusChange(    View v,    boolean hasFocus){
      if (floatingLabelEnabled && highlightFloatingLabel) {
        if (hasFocus) {
          if (getLabelFocusAnimator().isStarted()) {
            getLabelFocusAnimator().reverse();
          }
 else {
            getLabelFocusAnimator().start();
          }
        }
 else {
          getLabelFocusAnimator().reverse();
        }
        if (outerFocusChangeListener != null) {
          outerFocusChangeListener.onFocusChange(v,hasFocus);
        }
      }
    }
  }
;
  super.setOnFocusChangeListener(innerFocusChangeListener);
}

Fixed version (ground truth):
private void initFloatingLabel(){
  addTextChangedListener(new TextWatcher(){
    @Override public void beforeTextChanged(    CharSequence s,    int start,    int count,    int after){
    }
    @Override public void onTextChanged(    CharSequence s,    int start,    int before,    int count){
    }
    @Override public void afterTextChanged(    Editable s){
      if (floatingLabelEnabled) {
        if (s.length() == 0) {
          if (floatingLabelShown) {
            floatingLabelShown=false;
            getLabelAnimator().reverse();
          }
        }
 else         if (!floatingLabelShown) {
          floatingLabelShown=true;
          if (getLabelAnimator().isStarted()) {
            getLabelAnimator().reverse();
          }
 else {
            getLabelAnimator().start();
          }
        }
      }
    }
  }
);
  innerFocusChangeListener=new OnFocusChangeListener(){
    @Override public void onFocusChange(    View v,    boolean hasFocus){
      if (floatingLabelEnabled && highlightFloatingLabel) {
        if (hasFocus) {
          if (getLabelFocusAnimator().isStarted()) {
            getLabelFocusAnimator().reverse();
          }
 else {
            getLabelFocusAnimator().start();
          }
        }
 else {
          getLabelFocusAnimator().reverse();
        }
      }
      if (outerFocusChangeListener != null) {
        outerFocusChangeListener.onFocusChange(v,hasFocus);
      }
    }
  }
;
  super.setOnFocusChangeListener(innerFocusChangeListener);
}
Program: 54085
Project: 54085
Buggy source:
private void adjustBottomLines(){
  int destBottomLines;
  textPaint.setTextSize(bottomTextSize);
  if (tempErrorText != null) {
    textLayout=new StaticLayout(tempErrorText,textPaint,getWidth() - getBottomTextLeftOffset() - getBottomTextRightOffset()- getPaddingLeft()- getPaddingRight(),Layout.Alignment.ALIGN_NORMAL,1.0f,0.0f,true);
    destBottomLines=Math.max(textLayout.getLineCount(),minBottomTextLines);
  }
 else   if (helperText != null) {
    textLayout=new StaticLayout(helperText,textPaint,getWidth() - getBottomTextLeftOffset() - getBottomTextRightOffset()- getPaddingLeft()- getPaddingRight(),Layout.Alignment.ALIGN_NORMAL,1.0f,0.0f,true);
    destBottomLines=Math.max(textLayout.getLineCount(),minBottomTextLines);
  }
 else {
    destBottomLines=minBottomLines;
  }
  if (bottomLines != destBottomLines) {
    getBottomLinesAnimator(destBottomLines).start();
  }
  bottomLines=destBottomLines;
}

Fixed version (ground truth):
private void adjustBottomLines(){
  int destBottomLines;
  textPaint.setTextSize(bottomTextSize);
  if (tempErrorText != null) {
    textLayout=new StaticLayout(tempErrorText,textPaint,getMeasuredWidth() - getBottomTextLeftOffset() - getBottomTextRightOffset()- getPaddingLeft()- getPaddingRight(),Layout.Alignment.ALIGN_NORMAL,1.0f,0.0f,true);
    destBottomLines=Math.max(textLayout.getLineCount(),minBottomTextLines);
  }
 else   if (helperText != null) {
    textLayout=new StaticLayout(helperText,textPaint,getMeasuredWidth() - getBottomTextLeftOffset() - getBottomTextRightOffset()- getPaddingLeft()- getPaddingRight(),Layout.Alignment.ALIGN_NORMAL,1.0f,0.0f,true);
    destBottomLines=Math.max(textLayout.getLineCount(),minBottomTextLines);
  }
 else {
    destBottomLines=minBottomLines;
  }
  if (bottomLines != destBottomLines) {
    getBottomLinesAnimator(destBottomLines).start();
  }
  bottomLines=destBottomLines;
}
Program: 54086
Project: 54086
Buggy source:
private void adjustBottomLines(){
  int destBottomLines;
  textPaint.setTextSize(bottomTextSize);
  if (tempErrorText != null) {
    textLayout=new StaticLayout(tempErrorText,textPaint,getWidth() - getBottomTextLeftOffset() - getBottomTextRightOffset()- getPaddingLeft()- getPaddingRight(),Layout.Alignment.ALIGN_NORMAL,1.0f,0.0f,true);
    destBottomLines=Math.max(textLayout.getLineCount(),minBottomTextLines);
  }
 else   if (helperText != null) {
    textLayout=new StaticLayout(helperText,textPaint,getWidth() - getBottomTextLeftOffset() - getBottomTextRightOffset()- getPaddingLeft()- getPaddingRight(),Layout.Alignment.ALIGN_NORMAL,1.0f,0.0f,true);
    destBottomLines=Math.max(textLayout.getLineCount(),minBottomTextLines);
  }
 else {
    destBottomLines=minBottomLines;
  }
  if (bottomLines != destBottomLines) {
    getBottomLinesAnimator(destBottomLines).start();
  }
  bottomLines=destBottomLines;
}

Fixed version (ground truth):
private void adjustBottomLines(){
  int destBottomLines;
  textPaint.setTextSize(bottomTextSize);
  if (tempErrorText != null) {
    textLayout=new StaticLayout(tempErrorText,textPaint,getMeasuredWidth() - getBottomTextLeftOffset() - getBottomTextRightOffset()- getPaddingLeft()- getPaddingRight(),Layout.Alignment.ALIGN_NORMAL,1.0f,0.0f,true);
    destBottomLines=Math.max(textLayout.getLineCount(),minBottomTextLines);
  }
 else   if (helperText != null) {
    textLayout=new StaticLayout(helperText,textPaint,getMeasuredWidth() - getBottomTextLeftOffset() - getBottomTextRightOffset()- getPaddingLeft()- getPaddingRight(),Layout.Alignment.ALIGN_NORMAL,1.0f,0.0f,true);
    destBottomLines=Math.max(textLayout.getLineCount(),minBottomTextLines);
  }
 else {
    destBottomLines=minBottomLines;
  }
  if (bottomLines != destBottomLines) {
    getBottomLinesAnimator(destBottomLines).start();
  }
  bottomLines=destBottomLines;
}
Program: 54087
Project: 54087
Buggy source:
private void adjustBottomLines(){
  int destBottomLines;
  textPaint.setTextSize(bottomTextSize);
  if (tempErrorText != null) {
    textLayout=new StaticLayout(tempErrorText,textPaint,getWidth() - getBottomTextLeftOffset() - getBottomTextRightOffset()- getPaddingLeft()- getPaddingRight(),Layout.Alignment.ALIGN_NORMAL,1.0f,0.0f,true);
    destBottomLines=Math.max(textLayout.getLineCount(),minBottomTextLines);
  }
 else   if (helperText != null) {
    textLayout=new StaticLayout(helperText,textPaint,getWidth() - getBottomTextLeftOffset() - getBottomTextRightOffset()- getPaddingLeft()- getPaddingRight(),Layout.Alignment.ALIGN_NORMAL,1.0f,0.0f,true);
    destBottomLines=Math.max(textLayout.getLineCount(),minBottomTextLines);
  }
 else {
    destBottomLines=minBottomLines;
  }
  if (bottomLines != destBottomLines) {
    getBottomLinesAnimator(destBottomLines).start();
  }
  bottomLines=destBottomLines;
}

Fixed version (ground truth):
private void adjustBottomLines(){
  int destBottomLines;
  textPaint.setTextSize(bottomTextSize);
  if (tempErrorText != null) {
    textLayout=new StaticLayout(tempErrorText,textPaint,getMeasuredWidth() - getBottomTextLeftOffset() - getBottomTextRightOffset()- getPaddingLeft()- getPaddingRight(),Layout.Alignment.ALIGN_NORMAL,1.0f,0.0f,true);
    destBottomLines=Math.max(textLayout.getLineCount(),minBottomTextLines);
  }
 else   if (helperText != null) {
    textLayout=new StaticLayout(helperText,textPaint,getMeasuredWidth() - getBottomTextLeftOffset() - getBottomTextRightOffset()- getPaddingLeft()- getPaddingRight(),Layout.Alignment.ALIGN_NORMAL,1.0f,0.0f,true);
    destBottomLines=Math.max(textLayout.getLineCount(),minBottomTextLines);
  }
 else {
    destBottomLines=minBottomLines;
  }
  if (bottomLines != destBottomLines) {
    getBottomLinesAnimator(destBottomLines).start();
  }
  bottomLines=destBottomLines;
}
Program: 54088
Project: 54088
Buggy source:
public void setFloatingLabel(@FloatingLabelType int mode){
  setFloatingLabelInternal(mode);
  postInvalidate();
}

Fixed version (ground truth):
public void setFloatingLabel(@FloatingLabelType int mode){
  setFloatingLabelInternal(mode);
  initPadding();
}
Program: 54089
Project: 54089
Buggy source:
public void setBaseColor(int color){
  baseColor=color;
  postInvalidate();
}

Fixed version (ground truth):
public void setBaseColor(int color){
  if (baseColor != color) {
    baseColor=color;
  }
  ColorStateList colorStateList=new ColorStateList(new int[][]{new int[]{android.R.attr.state_enabled},EMPTY_STATE_SET},new int[]{baseColor & 0x00ffffff | 0xdf000000,baseColor & 0x00ffffff | 0x44000000});
  setTextColor(colorStateList);
  setHintTextColor(baseColor & 0x00ffffff | 0x44000000);
  postInvalidate();
}
Program: 54091
Project: 54091
Buggy source:
@Override public void afterTextChanged(Editable s){
  if (s.length() == 0) {
    if (floatingLabelShown) {
      floatingLabelShown=false;
      getLabelAnimator().reverse();
    }
  }
 else   if (!floatingLabelShown) {
    floatingLabelShown=true;
    if (getLabelAnimator().isStarted()) {
      getLabelAnimator().reverse();
    }
 else {
      getLabelAnimator().start();
    }
  }
}

Fixed version (ground truth):
@Override public void afterTextChanged(Editable s){
  if (floatingLabelEnabled) {
    if (s.length() == 0) {
      if (floatingLabelShown) {
        floatingLabelShown=false;
        getLabelAnimator().reverse();
      }
    }
 else     if (!floatingLabelShown) {
      floatingLabelShown=true;
      if (getLabelAnimator().isStarted()) {
        getLabelAnimator().reverse();
      }
 else {
        getLabelAnimator().start();
      }
    }
  }
}
Program: 54092
Project: 54092
Buggy source:
@Override public void onFocusChange(View v,boolean hasFocus){
  if (hasFocus) {
    if (getLabelFocusAnimator().isStarted()) {
      getLabelFocusAnimator().reverse();
    }
 else {
      getLabelFocusAnimator().start();
    }
  }
 else {
    getLabelFocusAnimator().reverse();
  }
  if (outerFocusChangeListener != null) {
    outerFocusChangeListener.onFocusChange(v,hasFocus);
  }
}

Fixed version (ground truth):
@Override public void onFocusChange(View v,boolean hasFocus){
  if (floatingLabelEnabled && highlightFloatingLabel) {
    if (hasFocus) {
      if (getLabelFocusAnimator().isStarted()) {
        getLabelFocusAnimator().reverse();
      }
 else {
        getLabelFocusAnimator().start();
      }
    }
 else {
      getLabelFocusAnimator().reverse();
    }
    if (outerFocusChangeListener != null) {
      outerFocusChangeListener.onFocusChange(v,hasFocus);
    }
  }
}
Program: 54093
Project: 54093
Buggy source:
private void initFloatingLabel(){
  if (floatingLabelEnabled) {
    addTextChangedListener(new TextWatcher(){
      @Override public void beforeTextChanged(      CharSequence s,      int start,      int count,      int after){
      }
      @Override public void onTextChanged(      CharSequence s,      int start,      int before,      int count){
      }
      @Override public void afterTextChanged(      Editable s){
        if (s.length() == 0) {
          if (floatingLabelShown) {
            floatingLabelShown=false;
            getLabelAnimator().reverse();
          }
        }
 else         if (!floatingLabelShown) {
          floatingLabelShown=true;
          if (getLabelAnimator().isStarted()) {
            getLabelAnimator().reverse();
          }
 else {
            getLabelAnimator().start();
          }
        }
      }
    }
);
    if (highlightFloatingLabel) {
      innerFocusChangeListener=new OnFocusChangeListener(){
        @Override public void onFocusChange(        View v,        boolean hasFocus){
          if (hasFocus) {
            if (getLabelFocusAnimator().isStarted()) {
              getLabelFocusAnimator().reverse();
            }
 else {
              getLabelFocusAnimator().start();
            }
          }
 else {
            getLabelFocusAnimator().reverse();
          }
          if (outerFocusChangeListener != null) {
            outerFocusChangeListener.onFocusChange(v,hasFocus);
          }
        }
      }
;
      super.setOnFocusChangeListener(innerFocusChangeListener);
    }
  }
}

Fixed version (ground truth):
private void initFloatingLabel(){
  addTextChangedListener(new TextWatcher(){
    @Override public void beforeTextChanged(    CharSequence s,    int start,    int count,    int after){
    }
    @Override public void onTextChanged(    CharSequence s,    int start,    int before,    int count){
    }
    @Override public void afterTextChanged(    Editable s){
      if (floatingLabelEnabled) {
        if (s.length() == 0) {
          if (floatingLabelShown) {
            floatingLabelShown=false;
            getLabelAnimator().reverse();
          }
        }
 else         if (!floatingLabelShown) {
          floatingLabelShown=true;
          if (getLabelAnimator().isStarted()) {
            getLabelAnimator().reverse();
          }
 else {
            getLabelAnimator().start();
          }
        }
      }
    }
  }
);
  innerFocusChangeListener=new OnFocusChangeListener(){
    @Override public void onFocusChange(    View v,    boolean hasFocus){
      if (floatingLabelEnabled && highlightFloatingLabel) {
        if (hasFocus) {
          if (getLabelFocusAnimator().isStarted()) {
            getLabelFocusAnimator().reverse();
          }
 else {
            getLabelFocusAnimator().start();
          }
        }
 else {
          getLabelFocusAnimator().reverse();
        }
        if (outerFocusChangeListener != null) {
          outerFocusChangeListener.onFocusChange(v,hasFocus);
        }
      }
    }
  }
;
  super.setOnFocusChangeListener(innerFocusChangeListener);
}
Program: 54095
Project: 54095
Buggy source:
private void initText(){
  if (!TextUtils.isEmpty(getText())) {
    CharSequence text=getText();
    setText(null);
    setHintTextColor(baseColor & 0x00ffffff | 0x44000000);
    setText(text);
    floatingLabelFraction=1;
    floatingLabelShown=true;
  }
 else {
    setHintTextColor(baseColor & 0x00ffffff | 0x44000000);
  }
}

Fixed version (ground truth):
private void initText(){
  if (!TextUtils.isEmpty(getText())) {
    CharSequence text=getText();
    setText(null);
    setText(text);
    floatingLabelFraction=1;
    floatingLabelShown=true;
  }
}
Program: 54096
Project: 54096
Buggy source:
private void initPadding(){
  extraPaddingTop=floatingLabelEnabled ? floatingLabelTextSize + floatingLabelSpacing : floatingLabelSpacing;
  textPaint.setTextSize(bottomTextSize);
  Paint.FontMetrics textMetrics=textPaint.getFontMetrics();
  extraPaddingBottom=(int)((textMetrics.descent - textMetrics.ascent) * currentBottomLines) + (hideUnderline ? bottomSpacing : bottomSpacing * 2);
  extraPaddingLeft=iconLeftBitmaps == null ? 0 : (iconOuterWidth + iconPadding);
  extraPaddingRight=iconRightBitmaps == null ? 0 : (iconOuterWidth + iconPadding);
  System.out.println("String_Node_Str" + getPaddingLeft() + "String_Node_Str"+ extraPaddingLeft);
  System.out.println("String_Node_Str" + getPaddingRight() + "String_Node_Str"+ extraPaddingRight);
  System.out.println("String_Node_Str" + getPaddingTop() + "String_Node_Str"+ extraPaddingTop);
  System.out.println("String_Node_Str" + getPaddingBottom() + "String_Node_Str"+ extraPaddingBottom);
  setPaddings(innerPaddingLeft,innerPaddingTop,innerPaddingRight,innerPaddingBottom);
}

Fixed version (ground truth):
private void initPadding(){
  extraPaddingTop=floatingLabelEnabled ? floatingLabelTextSize + floatingLabelSpacing : floatingLabelSpacing;
  textPaint.setTextSize(bottomTextSize);
  Paint.FontMetrics textMetrics=textPaint.getFontMetrics();
  extraPaddingBottom=(int)((textMetrics.descent - textMetrics.ascent) * currentBottomLines) + (hideUnderline ? bottomSpacing : bottomSpacing * 2);
  extraPaddingLeft=iconLeftBitmaps == null ? 0 : (iconOuterWidth + iconPadding);
  extraPaddingRight=iconRightBitmaps == null ? 0 : (iconOuterWidth + iconPadding);
  setPaddings(innerPaddingLeft,innerPaddingTop,innerPaddingRight,innerPaddingBottom);
}
Program: 54097
Project: 54097
Buggy source:
public void setFloatingLabel(@FloatingLabelType int mode){
  setFloatingLabelInternal(mode);
  postInvalidate();
}

Fixed version (ground truth):
public void setFloatingLabel(@FloatingLabelType int mode){
  setFloatingLabelInternal(mode);
  initPadding();
}
Program: 54098
Project: 54098
Buggy source:
public void setBaseColor(int color){
  baseColor=color;
  postInvalidate();
}

Fixed version (ground truth):
public void setBaseColor(int color){
  if (baseColor != color) {
    baseColor=color;
  }
  ColorStateList colorStateList=new ColorStateList(new int[][]{new int[]{android.R.attr.state_enabled},EMPTY_STATE_SET},new int[]{baseColor & 0x00ffffff | 0xdf000000,baseColor & 0x00ffffff | 0x44000000});
  setTextColor(colorStateList);
  setHintTextColor(baseColor & 0x00ffffff | 0x44000000);
  postInvalidate();
}
Program: 54100
Project: 54100
Buggy source:
@Override public void afterTextChanged(Editable s){
  if (s.length() == 0) {
    if (floatingLabelShown) {
      floatingLabelShown=false;
      getLabelAnimator().reverse();
    }
  }
 else   if (!floatingLabelShown) {
    floatingLabelShown=true;
    if (getLabelAnimator().isStarted()) {
      getLabelAnimator().reverse();
    }
 else {
      getLabelAnimator().start();
    }
  }
}

Fixed version (ground truth):
@Override public void afterTextChanged(Editable s){
  if (floatingLabelEnabled) {
    if (s.length() == 0) {
      if (floatingLabelShown) {
        floatingLabelShown=false;
        getLabelAnimator().reverse();
      }
    }
 else     if (!floatingLabelShown) {
      floatingLabelShown=true;
      if (getLabelAnimator().isStarted()) {
        getLabelAnimator().reverse();
      }
 else {
        getLabelAnimator().start();
      }
    }
  }
}
Program: 54101
Project: 54101
Buggy source:
@Override public void onFocusChange(View v,boolean hasFocus){
  if (hasFocus) {
    if (getLabelFocusAnimator().isStarted()) {
      getLabelFocusAnimator().reverse();
    }
 else {
      getLabelFocusAnimator().start();
    }
  }
 else {
    getLabelFocusAnimator().reverse();
  }
  if (outerFocusChangeListener != null) {
    outerFocusChangeListener.onFocusChange(v,hasFocus);
  }
}

Fixed version (ground truth):
@Override public void onFocusChange(View v,boolean hasFocus){
  if (floatingLabelEnabled && highlightFloatingLabel) {
    if (hasFocus) {
      if (getLabelFocusAnimator().isStarted()) {
        getLabelFocusAnimator().reverse();
      }
 else {
        getLabelFocusAnimator().start();
      }
    }
 else {
      getLabelFocusAnimator().reverse();
    }
    if (outerFocusChangeListener != null) {
      outerFocusChangeListener.onFocusChange(v,hasFocus);
    }
  }
}
Program: 54102
Project: 54102
Buggy source:
private void initFloatingLabel(){
  if (floatingLabelEnabled) {
    addTextChangedListener(new TextWatcher(){
      @Override public void beforeTextChanged(      CharSequence s,      int start,      int count,      int after){
      }
      @Override public void onTextChanged(      CharSequence s,      int start,      int before,      int count){
      }
      @Override public void afterTextChanged(      Editable s){
        if (s.length() == 0) {
          if (floatingLabelShown) {
            floatingLabelShown=false;
            getLabelAnimator().reverse();
          }
        }
 else         if (!floatingLabelShown) {
          floatingLabelShown=true;
          if (getLabelAnimator().isStarted()) {
            getLabelAnimator().reverse();
          }
 else {
            getLabelAnimator().start();
          }
        }
      }
    }
);
    if (highlightFloatingLabel) {
      innerFocusChangeListener=new OnFocusChangeListener(){
        @Override public void onFocusChange(        View v,        boolean hasFocus){
          if (hasFocus) {
            if (getLabelFocusAnimator().isStarted()) {
              getLabelFocusAnimator().reverse();
            }
 else {
              getLabelFocusAnimator().start();
            }
          }
 else {
            getLabelFocusAnimator().reverse();
          }
          if (outerFocusChangeListener != null) {
            outerFocusChangeListener.onFocusChange(v,hasFocus);
          }
        }
      }
;
      super.setOnFocusChangeListener(innerFocusChangeListener);
    }
  }
}

Fixed version (ground truth):
private void initFloatingLabel(){
  addTextChangedListener(new TextWatcher(){
    @Override public void beforeTextChanged(    CharSequence s,    int start,    int count,    int after){
    }
    @Override public void onTextChanged(    CharSequence s,    int start,    int before,    int count){
    }
    @Override public void afterTextChanged(    Editable s){
      if (floatingLabelEnabled) {
        if (s.length() == 0) {
          if (floatingLabelShown) {
            floatingLabelShown=false;
            getLabelAnimator().reverse();
          }
        }
 else         if (!floatingLabelShown) {
          floatingLabelShown=true;
          if (getLabelAnimator().isStarted()) {
            getLabelAnimator().reverse();
          }
 else {
            getLabelAnimator().start();
          }
        }
      }
    }
  }
);
  innerFocusChangeListener=new OnFocusChangeListener(){
    @Override public void onFocusChange(    View v,    boolean hasFocus){
      if (floatingLabelEnabled && highlightFloatingLabel) {
        if (hasFocus) {
          if (getLabelFocusAnimator().isStarted()) {
            getLabelFocusAnimator().reverse();
          }
 else {
            getLabelFocusAnimator().start();
          }
        }
 else {
          getLabelFocusAnimator().reverse();
        }
        if (outerFocusChangeListener != null) {
          outerFocusChangeListener.onFocusChange(v,hasFocus);
        }
      }
    }
  }
;
  super.setOnFocusChangeListener(innerFocusChangeListener);
}
Program: 54104
Project: 54104
Buggy source:
private void initText(){
  if (!TextUtils.isEmpty(getText())) {
    CharSequence text=getText();
    setText(null);
    setHintTextColor(baseColor & 0x00ffffff | 0x44000000);
    setText(text);
    floatingLabelFraction=1;
    floatingLabelShown=true;
  }
 else {
    setHintTextColor(baseColor & 0x00ffffff | 0x44000000);
  }
}

Fixed version (ground truth):
private void initText(){
  if (!TextUtils.isEmpty(getText())) {
    CharSequence text=getText();
    setText(null);
    setText(text);
    floatingLabelFraction=1;
    floatingLabelShown=true;
  }
}
Program: 54105
Project: 54105
Buggy source:
private void initPadding(){
  extraPaddingTop=floatingLabelEnabled ? floatingLabelTextSize + floatingLabelSpacing : floatingLabelSpacing;
  textPaint.setTextSize(bottomTextSize);
  Paint.FontMetrics textMetrics=textPaint.getFontMetrics();
  extraPaddingBottom=(int)((textMetrics.descent - textMetrics.ascent) * currentBottomLines) + (hideUnderline ? bottomSpacing : bottomSpacing * 2);
  extraPaddingLeft=iconLeftBitmaps == null ? 0 : (iconOuterWidth + iconPadding);
  extraPaddingRight=iconRightBitmaps == null ? 0 : (iconOuterWidth + iconPadding);
  System.out.println("String_Node_Str" + getPaddingLeft() + "String_Node_Str"+ extraPaddingLeft);
  System.out.println("String_Node_Str" + getPaddingRight() + "String_Node_Str"+ extraPaddingRight);
  System.out.println("String_Node_Str" + getPaddingTop() + "String_Node_Str"+ extraPaddingTop);
  System.out.println("String_Node_Str" + getPaddingBottom() + "String_Node_Str"+ extraPaddingBottom);
  setPaddings(innerPaddingLeft,innerPaddingTop,innerPaddingRight,innerPaddingBottom);
}

Fixed version (ground truth):
private void initPadding(){
  extraPaddingTop=floatingLabelEnabled ? floatingLabelTextSize + floatingLabelSpacing : floatingLabelSpacing;
  textPaint.setTextSize(bottomTextSize);
  Paint.FontMetrics textMetrics=textPaint.getFontMetrics();
  extraPaddingBottom=(int)((textMetrics.descent - textMetrics.ascent) * currentBottomLines) + (hideUnderline ? bottomSpacing : bottomSpacing * 2);
  extraPaddingLeft=iconLeftBitmaps == null ? 0 : (iconOuterWidth + iconPadding);
  extraPaddingRight=iconRightBitmaps == null ? 0 : (iconOuterWidth + iconPadding);
  setPaddings(innerPaddingLeft,innerPaddingTop,innerPaddingRight,innerPaddingBottom);
}
Program: 54110
Project: 54110
Buggy source:
@Override public void setError(CharSequence errorText){
  tempErrorText=errorText == null ? null : errorText.toString();
  adjustBottomLines();
  postInvalidate();
}

Fixed version (ground truth):
@Override public void setError(CharSequence errorText){
  tempErrorText=errorText == null ? null : errorText.toString();
  if (adjustBottomLines()) {
    postInvalidate();
  }
}
Program: 54111
Project: 54111
Buggy source:
public void setHelperText(CharSequence helperText){
  this.helperText=helperText == null ? null : helperText.toString();
  adjustBottomLines();
  postInvalidate();
}

Fixed version (ground truth):
public void setHelperText(CharSequence helperText){
  this.helperText=helperText == null ? null : helperText.toString();
  if (adjustBottomLines()) {
    postInvalidate();
  }
}
Program: 54113
Project: 54113
Buggy source:
private ObjectAnimator getBottomLinesAnimator(float destBottomLines){
  if (bottomLinesAnimator == null) {
    bottomLinesAnimator=ObjectAnimator.ofFloat(this,"String_Node_Str",destBottomLines);
  }
 else {
    bottomLinesAnimator.end();
    bottomLinesAnimator.setFloatValues(destBottomLines);
  }
  return bottomLinesAnimator;
}

Fixed version (ground truth):
private ObjectAnimator getBottomLinesAnimator(float destBottomLines){
  if (bottomLinesAnimator == null) {
    bottomLinesAnimator=ObjectAnimator.ofFloat(this,"String_Node_Str",destBottomLines);
  }
 else {
    bottomLinesAnimator.cancel();
    bottomLinesAnimator.setFloatValues(destBottomLines);
  }
  return bottomLinesAnimator;
}
Program: 54114
Project: 54114
Buggy source:
private void adjustBottomLines(){
  int destBottomLines;
  textPaint.setTextSize(bottomTextSize);
  if (tempErrorText != null) {
    textLayout=new StaticLayout(tempErrorText,textPaint,getMeasuredWidth() - getBottomTextLeftOffset() - getBottomTextRightOffset()- getPaddingLeft()- getPaddingRight(),Layout.Alignment.ALIGN_NORMAL,1.0f,0.0f,true);
    destBottomLines=Math.max(textLayout.getLineCount(),minBottomTextLines);
  }
 else   if (helperText != null) {
    textLayout=new StaticLayout(helperText,textPaint,getMeasuredWidth() - getBottomTextLeftOffset() - getBottomTextRightOffset()- getPaddingLeft()- getPaddingRight(),Layout.Alignment.ALIGN_NORMAL,1.0f,0.0f,true);
    destBottomLines=Math.max(textLayout.getLineCount(),minBottomTextLines);
  }
 else {
    destBottomLines=minBottomLines;
  }
  if (bottomLines != destBottomLines) {
    getBottomLinesAnimator(destBottomLines).start();
  }
  bottomLines=destBottomLines;
}

Fixed version (ground truth):
/** 
 * @return True, if adjustments were made that require the view to be invalidated.
 */
private boolean adjustBottomLines(){
  if (getWidth() == 0) {
    return false;
  }
  int destBottomLines;
  textPaint.setTextSize(bottomTextSize);
  if (tempErrorText != null || helperText != null) {
    Layout.Alignment alignment=(getGravity() & Gravity.RIGHT) == Gravity.RIGHT || isRTL() ? Layout.Alignment.ALIGN_OPPOSITE : (getGravity() & Gravity.LEFT) == Gravity.LEFT ? Layout.Alignment.ALIGN_NORMAL : Layout.Alignment.ALIGN_CENTER;
    textLayout=new StaticLayout(tempErrorText != null ? tempErrorText : helperText,textPaint,getWidth() - getBottomTextLeftOffset() - getBottomTextRightOffset()- getPaddingLeft()- getPaddingRight(),alignment,1.0f,0.0f,true);
    destBottomLines=Math.max(textLayout.getLineCount(),minBottomTextLines);
  }
 else {
    destBottomLines=minBottomLines;
  }
  if (bottomLines != destBottomLines) {
    getBottomLinesAnimator(destBottomLines).start();
  }
  bottomLines=destBottomLines;
  return true;
}
Program: 54115
Project: 54115
Buggy source:
private void initPadding(){
  int paddingTop=getPaddingTop() - extraPaddingTop;
  int paddingBottom=getPaddingBottom() - extraPaddingBottom;
  int paddingLeft=getPaddingLeft() - extraPaddingLeft;
  int paddingRight=getPaddingRight() - extraPaddingRight;
  extraPaddingTop=floatingLabelEnabled ? floatingLabelTextSize + floatingLabelSpacing : floatingLabelSpacing;
  textPaint.setTextSize(bottomTextSize);
  Paint.FontMetrics textMetrics=textPaint.getFontMetrics();
  extraPaddingBottom=(int)((textMetrics.descent - textMetrics.ascent) * currentBottomLines) + (hideUnderline ? bottomSpacing : bottomSpacing * 2);
  extraPaddingLeft=iconLeftBitmaps == null ? 0 : (iconOuterWidth + iconPadding);
  extraPaddingRight=iconRightBitmaps == null ? 0 : (iconOuterWidth + iconPadding);
  setPaddings(paddingLeft,paddingTop,paddingRight,paddingBottom);
}

Fixed version (ground truth):
private void initPadding(){
  extraPaddingTop=floatingLabelEnabled ? floatingLabelTextSize + floatingLabelSpacing : floatingLabelSpacing;
  textPaint.setTextSize(bottomTextSize);
  Paint.FontMetrics textMetrics=textPaint.getFontMetrics();
  extraPaddingBottom=(int)((textMetrics.descent - textMetrics.ascent) * currentBottomLines) + (hideUnderline ? bottomSpacing : bottomSpacing * 2);
  extraPaddingLeft=iconLeftBitmaps == null ? 0 : (iconOuterWidth + iconPadding);
  extraPaddingRight=iconRightBitmaps == null ? 0 : (iconOuterWidth + iconPadding);
  System.out.println("String_Node_Str" + getPaddingLeft() + "String_Node_Str"+ extraPaddingLeft);
  System.out.println("String_Node_Str" + getPaddingRight() + "String_Node_Str"+ extraPaddingRight);
  System.out.println("String_Node_Str" + getPaddingTop() + "String_Node_Str"+ extraPaddingTop);
  System.out.println("String_Node_Str" + getPaddingBottom() + "String_Node_Str"+ extraPaddingBottom);
  setPaddings(innerPaddingLeft,innerPaddingTop,innerPaddingRight,innerPaddingBottom);
}
Program: 54118
Project: 54118
Buggy source:
private ObjectAnimator getBottomLinesAnimator(float destBottomLines){
  if (bottomLinesAnimator == null) {
    bottomLinesAnimator=ObjectAnimator.ofFloat(this,"String_Node_Str",destBottomLines);
  }
 else {
    bottomLinesAnimator.setFloatValues(destBottomLines);
  }
  return bottomLinesAnimator;
}

Fixed version (ground truth):
private ObjectAnimator getBottomLinesAnimator(float destBottomLines){
  if (bottomLinesAnimator == null) {
    bottomLinesAnimator=ObjectAnimator.ofFloat(this,"String_Node_Str",destBottomLines);
  }
 else {
    bottomLinesAnimator.cancel();
    bottomLinesAnimator.setFloatValues(destBottomLines);
  }
  return bottomLinesAnimator;
}
Program: 54119
Project: 54119
Buggy source:
/** 
 * @return True, if adjustments were made that require the view to be invalidated.
 */
private boolean adjustBottomLines(){
  if (getWidth() == 0) {
    return false;
  }
  int destBottomLines;
  textPaint.setTextSize(bottomTextSize);
  if (tempErrorText != null) {
    textLayout=new StaticLayout(tempErrorText,textPaint,getWidth() - getBottomTextLeftOffset() - getBottomTextRightOffset()- getPaddingLeft()- getPaddingRight(),Layout.Alignment.ALIGN_NORMAL,1.0f,0.0f,true);
    destBottomLines=Math.max(textLayout.getLineCount(),minBottomTextLines);
  }
 else   if (helperText != null) {
    textLayout=new StaticLayout(helperText,textPaint,getWidth() - getBottomTextLeftOffset() - getBottomTextRightOffset()- getPaddingLeft()- getPaddingRight(),Layout.Alignment.ALIGN_NORMAL,1.0f,0.0f,true);
    destBottomLines=Math.max(textLayout.getLineCount(),minBottomTextLines);
  }
 else {
    destBottomLines=minBottomLines;
  }
  if (bottomLines != destBottomLines) {
    getBottomLinesAnimator(destBottomLines).start();
  }
  bottomLines=destBottomLines;
  return true;
}

Fixed version (ground truth):
/** 
 * @return True, if adjustments were made that require the view to be invalidated.
 */
private boolean adjustBottomLines(){
  if (getWidth() == 0) {
    return false;
  }
  int destBottomLines;
  textPaint.setTextSize(bottomTextSize);
  if (tempErrorText != null || helperText != null) {
    Layout.Alignment alignment=(getGravity() & Gravity.RIGHT) == Gravity.RIGHT || isRTL() ? Layout.Alignment.ALIGN_OPPOSITE : (getGravity() & Gravity.LEFT) == Gravity.LEFT ? Layout.Alignment.ALIGN_NORMAL : Layout.Alignment.ALIGN_CENTER;
    textLayout=new StaticLayout(tempErrorText != null ? tempErrorText : helperText,textPaint,getWidth() - getBottomTextLeftOffset() - getBottomTextRightOffset()- getPaddingLeft()- getPaddingRight(),alignment,1.0f,0.0f,true);
    destBottomLines=Math.max(textLayout.getLineCount(),minBottomTextLines);
  }
 else {
    destBottomLines=minBottomLines;
  }
  if (bottomLines != destBottomLines) {
    getBottomLinesAnimator(destBottomLines).start();
  }
  bottomLines=destBottomLines;
  return true;
}
Program: 54120
Project: 54120
Buggy source:
private void initPadding(){
  int paddingTop=getPaddingTop() - extraPaddingTop;
  int paddingBottom=getPaddingBottom() - extraPaddingBottom;
  int paddingLeft=getPaddingLeft() - extraPaddingLeft;
  int paddingRight=getPaddingRight() - extraPaddingRight;
  extraPaddingTop=floatingLabelEnabled ? floatingLabelTextSize + floatingLabelSpacing : floatingLabelSpacing;
  textPaint.setTextSize(bottomTextSize);
  Paint.FontMetrics textMetrics=textPaint.getFontMetrics();
  extraPaddingBottom=(int)((textMetrics.descent - textMetrics.ascent) * currentBottomLines) + (hideUnderline ? bottomSpacing : bottomSpacing * 2);
  extraPaddingLeft=iconLeftBitmaps == null ? 0 : (iconOuterWidth + iconPadding);
  extraPaddingRight=iconRightBitmaps == null ? 0 : (iconOuterWidth + iconPadding);
  setPaddings(paddingLeft,paddingTop,paddingRight,paddingBottom);
}

Fixed version (ground truth):
private void initPadding(){
  extraPaddingTop=floatingLabelEnabled ? floatingLabelTextSize + floatingLabelSpacing : floatingLabelSpacing;
  textPaint.setTextSize(bottomTextSize);
  Paint.FontMetrics textMetrics=textPaint.getFontMetrics();
  extraPaddingBottom=(int)((textMetrics.descent - textMetrics.ascent) * currentBottomLines) + (hideUnderline ? bottomSpacing : bottomSpacing * 2);
  extraPaddingLeft=iconLeftBitmaps == null ? 0 : (iconOuterWidth + iconPadding);
  extraPaddingRight=iconRightBitmaps == null ? 0 : (iconOuterWidth + iconPadding);
  System.out.println("String_Node_Str" + getPaddingLeft() + "String_Node_Str"+ extraPaddingLeft);
  System.out.println("String_Node_Str" + getPaddingRight() + "String_Node_Str"+ extraPaddingRight);
  System.out.println("String_Node_Str" + getPaddingTop() + "String_Node_Str"+ extraPaddingTop);
  System.out.println("String_Node_Str" + getPaddingBottom() + "String_Node_Str"+ extraPaddingBottom);
  setPaddings(innerPaddingLeft,innerPaddingTop,innerPaddingRight,innerPaddingBottom);
}
Program: 54121
Project: 54121
Buggy source:
private ObjectAnimator getBottomLinesAnimator(float destBottomLines){
  if (bottomLinesAnimator == null) {
    bottomLinesAnimator=ObjectAnimator.ofFloat(this,"String_Node_Str",destBottomLines);
  }
 else {
    bottomLinesAnimator.end();
    bottomLinesAnimator.setFloatValues(destBottomLines);
  }
  return bottomLinesAnimator;
}

Fixed version (ground truth):
private ObjectAnimator getBottomLinesAnimator(float destBottomLines){
  if (bottomLinesAnimator == null) {
    bottomLinesAnimator=ObjectAnimator.ofFloat(this,"String_Node_Str",destBottomLines);
  }
 else {
    bottomLinesAnimator.setFloatValues(destBottomLines);
  }
  return bottomLinesAnimator;
}