vlc/vlc-2.2 | branch: master | Rémi Denis-Courmont <[email protected]> | Mon Aug 31 20:11:52 2015 +0300| [eda813bdc0d1c20980ec978e92057d01227a0cbd] | committer: Jean-Baptiste Kempf
update: avoid division by zero If the downloaded file is empty or of unknown size. (cherry picked from commit 145b05739d2dc9607ead4ef8244ba2172d97b389) Signed-off-by: Jean-Baptiste Kempf <[email protected]> > http://git.videolan.org/gitweb.cgi/vlc/vlc-2.2.git/?a=commit;h=eda813bdc0d1c20980ec978e92057d01227a0cbd --- src/misc/update.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/misc/update.c b/src/misc/update.c index e1257b7..9650313 100644 --- a/src/misc/update.c +++ b/src/misc/update.c @@ -472,7 +472,7 @@ bool update_NeedUpgrade( update_t *p_update ) * \param l_size the size in bytes * \return the size as a string */ -static char *size_str( long int l_size ) +static char *size_str( uint64_t l_size ) { char *psz_tmp = NULL; int i_retval = 0; @@ -527,8 +527,8 @@ static void* update_DownloadReal( void *obj ) { update_download_thread_t *p_udt = (update_download_thread_t *)obj; dialog_progress_bar_t *p_progress = NULL; - long int l_size; - long int l_downloaded = 0; + uint64_t l_size; + uint64_t l_downloaded = 0; float f_progress; char *psz_status; char *psz_downloaded = NULL; @@ -557,7 +557,8 @@ static void* update_DownloadReal( void *obj ) } /* Get the stream size */ - l_size = stream_Size( p_stream ); + if( stream_GetSize( p_stream, &l_size ) || l_size == 0 ) + goto end; /* Get the file name and open it*/ psz_tmpdestfile = strrchr( p_update->release.psz_url, '/' ); _______________________________________________ vlc-commits mailing list [email protected] https://mailman.videolan.org/listinfo/vlc-commits
