[vlc-devel] commit: Add support for last lines without newline in .hosts (untested). ( JP Dinger )

git version control git at videolan.org
Tue Sep 8 10:57:33 CEST 2009


vlc | branch: master | JP Dinger <jpd at videolan.org> | Tue Sep  8 10:52:26 2009 +0200| [a4f7a49fdcbcaed4709b84a768afcd81b93a776f] | committer: JP Dinger 

Add support for last lines without newline in .hosts (untested).

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=a4f7a49fdcbcaed4709b84a768afcd81b93a776f
---

 src/network/acl.c |   15 +++++++--------
 1 files changed, 7 insertions(+), 8 deletions(-)

diff --git a/src/network/acl.c b/src/network/acl.c
index 89c3335..ee98e3b 100644
--- a/src/network/acl.c
+++ b/src/network/acl.c
@@ -333,7 +333,7 @@ int ACL_LoadFile( vlc_acl_t *p_acl, const char *psz_path )
             continue;
 
         ptr = strchr( psz_ip, '\n' );
-        if( ptr == NULL )
+        if( ptr == NULL && !feof(file) )
         {
             msg_Warn( p_acl->p_owner, "skipping overly long line in %s",
                       psz_path);
@@ -354,16 +354,15 @@ int ACL_LoadFile( vlc_acl_t *p_acl, const char *psz_path )
             continue; /* skip unusable line */
         }
 
-        /* skips comment-only line */
-        if( *psz_ip == '#' )
-            continue;
-
-        /* looks for first space, CR, LF, etc. or end-of-line comment */
-        /* (there is at least a linefeed) */
-        for( ptr = psz_ip; ( *ptr != '#' ) && !isspace( *ptr ); ptr++ );
+        /* look for first space, CR, LF, etc. or comment character */
+        for( ptr = psz_ip; ( *ptr!='#' ) && !isspace( *ptr ) && *ptr; ++ptr );
 
         *ptr = '\0';
 
+        /* skip lines without usable information */
+        if( ptr == psz_ip )
+            continue;
+
         msg_Dbg( p_acl->p_owner, "restricted to %s", psz_ip );
 
         ptr = strchr( psz_ip, '/' );




More information about the vlc-devel mailing list