[Demonstration 1]

[Buggy Method]
private void queueInstallerThreads(File tempJarFile, InstallType installType, String modifier) throws Exception {
    Files.copy(getClass().getClassLoader().getResourceAsStream(jarFilePath), tempJarFile.toPath(), REPLACE_EXISTING);
    jarFile = new JarFile(tempJarFile.getPath());
    Enumeration<JarEntry> jarContents = jarFile.entries();
    while (jarContents.hasMoreElements()) {
        JarEntry file = (JarEntry) jarContents.nextElement();
        String fileName = file.getName();
        if (installType == InstallType.INCLUDE_ONLY && !fileName.startsWith(modifier))
            continue;
        else if (installType == InstallType.EXCLUDE && fileName.startsWith(modifier))
            continue;
        FileModifier.createFileSystem(extractionDirFilePath + extractionDirFileName + sourceFolderFileName + fileName);
        threadList.add(queueFile(jarFile, file, extractionDirFilePath + extractionDirFileName + sourceFolderFileName, fileName));
    }
    jarInstallerUI.setMaximumProgress(threadList.size() + 1);
}

[Buggy Hunk]
String fileName = file.getName();

[Patch]
String fileName = FileModifier.getModifiedFilePath(file.getName());

[Demonstration 2]

[Buggy Method]
public FileVisitResult visitFile(Path file, BasicFileAttributes attrs) throws IOException {
    String relativePath = moduleCompilationRoot.relativize(file).toString();
    if (relativePath.endsWith(".class")) {
        String className = relativePath.replaceAll("\\.class$", "").replace(File.separator, ".");
        classesToLoad.add(className);
    }
    return FileVisitResult.CONTINUE;
}

[Buggy Hunk]
String className = relativePath.replaceAll("\\.class$", "").replace(File.separator, ".");

[Patch]
String className = relativePath.replaceAll("\\.class$", "").replace("\\", ".").replace("/", ".");

[Demonstration 3]

[Buggy Method]
private List<String> getConsumesList(RequestMapping classMapping, RequestMapping methodMapping) {
    List<String> consumes;
    if (methodMapping.produces().length > 0) {
        consumes = Arrays.asList(methodMapping.consumes());
    } else {
        consumes = Arrays.asList(classMapping.consumes());
    }
    return consumes.size() > 0 ? consumes : null;
}

[Buggy Hunk]
if (methodMapping.produces().length > 0) {

[Patch]
if (methodMapping.consumes().length > 0) {