diff --git a/freerdp-handle-null-device-name.patch b/freerdp-handle-null-device-name.patch new file mode 100644 index 0000000..d79a916 --- /dev/null +++ b/freerdp-handle-null-device-name.patch @@ -0,0 +1,25 @@ +From 473ba080e77e6715797f8497cb8f62aed3de56fe Mon Sep 17 00:00:00 2001 +From: Vic Lee +Date: Wed, 9 May 2012 19:18:47 +0800 +Subject: rdpsnd/pulse: fix a segfault in case device name is not provided. + +--- + channels/rdpsnd/pulse/rdpsnd_pulse.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/channels/rdpsnd/pulse/rdpsnd_pulse.c b/channels/rdpsnd/pulse/rdpsnd_pulse.c +index 1a331f0..86e0793 100644 +--- a/channels/rdpsnd/pulse/rdpsnd_pulse.c ++++ b/channels/rdpsnd/pulse/rdpsnd_pulse.c +@@ -474,7 +474,7 @@ int FreeRDPRdpsndDeviceEntry(PFREERDP_RDPSND_DEVICE_ENTRY_POINTS pEntryPoints) + data = pEntryPoints->plugin_data; + if (data && strcmp((char*)data->data[0], "pulse") == 0) + { +- if(strlen((char*)data->data[1]) > 0) ++ if(data->data[1] && strlen((char*)data->data[1]) > 0) + pulse->device_name = xstrdup((char*)data->data[1]); + else + pulse->device_name = NULL; +-- +1.7.10.4 + diff --git a/freerdp.changes b/freerdp.changes index e5cfd5d..0165bb5 100644 --- a/freerdp.changes +++ b/freerdp.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Thu Nov 1 13:07:27 UTC 2012 - gber@opensuse.org + +- added freerdp-fix-pulse-no-device-name.patch in order to fix a + segfault in case device name is not provided (bnc#785437) + ------------------------------------------------------------------- Wed Oct 17 15:04:32 UTC 2012 - gber@opensuse.org diff --git a/freerdp.spec b/freerdp.spec index 2c5aebe..6ad74b2 100644 --- a/freerdp.spec +++ b/freerdp.spec @@ -34,6 +34,8 @@ Patch1: freerdp-fix-FindPCSC-macro.patch Patch2: freerdp-fix-incorrect-numlock-state.patch # PATCH-FIX-UPSTREAM freerdp-fix-linking-with-libpulse.patch https://github.com/FreeRDP/FreeRDP/issues/418 gber@opensuse.org -- Link the pulseaudio plugins with libpulse Patch3: freerdp-fix-linking-with-libpulse.patch +# PATCH-FIX-UPSTREAM freerdp-fix-pulse-no-device-name.patch bnc#785437 gber@opensuse.org -- Fix a segfault in case device name is not provided +Patch4: freerdp-handle-null-device-name.patch BuildRequires: cmake BuildRequires: cups-devel BuildRequires: ed @@ -85,6 +87,7 @@ based on libfreerdp. %patch1 -p1 %patch2 -p1 %patch3 -p1 +%patch4 -p1 # use a versioned subdirectory for plugins in order to comply with the shared # library policy ed -s CMakeLists.txt 2>/dev/null <<'EOF'