nus-yam/ex-repair huggingface dataset:
Program: 47132
Project: 47132
Buggy source:
public static Map<String,Object> findSubs(String hash,long size,String imdb,String query,RendererConfiguration r) throws IOException {
  login();
  TreeMap<String,Object> res=new TreeMap<>();
  if (token == null) {
    return res;
  }
  String lang=UMSUtils.getLangList(r,true);
  URL url=new URL(OPENSUBS_URL);
  String hashStr="String_Node_Str";
  String imdbStr="String_Node_Str";
  String qStr="String_Node_Str";
  if (!StringUtils.isEmpty(hash)) {
    hashStr="String_Node_Str" + hash + "String_Node_Str"+ "String_Node_Str"+ size+ "String_Node_Str";
  }
 else   if (!StringUtils.isEmpty(imdb)) {
    imdbStr="String_Node_Str" + imdb + "String_Node_Str";
  }
 else   if (!StringUtils.isEmpty(query)) {
    qStr="String_Node_Str" + query + "String_Node_Str";
  }
 else {
    return res;
  }
  String req="String_Node_Str" + "String_Node_Str" + token + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ lang+ "String_Node_Str"+ hashStr+ imdbStr+ qStr+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str";
  Pattern re=Pattern.compile("String_Node_Str",Pattern.DOTALL);
  String page=postPage(url.openConnection(),req);
  Matcher m=re.matcher(page);
  while (m.find()) {
    LOGGER.debug("String_Node_Str" + m.group(2) + "String_Node_Str"+ m.group(1)+ "String_Node_Str"+ m.group(3));
    res.put(m.group(2) + "String_Node_Str" + m.group(1),m.group(3));
    if (res.size() > PMS.getConfiguration().liveSubtitlesLimit()) {
      break;
    }
  }
  return res;
}

Fixed version (ground truth):
public static Map<String,Object> findSubs(String hash,long size,String imdb,String query,RendererConfiguration r) throws IOException {
  TreeMap<String,Object> res=new TreeMap<>();
  if (!login()) {
    return res;
  }
  String lang=UMSUtils.getLangList(r,true);
  URL url=new URL(OPENSUBS_URL);
  String hashStr="String_Node_Str";
  String imdbStr="String_Node_Str";
  String qStr="String_Node_Str";
  if (!StringUtils.isEmpty(hash)) {
    hashStr="String_Node_Str" + hash + "String_Node_Str"+ "String_Node_Str"+ size+ "String_Node_Str";
  }
 else   if (!StringUtils.isEmpty(imdb)) {
    imdbStr="String_Node_Str" + imdb + "String_Node_Str";
  }
 else   if (!StringUtils.isEmpty(query)) {
    qStr="String_Node_Str" + query + "String_Node_Str";
  }
 else {
    return res;
  }
  String req=null;
  tokenLock.readLock().lock();
  try {
    req="String_Node_Str" + "String_Node_Str" + token + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ lang+ "String_Node_Str"+ hashStr+ imdbStr+ qStr+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str";
  }
  finally {
    tokenLock.readLock().unlock();
  }
  Pattern re=Pattern.compile("String_Node_Str",Pattern.DOTALL);
  String page=postPage(url.openConnection(),req);
  Matcher m=re.matcher(page);
  while (m.find()) {
    LOGGER.debug("String_Node_Str" + m.group(2) + "String_Node_Str"+ m.group(1)+ "String_Node_Str"+ m.group(3));
    res.put(m.group(2) + "String_Node_Str" + m.group(1),m.group(3));
    if (res.size() > PMS.getConfiguration().liveSubtitlesLimit()) {
      break;
    }
  }
  return res;
}
Program: 47133
Project: 47133
Buggy source:
public static String fetchSubs(String url,String outName) throws FileNotFoundException, IOException {
  login();
  if (token == null) {
    return "String_Node_Str";
  }
  if (StringUtils.isEmpty(outName)) {
    outName=subFile(String.valueOf(System.currentTimeMillis()));
  }
  File f=new File(outName);
  URL u=new URL(url);
  URLConnection connection=u.openConnection();
  connection.setDoInput(true);
  connection.setDoOutput(true);
  InputStream in=connection.getInputStream();
  OutputStream out;
  try (GZIPInputStream gzipInputStream=new GZIPInputStream(in)){
    out=new FileOutputStream(f);
    byte[] buf=new byte[4096];
    int len;
    while ((len=gzipInputStream.read(buf)) > 0) {
      out.write(buf,0,len);
    }
  }
   out.close();
  if (!PMS.getConfiguration().isLiveSubtitlesKeep()) {
    int tmo=PMS.getConfiguration().getLiveSubtitlesTimeout();
    if (tmo <= 0) {
      PMS.get().addTempFile(f);
    }
 else {
      PMS.get().addTempFile(f,tmo);
    }
  }
  return f.getAbsolutePath();
}

Fixed version (ground truth):
public static String fetchSubs(String url,String outName) throws FileNotFoundException, IOException {
  if (!login()) {
    return "String_Node_Str";
  }
  if (StringUtils.isEmpty(outName)) {
    outName=subFile(String.valueOf(System.currentTimeMillis()));
  }
  File f=new File(outName);
  URL u=new URL(url);
  URLConnection connection=u.openConnection();
  connection.setDoInput(true);
  connection.setDoOutput(true);
  InputStream in=connection.getInputStream();
  OutputStream out;
  try (GZIPInputStream gzipInputStream=new GZIPInputStream(in)){
    out=new FileOutputStream(f);
    byte[] buf=new byte[4096];
    int len;
    while ((len=gzipInputStream.read(buf)) > 0) {
      out.write(buf,0,len);
    }
  }
   out.close();
  if (!PMS.getConfiguration().isLiveSubtitlesKeep()) {
    int tmo=PMS.getConfiguration().getLiveSubtitlesTimeout();
    if (tmo <= 0) {
      PMS.get().addTempFile(f);
    }
 else {
      PMS.get().addTempFile(f,tmo);
    }
  }
  return f.getAbsolutePath();
}
Program: 47134
Project: 47134
Buggy source:
private static String checkMovieHash(String hash) throws IOException {
  login();
  if (token == null) {
    return "String_Node_Str";
  }
  URL url=new URL(OPENSUBS_URL);
  String req="String_Node_Str" + "String_Node_Str" + token + "String_Node_Str"+ "String_Node_Str"+ hash+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str";
  LOGGER.debug("String_Node_Str" + req);
  return postPage(url.openConnection(),req);
}

