Program: 36613
Project: 36613
Buggy source:
@Override public void init(){
  items.addListener((  ListChangeListener.Change<? extends Item> c) -> {
    System.out.println("String_Node_Str");
    while (c.next()) {
      if (c.wasRemoved()) {
        List<? extends Item> rem=c.getRemoved();
        metas.removeIf(m -> rem.stream().anyMatch(i -> i.same(m)));
        populate(metas);
      }
 else       if (c.wasAdded()) {
        System.out.println("String_Node_Str" + c.getAddedSize());
        List<Metadata> ready=new ArrayList();
        List<Item> needs_read=new ArrayList();
        c.getAddedSubList().stream().filter(i -> !i.isCorrupt(Use.DB) && i.isFileBased()).forEach(i -> {
          if (i instanceof Metadata)           ready.add((Metadata)i);
 else           needs_read.add(i);
        }
);
        if (metaReader != null && metaReader.isRunning()) {
          System.out.println("String_Node_Str");
        }
        MetadataReader.readMetadata(needs_read,(success,result) -> {
          if (success) {
            ready.addAll(result);
            ready.forEach(i -> {
              if (!metas.stream().anyMatch(ii -> ii.same(i)))               metas.add(i);
            }
);
            System.out.println(result.size() + "String_Node_Str" + "String_Node_Str"+ metas.size());
            populate(metas);
            Log.info("String_Node_Str");
          }
 else {
            Log.info("String_Node_Str");
          }
          hideProgress();
        }
);
        showProgressReading();
      }
    }
  }
);
  CoverV=new Thumbnail(200);
  CoverV.setDragImage(false);
  coverContainer.setCenter(CoverV.getPane());
  grid.add(MoodF,1,14,2,1);
  fields.add(new TagField(TitleF,TITLE));
  fields.add(new TagField(AlbumF,ALBUM));
  fields.add(new TagField(ArtistF,ARTIST));
  fields.add(new TagField(AlbumArtistF,ALBUM_ARTIST));
  fields.add(new TagField(ComposerF,COMPOSER));
  fields.add(new TagField(PublisherF,PUBLISHER));
  fields.add(new TagField(TrackF,TRACK,isIntS));
  fields.add(new TagField(TracksTotalF,TRACKS_TOTAL,isIntS));
  fields.add(new TagField(DiscF,DISC,isIntS));
  fields.add(new TagField(DiscsTotalF,DISCS_TOTAL,isIntS));
  fields.add(new TagField(GenreF,GENRE));
  fields.add(new TagField(CategoryF,CATEGORY));
  fields.add(new TagField(YearF,YEAR,isPastYearS));
  fields.add(new TagField(RatingF,RATING_RAW));
  fields.add(new TagField(RatingPF,RATING,IsBetween0And1));
  fields.add(new TagField(PlaycountF,PLAYCOUNT));
  fields.add(new TagField(CommentF,Metadata.Field.COMMENT));
  fields.add(new TagField(MoodF,MOOD));
  fields.add(new TagField(Custom1F,CUSTOM1));
  fields.add(new TagField(Custom2F,CUSTOM2));
  fields.add(new TagField(Custom3F,CUSTOM3));
  fields.add(new TagField(Custom4F,CUSTOM4));
  fields.add(new TagField(Custom5F,CUSTOM5));
  fields.add(new TagField(LyricsA,LYRICS));
  Custom1F.setEditable(false);
  ColorF.disableProperty().bind(Custom1F.disabledProperty());
  ColorF.valueProperty().addListener((o,ov,nv) -> Custom1F.setText(new ColorParser().toS(nv)));
  entireArea.setOnMousePressed(e -> {
    entireArea.requestFocus();
    fields.forEach(TagField::onLooseFocus);
  }
);
  entireArea.setOnKeyPressed(e -> {
    if (e.getCode() == KeyCode.ENTER)     write();
  }
);
  entireArea.setOnDragOver(DragUtil.audioDragAccepthandler);
  entireArea.setOnDragDropped(drag_dropped_handler);
  coverContainer.setOnMouseClicked(e -> {
    if (e.getButton() != PRIMARY || metas.isEmpty())     return;
    File initial_dir=metas.stream().filter(Item::isFileBased).findFirst().map(Item::getLocation).orElse(new File("String_Node_Str"));
    File f=Enviroment.chooseFile("String_Node_Str",false,initial_dir,entireArea.getScene().getWindow());
    if (f != null)     addImg(f);
  }
);
  CoverV.getPane().setOnDragOver(t -> {
    Dragboard d=t.getDragboard();
    if (d.hasFiles() && d.getFiles().stream().anyMatch(ImageFileFormat::isSupported))     t.acceptTransferModes(TransferMode.ANY);
  }
);
  CoverV.getPane().setOnDragDropped(t -> {
    Dragboard d=t.getDragboard();
    if (d.hasFiles() && d.getFiles().stream().anyMatch(ImageFileFormat::isSupported)) {
      d.getFiles().stream().filter(ImageFileFormat::isSupported).findAny().ifPresent(this::addImg);
      t.setDropCompleted(true);
      t.consume();
    }
  }
);
  CoverV.getPane().setOnDragDetected(e -> CoverV.getPane().startFullDrag());
  entireArea.addEventFilter(MOUSE_DRAG_RELEASED,e -> {
    Point2D click=CoverV.getPane().sceneToLocal(e.getSceneX(),e.getSceneY());
    if (e.getGestureSource().equals(CoverV.getPane()) && !CoverV.getPane().contains(click)) {
      addImg(null);
    }
  }
);
  coverContainer.addEventHandler(MOUSE_EXITED,e -> img_border.setOpacity(0));
  coverContainer.addEventHandler(MOUSE_ENTERED,e -> {
    if (!isEmpty())     img_border.setOpacity(1);
  }
);
  img_border.setOpacity(0);
  AnchorPane clip=new AnchorPane();
  clip.layoutXProperty().bind(img_border.layoutXProperty());
  clip.layoutYProperty().bind(img_border.layoutYProperty());
  clip.prefWidthProperty().bind(img_border.widthProperty());
  clip.prefHeightProperty().bind(img_border.heightProperty());
  Rectangle r1=new Rectangle(35,35);
  Rectangle r2=new Rectangle(25,25);
  Rectangle r3=new Rectangle(25,25);
  Rectangle r4=new Rectangle(35,35);
  clip.getChildren().addAll(r1,r2,r3,r4);
  r1.relocate(0,0);
  r2.relocate(175,0);
  r3.relocate(0,175);
  r4.relocate(175,175);
  img_border.setClip(clip);
  RatingF.setOnKeyReleased(e -> setPR());
  RatingF.setOnMousePressed(e -> setPR());
  RatingPF.setOnKeyReleased(e -> setR());
  RatingPF.setOnMousePressed(e -> setR());
  infoL.setOnMouseClicked(e -> showItemsPopup());
  infoL.setCursor(Cursor.HAND);
}

