This fix is from the community, details in the following location.
--- INIT.2011-02-08.old/src/cmd/ksh93/sh/fault.c 2014-10-29 12:41:23.239718243 -0700
+++ INIT.2011-02-08/src/cmd/ksh93/sh/fault.c 2014-10-29 14:03:09.196910448 -0700
@@ -519,7 +519,7 @@ void sh_exit(register int xno)
if(pp && pp->mode>1)
cursig = -1;
#ifdef SIGTSTP
- if(shp->trapnote&SH_SIGTSTP)
+ if(shp->trapnote&SH_SIGTSTP && job.jobcontrol)
{
/* ^Z detected by the shell */
shp->trapnote = 0;