Fixed version (ground truth):
private static String checkMovieHash(String hash) throws IOException {
  if (!login()) {
    return "String_Node_Str";
  }
  URL url=new URL(OPENSUBS_URL);
  tokenLock.readLock().lock();
  String req=null;
  try {
    req="String_Node_Str" + "String_Node_Str" + token + "String_Node_Str"+ "String_Node_Str"+ hash+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str";
  }
  finally {
    tokenLock.readLock().unlock();
  }
  LOGGER.debug("String_Node_Str" + req);
  return postPage(url.openConnection(),req);
}
Program: 47138
Project: 47138
Buggy source:
@Override public void updateRenderer(RendererConfiguration renderer){
  st.updateRenderer(renderer);
}

Fixed version (ground truth):
@Override public void updateRenderer(RendererConfiguration renderer){
  StatusTab.updateRenderer(renderer);
}
Program: 47141
Project: 47141
Buggy source:
public static byte[] getCover(String based64Value){
  try {
    if (base64 != null) {
      return base64.decode(based64Value.getBytes());
    }
  }
 catch (  Exception e) {
    LOGGER.error("String_Node_Str",e);
  }
  return null;
}

Fixed version (ground truth):
public static byte[] getCover(String based64Value){
  try {
    if (base64 != null) {
      return base64.decode(based64Value.getBytes(StandardCharsets.US_ASCII));
    }
  }
 catch (  Exception e) {
    LOGGER.error("String_Node_Str",e);
  }
  return null;
}
Program: 47142
Project: 47142
Buggy source:
public void quit(){
  WindowsNamedPipe.setLoop(false);
  String windowGeometry=getBounds().toString();
  configuration.setWindowGeometry(windowGeometry.substring(windowGeometry.indexOf("String_Node_Str") + 1,windowGeometry.indexOf("String_Node_Str")));
  configuration.setScreenSize((int)screenSize.getWidth() + "String_Node_Str" + (int)screenSize.getHeight());
  try {
    Thread.sleep(100);
  }
 catch (  InterruptedException e) {
    LOGGER.error(null,e);
  }
  System.exit(0);
}

Fixed version (ground truth):
public void quit(){
  WindowsNamedPipe.setLoop(false);
  String windowGeometry=getBounds().toString();
  if (getExtendedState() != NORMAL) {
    configuration.setWindowExtendedState(getExtendedState());
  }
 else {
    configuration.setWindowExtendedState(NORMAL);
    configuration.setWindowGeometry(windowGeometry.substring(windowGeometry.indexOf("String_Node_Str") + 1,windowGeometry.indexOf("String_Node_Str")));
  }
  configuration.setScreenSize((int)screenSize.getWidth() + "String_Node_Str" + (int)screenSize.getHeight());
  try {
    Thread.sleep(100);
  }
 catch (  InterruptedException e) {
    LOGGER.error(null,e);
  }
  System.exit(0);
}
Program: 47143
Project: 47143
Buggy source:
/** 
 * Converts UTF-16 inputFile to UTF-8 outputFile. Does not overwrite existing outputFile file.
 * @param inputFile UTF-16 file
 * @param outputFile UTF-8 file after conversion
 * @throws IOException
 */
public static void convertFileFromUtf16ToUtf8(File inputFile,File outputFile) throws IOException {
  String charset;
  if (inputFile == null || !inputFile.canRead()) {
    throw new FileNotFoundException("String_Node_Str");
  }
  try {
    charset=getFileCharset(inputFile);
  }
 catch (  IOException ex) {
    LOGGER.debug("String_Node_Str",ex);
    throw new IllegalArgumentException("String_Node_Str");
  }
  if (isCharsetUTF16(charset)) {
    if (!outputFile.exists()) {
      BufferedReader reader=null;
      try {
        if (equalsIgnoreCase(charset,CHARSET_UTF_16LE)) {
          reader=new BufferedReader(new InputStreamReader(new FileInputStream(inputFile),"String_Node_Str"));
        }
 else {
          reader=new BufferedReader(new InputStreamReader(new FileInputStream(inputFile),"String_Node_Str"));
        }
      }
 catch (      UnsupportedEncodingException ex) {
        LOGGER.warn("String_Node_Str",ex);
        throw ex;
      }
      BufferedWriter writer=new BufferedWriter(new OutputStreamWriter(new FileOutputStream(outputFile),"String_Node_Str"));
      int c;
      while ((c=reader.read()) != -1) {
        writer.write(c);
      }
      writer.close();
      reader.close();
    }
  }
 else {
    throw new IllegalArgumentException("String_Node_Str");
  }
}

Fixed version (ground truth):
/** 
 * Converts UTF-16 inputFile to UTF-8 outputFile. Does not overwrite existing outputFile file.
 * @param inputFile UTF-16 file
 * @param outputFile UTF-8 file after conversion
 * @throws IOException
 */
public static void convertFileFromUtf16ToUtf8(File inputFile,File outputFile) throws IOException {
  Charset charset;
  if (inputFile == null || !inputFile.canRead()) {
    throw new FileNotFoundException("String_Node_Str");
  }
  try {
    charset=getFileCharset(inputFile);
  }
 catch (  IOException ex) {
    LOGGER.debug("String_Node_Str",ex);
    throw new IllegalArgumentException("String_Node_Str");
  }
  if (isCharsetUTF16(charset)) {
    if (!outputFile.exists()) {
      BufferedReader reader=null;
      if (charset.equals(StandardCharsets.UTF_16LE)) {
        reader=new BufferedReader(new InputStreamReader(new FileInputStream(inputFile),StandardCharsets.UTF_16));
      }
 else {
        reader=new BufferedReader(new InputStreamReader(new FileInputStream(inputFile),charset));
      }
      BufferedWriter writer=new BufferedWriter(new OutputStreamWriter(new FileOutputStream(outputFile),StandardCharsets.UTF_8));
      int c;
      while ((c=reader.read()) != -1) {
        writer.write(c);
      }
      writer.close();
      reader.close();
    }
  }
 else {
    throw new IllegalArgumentException("String_Node_Str");
  }
}
Program: 47144
Project: 47144
Buggy source:
/** 
 * Tests if charset is UTF-8 encoded with or without BOM.
 * @param charset Charset to test
 * @return true if charset is UTF-8 encoded with or without BOM, false otherwise.
 */
public static boolean isCharsetUTF8(String charset){
  return equalsIgnoreCase(charset,CHARSET_UTF_8);
}

Fixed version (ground truth):
/** 
 * Tests if charset is UTF-8.
 * @param charset charset name to test
 * @return True if charset is UTF-8, false otherwise.
 */
public static boolean isCharsetUTF8(String charsetName){
  return equalsIgnoreCase(charsetName,CHARSET_UTF_8);
}
Program: 47145
Project: 47145
Buggy source:
/** 
 * Tests if charset is UTF-16 encoded LE or BE.
 * @param charset Charset to test
 * @return true if charset is UTF-16 encoded LE or BE, false otherwise.
 */