Fixed version (ground truth):
@Override public void init(){
  items.addListener((  ListChangeListener.Change<? extends Item> c) -> {
    System.out.println("String_Node_Str");
    while (c.next()) {
      if (c.wasRemoved()) {
        List<? extends Item> rem=c.getRemoved();
        metas.removeIf(m -> rem.stream().anyMatch(i -> i.same(m)));
        populate(metas);
      }
 else       if (c.wasAdded()) {
        System.out.println("String_Node_Str" + c.getAddedSize());
        List<Metadata> ready=new ArrayList();
        List<Item> needs_read=new ArrayList();
        c.getAddedSubList().stream().filter(i -> !i.isCorrupt(Use.DB) && i.isFileBased()).forEach(i -> {
          if (i instanceof Metadata)           ready.add((Metadata)i);
 else           needs_read.add(i);
        }
);
        if (metaReader != null && metaReader.isRunning()) {
          System.out.println("String_Node_Str");
        }
        MetadataReader.readMetadata(needs_read,(success,result) -> {
          if (success) {
            ready.addAll(result);
            ready.forEach(i -> {
              if (!metas.stream().anyMatch(ii -> ii.same(i)))               metas.add(i);
            }
);
            System.out.println(result.size() + "String_Node_Str" + "String_Node_Str"+ metas.size());
            populate(metas);
            Log.info("String_Node_Str");
          }
 else {
            Log.info("String_Node_Str");
          }
          hideProgress();
        }
);
        showProgressReading();
      }
    }
  }
);
  CoverV=new Thumbnail(200);
  CoverV.setDragImage(false);
  coverContainer.setCenter(CoverV.getPane());
  grid.add(MoodF,1,14,2,1);
  fields.add(new TagField(TitleF,TITLE));
  fields.add(new TagField(AlbumF,ALBUM));
  fields.add(new TagField(ArtistF,ARTIST));
  fields.add(new TagField(AlbumArtistF,ALBUM_ARTIST));
  fields.add(new TagField(ComposerF,COMPOSER));
  fields.add(new TagField(PublisherF,PUBLISHER));
  fields.add(new TagField(TrackF,TRACK,isIntS));
  fields.add(new TagField(TracksTotalF,TRACKS_TOTAL,isIntS));
  fields.add(new TagField(DiscF,DISC,isIntS));
  fields.add(new TagField(DiscsTotalF,DISCS_TOTAL,isIntS));
  fields.add(new TagField(GenreF,GENRE));
  fields.add(new TagField(CategoryF,CATEGORY));
  fields.add(new TagField(YearF,YEAR,isPastYearS));
  fields.add(new TagField(RatingF,RATING_RAW));
  fields.add(new TagField(RatingPF,RATING,IsBetween0And1));
  fields.add(new TagField(PlaycountF,PLAYCOUNT));
  fields.add(new TagField(CommentF,Metadata.Field.COMMENT));
  fields.add(new TagField(MoodF,MOOD));
  fields.add(new TagField(Custom1F,CUSTOM1));
  fields.add(new TagField(Custom2F,CUSTOM2));
  fields.add(new TagField(Custom3F,CUSTOM3));
  fields.add(new TagField(Custom4F,CUSTOM4));
  fields.add(new TagField(Custom5F,CUSTOM5));
  fields.add(new TagField(LyricsA,LYRICS));
  Custom1F.setEditable(false);
  ColorF.disableProperty().bind(Custom1F.disabledProperty());
  ColorF.valueProperty().addListener((o,ov,nv) -> Custom1F.setText(new ColorParser().toS(nv)));
  entireArea.setOnMousePressed(e -> {
    entireArea.requestFocus();
    fields.forEach(TagField::onLooseFocus);
  }
);
  entireArea.setOnKeyPressed(e -> {
    if (e.getCode() == KeyCode.ENTER)     write();
  }
);
  entireArea.setOnDragOver(DragUtil.audioDragAccepthandler);
  entireArea.setOnDragDropped(drag_dropped_handler);
  coverContainer.setOnMouseClicked(e -> {
    if (e.getButton() != PRIMARY || metas.isEmpty())     return;
    File initial_dir=metas.stream().filter(Item::isFileBased).findFirst().map(Item::getLocation).orElse(new File("String_Node_Str"));
    File f=Enviroment.chooseFile("String_Node_Str",false,initial_dir,entireArea.getScene().getWindow());
    if (f != null)     addImg(f);
  }
);
  CoverV.getPane().setOnDragOver(t -> {
    Dragboard d=t.getDragboard();
    if (d.hasFiles() && d.getFiles().stream().anyMatch(ImageFileFormat::isSupported))     t.acceptTransferModes(TransferMode.ANY);
  }
);
  CoverV.getPane().setOnDragDropped(t -> {
    Dragboard d=t.getDragboard();
    if (d.hasFiles() && d.getFiles().stream().anyMatch(ImageFileFormat::isSupported)) {
      d.getFiles().stream().filter(ImageFileFormat::isSupported).findAny().ifPresent(this::addImg);
      t.setDropCompleted(true);
      t.consume();
    }
  }
);
  CoverV.getPane().setOnDragDetected(e -> CoverV.getPane().startFullDrag());
  entireArea.addEventFilter(MOUSE_DRAG_RELEASED,e -> {
    Point2D click=CoverV.getPane().sceneToLocal(e.getSceneX(),e.getSceneY());
    if (e.getGestureSource().equals(CoverV.getPane()) && !CoverV.getPane().contains(click)) {
      addImg(null);
    }
  }
);
  Text icon=Icons.createIcon(PLUS,60);
  icon.setMouseTransparent(true);
  coverSuperContainer.getChildren().add(icon);
  icon.setOpacity(0);
  coverContainer.addEventHandler(MOUSE_EXITED,e -> icon.setOpacity(0));
  coverContainer.addEventHandler(MOUSE_ENTERED,e -> icon.setOpacity(isEmpty() ? 0 : 1));
  RatingF.setOnKeyReleased(e -> setPR());
  RatingF.setOnMousePressed(e -> setPR());
  RatingPF.setOnKeyReleased(e -> setR());
  RatingPF.setOnMousePressed(e -> setR());
  infoL.setOnMouseClicked(e -> showItemsPopup());
  infoL.setCursor(Cursor.HAND);
}