[vlc-devel] commit: control/media_control: fix a memleak (we don' t need to do a copy if we use const char*). ( Rémi Duraffort )
git version control
git at videolan.org
Mon Dec 15 20:41:50 CET 2008
vlc | branch: master | Rémi Duraffort <ivoire at videolan.org> | Mon Dec 15 20:32:35 2008 +0100| [6166f14e834d0c7b19a0e6a6b98ef66c7e5a3710] | committer: Rémi Duraffort
control/media_control: fix a memleak (we don't need to do a copy if we use const char*).
> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=6166f14e834d0c7b19a0e6a6b98ef66c7e5a3710
---
src/control/mediacontrol_audio_video.c | 18 ++++++++----------
1 files changed, 8 insertions(+), 10 deletions(-)
diff --git a/src/control/mediacontrol_audio_video.c b/src/control/mediacontrol_audio_video.c
index cf6f026..c3dff03 100644
--- a/src/control/mediacontrol_audio_video.c
+++ b/src/control/mediacontrol_audio_video.c
@@ -123,7 +123,7 @@ mediacontrol_snapshot( mediacontrol_Instance *self,
static
int mediacontrol_showtext( vout_thread_t *p_vout, int i_channel,
- char *psz_string, text_style_t *p_style,
+ const char *psz_string, text_style_t *p_style,
int i_flags, int i_hmargin, int i_vmargin,
mtime_t i_start, mtime_t i_stop )
{
@@ -142,13 +142,17 @@ mediacontrol_display_text( mediacontrol_Instance *self,
mediacontrol_Exception *exception )
{
vout_thread_t *p_vout = NULL;
- char* psz_message;
input_thread_t *p_input;
libvlc_exception_t ex;
libvlc_exception_init( &ex );
mediacontrol_exception_init( exception );
+ if( !message )
+ {
+ RAISE_VOID( mediacontrol_InternalException, "Empty text" );
+ }
+
p_input = libvlc_get_input_thread( self->p_media_player, &ex );
if( ! p_input )
{
@@ -160,12 +164,6 @@ mediacontrol_display_text( mediacontrol_Instance *self,
RAISE_VOID( mediacontrol_InternalException, "No video output" );
}
- psz_message = strdup( message );
- if( !psz_message )
- {
- RAISE_VOID( mediacontrol_InternalException, "no more memory" );
- }
-
if( begin->origin == mediacontrol_RelativePosition &&
begin->value == 0 &&
end->origin == mediacontrol_RelativePosition )
@@ -179,7 +177,7 @@ mediacontrol_display_text( mediacontrol_Instance *self,
mediacontrol_MediaTime,
end->value );
- mediacontrol_showtext( p_vout, DEFAULT_CHAN, psz_message, NULL,
+ mediacontrol_showtext( p_vout, DEFAULT_CHAN, message, NULL,
OSD_ALIGN_BOTTOM | OSD_ALIGN_LEFT, 0, 0,
i_now, i_now + i_duration );
}
@@ -199,7 +197,7 @@ mediacontrol_display_text( mediacontrol_Instance *self,
( mediacontrol_Position * ) end );
i_fin += i_now;
- vout_ShowTextAbsolute( p_vout, DEFAULT_CHAN, psz_message, NULL,
+ vout_ShowTextAbsolute( p_vout, DEFAULT_CHAN, message, NULL,
OSD_ALIGN_BOTTOM | OSD_ALIGN_LEFT, 0, 0,
i_debut, i_fin );
}
More information about the vlc-devel
mailing list