public static boolean isCharsetUTF16(String charset){
  return (equalsIgnoreCase(charset,CHARSET_UTF_16LE) || equalsIgnoreCase(charset,CHARSET_UTF_16BE));
}

Fixed version (ground truth):
/** 
 * Tests if charset is UTF-16.
 * @param charset charset name to test
 * @return True if charset is UTF-16, false otherwise.
 */
public static boolean isCharsetUTF16(String charsetName){
  return (equalsIgnoreCase(charsetName,CHARSET_UTF_16LE) || equalsIgnoreCase(charsetName,CHARSET_UTF_16BE));
}
Program: 47146
Project: 47146
Buggy source:
/** 
 * Tests if file is UTF-8 encoded with or without BOM.
 * @param file File to test
 * @return true if file is UTF-8 encoded with or without BOM, false otherwise.
 * @throws IOException
 */
public static boolean isFileUTF8(File file) throws IOException {
  return isCharsetUTF8(getFileCharset(file));
}

Fixed version (ground truth):
/** 
 * Tests if file is UTF-8 encoded with or without BOM.
 * @param file File to test
 * @return True if file is UTF-8 encoded with or without BOM, false otherwise.
 * @throws IOException
 */
public static boolean isFileUTF8(File file) throws IOException {
  return isCharsetUTF8(getFileCharset(file));
}
Program: 47147
Project: 47147
Buggy source:
/** 
 * Tests if file is UTF-16 encoded LE or BE.
 * @param file File to test
 * @return true if file is UTF-16 encoded LE or BE, false otherwise.
 * @throws IOException
 */
public static boolean isFileUTF16(File file) throws IOException {
  return isCharsetUTF16(getFileCharset(file));
}

Fixed version (ground truth):
/** 
 * Tests if file is UTF-16 encoded.
 * @param file File to test
 * @return True if file is UTF-16 encoded, false otherwise.
 * @throws IOException
 */
public static boolean isFileUTF16(File file) throws IOException {
  return isCharsetUTF16(getFileCharset(file));
}
Program: 47148
Project: 47148
Buggy source:
public static BufferedReader bufferedReaderWithCorrectCharset(File file) throws IOException {
  BufferedReader reader;
  String fileCharset=getFileCharset(file);
  final boolean iscodepageAutoDetectedAndSupportedByJVM=isNotBlank(fileCharset) && Charset.isSupported(fileCharset);
  if (iscodepageAutoDetectedAndSupportedByJVM) {
    reader=new BufferedReader(new InputStreamReader(new FileInputStream(file),Charset.forName(fileCharset)));
  }
 else {
    reader=new BufferedReader(new InputStreamReader(new FileInputStream(file)));
  }
  return reader;
}

Fixed version (ground truth):
public static BufferedReader bufferedReaderWithCorrectCharset(File file) throws IOException {
  BufferedReader reader;
  Charset fileCharset=getFileCharset(file);
  if (fileCharset != null) {
    reader=new BufferedReader(new InputStreamReader(new FileInputStream(file),fileCharset));
  }
 else {
    reader=new BufferedReader(new InputStreamReader(new FileInputStream(file),StandardCharsets.UTF_8));
    LOGGER.warn("String_Node_Str",file.getAbsolutePath());
  }
  return reader;
}
Program: 47149
Project: 47149
Buggy source:
/** 
 * Detects charset/encoding for given file. Not 100% accurate for non-Unicode files.
 * @param file File to detect charset/encoding
 * @return file's charset or null if not detected
 * @throws IOException
 */
public static String getFileCharset(File file) throws IOException {
  String encoding=null;
  externalSubsLang=null;
  try (InputStream in=new BufferedInputStream(new FileInputStream(file))){
    CharsetDetector detector=new CharsetDetector();
    detector.enableInputFilter(true);
    detector.setText(in);
    CharsetMatch[] matches=detector.detectAll();
    CharsetMatch mm=null;
    for (    CharsetMatch m : matches) {
      if (mm == null || mm.getConfidence() < m.getConfidence()) {
        mm=m;
      }
    }
    if (mm != null) {
      encoding=mm.getName().toUpperCase();
      externalSubsLang=mm.getLanguage();
    }
  }
   if (encoding != null) {
    LOGGER.debug("String_Node_Str",file.getAbsolutePath(),encoding);
  }
 else {
    LOGGER.debug("String_Node_Str",file.getAbsolutePath());
  }
  return encoding;
}

Fixed version (ground truth):
/** 
 * Detects charset/encoding for given file. Not 100% accurate for non-Unicode files.
 * @param file the file for which to detect charset/encoding
 * @return The detected <code>Charset</code> or <code>null</code> if not detected
 * @throws IOException
 */
public static Charset getFileCharset(File file) throws IOException {
  CharsetMatch match=getFileCharsetMatch(file);
  if (match != null) {
    try {
      if (Charset.isSupported(match.getName())) {
        LOGGER.debug("String_Node_Str",match.getName(),file.getAbsolutePath());
        return Charset.forName(match.getName());
      }
 else {
        LOGGER.debug("String_Node_Str",match.getName(),file.getAbsolutePath());
        return null;
      }
    }
 catch (    IllegalCharsetNameException e) {
      LOGGER.debug("String_Node_Str",match.getName(),file.getAbsolutePath());
    }
  }
  LOGGER.debug("String_Node_Str",file.getAbsolutePath());
  return null;
}
Program: 47150
Project: 47150
Buggy source:
/** 
 * Tests if charset is UTF-32 encoded LE or BE.
 * @param charset Charset to test
 * @return true if charset is UTF-32 encoded LE or BE, false otherwise.
 */
public static boolean isCharsetUTF32(String charset){
  return (equalsIgnoreCase(charset,CHARSET_UTF_32LE) || equalsIgnoreCase(charset,CHARSET_UTF_32BE));
}

Fixed version (ground truth):
/** 
 * Tests if charset is UTF-32.
 * @param charsetName charset name to test
 * @return True if charset is UTF-32, false otherwise.
 */
public static boolean isCharsetUTF32(String charsetName){
  return (equalsIgnoreCase(charsetName,CHARSET_UTF_32LE) || equalsIgnoreCase(charsetName,CHARSET_UTF_32BE));
}
Program: 47152
Project: 47152
Buggy source:
/** 
 * Get the   {@link java.util.Locale} of the preferred language for the UMSuser interface. The default is based on the default (OS) locale.
 * @return The {@link java.util.Locale}.
 */
