]> git.sesse.net Git - vlc/blobdiff - modules/audio_output/jack.c
The last but not least of this serie of memleaks.
[vlc] / modules / audio_output / jack.c
index 681338d175640fafba62486605bbf6da801c2e30..f87d4cbe011ed09390e4c97b8a011f6f949f0106 100644 (file)
@@ -34,7 +34,8 @@
 # include "config.h"
 #endif
 
-#include <vlc/vlc.h>
+#include <vlc_common.h>
+#include <vlc_plugin.h>
 #include <vlc_aout.h>
 
 #include <jack/jack.h>
@@ -80,14 +81,14 @@ static int  Process      ( jack_nframes_t i_frames, void *p_arg );
  *****************************************************************************/
 vlc_module_begin();
     set_shortname( "JACK" );
-    set_description( _("JACK audio output") );
+    set_description( N_("JACK audio output") );
     set_capability( "audio output", 100 );
     set_category( CAT_AUDIO );
     set_subcategory( SUBCAT_AUDIO_AOUT );
     add_bool( AUTO_CONNECT_OPTION, 0, NULL, AUTO_CONNECT_TEXT,
-              AUTO_CONNECT_LONGTEXT, VLC_TRUE );
+              AUTO_CONNECT_LONGTEXT, true );
     add_string( CONNECT_REGEX_OPTION, NULL, NULL, CONNECT_REGEX_TEXT,
-                CONNECT_REGEX_LONGTEXT, VLC_TRUE );
+                CONNECT_REGEX_LONGTEXT, true );
     set_callbacks( Open, Close );
 vlc_module_end();
 
@@ -107,7 +108,6 @@ static int Open( vlc_object_t *p_this )
     p_sys = calloc( 1, sizeof( aout_sys_t ) );
     if( p_sys == NULL )
     {
-        msg_Err( p_aout, "out of memory" );
         status = VLC_ENOMEM;
         goto error_out;
     }
@@ -142,7 +142,6 @@ static int Open( vlc_object_t *p_this )
                                   sizeof(jack_port_t *) );
     if( p_sys->p_jack_ports == NULL )
     {
-        msg_Err( p_aout, "out of memory" );
         status = VLC_ENOMEM;
         goto error_out;
     }
@@ -151,7 +150,6 @@ static int Open( vlc_object_t *p_this )
                                     sizeof(jack_sample_t *) );
     if( p_sys->p_jack_buffers == NULL )
     {
-        msg_Err( p_aout, "out of memory" );
         status = VLC_ENOMEM;
         goto error_out;
     }
@@ -189,6 +187,7 @@ static int Open( vlc_object_t *p_this )
         const char **pp_in_ports = jack_get_ports( p_sys->p_jack_client,
                                                    psz_regex, NULL,
                                                    JackPortIsInput );
+        free( psz_regex );
         /* Count the number of returned ports */
         i_in_ports = 0;
         while( pp_in_ports && pp_in_ports[i_in_ports] )
@@ -214,10 +213,7 @@ static int Open( vlc_object_t *p_this )
                          psz_out, psz_in );
             }
         }
-        if( pp_in_ports )
-        {
-            free( pp_in_ports );
-        }
+        free( pp_in_ports );
     }
 
     msg_Dbg( p_aout, "JACK audio output initialized (%d channels, buffer "
@@ -233,14 +229,8 @@ error_out:
             jack_deactivate( p_sys->p_jack_client );
             jack_client_close( p_sys->p_jack_client );
         }
-        if( p_sys->p_jack_ports )
-        {
-            free( p_sys->p_jack_ports );
-        }
-        if( p_sys->p_jack_buffers )
-        {
-            free( p_sys->p_jack_buffers );
-        }
+        free( p_sys->p_jack_ports );
+        free( p_sys->p_jack_buffers );
         free( p_sys );
     }
     return status;