Program: 62581
Project: 62581
Buggy source:
@Override public void showProjectClassifyData(BaseResponse<List<ProjectClassifyData>> projectClassifyResponse){
  if (projectClassifyResponse == null || projectClassifyResponse.getData() == null) {
    showProjectClassifyDataFail();
    return;
  }
  RxBus.getDefault().post(new DismissErrorView());
  if (mDataManager.getCurrentPage() == Constants.FOURTH) {
    mTabLayout.setVisibility(View.VISIBLE);
    mViewPager.setVisibility(View.VISIBLE);
  }
 else {
    mTabLayout.setVisibility(View.INVISIBLE);
    mViewPager.setVisibility(View.INVISIBLE);
  }
  mData=projectClassifyResponse.getData();
  for (  ProjectClassifyData data : mData) {
    ProjectListFragment projectListFragment=ProjectListFragment.getInstance(data.getId(),null);
    mFragments.add(projectListFragment);
  }
  mViewPager.setAdapter(new FragmentPagerAdapter(getChildFragmentManager()){
    @Override public Fragment getItem(    int position){
      return mFragments.get(position);
    }
    @Override public int getCount(){
      return mData == null ? 0 : mData.size();
    }
    @Override public CharSequence getPageTitle(    int position){
      return mData.get(position).getName();
    }
  }
);
  mViewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener(){
    @Override public void onPageScrolled(    int position,    float positionOffset,    int positionOffsetPixels){
    }
    @Override public void onPageSelected(    int position){
      currentPage=position;
    }
    @Override public void onPageScrollStateChanged(    int state){
    }
  }
);
  mTabLayout.setViewPager(mViewPager);
  mViewPager.setCurrentItem(Constants.TAB_ONE);
}

Fixed version (ground truth):
@Override public void showProjectClassifyData(BaseResponse<List<ProjectClassifyData>> projectClassifyResponse){
  if (projectClassifyResponse == null || projectClassifyResponse.getData() == null) {
    showProjectClassifyDataFail();
    return;
  }
  RxBus.getDefault().post(new DismissErrorView());
  if (mDataManager.getCurrentPage() == Constants.FOURTH) {
    mTabLayout.setVisibility(View.VISIBLE);
    mDivider.setVisibility(View.VISIBLE);
    mViewPager.setVisibility(View.VISIBLE);
  }
 else {
    mTabLayout.setVisibility(View.INVISIBLE);
    mDivider.setVisibility(View.INVISIBLE);
    mViewPager.setVisibility(View.INVISIBLE);
  }
  mData=projectClassifyResponse.getData();
  for (  ProjectClassifyData data : mData) {
    ProjectListFragment projectListFragment=ProjectListFragment.getInstance(data.getId(),null);
    mFragments.add(projectListFragment);
  }
  mViewPager.setAdapter(new FragmentPagerAdapter(getChildFragmentManager()){
    @Override public Fragment getItem(    int position){
      return mFragments.get(position);
    }
    @Override public int getCount(){
      return mData == null ? 0 : mData.size();
    }
    @Override public CharSequence getPageTitle(    int position){
      return mData.get(position).getName();
    }
  }
);
  mViewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener(){
    @Override public void onPageScrolled(    int position,    float positionOffset,    int positionOffsetPixels){
    }
    @Override public void onPageSelected(    int position){
      currentPage=position;
    }
    @Override public void onPageScrollStateChanged(    int state){
    }
  }
);
  mTabLayout.setViewPager(mViewPager);
  mViewPager.setCurrentItem(Constants.TAB_ONE);
}