From 649282b7f966c96548011c68eef8527358049b97 Mon Sep 17 00:00:00 2001 From: Ramiro Polla Date: Fri, 29 Jun 2007 22:13:50 +0000 Subject: Fix copy_string( ) --- dlfcn.c | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/dlfcn.c b/dlfcn.c index 18eaa25..c279897 100644 --- a/dlfcn.c +++ b/dlfcn.c @@ -73,15 +73,16 @@ static int copy_string( char *dest, int dest_size, const char *src ) { int i = 0; - if( src && dest ) + /* gcc should optimize this out */ + if( !src && !dest ) + return 0; + + for( i = 0 ; i < dest_size-1 ; i++ ) { - for( i = 0 ; i < dest_size-1 ; i++ ) - { - if( !src[i] ) - break; - else - dest[i] = src[i]; - } + if( !src[i] ) + break; + else + dest[i] = src[i]; } dest[i] = '\0'; -- cgit v1.2.3-55-g6feb