public Locale getLanguageLocale(){
  String languageCode=configuration.getString(KEY_LANGUAGE);
  Locale locale=null;
  if (languageCode != null && !languageCode.isEmpty()) {
    locale=Languages.toLocale(Locale.forLanguageTag(languageCode));
    if (locale == null) {
      LOGGER.error("String_Node_Str",languageCode);
    }
  }
 else {
    LOGGER.info("String_Node_Str");
  }
  if (locale == null) {
    locale=Languages.toLocale(Locale.getDefault());
    if (locale == null) {
      LOGGER.error("String_Node_Str",Locale.getDefault().toLanguageTag());
    }
  }
  if (locale == null) {
    locale=Locale.forLanguageTag("String_Node_Str");
  }
  return locale;
}

Fixed version (ground truth):
/** 
 * Get the   {@link java.util.Locale} of the preferred language for the UMSuser interface. The default is based on the default (OS) locale. Doesn't log potential issues.
 * @return The {@link java.util.Locale}.
 */
public Locale getLanguageLocale(){
  return getLanguageLocale(false);
}
Program: 47153
Project: 47153
Buggy source:
public void quit(){
  WindowsNamedPipe.setLoop(false);
  String windowGeometry=getBounds().toString();
  configuration.setWindowGeometry(windowGeometry.substring(windowGeometry.indexOf("String_Node_Str") + 1,windowGeometry.indexOf("String_Node_Str")));
  configuration.setScreenSize((int)screenSize.getWidth() + "String_Node_Str" + (int)screenSize.getHeight());
  try {
    Thread.sleep(100);
  }
 catch (  InterruptedException e) {
    LOGGER.error(null,e);
  }
  System.exit(0);
}

Fixed version (ground truth):
public void quit(){
  WindowsNamedPipe.setLoop(false);
  String windowGeometry=getBounds().toString();
  try {
    configuration.setWindowGeometry(windowGeometry.substring(windowGeometry.indexOf("String_Node_Str") + 1,windowGeometry.indexOf("String_Node_Str")));
    configuration.setScreenSize((int)screenSize.getWidth() + "String_Node_Str" + (int)screenSize.getHeight());
  }
 catch (  Exception e) {
    LOGGER.warn("String_Node_Str",e.getMessage());
    LOGGER.debug("String_Node_Str",e);
  }
  try {
    Thread.sleep(100);
  }
 catch (  InterruptedException e) {
    LOGGER.error("String_Node_Str",e);
  }
  System.exit(0);
}
Program: 47160
Project: 47160
Buggy source:
/** 
 * Converts the result of getAspectRatioDvdIso() to provide MEncoderVideo with a valid value for the "vaspect" option in the "-mpegopts" command. Note: Our code never uses a false value for "ratios", so unless any plugins rely on it we can simplify things by removing that parameter.
 * @param ratios
 * @return 
 */
public String getAspectRatioMencoderMpegopts(boolean ratios){
  String a=null;
  if (aspectRatioDvdIso != null) {
    double ar=Double.parseDouble(aspectRatioDvdIso);
    if (ar > 1.7 && ar < 1.8) {
      a=ratios ? "String_Node_Str" : "String_Node_Str";
    }
    if (ar > 1.3 && ar < 1.4) {
      a=ratios ? "String_Node_Str" : "String_Node_Str";
    }
  }
  return a;
}

Fixed version (ground truth):
/** 
 * Converts the result of getAspectRatioDvdIso() to provide MEncoderVideo with a valid value for the "vaspect" option in the "-mpegopts" command. Note: Our code never uses a false value for "ratios", so unless any plugins rely on it we can simplify things by removing that parameter.
 * @param ratios
 * @return
 */
public String getAspectRatioMencoderMpegopts(boolean ratios){
  String a=null;
  if (aspectRatioDvdIso != null) {
    double ar=Double.parseDouble(aspectRatioDvdIso);
    if (ar > 1.7 && ar < 1.8) {
      a=ratios ? "String_Node_Str" : "String_Node_Str";
    }
    if (ar > 1.3 && ar < 1.4) {
      a=ratios ? "String_Node_Str" : "String_Node_Str";
    }
  }
  return a;
}
Program: 47164
Project: 47164
Buggy source:
@Override public String getPropertyValue(){
  String result=null;
  ConfigurationReader configurationReader=configuration.getConfigurationReader();
  boolean saveLogOverride=configurationReader.getLogOverrides();
  configurationReader.setLogOverrides(false);
switch (key) {
case "String_Node_Str":
    result=getDebugLogPath();
case "String_Node_Str":
  result=getRootLevel();
}
configurationReader.setLogOverrides(saveLogOverride);
return result;
}

Fixed version (ground truth):
@Override public String getPropertyValue(){
  String result=null;
  ConfigurationReader configurationReader=configuration.getConfigurationReader();
  boolean saveLogOverride=configurationReader.getLogOverrides();
  configurationReader.setLogOverrides(false);
switch (key) {
case "String_Node_Str":
    result=getDebugLogPath();
  break;
case "String_Node_Str":
result=getRootLevel();
break;
}
configurationReader.setLogOverrides(saveLogOverride);
return result;
}
Program: 47167
Project: 47167
Buggy source:
@Override public void actionPerformed(ActionEvent e){
  String str=e.getActionCommand();
  if (str.equals("String_Node_Str")) {
    packDbg();
  }
 else {
    try {
      File file=str.equals("String_Node_Str") ? new File(dbg_zip).getParentFile() : new File(str);
      boolean exists=file.isFile() && file.exists();
      if (!exists) {
        file.createNewFile();
      }
      java.awt.Desktop.getDesktop().open(file);
      if (!exists) {
        reload((JComponent)e.getSource());
      }
    }
 catch (    IOException e1) {
      LOGGER.debug("String_Node_Str" + e1);
    }
  }
}

Fixed version (ground truth):
@Override public void actionPerformed(ActionEvent e){
  String str=e.getActionCommand();
  if (str.equals("String_Node_Str")) {
    packDbg();
  }
 else {
    try {
      File file=str.equals("String_Node_Str") ? new File(dbg_zip).getParentFile() : new File(str);
      boolean exists=file.isFile() && file.exists();
      if (!exists) {
        file.getParentFile().mkdirs();
        file.createNewFile();
      }
      java.awt.Desktop.getDesktop().open(file);
      if (!exists) {
        reload((JComponent)e.getSource());
      }
    }
 catch (    IOException e1) {
      LOGGER.debug("String_Node_Str" + e1);
    }
  }
}
Program: 47169
Project: 47169
Buggy source:
@Override public String getPropertyValue(){
switch (key) {
case "String_Node_Str":
    return getDebugLogPath();
case "String_Node_Str":
  return getRootLevel();
}
return null;
}

