Hello, There is a bug in print_scan() function that may cause ksh to crash while listing indexed arrays.
Steps to reproduce : > cat typeset_a.sh #!/bin/ksh A[0]="'" B[0]=aa C[0]=aa typeset -a > ksh typeset_a.sh Segmentation fault (core dumped) Attached patch fixes this crash. -- -- Siteshwar Vashisht
diff --git a/src/cmd/ksh93/bltins/typeset.c b/src/cmd/ksh93/bltins/typeset.c index 15fcd58..8939011 100644 --- a/src/cmd/ksh93/bltins/typeset.c +++ b/src/cmd/ksh93/bltins/typeset.c @@ -1442,7 +1442,7 @@ static void print_scan(Sfio_t *file, int flag, Dt_t *root, int option,struct tda tp->scanmask |= (NV_DOUBLE|NV_EXPNOTE); if(flag==NV_LTOU || flag==NV_UTOL) tp->scanmask |= NV_UTOL|NV_LTOU; - namec = nv_scan(root,nullscan,(void*)tp,tp->scanmask,flag); + namec = nv_scan(root,nullscan,(void*)tp,tp->scanmask,flag&~NV_IARRAY); argv = tp->argnam = (char**)stkalloc(tp->sh->stk,(namec+1)*sizeof(char*)); namec = nv_scan(root, pushname, (void*)tp, tp->scanmask, flag&~NV_IARRAY); if(mbcoll()) -- 2.9.3
_______________________________________________ ast-developers mailing list ast-developers@lists.research.att.com http://lists.research.att.com/mailman/listinfo/ast-developers