summaryrefslogtreecommitdiff
path: root/modules/ACE/tests/Bug_3334_Regression_Test.cpp
blob: fe348154f8053e99e67e7416f11835fb3d0b7707 (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
// $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>
//
// ============================================================================

#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;
}