diff --git a/8c465007-vdagentd-fixes-small-leak.patch b/8c465007-vdagentd-fixes-small-leak.patch new file mode 100644 index 0000000..285de07 --- /dev/null +++ b/8c465007-vdagentd-fixes-small-leak.patch @@ -0,0 +1,49 @@ +From 8c465007b4baba5dc02adfda1c889ef4c1b595dc Mon Sep 17 00:00:00 2001 +From: Victor Toso +Date: Tue, 15 Sep 2015 10:24:53 +0200 +Subject: [PATCH] vdagentd: fixes small leak + +This correctly fixes the leak from reverted patch +4835df0b642dfc963e7 + + ==2648== HEAP SUMMARY: + ==2648== in use at exit: 104,699 bytes in 1,459 blocks + ==2648== total heap usage: 14,177 allocs, 12,718 frees, 1,190,456 bytes allocated + ==2648== + ==2648== 16 bytes in 1 blocks are definitely lost in loss record 16 of 130 + ==2648== at 0x4C29BCF: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) + ==2648== by 0x10B530: agent_read_complete (vdagentd.c:715) + ==2648== by 0x10E8DC: udscs_read_complete (udscs.c:460) + ==2648== by 0x10EAFC: udscs_do_read (udscs.c:515) + ==2648== by 0x10E490: udscs_client_handle_fds (udscs.c:349) + ==2648== by 0x10E402: udscs_server_handle_fds (udscs.c:337) + ==2648== by 0x10BAB1: main_loop (vdagentd.c:844) + ==2648== by 0x10A3E6: main (vdagentd.c:974) + ==2648== + ==2648== LEAK SUMMARY: + ==2648== definitely lost: 16 bytes in 1 blocks + ==2648== indirectly lost: 0 bytes in 0 blocks + ==2648== possibly lost: 41,483 bytes in 1,268 blocks + ==2648== still reachable: 63,200 bytes in 190 blocks + ==2648== suppressed: 0 bytes in 0 blocks + ==2648== Reachable blocks (those to which a pointer was found) are not shown. + ==2648== To see them, rerun with: --leak-check=full --show-leak-kinds=all +--- + src/vdagentd.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/vdagentd.c b/src/vdagentd.c +index 14c5be1..8f7ab85 100644 +--- a/src/vdagentd.c ++++ b/src/vdagentd.c +@@ -687,6 +687,7 @@ void agent_disconnect(struct udscs_connection *conn) + agent_data->session = NULL; + update_active_session_connection(NULL); + ++ free(agent_data->screen_info); + free(agent_data); + } + +-- +2.9.3 + diff --git a/f97751fa-revert-uinput-fix-small-leak-of-screen_info.patch b/f97751fa-revert-uinput-fix-small-leak-of-screen_info.patch new file mode 100644 index 0000000..2aa4e5f --- /dev/null +++ b/f97751fa-revert-uinput-fix-small-leak-of-screen_info.patch @@ -0,0 +1,33 @@ +From f97751faf0f5c66ec5ccbf5547ca7982d360cbf9 Mon Sep 17 00:00:00 2001 +From: Victor Toso +Date: Tue, 15 Sep 2015 10:23:06 +0200 +Subject: [PATCH] Revert "uinput: fix small leak of screen_info" + +This reverts commit 4835df0b642dfc963e7cbaabfe93da86482f0b93. + +uinput only holds reference to screen_info and should not free it. +The leak should be fixed somewhere else. + +Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1262635 +--- + src/vdagentd-uinput.c | 4 ---- + 1 file changed, 4 deletions(-) + +diff --git a/src/vdagentd-uinput.c b/src/vdagentd-uinput.c +index 1ce9918..47e1b45 100644 +--- a/src/vdagentd-uinput.c ++++ b/src/vdagentd-uinput.c +@@ -76,10 +76,6 @@ void vdagentd_uinput_destroy(struct vdagentd_uinput **uinputp) + + if (uinput->fd != -1) + close(uinput->fd); +- +- if (uinput->screen_info != NULL) +- free(uinput->screen_info); +- + free(uinput); + *uinputp = NULL; + } +-- +2.9.3 + diff --git a/spice-vdagent.changes b/spice-vdagent.changes index 03b1e59..1a127f8 100644 --- a/spice-vdagent.changes +++ b/spice-vdagent.changes @@ -1,3 +1,10 @@ +------------------------------------------------------------------- +Tue Sep 6 12:56:15 UTC 2016 - cbosdonnat@suse.com + +- Fix crash when changing guest display's resolution (bsc#997236) + 8c465007-vdagentd-fixes-small-leak.patch + f97751fa-revert-uinput-fix-small-leak-of-screen_info.patch + ------------------------------------------------------------------- Thu Jun 2 11:36:40 UTC 2016 - cbosdonnat@suse.com diff --git a/spice-vdagent.spec b/spice-vdagent.spec index 7a926b6..7e2dda1 100644 --- a/spice-vdagent.spec +++ b/spice-vdagent.spec @@ -26,6 +26,8 @@ Group: Applications/System Url: http://spice-space.org/ Source0: http://spice-space.org/download/releases/%{name}-%{version}.tar.bz2 Patch0: spice-vdagent-var_run.patch +Patch1: 8c465007-vdagentd-fixes-small-leak.patch +Patch2: f97751fa-revert-uinput-fix-small-leak-of-screen_info.patch BuildRequires: alsa-devel BuildRequires: desktop-file-utils BuildRequires: glib2-devel @@ -55,6 +57,8 @@ Features: %prep %setup -q %patch0 -p1 +%patch1 -p1 +%patch2 -p1 %build %configure \