Fixed version (ground truth):
@Override public String getPropertyValue(){
  String result=null;
  ConfigurationReader configurationReader=configuration.getConfigurationReader();
  boolean saveLogOverride=configurationReader.getLogOverrides();
  configurationReader.setLogOverrides(false);
switch (key) {
case "String_Node_Str":
    result=getDebugLogPath();
case "String_Node_Str":
  result=getRootLevel();
}
configurationReader.setLogOverrides(saveLogOverride);
return result;
}
Program: 47170
Project: 47170
Buggy source:
/** 
 * Does basic transformations between characters and their HTML representation with ampersands.
 * @param s String to be encoded
 * @return Encoded String
 */
public static String encodeXML(String s){
  s=s.replace("String_Node_Str","String_Node_Str");
  s=s.replace("String_Node_Str","String_Node_Str");
  s=s.replace("String_Node_Str","String_Node_Str");
  s=s.replace("String_Node_Str","String_Node_Str");
  s=s.replace("String_Node_Str","String_Node_Str");
  s=s.replace("String_Node_Str","String_Node_Str");
  return s;
}

Fixed version (ground truth):
/** 
 * Does double transformations between &<> characters and their XML representation with ampersands.
 * @param s String to be encoded
 * @return Encoded String
 */
public static String encodeXML(String s){
  s=s.replace("String_Node_Str","String_Node_Str");
  s=s.replace("String_Node_Str","String_Node_Str");
  s=s.replace("String_Node_Str","String_Node_Str");
  s=s.replace("String_Node_Str","String_Node_Str");
  return s;
}
Program: 47171
Project: 47171
Buggy source:
public static List<String> getSupportedProtocols(PmsConfiguration configuration){
  ArrayList<String> protocols=new ArrayList<>();
  String output=ProcessUtil.run(configuration.getFfmpegPath(),"String_Node_Str");
  boolean add=false;
  boolean old=false;
  for (  String line : output.split("String_Node_Str")) {
    if (line.equals("String_Node_Str")) {
      add=true;
    }
 else     if (line.equals("String_Node_Str")) {
      break;
    }
 else     if (add) {
      protocols.add(line);
    }
 else     if (line.startsWith("String_Node_Str")) {
      old=true;
    }
 else     if (old && line.startsWith("String_Node_Str")) {
      protocols.add(line.split("String_Node_Str")[1]);
    }
  }
  return protocols;
}

Fixed version (ground truth):
public static List<String> getSupportedProtocols(PmsConfiguration configuration){
  ArrayList<String> protocols=new ArrayList<>();
  String output=ProcessUtil.run(configuration.getFfmpegPath(),"String_Node_Str");
  boolean add=false;
  boolean old=false;
  for (  String line : output.split("String_Node_Str")) {
    if (line.equals("String_Node_Str")) {
      add=true;
    }
 else     if (line.equals("String_Node_Str")) {
      break;
    }
 else     if (add) {
      protocols.add(line.trim());
    }
 else     if (line.startsWith("String_Node_Str")) {
      old=true;
    }
 else     if (old && line.startsWith("String_Node_Str")) {
      protocols.add(line.split("String_Node_Str")[1]);
    }
  }
  return protocols;
}
Program: 47173
Project: 47173
Buggy source:
/** 
 * Does basic transformations between characters and their HTML representation with ampersands.
 * @param s String to be encoded
 * @return Encoded String
 */
public static String encodeXML(String s){
  s=s.replace("String_Node_Str","String_Node_Str");
  s=s.replace("String_Node_Str","String_Node_Str");
  s=s.replace("String_Node_Str","String_Node_Str");
  s=s.replace("String_Node_Str","String_Node_Str");
  s=s.replace("String_Node_Str","String_Node_Str");
  s=s.replace("String_Node_Str","String_Node_Str");
  return s;
}

Fixed version (ground truth):
/** 
 * Does basic transformations between characters and their HTML representation with ampersands.
 * @param s String to be encoded
 * @return Encoded String
 */
public static String encodeXML(String s){
  s=s.replace("String_Node_Str","String_Node_Str");
  s=s.replace("String_Node_Str","String_Node_Str");
  s=s.replace("String_Node_Str","String_Node_Str");
  s=s.replace("String_Node_Str","String_Node_Str");
  s=s.replace("String_Node_Str","String_Node_Str");
  return s;
}
Program: 47176
Project: 47176
Buggy source:
/** 
 * Convert number to be divisible by mod.
 * @param number the number to convert
 * @param mod the number to divide by
 * @return the number divisible by mod
 */
public int convertToModX(int number,int mod){
  if (number % mod != 0) {
    number-=(number % mod);
  }
  return number;
}

Fixed version (ground truth):
/** 
 * Convert number to be divisible by mod.
 * @param number the number to convert
 * @param mod the number to divide by
 * @return the number divisible by mod
 */
public static int convertToModX(int number,int mod){
  if (number % mod != 0) {
    number-=(number % mod);
  }
  return number;
}
Program: 47177
Project: 47177
Buggy source:
/** 
 * Does basic transformations between characters and their HTML representation with ampersands.
 * @param s String to be encoded
 * @return Encoded String
 */
public static String encodeXML(String s){
  s=s.replace("String_Node_Str","String_Node_Str");
  s=s.replace("String_Node_Str","String_Node_Str");
  s=s.replace("String_Node_Str","String_Node_Str");
  s=s.replace("String_Node_Str","String_Node_Str");
  s=s.replace("String_Node_Str","String_Node_Str");
  return s;
}

Fixed version (ground truth):
/** 
 * Does basic transformations between characters and their HTML representation with ampersands.
 * @param s String to be encoded
 * @return Encoded String
 */
public static String encodeXML(String s){
  s=s.replace("String_Node_Str","String_Node_Str");
  s=s.replace("String_Node_Str","String_Node_Str");
  s=s.replace("String_Node_Str","String_Node_Str");
  s=s.replace("String_Node_Str","String_Node_Str");
  s=s.replace("String_Node_Str","String_Node_Str");
  s=s.replace("String_Node_Str","String_Node_Str");
  return s;
}
Program: 47180
Project: 47180
Buggy source:
@Override public ProcessWrapper launchTranscode(DLNAResource dlna,DLNAMediaInfo media,OutputParams params) throws IOException {
  PmsConfiguration prev=configuration;
  configuration=(DeviceConfiguration)params.mediaRenderer;
  params.waitbeforestart=1;
  params.minBufferSize=1;
  params.maxBufferSize=5;
  params.hidebuffer=true;
  final String filename=dlna.getSystemName();
  if (media == null) {
    return null;
  }
  byte image[]=null;
  try {
    image=getThumbnail(params,filename);
  }
 catch (  IOException e) {
    LOGGER.error("String_Node_Str",e);
  }
  ProcessWrapper pw=new InternalJavaProcessImpl(new ByteArrayInputStream(image));
  configuration=prev;
  return pw;
}

