2 parents b1b2c42 + 25a50fa commit 38b08abCopy full SHA for 38b08ab
1 file changed
wfc.h
@@ -776,11 +776,18 @@ static int wfc__remove_duplicate_tiles(struct wfc__tile **tiles, int *tile_cnt)
776
}
777
778
if (unique) {
779
- (*tiles)[unique_cnt] = (*tiles)[j];
+ if (unique_cnt != j) {
780
+ struct wfc__tile tmp = (*tiles)[unique_cnt];
781
+ (*tiles)[unique_cnt] = (*tiles)[j];
782
+ (*tiles)[j] = tmp;
783
+ }
784
unique_cnt++;
785
786
787
788
+ for (int i=unique_cnt; i<*tile_cnt; i++)
789
+ wfc_img_destroy((*tiles)[i].image);
790
+
791
struct wfc__tile *unique_tiles = realloc(*tiles, sizeof(**tiles) * unique_cnt);
792
if (unique_tiles == NULL) {
793
p("wfc__remove_duplicate_tiles: error\n");
0 commit comments