[vlc-devel] [PATCH] stream: error out on a failed conversion

Shaleen Jain shaleen.jain95 at gmail.com
Fri Jun 23 13:29:52 CEST 2017


---
 src/input/stream.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/input/stream.c b/src/input/stream.c
index affc7b2c0d..efc959319c 100644
--- a/src/input/stream.c
+++ b/src/input/stream.c
@@ -195,6 +195,7 @@ char *vlc_stream_ReadLine( stream_t *s )
         if( i_pos == 0 && i_data >= 2 )
         {
             const char *psz_encoding = NULL;
+            priv->text.conv = (vlc_iconv_t)-1;
 
             if( unlikely(priv->text.conv != (vlc_iconv_t)-1) )
             {   /* seek back to beginning? reset */
@@ -327,10 +328,12 @@ char *vlc_stream_ReadLine( stream_t *s )
             p_in = p_line;
             p_out = psz_new_line;
 
-            if( vlc_iconv( priv->text.conv, &p_in, &i_in, &p_out, &i_out ) == (size_t)-1 )
+            if( priv->text.conv == (vlc_iconv_t)-1 ||
+                    vlc_iconv( priv->text.conv, &p_in, &i_in, &p_out, &i_out ) == (size_t)-1 )
             {
                 msg_Err( s, "conversion error: %s", vlc_strerror_c( errno ) );
                 msg_Dbg( s, "original: %d, in %zu, out %zu", i_line, i_in, i_out );
+                goto error;
             }
             free( p_line );
             p_line = psz_new_line;
-- 
2.13.1



More information about the vlc-devel mailing list