Program: 102456
Project: 102456
Buggy source:
protected void setValueBasicInfo() throws Exception {
  getUIInputSection(FIELD_ABOUT_SECTION).getUIFormTextAreaInput(Profile.ABOUT_ME).setValue(getStringValueProfile(Profile.ABOUT_ME));
  UIInputSection baseSection=getUIInputSection(FIELD_BASE_SECTION);
  baseSection.getUIStringInput(Profile.FIRST_NAME).setValue(getStringValueProfile(Profile.FIRST_NAME));
  baseSection.getUIStringInput(Profile.LAST_NAME).setValue(getStringValueProfile(Profile.LAST_NAME));
  baseSection.getUIStringInput(Profile.EMAIL).setValue(getStringValueProfile(Profile.EMAIL));
  baseSection.getUIStringInput(Profile.POSITION).setValue(getStringValueProfile(Profile.POSITION));
  baseSection.getUIFormSelectBox(Profile.GENDER).setValue(getStringValueProfile(Profile.GENDER));
  List<Map<String,String>> phones=UserProfileHelper.getMultiValues(currentProfile,Profile.CONTACT_PHONES);
  baseSection.getUIMultiValueSelection(Profile.CONTACT_PHONES).setValues(phones);
  List<Map<String,String>> ims=UserProfileHelper.getMultiValues(currentProfile,Profile.CONTACT_IMS);
  baseSection.getUIMultiValueSelection(Profile.CONTACT_IMS).setValues(ims);
  baseSection.getUIFormMultiValueInputSet(Profile.CONTACT_URLS).setValue(UserProfileHelper.getURLValues(currentProfile));
  List<Map<String,String>> experiences=UserProfileHelper.getDisplayExperience(currentProfile);
  if (experiences.size() > 0) {
    int i=0;
    String experienId;
    for (    Map<String,String> experience : experiences) {
      if (i < experiens.size()) {
        experienId=experiens.get(i);
      }
 else {
        experienId=FIELD_EXPERIENCE_SECTION + index;
      }
      setValueExperienceSection(experienId,experience);
    }
    resetActionFileds();
  }
 else   if (experiens.size() == 0) {
    String experienId=FIELD_EXPERIENCE_SECTION + index;
    getOrCreateExperienceSection(experienId).setActionField(Profile.EXPERIENCES_COMPANY + experienId,createExperienceActions(experienId,true));
  }
}

Fixed version (ground truth):
protected void setValueBasicInfo() throws Exception {
  getUIInputSection(FIELD_ABOUT_SECTION).getUIFormTextAreaInput(Profile.ABOUT_ME).setValue(getStringValueProfile(Profile.ABOUT_ME));
  UIInputSection baseSection=getUIInputSection(FIELD_BASE_SECTION);
  baseSection.getUIStringInput(Profile.FIRST_NAME).setValue(getStringValueProfile(Profile.FIRST_NAME));
  baseSection.getUIStringInput(Profile.LAST_NAME).setValue(getStringValueProfile(Profile.LAST_NAME));
  baseSection.getUIStringInput(Profile.EMAIL).setValue(getStringValueProfile(Profile.EMAIL));
  baseSection.getUIStringInput(Profile.POSITION).setValue(getStringValueProfile(Profile.POSITION));
  baseSection.getUIFormSelectBox(Profile.GENDER).setValue(getStringValueProfile(Profile.GENDER));
  List<Map<String,String>> phones=UserProfileHelper.getMultiValues(currentProfile,Profile.CONTACT_PHONES);
  baseSection.getUIMultiValueSelection(Profile.CONTACT_PHONES).setValues(phones);
  List<Map<String,String>> ims=UserProfileHelper.getMultiValues(currentProfile,Profile.CONTACT_IMS);
  baseSection.getUIMultiValueSelection(Profile.CONTACT_IMS).setValues(ims);
  baseSection.getUIFormMultiValueInputSet(Profile.CONTACT_URLS).setValue(UserProfileHelper.getURLValues(currentProfile));
  List<Map<String,String>> experiences=UserProfileHelper.getDisplayExperience(currentProfile);
  if (!experiences.isEmpty()) {
    int i=0;
    String experienId;
    removeChildById(FIELD_EMPTY_EXPERIENCE_SECTION);
    int experienCurrentSize=experiens.size();
    for (    Map<String,String> experience : experiences) {
      if (i < experienCurrentSize) {
        experienId=experiens.get(i);
        ++i;
      }
 else {
        experienId=FIELD_EXPERIENCE_SECTION + index;
      }
      setValueExperienceSection(experienId,experience);
    }
    resetActionFileds();
  }
 else   if (experiens.isEmpty()) {
    addEmpryExperienceSection();
  }
}