From 16f839ac12bfa6e89ea08d825ec7b95ce5c25bca Mon Sep 17 00:00:00 2001 From: Jeff Hill Date: Wed, 8 Jul 2009 18:00:19 +0000 Subject: [PATCH] regression test for mantis 284 --- src/ca/acctst.c | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/src/ca/acctst.c b/src/ca/acctst.c index 2d7554151..ad03e2482 100644 --- a/src/ca/acctst.c +++ b/src/ca/acctst.c @@ -2903,6 +2903,31 @@ void verifyContextRundownFlush ( const char * pName, unsigned interestLevel ) showProgressEnd ( interestLevel ); } +void verifyContextRundownChanStillExist ( + const char * pName, unsigned interestLevel ) +{ + chid chan[10000]; + int status; + unsigned i; + + showProgressBegin ( "verifyContextRundownChanStillExist", interestLevel ); + + status = ca_context_create ( ca_disable_preemptive_callback ); + SEVCHK ( status, "context create failed" ); + + for ( i = 0; i < NELEMENTS ( chan ); i++ ) { + status = ca_create_channel ( pName, 0, 0, 0, & chan[i] ); + SEVCHK ( status, NULL ); + } + + status = ca_pend_io( timeoutToPendIO ); + SEVCHK ( status, "channel connect failed" ); + + ca_context_destroy (); + + showProgressEnd ( interestLevel ); +} + int acctst ( const char * pName, unsigned interestLevel, unsigned channelCount, unsigned repetitionCount, enum ca_preemptive_callback_select select ) { @@ -3042,6 +3067,7 @@ int acctst ( const char * pName, unsigned interestLevel, unsigned channelCount, caTaskExitTest ( interestLevel ); verifyContextRundownFlush ( pName, interestLevel ); + verifyContextRundownChanStillExist ( pName, interestLevel ); free ( pChans );