diff options
Diffstat (limited to 'usr/src/lib/libproject/common/setproject.c')
-rw-r--r-- | usr/src/lib/libproject/common/setproject.c | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/usr/src/lib/libproject/common/setproject.c b/usr/src/lib/libproject/common/setproject.c index 2303576d32..d22878a36f 100644 --- a/usr/src/lib/libproject/common/setproject.c +++ b/usr/src/lib/libproject/common/setproject.c @@ -2,9 +2,8 @@ * CDDL HEADER START * * The contents of this file are subject to the terms of the - * Common Development and Distribution License, Version 1.0 only - * (the "License"). You may not use this file except in compliance - * with the License. + * Common Development and Distribution License (the "License"). + * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE * or http://www.opensolaris.org/os/licensing. @@ -20,7 +19,7 @@ * CDDL HEADER END */ /* - * Copyright 2005 Sun Microsystems, Inc. All rights reserved. + * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ @@ -536,7 +535,12 @@ setproject_proc(const char *project_name, const char *user_name, int flags, } old_pool_name = pool_get_binding(pid); - if (bind_to_pool(pool_name, pid, 0) != 0) { + + /* + * If parent is not bound to the default pool, then we want + * to preserve same binding as parent. + */ + if (pool_name != NULL && bind_to_pool(pool_name, pid, 0) != 0) { if (old_pool_name) free(old_pool_name); _kva_free(kv_array); |