Fixed version (ground truth):
@Override public ProcessWrapper launchTranscode(DLNAResource dlna,DLNAMediaInfo media,OutputParams params) throws IOException {
  PmsConfiguration prev=configuration;
  configuration=(DeviceConfiguration)params.mediaRenderer;
  params.waitbeforestart=1;
  params.minBufferSize=1;
  params.maxBufferSize=6;
  params.hidebuffer=true;
  final String filename=dlna.getSystemName();
  if (media == null) {
    return null;
  }
  byte image[]=null;
  try {
    image=getThumbnail(params,filename);
  }
 catch (  IOException e) {
    LOGGER.error("String_Node_Str",e);
  }
  ProcessWrapper pw=new InternalJavaProcessImpl(new ByteArrayInputStream(image));
  configuration=prev;
  return pw;
}
Program: 47183
Project: 47183
Buggy source:
@Override public boolean isRefreshNeeded(){
  long modified=0;
  for (  File f : this.getConf().getFiles()) {
    if (f != null) {
      modified=Math.max(modified,f.lastModified());
    }
  }
  return (getLastRefreshTime() < modified) || (configuration.getSortMethod(getPath()) == UMSUtils.SORT_RANDOM);
}

Fixed version (ground truth):
@Override public boolean isRefreshNeeded(){
  long modified=0;
  for (  File f : this.getConf().getFiles()) {
    if (f != null) {
      modified=Math.max(modified,f.lastModified());
    }
  }
  boolean emptyFolderNowNotEmpty=false;
  if (emptyFoldersToRescan != null) {
    for (    File emptyFile : emptyFoldersToRescan) {
      if (FileUtil.isFolderRelevant(emptyFile,configuration)) {
        emptyFolderNowNotEmpty=true;
        break;
      }
    }
  }
  return (getLastRefreshTime() < modified) || (configuration.getSortMethod(getPath()) == UMSUtils.SORT_RANDOM || emptyFolderNowNotEmpty);
}
Program: 47184
Project: 47184
Buggy source:
@Override public void doRefreshChildren(String str){
  getChildren().clear();
  discoverable=null;
  discoverChildren(str);
  analyzeChildren(-1);
}

Fixed version (ground truth):
@Override public void doRefreshChildren(String str){
  getChildren().clear();
  emptyFoldersToRescan=null;
  discoverable=null;
  discoverChildren(str);
  analyzeChildren(-1);
}
Program: 47189
Project: 47189
Buggy source:
public SelectRenderers(){
  super(new BorderLayout());
  JPanel checkPanel=new JPanel();
  checkPanel.applyComponentOrientation(ComponentOrientation.getOrientation(new Locale(configuration.getLanguage())));
  add(checkPanel,BorderLayout.LINE_START);
  allRenderers=new DefaultMutableTreeNode(rootName);
  DefaultMutableTreeNode renderersGroup=null;
  String lastGroup=null;
  String groupName;
  boolean firstLoop=true;
  for (  String renderer : allRenderersNames) {
    if (lastGroup != null && renderer.startsWith(lastGroup)) {
      if (renderer.indexOf("String_Node_Str") > 0) {
        renderersGroup.add(new DefaultMutableTreeNode(renderer.substring(renderer.indexOf("String_Node_Str"))));
      }
 else {
        renderersGroup.add(new DefaultMutableTreeNode(renderer));
      }
    }
 else {
      if (!firstLoop) {
        allRenderers.add(renderersGroup);
      }
      if (renderer.indexOf("String_Node_Str") > 0) {
        groupName=renderer.substring(0,renderer.indexOf("String_Node_Str"));
        renderersGroup=new DefaultMutableTreeNode(groupName);
        renderersGroup.add(new DefaultMutableTreeNode(renderer.substring(renderer.indexOf("String_Node_Str"))));
      }
 else {
        groupName=renderer;
        renderersGroup=new DefaultMutableTreeNode(groupName);
      }
      lastGroup=groupName;
      firstLoop=false;
    }
  }
  SrvTree=new JTree(new DefaultTreeModel(allRenderers));
  checkTreeManager=new CheckTreeManager(SrvTree);
  checkPanel.add(new JScrollPane(SrvTree));
  checkPanel.setSize(400,500);
}

Fixed version (ground truth):
public SelectRenderers(){
  super(new BorderLayout());
  JPanel checkPanel=new JPanel();
  checkPanel.applyComponentOrientation(ComponentOrientation.getOrientation(new Locale(configuration.getLanguage())));
  add(checkPanel,BorderLayout.LINE_START);
  allRenderers=new DefaultMutableTreeNode(Messages.getString("String_Node_Str"));
  DefaultMutableTreeNode renderersGroup=null;
  String lastGroup=null;
  String groupName;
  boolean firstLoop=true;
  for (  String renderer : allRenderersNames) {
    if (lastGroup != null && renderer.startsWith(lastGroup)) {
      if (renderer.indexOf("String_Node_Str") > 0) {
        renderersGroup.add(new DefaultMutableTreeNode(renderer.substring(renderer.indexOf("String_Node_Str"))));
      }
 else {
        renderersGroup.add(new DefaultMutableTreeNode(renderer));
      }
    }
 else {
      if (!firstLoop) {
        allRenderers.add(renderersGroup);
      }
      if (renderer.indexOf("String_Node_Str") > 0) {
        groupName=renderer.substring(0,renderer.indexOf("String_Node_Str"));
        renderersGroup=new DefaultMutableTreeNode(groupName);
        renderersGroup.add(new DefaultMutableTreeNode(renderer.substring(renderer.indexOf("String_Node_Str"))));
      }
 else {
        groupName=renderer;
        renderersGroup=new DefaultMutableTreeNode(groupName);
      }
      lastGroup=groupName;
      firstLoop=false;
    }
  }
  SrvTree=new JTree(new DefaultTreeModel(allRenderers));
  checkTreeManager=new CheckTreeManager(SrvTree);
  checkPanel.add(new JScrollPane(SrvTree));
  checkPanel.setSize(400,500);
}
Program: 47193
Project: 47193
Buggy source:
public boolean stereoscopyIsAnaglyph(){
  return isAnaglyph;
}

Fixed version (ground truth):
public boolean stereoscopyIsAnaglyph(){
  get3DLayout();
  return isAnaglyph;
}
Program: 47194
Project: 47194
Buggy source:
/** 
 * Returns true if SeekByTime is set to "true" or "exclusive", false otherwise. Default value is false.
 * @return true if the renderer supports seek-by-time, false otherwise.
 */
