components/ksh93/patches/035-CR7036535.patch
changeset 4196 d697072a92f5
parent 789 5f074ca23733
child 4268 d723f8ed85fe
equal deleted inserted replaced
4195:d88c5d15a4af 4196:d697072a92f5
       
     1 --- a/src/cmd/ksh93/sh/path.c	Mon Nov 22 20:55:38 2010
       
     2 +++ b/src/cmd/ksh93/sh/path.c	Tue Sep 27 10:48:45 2011
       
     3 @@ -1430,7 +1435,7 @@
       
     4  		len = strlen(name);
       
     5  	for(pp=first; pp; pp=pp->next)
       
     6  	{
       
     7 -		if(memcmp(name,pp->name,len)==0 && (pp->name[len]==':' || pp->name[len]==0))
       
     8 +		if(strncmp(name,pp->name,len)==0 && (pp->name[len]==':' || pp->name[len]==0))
       
     9  		{
       
    10  			pp->flags |= flag;
       
    11  			return(first);
       
    12 @@ -1740,7 +1745,7 @@
       
    13  	register Pathcomp_t *pp=first;
       
    14  	while(pp)
       
    15  	{
       
    16 -		if(memcmp(name,pp->name,pp->len)==0 && name[pp->len]==c) 
       
    17 +		if(strncmp(name,pp->name,pp->len)==0 && name[pp->len]==c) 
       
    18  			return(pp);
       
    19  		pp = pp->next;
       
    20  	}
       
    21 --- a/src/cmd/ksh93/sh/nvtree.c	Sun Jan  2 17:45:14 2011
       
    22 +++ b/src/cmd/ksh93/sh/nvtree.c	Fri Jul 22 00:30:31 2011
       
    23 @@ -26,6 +26,9 @@
       
    24   *   AT&T Labs
       
    25   *
       
    26   */
       
    27 +/*
       
    28 + * Copyright (c) 2007, 2012, Oracle and/or its affiliates. All rights reserved.
       
    29 + */
       
    30  
       
    31  #include	"defs.h"
       
    32  #include	"name.h"
       
    33 @@ -188,7 +191,7 @@
       
    34  		{
       
    35  			char *cp = nv_name(dp->hp);
       
    36  			c = strlen(cp);
       
    37 -			if(memcmp(name,cp,c) || name[c]!='[')
       
    38 +			if(strncmp(name,cp,c) || name[c]!='[')
       
    39  				dp->hp = (Namval_t*)dtnext(dp->root,dp->hp);
       
    40  			else
       
    41  			{
       
    42 @@ -266,7 +269,7 @@
       
    43  {
       
    44  	if(dp->nextnode)
       
    45  		return((*dp->nextnode)(dp->hp,dp->root,dp->fun));
       
    46 -	if(dp->len && memcmp(dp->data, dp->hp->nvname, dp->len))
       
    47 +	if(dp->len && strncmp(dp->data, dp->hp->nvname, dp->len))
       
    48  		return(0);
       
    49  	return((Namval_t*)dtnext(dp->root,dp->hp));
       
    50  }
       
    51 @@ -311,7 +314,7 @@
       
    52  					dp->hp = (*dp->nextnode)(np,(Dt_t*)0,dp->fun);
       
    53  			}
       
    54  			sh.last_table = last_table;
       
    55 -			if(!dp->len || memcmp(cp,dp->data,dp->len)==0)
       
    56 +			if(!dp->len || strncmp(cp,dp->data,dp->len)==0)
       
    57  			{
       
    58  				if((nfp=nextdisc(np)) && (nfp->disc->getval||nfp->disc->getnum) && nv_isvtree(np) && strcmp(cp,dp->data))
       
    59  					nfp = 0;
       
    60 @@ -861,7 +864,7 @@
       
    61  					continue;
       
    62  				break;
       
    63  			}
       
    64 -			else if(outfile && !wp->nofollow && argv[1] && memcmp(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]=='[')
       
    66  			{
       
    67  				int	k=1;
       
    68  				Namarr_t *ap=0;