[vlc-devel] [vlc-commits] commit: FileToUrl: constify ( Rémi Denis-Courmont )
Geoffroy Couprie
geo.couprie at gmail.com
Wed Mar 10 18:59:52 CET 2010
On Tue, Mar 9, 2010 at 10:49 PM, <git at videolan.org> wrote:
> vlc | branch: master | Rémi Denis-Courmont <remi at remlab.net> | Tue Mar 9 23:41:47 2010 +0200| [924ed95fdb21cad0be138ea5600fcc7b0b848725] | committer: Rémi Denis-Courmont
>
> FileToUrl: constify
>
>> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=924ed95fdb21cad0be138ea5600fcc7b0b848725
> ---
>
> modules/control/http/util.c | 46 +++++++++++++++----------------------------
> 1 files changed, 16 insertions(+), 30 deletions(-)
>
> diff --git a/modules/control/http/util.c b/modules/control/http/util.c
> index adeea06..1b26dee 100644
> --- a/modules/control/http/util.c
> +++ b/modules/control/http/util.c
> @@ -40,49 +40,35 @@
> ****************************************************************************/
>
> /* ToUrl: create a good name for an url from filename */
> -static char *FileToUrl( char *name, bool *pb_index )
> +static char *FileToUrl( const char *name, bool *pb_index )
> {
> - char *url, *p;
> -
> - url = p = malloc( strlen( name ) + 1 );
> -
> *pb_index = false;
> - if( !url || !p )
> - {
> +
> + char *url = malloc( strlen( name ) + 2 );
> + if( unlikely(url == NULL) )
> return NULL;
> - }
>
> -#ifdef WIN32
> - while( *name == '\\' || *name == '/' )
> +#if (DIR_SEP_CHAR == '/')
> + name += strspn( name, "/" );
> #else
> - while( *name == '/' )
> + name += strspn( name, "/"DIR_SEP );
> #endif
> - {
> - name++;
> - }
> + *url = '/';
> + strcpy( url + 1, name );
>
> - *p++ = '/';
> - strcpy( p, name );
> -
> -#ifdef WIN32
> +#if (DIR_SEP_CHAR != '/')
> /* convert '\\' into '/' */
> - name = p;
> - while( *name )
> - {
> - if( *name == '\\' )
> + for( char *ptr = url; *ptr; ptr++ )
> + if( *ptr == DIR_SEP_CHAR )
> *name = '/';
> - name++;
> - }
> #endif
>
> /* index.* -> / */
> - if( ( p = strrchr( url, '/' ) ) != NULL )
> + char *p = strrchr( url, '/' );
> + if( p != NULL && !strncmp( p, "/index.", 7 ) )
> {
> - if( !strncmp( p, "/index.", 7 ) )
> - {
> - p[1] = '\0';
> - *pb_index = true;
> - }
> + p[1] = '\0';
> + *pb_index = true;
> }
> return url;
> }
>
The buildbot says hello!
util.c: In function 'FileToUrl':
util.c:63: error: assignment of read-only location '*name'
More information about the vlc-devel
mailing list