public boolean isSeekByTime(){
  return isSeekByTimeExclusive() || getBoolean(SEEK_BY_TIME,false);
}

Fixed version (ground truth):
/** 
 * Returns true if SeekByTime is set to "true" or "exclusive", false otherwise. Default value is false.
 * @return true if the renderer supports seek-by-time, false otherwise.
 */
public boolean isSeekByTime(){
  return isSeekByTimeExclusive() || getString(SEEK_BY_TIME,"String_Node_Str").equalsIgnoreCase("String_Node_Str");
}
Program: 47196
Project: 47196
Buggy source:
public File[] getSharedFoldersArray(boolean monitored,ArrayList<String> tags){
  String folders;
  if (monitored) {
    folders=getConfiguration().getFoldersMonitored();
  }
 else {
    folders=getConfiguration().getFolders(tags);
  }
  if (folders == null || folders.length() == 0) {
    return null;
  }
  ArrayList<File> directories=new ArrayList<>();
  String[] foldersArray=folders.split("String_Node_Str");
  for (  String folder : foldersArray) {
    folder=folder.trim();
    folder=folder.replaceAll("String_Node_Str","String_Node_Str");
    folder=new UnicodeUnescaper().translate(folder);
    LOGGER.info("String_Node_Str" + folder);
    File file=new File(folder);
    if (file.exists()) {
      if (!file.isDirectory()) {
        LOGGER.warn("String_Node_Str" + folder + "String_Node_Str"+ Messages.getString("String_Node_Str")+ "String_Node_Str");
      }
    }
 else {
      LOGGER.warn("String_Node_Str" + folder + "String_Node_Str"+ Messages.getString("String_Node_Str")+ "String_Node_Str");
    }
    directories.add(file);
  }
  File f[]=new File[directories.size()];
  directories.toArray(f);
  return f;
}

Fixed version (ground truth):
public File[] getSharedFoldersArray(boolean monitored,ArrayList<String> tags){
  String folders;
  if (monitored) {
    folders=getConfiguration().getFoldersMonitored();
  }
 else {
    folders=getConfiguration().getFolders(tags);
  }
  if (folders == null || folders.length() == 0) {
    return null;
  }
  ArrayList<File> directories=new ArrayList<>();
  String[] foldersArray=folders.split("String_Node_Str");
  for (  String folder : foldersArray) {
    folder=folder.trim();
    folder=folder.replaceAll("String_Node_Str","String_Node_Str");
    LOGGER.info("String_Node_Str" + folder);
    File file=new File(folder);
    if (file.exists()) {
      if (!file.isDirectory()) {
        LOGGER.warn("String_Node_Str" + folder + "String_Node_Str"+ Messages.getString("String_Node_Str")+ "String_Node_Str");
      }
    }
 else {
      LOGGER.warn("String_Node_Str" + folder + "String_Node_Str"+ Messages.getString("String_Node_Str")+ "String_Node_Str");
    }
    directories.add(file);
  }
  File f[]=new File[directories.size()];
  directories.toArray(f);
  return f;
}
Program: 47198
Project: 47198
Buggy source:
@Override public String getRendererName(){
  return (StringUtils.isNotBlank(user) ? user + "String_Node_Str" : "String_Node_Str") + getBrowserName(browser);
}

Fixed version (ground truth):
@Override public String getRendererName(){
  return (pmsconfiguration.isWebAuthenticate() ? user + "String_Node_Str" : "String_Node_Str") + getBrowserName(browser);
}
Program: 47200
Project: 47200
Buggy source:
public void refresh(BasicPlayer.State state){
  if (playControl) {
    playing=state.playback != BasicPlayer.STOPPED;
    play.putValue(Action.SMALL_ICON,state.playback == BasicPlayer.PLAYING ? pauseIcon : playIcon);
    stop.setEnabled(playing);
    forward.setEnabled(playing);
    rewind.setEnabled(playing);
    update();
    position.setText(UMSUtils.playedDurationStr(state.position,state.duration));
    boolean isNew=!StringUtils.isBlank(state.uri) && !state.uri.equals(lasturi);
    lasturi=state.uri;
    if (isNew) {
      if (edited) {
        player.add(-1,uri.getText(),null,null,false);
        setEdited(false);
      }
      uri.setText(state.uri);
    }
    play.setEnabled(playing || !StringUtils.isBlank(uri.getText()));
  }
  if (volumeControl) {
    mute.putValue(Action.SMALL_ICON,state.mute ? muteIcon : volumeIcon);
    volumeSlider.setEnabled(!state.mute);
    volumeSlider.setValue(state.volume);
  }
}

Fixed version (ground truth):
public void refresh(BasicPlayer.State state){
  if (playControl) {
    playing=state.playback != BasicPlayer.STOPPED;
    play.putValue(Action.SMALL_ICON,state.playback == BasicPlayer.PLAYING ? pauseIcon : playIcon);
    stop.setEnabled(playing);
    forward.setEnabled(playing);
    rewind.setEnabled(playing);
    updatePlaylist();
    position.setText(UMSUtils.playedDurationStr(state.position,state.duration));
    boolean isNew=!StringUtils.isBlank(state.uri) && !state.uri.equals(lasturi);
    lasturi=state.uri;
    if (isNew) {
      if (edited) {
        player.add(-1,uri.getText(),null,null,false);
        setEdited(false);
      }
      uri.setText(state.uri);
    }
    play.setEnabled(playing || !StringUtils.isBlank(uri.getText()));
  }
  if (volumeControl) {
    mute.putValue(Action.SMALL_ICON,state.mute ? muteIcon : volumeIcon);
    volumeSlider.setEnabled(!state.mute);
    volumeSlider.setValue(state.volume);
  }
}
Program: 47201
Project: 47201
Buggy source:
public void setEdited(boolean b){
  edited=b;
  update();
}

Fixed version (ground truth):
public void setEdited(boolean b){
  edited=b;
  updatePlaylist();
}
Program: 47202
Project: 47202
Buggy source:
public DLNAMediaDatabase(String name){
  String dir="String_Node_Str";
  dbName=name;
  File fileDir=new File(dir);
  if (Platform.isWindows()) {
    String profileDir=configuration.getProfileDirectory();
    url=String.format("String_Node_Str",profileDir,dir,dbName);
    fileDir=new File(profileDir,dir);
  }
 else {
    url=Constants.START_URL + dir + "String_Node_Str"+ dbName;
  }
  dbDir=fileDir.getAbsolutePath();
  LOGGER.debug("String_Node_Str" + url);
  LOGGER.info("String_Node_Str" + dbDir);
  try {
    Class.forName("String_Node_Str");
  }
 catch (  ClassNotFoundException e) {
    LOGGER.error(null,e);
  }
  JdbcDataSource ds=new JdbcDataSource();
  ds.setURL(url);
  ds.setUser("String_Node_Str");
  ds.setPassword("String_Node_Str");
  cp=JdbcConnectionPool.create(ds);
}

