components/ksh93/patches/035-CR7036535.patch
changeset 4305 90493abe0c5c
parent 4268 d723f8ed85fe
child 5129 5431772f7235
equal deleted inserted replaced
4304:b35bb72c479d 4305:90493abe0c5c
     1 # Solaris specific issue. Not submitted to the community.
     1 --- a/src/cmd/ksh93/sh/path.c	Mon Nov 22 20:55:38 2010
     2 --- a/src/cmd/ksh93/sh/path.c	2015-02-24 13:25:19.360898415 -0800
     2 +++ b/src/cmd/ksh93/sh/path.c	Tue Sep 27 10:48:45 2011
     3 +++ b/src/cmd/ksh93/sh/path.c	2015-02-25 00:54:42.168155178 -0800
     3 @@ -1430,7 +1435,7 @@
     4 @@ -1463,7 +1463,7 @@
       
     5  		len = strlen(name);
     4  		len = strlen(name);
     6  	for(pp=first; pp; pp=pp->next)
     5  	for(pp=first; pp; pp=pp->next)
     7  	{
     6  	{
     8 -		if(len == pp->len && memcmp(name,pp->name,len)==0)
     7 -		if(memcmp(name,pp->name,len)==0 && (pp->name[len]==':' || pp->name[len]==0))
     9 +		if(len == pp->len && strncmp(name,pp->name,len)==0)
     8 +		if(strncmp(name,pp->name,len)==0 && (pp->name[len]==':' || pp->name[len]==0))
    10  		{
     9  		{
    11  			pp->flags |= flag;
    10  			pp->flags |= flag;
    12  			return(first);
    11  			return(first);
    13 @@ -1751,7 +1751,7 @@
    12 @@ -1740,7 +1745,7 @@
    14  	register Pathcomp_t *pp=first;
    13  	register Pathcomp_t *pp=first;
    15  	while(pp)
    14  	while(pp)
    16  	{
    15  	{
    17 -		if(memcmp(name,pp->name,pp->len)==0 && name[pp->len]==c) 
    16 -		if(memcmp(name,pp->name,pp->len)==0 && name[pp->len]==c) 
    18 +		if(strncmp(name,pp->name,pp->len)==0 && name[pp->len]==c) 
    17 +		if(strncmp(name,pp->name,pp->len)==0 && name[pp->len]==c) 
    65 -			else if(outfile && !wp->nofollow && argv[1] && memcmp(arg,argv[1],l=strlen(arg))==0 && argv[1][l]=='[')
    64 -			else if(outfile && !wp->nofollow && argv[1] && memcmp(arg,argv[1],l=strlen(arg))==0 && argv[1][l]=='[')
    66 +			else if(outfile && !wp->nofollow && argv[1] && strncmp(arg,argv[1],l=strlen(arg))==0 && argv[1][l]=='[')
    65 +			else if(outfile && !wp->nofollow && argv[1] && strncmp(arg,argv[1],l=strlen(arg))==0 && argv[1][l]=='[')
    67  			{
    66  			{
    68  				int	k=1;
    67  				int	k=1;
    69  				Namarr_t *ap=0;
    68  				Namarr_t *ap=0;
    70