Package: release.debian.org Severity: normal Tags: stretch User: [email protected] Usertags: pu
This is part 2 to address a memory leak in unknown-horizons. I have just filed another bug report for the game engine called fife. This issue is also known as #871037 [1]. Please find attached the debdiff for unknown-horizons. Regards, Markus [1] https://bugs.debian.org/871037
diff -Nru unknown-horizons-2017.1+ds/debian/changelog unknown-horizons-2017.1+ds/debian/changelog --- unknown-horizons-2017.1+ds/debian/changelog 2017-01-22 01:56:39.000000000 +0100 +++ unknown-horizons-2017.1+ds/debian/changelog 2017-08-21 08:54:57.000000000 +0200 @@ -1,3 +1,12 @@ +unknown-horizons (2017.1+ds-2+deb9u1) stretch; urgency=medium + + * Team upload. + * Add 1000-icon-mem-leak.patch and fix a memory leak. + Thanks to Petter Reinholdtsen for the report and testing and LinuxDonald + for the patch. (Closes: #871037) + + -- Markus Koschany <[email protected]> Mon, 21 Aug 2017 08:54:57 +0200 + unknown-horizons (2017.1+ds-2) unstable; urgency=medium * Team upload. diff -Nru unknown-horizons-2017.1+ds/debian/patches/1000-icon-mem-leak.patch unknown-horizons-2017.1+ds/debian/patches/1000-icon-mem-leak.patch --- unknown-horizons-2017.1+ds/debian/patches/1000-icon-mem-leak.patch 1970-01-01 01:00:00.000000000 +0100 +++ unknown-horizons-2017.1+ds/debian/patches/1000-icon-mem-leak.patch 2017-08-21 08:53:37.000000000 +0200 @@ -0,0 +1,27 @@ +Description: Fix small `get_res_icon_path()` widget leak + + `horizons.gui.util.get_res_icon_path()` does the same thing as as + `horizons.gui.widgets.imagebuton`: aks fife to create an `Icon()` to + see if it's a valid image path. But other than the `ImageButton`, + `get_res_icon_path()` did forget to call `hide()` on that `Icon`. So the + `Icon` stayed alive, even though unused. + + We now call `hide()` on that `Icon`. + +Origin: https://github.com/unknown-horizons/unknown-horizons/commit/25e933202e2db6083d0f163d978559c4ac24fb94 +Author: MasterofJOKers <[email protected]> +Bug-Debian: https://bugs.debian.org/871037 + +diff --git a/horizons/gui/util.py b/horizons/gui/util.py +index a7c13584b..2fb2796b3 100644 +--- a/horizons/gui/util.py ++++ b/horizons/gui/util.py +@@ -125,7 +125,7 @@ def get_res_icon_path(res, size=32, greyscale=False, full_path=True): + icon_path = icon_path + '{res:03d}.png'.format(res=res) + + try: +- Icon(image=icon_path) ++ Icon(image=icon_path).hide() + except fife.NotFound: # ImageManager: image not found, use placeholder or die + if res == 'placeholder': + raise Exception('Image not found: {icon_path}'.format(icon_path=icon_path)) diff -Nru unknown-horizons-2017.1+ds/debian/patches/series unknown-horizons-2017.1+ds/debian/patches/series --- unknown-horizons-2017.1+ds/debian/patches/series 2017-01-22 01:56:39.000000000 +0100 +++ unknown-horizons-2017.1+ds/debian/patches/series 2017-08-21 08:53:44.000000000 +0200 @@ -1 +1,2 @@ VERSION.patch +1000-icon-mem-leak.patch

