summaryrefslogtreecommitdiff
path: root/ace/Svc_Conf.y
diff options
context:
space:
mode:
authorschmidt <douglascraigschmidt@users.noreply.github.com>1997-06-26 17:24:58 +0000
committerschmidt <douglascraigschmidt@users.noreply.github.com>1997-06-26 17:24:58 +0000
commit243f351d97d8f1bde6bd5ef4bfad95f6902fd9ec (patch)
treeed542ef728938b1ffb81d015a87ef9435aff2318 /ace/Svc_Conf.y
parent7ae3d71ad38d9ccb36699acfe50e4d35bfbf413f (diff)
downloadATCD-243f351d97d8f1bde6bd5ef4bfad95f6902fd9ec.tar.gz
*** empty log message ***
Diffstat (limited to 'ace/Svc_Conf.y')
-rw-r--r--ace/Svc_Conf.y18
1 files changed, 13 insertions, 5 deletions
diff --git a/ace/Svc_Conf.y b/ace/Svc_Conf.y
index 8ff5d5708be..f64ef1712ea 100644
--- a/ace/Svc_Conf.y
+++ b/ace/Svc_Conf.y
@@ -57,7 +57,8 @@ svc_config_entry
dynamic
: ACE_DYNAMIC svc_location parameters_opt
{
- $$ = new ACE_Dynamic_Node ($2, $3);
+ if ($2 != 0)
+ $$ = new ACE_Dynamic_Node ($2, $3);
}
;
@@ -184,10 +185,17 @@ module
svc_location
: ACE_IDENT type svc_initializer status
{
- unsigned int flags
+ u_int flags
= ACE_Service_Type::DELETE_THIS | ($3->dispose () == 0 ? 0 : ACE_Service_Type::DELETE_OBJ);
- ACE_Service_Type *stp = ace_create_service_type ($1, $2, $3->symbol (), flags);
- $$ = new ACE_Service_Record ($1, stp, $3->handle (), $4);
+ const void *sym = $3->symbol ();
+
+ if (sym != 0)
+ {
+ ACE_Service_Type *stp = ace_create_service_type ($1, $2, $3->symbol (), flags);
+ $$ = new ACE_Service_Record ($1, stp, $3->handle (), $4);
+ }
+ else
+ $$ = 0;
}
;
@@ -296,7 +304,7 @@ ACE_Service_Type *
ace_create_service_type (const char *name,
int type,
const void *symbol,
- unsigned int flags)
+ u_int flags)
{
ACE_Service_Type *stp = 0;