plan 9 kernel history: overview | file list | diff list

1991/0514/port/pgrp.c (diff list | history)

1991/0318/sys/src/9/port/pgrp.c:182,2071991/0514/sys/src/9/port/pgrp.c:182,194 (short | long | prev | next)
1990/0227    
} 
 
void 
pgrpcpy(Pgrp *to, Pgrp *from) 
1991/0514    
envcpy(Pgrp *to, Pgrp *from) 
1990/0227    
{ 
	int i; 
	Mtab *m; 
	Envp *ep; 
	Env *e; 
1991/0514    
	int i; 
1990/0227    
 
	lock(from); 
1991/0318    
	memmove(to->user, from->user, NAMELEN); 
	memmove(to->mtab, from->mtab, from->nmtab*sizeof(Mtab)); 
1990/0227    
	to->nmtab = from->nmtab; 
	m = to->mtab; 
	for(i=0; i<from->nmtab; i++,m++) 
		if(m->c){ 
			incref(m->c); 
			lock(m->mnt); 
			m->mnt->ref++; 
			unlock(m->mnt); 
		} 
                 
	to->nenv = from->nenv; 
	ep = to->etab; 
	for(i=0; i<from->nenv; i++,ep++){ 
1991/0318/sys/src/9/port/pgrp.c:231,2351991/0514/sys/src/9/port/pgrp.c:218,244
1990/0227    
			unlock(e); 
		} 
	} 
1991/0514    
	unlock(from); 
} 
 
void 
pgrpcpy(Pgrp *to, Pgrp *from) 
{ 
	int i; 
	Mtab *m; 
 
	lock(from); 
	memmove(to->user, from->user, NAMELEN); 
	memmove(to->mtab, from->mtab, from->nmtab*sizeof(Mtab)); 
	to->nmtab = from->nmtab; 
	m = to->mtab; 
	for(i=0; i<from->nmtab; i++,m++) 
		if(m->c){ 
			incref(m->c); 
			lock(m->mnt); 
			m->mnt->ref++; 
			unlock(m->mnt); 
		} 
 
1990/0227    
	unlock(from); 
} 


source code copyright © 1990-2005 Lucent Technologies; see license
Plan 9 distribution
comments to russ cox (rsc@swtch.com)