Fixed version (ground truth):
public DLNAMediaDatabase(String name){
  dbName=name;
  dbDir=new File(Platform.isWindows() ? configuration.getProfileDirectory() : null,"String_Node_Str").getAbsolutePath();
  url=Constants.START_URL + dbDir + "String_Node_Str"+ dbName;
  LOGGER.debug("String_Node_Str" + url);
  LOGGER.info("String_Node_Str" + dbDir);
  try {
    Class.forName("String_Node_Str");
  }
 catch (  ClassNotFoundException e) {
    LOGGER.error(null,e);
  }
  JdbcDataSource ds=new JdbcDataSource();
  ds.setURL(url);
  ds.setUser("String_Node_Str");
  ds.setPassword("String_Node_Str");
  cp=JdbcConnectionPool.create(ds);
}
Program: 47203
Project: 47203
Buggy source:
public static PropertiesConfiguration createPropertiesConfiguration(){
  PropertiesConfiguration conf=new PropertiesConfiguration();
  conf.setListDelimiter((char)0);
  conf.setIOFactory(new PropertiesConfiguration.DefaultIOFactory(){
    @Override public PropertiesConfiguration.PropertiesReader createPropertiesReader(    final Reader in,    final char delimiter){
      return new PropertiesConfiguration.PropertiesReader(in,delimiter){
        @Override protected void parseProperty(        final String line){
          super.parseProperty(unicodeUnescaper.translate(line).replace("String_Node_Str","String_Node_Str").replace("String_Node_Str","String_Node_Str"));
        }
      }
;
    }
  }
);
  return conf;
}

Fixed version (ground truth):
public static PropertiesConfiguration createPropertiesConfiguration(){
  PropertiesConfiguration conf=new PropertiesConfiguration();
  conf.setListDelimiter((char)0);
  conf.setIOFactory(new PropertiesConfiguration.DefaultIOFactory(){
    @Override public PropertiesConfiguration.PropertiesReader createPropertiesReader(    final Reader in,    final char delimiter){
      return new PropertiesConfiguration.PropertiesReader(in,delimiter){
        @Override protected void parseProperty(        final String line){
          super.parseProperty(laxUnicodeUnescaper.translate(line).replace("String_Node_Str","String_Node_Str").replace("String_Node_Str","String_Node_Str"));
        }
      }
;
    }
  }
);
  return conf;
}
Program: 47204
Project: 47204
Buggy source:
@Override public PropertiesConfiguration.PropertiesReader createPropertiesReader(final Reader in,final char delimiter){
  return new PropertiesConfiguration.PropertiesReader(in,delimiter){
    @Override protected void parseProperty(    final String line){
      super.parseProperty(unicodeUnescaper.translate(line).replace("String_Node_Str","String_Node_Str").replace("String_Node_Str","String_Node_Str"));
    }
  }
;
}

Fixed version (ground truth):
@Override public PropertiesConfiguration.PropertiesReader createPropertiesReader(final Reader in,final char delimiter){
  return new PropertiesConfiguration.PropertiesReader(in,delimiter){
    @Override protected void parseProperty(    final String line){
      super.parseProperty(laxUnicodeUnescaper.translate(line).replace("String_Node_Str","String_Node_Str").replace("String_Node_Str","String_Node_Str"));
    }
  }
;
}
Program: 47205
Project: 47205
Buggy source:
@Override protected void parseProperty(final String line){
  super.parseProperty(unicodeUnescaper.translate(line).replace("String_Node_Str","String_Node_Str").replace("String_Node_Str","String_Node_Str"));
}

Fixed version (ground truth):
@Override protected void parseProperty(final String line){
  super.parseProperty(laxUnicodeUnescaper.translate(line).replace("String_Node_Str","String_Node_Str").replace("String_Node_Str","String_Node_Str"));
}
Program: 47206
Project: 47206
Buggy source:
public File[] getSharedFoldersArray(boolean monitored,ArrayList<String> tags,PmsConfiguration configuration){
  String folders;
  if (monitored) {
    folders=configuration.getFoldersMonitored();
  }
 else {
    folders=configuration.getFolders(tags);
  }
  if (folders == null || folders.length() == 0) {
    return null;
  }
  ArrayList<File> directories=new ArrayList<>();
  String[] foldersArray=folders.split("String_Node_Str");
  for (  String folder : foldersArray) {
    folder=folder.trim();
    folder=folder.replaceAll("String_Node_Str","String_Node_Str");
    folder=new UnicodeUnescaper().translate(folder);
    LOGGER.info("String_Node_Str" + folder);
    File file=new File(folder);
    if (file.exists()) {
      if (!file.isDirectory()) {
        LOGGER.warn("String_Node_Str" + folder + "String_Node_Str"+ Messages.getString("String_Node_Str")+ "String_Node_Str");
      }
    }
 else {
      LOGGER.warn("String_Node_Str" + folder + "String_Node_Str"+ Messages.getString("String_Node_Str")+ "String_Node_Str");
    }
    directories.add(file);
  }
  File f[]=new File[directories.size()];
  directories.toArray(f);
  return f;
}

Fixed version (ground truth):
public File[] getSharedFoldersArray(boolean monitored,ArrayList<String> tags,PmsConfiguration configuration){
  String folders;
  if (monitored) {
    folders=configuration.getFoldersMonitored();
  }
 else {
    folders=configuration.getFolders(tags);
  }
  if (folders == null || folders.length() == 0) {
    return null;
  }
  ArrayList<File> directories=new ArrayList<>();
  String[] foldersArray=folders.split("String_Node_Str");
  for (  String folder : foldersArray) {
    folder=folder.trim();
    folder=folder.replaceAll("String_Node_Str","String_Node_Str");
    LOGGER.info("String_Node_Str" + folder);
    File file=new File(folder);
    if (file.exists()) {
      if (!file.isDirectory()) {
        LOGGER.warn("String_Node_Str" + folder + "String_Node_Str"+ Messages.getString("String_Node_Str")+ "String_Node_Str");
      }
    }
 else {
      LOGGER.warn("String_Node_Str" + folder + "String_Node_Str"+ Messages.getString("String_Node_Str")+ "String_Node_Str");
    }
    directories.add(file);
  }
  File f[]=new File[directories.size()];
  directories.toArray(f);
  return f;
}