summaryrefslogtreecommitdiff
path: root/tests/Bug_3334_Regression_Test.cpp
blob: b158e70731f2667e9b3fd105a0f0b3e5165f3793 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
// $Id$

// ============================================================================
//
// = LIBRARY
//    tests
//
// = DESCRIPTION
//    This test exercises ACE_Service_Config SEGV during shutdown when 
//    Modules get double deleted. Once by Stream parent, 
//    once by ACE_Service_Repository
//
// = AUTHOR
//    Chad Beaulac <chad@objectivesolutions.com>
//
// ============================================================================

#undef ACE_NLOGGING
#include "test_config.h"

#include "ace/Log_Msg.h"
#include "ace/Service_Config.h"

ACE_RCSID (tests, Bug_3334_Regression_Test, "$Id$")

int
run_main (int, ACE_TCHAR *argv[])
{
  ACE_START_TEST (ACE_TEXT ("Bug_3334_Regression_Test"));

  ACE_TCHAR * _argv[3] = {argv[0],
                          const_cast<ACE_TCHAR*> (ACE_TEXT ("-f")),
                          const_cast<ACE_TCHAR*>
                          (ACE_TEXT ("Bug_3334_Regression_Test.conf"))};
  int status;
  if ((status = ACE_Service_Config::open (3,
                                          _argv,
                                          ACE_DEFAULT_LOGGER_KEY,
                                          true,
                                          true /*ignore def svc.conf*/)) == -1)
    ACE_ERROR ((LM_ERROR,
                ACE_TEXT ("%p\n"),
                ACE_TEXT ("open"),
                1));

  ACE_Service_Config::fini_svcs ();
  ACE_END_TEST;
  return status;
}