*Synopsis*: *ksh93* Creating a compound variable in a subshell "bleeds through" to the calling subshell
CR 6713682 changed on Jan 16 2009 by <User 1-5Q-3253> === Field ============ === New Value ============= === Old Value ============= Integrated in Build snv_106 Status 10-Fix Delivered 8-Fix Available ====================== =========================== =========================== *Change Request ID*: 6713682 *Synopsis*: *ksh93* Creating a compound variable in a subshell "bleeds through" to the calling subshell Product: solaris Category: shell Subcategory: korn93 Type: Defect Subtype: Functionality Status: 10-Fix Delivered Substatus: Priority: 3-Medium Introduced In Release: solaris_nevada Introduced In Build: snv_72 Responsible Engineer: <User 1-5Q-5151> Keywords: oss-request, oss-sponsor === *Description* ============================================================ Creating a compound variable in s subshell "bleeds through" to the calling subshell in some conditions. Example: -- snip -- $ ksh93 -c 'unset l ; ( l=( a=1 b="BE" ) ; print "$l" ) ; print $l' ( a=1 b=BE ) ( ) -- snip -- The first bracket pair is Ok since it's coming from $ print "$l" # , however the 2nd pair comes from the print $l _outside_ the subshell where the variable "l" should no longer exist. Workaround: Force ksh93 to call |fork()| for the matching subshell using $ ulimit -c #, e.g. ... -- snip -- $ ksh93 -c 'unset l ; ( ulimit -c 0 ; l=( a=1 b="BE" ) ; print "$l" ) ; print $l' ( a=1 b=BE ) -- snip -- ... provides the correct output. *** (#1 of 1): 2008-06-12 03:32:11 GMT+00:00 <User 1-6Y4MMS> === *Public Comments* ======================================================== === *Workaround* ============================================================= Use $ ulimit -c0 # in a subshell to force ksh93 to |fork()|- *** (#1 of 1): [ UNSAVED ] <email address omitted> *** (#1 of 1): 2008-06-12 03:32:11 GMT+00:00 <User 1-6Y4MMS> === *Additional Details* ===================================================== Targeted Release: solaris_nevada Commit To Fix In Build: snv_106 Fixed In Build: snv_106 Integrated In Build: snv_106 Verified In Build: See Also: 6437624, 6619428 Duplicate of: Hooks: Hook1: Hook2: Hook3: Hook4: Hook5: <email address omitted> Hook6: <email address omitted> Program Management: Root Cause: New Code Introduced Fix Affects Documentation: No Fix Affects Localization: No === *History* ================================================================ Date Submitted: 2008-06-12 03:32:10 GMT+00:00 Submitted By: <User 1-6Y4MMS> Status Changed Date Updated Updated By 4-Defer 2008-10-22 19:59:38 GMT+00:00 <User 1-5Q-8913> 6-Fix Understood 2008-10-22 22:33:31 GMT+00:00 <User 1-5Q-5151> 7-Fix in Progress 2008-12-22 07:34:08 GMT+00:00 <User 1-5Q-5151> 8-Fix Available 2008-12-27 23:21:52 GMT+00:00 <User 1-5HNZ8F> 10-Fix Delivered 2009-01-16 03:26:24 GMT+00:00 <User 1-5Q-3253> === *Service Request* ======================================================== Impact: Significant Functionality: Secondary Severity: 3 Product Name: solaris Product Release: solaris_nevada Product Build: Operating System: solaris Hardware: generic Submitted Date: 2008-06-12 03:32:11 GMT+00:00 === *Multiple Release (MR) Cluster* - 0 ======================================