From 02b47bc2e4c5e612bc7f38412ade12c0f676f3d9 Mon Sep 17 00:00:00 2001 From: Steve Lhomme Date: Fri, 24 Nov 2023 10:21:58 +0100 Subject: [PATCH] core: set VLC_MALLOC on strings allocated by a memstream After vlc_memstream_close() the memstream cannot be used anymore. --- include/vlc_strings.h | 2 +- src/input/es_out.c | 4 ++-- src/input/stream_extractor.c | 2 +- src/input/vlmshell.c | 4 ++-- src/player/player.h | 2 +- src/text/url.c | 2 +- 6 files changed, 8 insertions(+), 8 deletions(-) diff --git a/include/vlc_strings.h b/include/vlc_strings.h index 898a13ca9b..c2a27a987b 100644 --- a/include/vlc_strings.h +++ b/include/vlc_strings.h @@ -223,7 +223,7 @@ VLC_API char *vlc_strftime( const char * ); * \return an allocated formatted string (must be free()'d), or NULL in case of error */ VLC_API char *vlc_strfplayer( vlc_player_t *player, input_item_t *item, - const char *fmt ); + const char *fmt ) VLC_MALLOC; static inline char *str_format( vlc_player_t *player, input_item_t *item, const char *fmt ) diff --git a/src/input/es_out.c b/src/input/es_out.c index 5ca91832e0..8218a29ff5 100644 --- a/src/input/es_out.c +++ b/src/input/es_out.c @@ -1991,8 +1991,8 @@ static void EsOutFillEsFmt(es_out_t *out, es_format_t *fmt) } } -static char *EsOutCreateStrId( es_out_id_t *es, bool stable, const char *id, - es_out_id_t *p_master ) +VLC_MALLOC static char *EsOutCreateStrId( es_out_id_t *es, bool stable, const char *id, + es_out_id_t *p_master ) { struct vlc_memstream ms; if( vlc_memstream_open( &ms ) != 0 ) diff --git a/src/input/stream_extractor.c b/src/input/stream_extractor.c index 12d177a5ad..76383d986d 100644 --- a/src/input/stream_extractor.c +++ b/src/input/stream_extractor.c @@ -86,7 +86,7 @@ struct stream_extractor_private { * within \p base, see \ref mrl_helpers for further information. **/ -static char* +VLC_MALLOC static char* StreamExtractorCreateMRL( char const* base, char const* subentry ) { struct vlc_memstream buffer; diff --git a/src/input/vlmshell.c b/src/input/vlmshell.c index d45d8c986d..0a42271ba1 100644 --- a/src/input/vlmshell.c +++ b/src/input/vlmshell.c @@ -64,7 +64,7 @@ static vlm_message_t *vlm_Show( vlm_t *, vlm_media_sys_t *, vlm_schedule_sys_t * static vlm_schedule_sys_t *vlm_ScheduleSearch( vlm_t *, const char * ); -static char *Save( vlm_t * ); +VLC_MALLOC static char *Save( vlm_t * ); static int Load( vlm_t *, char * ); static vlm_schedule_sys_t *vlm_ScheduleNew( vlm_t *vlm, const char *psz_name ); @@ -1573,7 +1573,7 @@ static int Load( vlm_t *vlm, char *file ) return 0; } -static char *Save( vlm_t *vlm ) +VLC_MALLOC static char *Save( vlm_t *vlm ) { const char *psz_header = "\n" "# VLC media player VLM command batch\n" diff --git a/src/player/player.h b/src/player/player.h index d5e1810a4b..44eb36de5c 100644 --- a/src/player/player.h +++ b/src/player/player.h @@ -434,7 +434,7 @@ vlc_player_input_SelectTracksByStringIds(struct vlc_player_input *input, char * vlc_player_input_GetSelectedTrackStringIds(struct vlc_player_input *input, - enum es_format_category_e cat); + enum es_format_category_e cat) VLC_MALLOC; vlc_tick_t vlc_player_input_GetTime(struct vlc_player_input *input); diff --git a/src/text/url.c b/src/text/url.c index feb68cbb6d..30c61b4955 100644 --- a/src/text/url.c +++ b/src/text/url.c @@ -856,7 +856,7 @@ error: return ret; } -static char *vlc_uri_fixup_inner(const char *str, const char *extras) +VLC_MALLOC static char *vlc_uri_fixup_inner(const char *str, const char *extras) { assert(str && extras);