rpms/libucil/F-12 libucil-0.9.8-alsa.patch, NONE, 1.1 libucil-0.9.8-segv.patch, NONE, 1.1 libucil.spec, 1.1, 1.2

Kamil Dudka kdudka at fedoraproject.org
Wed Jun 2 15:36:36 UTC 2010


Author: kdudka

Update of /cvs/extras/rpms/libucil/F-12
In directory cvs01.phx2.fedoraproject.org:/tmp/cvs-serv7576/F-12

Modified Files:
	libucil.spec 
Added Files:
	libucil-0.9.8-alsa.patch libucil-0.9.8-segv.patch 
Log Message:
- fix SIGSEGV in ucil_alsa_fill_audio_buffer (#572966)
- fix SIGSEGV in ucil_theora_encode_thread (#595863)

libucil-0.9.8-alsa.patch:
 ucil_theora.c |   12 ++++++++++++
 1 file changed, 12 insertions(+)

--- NEW FILE libucil-0.9.8-alsa.patch ---
diff --git a/src/ucil_theora.c b/src/ucil_theora.c
index 1af19d4..3f6e1ca 100644
--- a/src/ucil_theora.c
+++ b/src/ucil_theora.c
@@ -1524,6 +1524,12 @@ ucil_theora_video_file_object_t *ucil_theora_create_video_filev( const char *pat
 	 return NULL;
       }
       vobj->audio_data = ucil_alsa_init( vobj->audio_card, vobj->audio_rate );
+      if( !vobj->audio_data )
+      {
+	 /* the error message has been already emitted */
+	 free( vobj );
+	 return NULL;
+      }
       
       vorbis_info_init( &vobj->vi );
       if( vorbis_encode_init( &vobj->vi, 2, vobj->audio_rate, -1, vobj->vorbis_bitrate, -1 ) )
@@ -1540,6 +1546,12 @@ ucil_theora_video_file_object_t *ucil_theora_create_video_filev( const char *pat
    else if( vobj->audio )
    {
       vobj->audio_data = ucil_alsa_init( vobj->audio_card, vobj->audio_rate );
+      if( !vobj->audio_data )
+      {
+	 /* the error message has been already emitted */
+	 free( vobj );
+	 return NULL;
+      }
    }
    
 #endif

libucil-0.9.8-segv.patch:
 ucil_theora.c |    6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

--- NEW FILE libucil-0.9.8-segv.patch ---
diff --git a/src/ucil_theora.c b/src/ucil_theora.c
index 3f6e1ca..7cfb0f4 100644
--- a/src/ucil_theora.c
+++ b/src/ucil_theora.c
@@ -518,7 +518,7 @@ static void fill_frames( ucil_theora_video_file_object_t *vobj, unicap_data_buff
       {
 	 unicap_data_buffer_t *last_data_buffer;
 	 
-	 last_data_buffer = (unicap_data_buffer_t *)vobj->last_frame;
+	 last_data_buffer = vobj->last_frame;
 	 if( vobj->downsize > 1 || vobj->requires_resizing_frames )
 	 {
 	    yuv->y = ds_y_buffer;
@@ -690,7 +690,7 @@ static void *ucil_theora_encode_thread( ucil_theora_video_file_object_t *vobj )
 	       double streampos;
 	       struct timeval streamtime;
 	       
-	       last_data_buffer = (unicap_data_buffer_t *)vobj->last_frame->data;
+	       last_data_buffer = vobj->last_frame;
 	       if( vobj->downsize > 1 || vobj->requires_resizing_frames )
 	       {
 		  yuv.y = ds_y_buffer;
@@ -807,7 +807,7 @@ static void *ucil_theora_encode_thread( ucil_theora_video_file_object_t *vobj )
 	 {
 	    unicap_data_buffer_t *last_data_buffer;
 	    
-	    last_data_buffer = (unicap_data_buffer_t *)vobj->last_frame->data;
+	    last_data_buffer = vobj->last_frame;
 	    last_data_buffer->flags &= ~UNICAP_FLAGS_BUFFER_LOCKED;
 	    sem_wait( &vobj->lock );
 	    g_queue_push_head( vobj->empty_queue, vobj->last_frame );


Index: libucil.spec
===================================================================
RCS file: /cvs/extras/rpms/libucil/F-12/libucil.spec,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -p -r1.1 -r1.2
--- libucil.spec	26 Feb 2010 19:19:05 -0000	1.1
+++ libucil.spec	2 Jun 2010 15:36:36 -0000	1.2
@@ -1,11 +1,18 @@
 Summary:	Library to render text and graphic overlays onto video images
 Name:		libucil
 Version:	0.9.8
-Release:	1%{?dist}
+Release:	2%{?dist}
 License:	GPLv2+
 Group:		System Environment/Libraries
 URL:		http://www.unicap-imaging.org/
 Source0:	http://www.unicap-imaging.org/downloads/%{name}-%{version}.tar.gz
+
+# Fix commited in upstream r62
+Patch0:		libucil-0.9.8-alsa.patch
+
+# Fix commited in upstream r61
+Patch1:		libucil-0.9.8-segv.patch
+
 BuildRequires:	intltool, /usr/bin/perl, perl(XML::Parser), gettext, gtk-doc >= 1.4
 BuildRequires:	libunicap-devel, glib2-devel, pango-devel, alsa-lib-devel
 BuildRequires:	libtheora-devel, libogg-devel, libvorbis-devel, libpng-devel
@@ -31,9 +38,12 @@ API documentation of the library, too.
 
 %prep
 %setup -q
+%patch0 -p1
+%patch1 -p1
 
 %build
 %configure --disable-rpath --enable-gtk-doc
+make %{?_smp_mflags}
 
 %install
 rm -rf $RPM_BUILD_ROOT
@@ -62,6 +72,11 @@ rm -rf $RPM_BUILD_ROOT
 %{_datadir}/gtk-doc/html/%{name}
 
 %changelog
+* Wed Jun 02 2010 Kamil Dudka <kdudka at redhat.com> 0.9.8-2
+- fix SIGSEGV in ucil_alsa_fill_audio_buffer (#572966)
+- fix SIGSEGV in ucil_theora_encode_thread (#595863)
+- build the package in %%build
+
 * Sun Feb 21 2010 Robert Scheck <robert at fedoraproject.org> 0.9.8-1
 - Upgrade to 0.9.8 (#530702, #567109, #567110, #567111)
 - Splitting of unicap into libunicap, libucil and libunicapgtk



More information about the scm-commits mailing list