summaryrefslogtreecommitdiff
path: root/source3/rpc_parse/parse_svcctl.c
diff options
context:
space:
mode:
Diffstat (limited to 'source3/rpc_parse/parse_svcctl.c')
-rw-r--r--source3/rpc_parse/parse_svcctl.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/source3/rpc_parse/parse_svcctl.c b/source3/rpc_parse/parse_svcctl.c
index dc4ee3e6e9..3846812f31 100644
--- a/source3/rpc_parse/parse_svcctl.c
+++ b/source3/rpc_parse/parse_svcctl.c
@@ -829,10 +829,14 @@ BOOL svcctl_io_service_fa( const char *desc, SERVICE_FAILURE_ACTIONS *fa, RPC_BU
if ( !prs_uint32("num_actions", ps, depth, &fa->num_actions) )
return False;
- if ( UNMARSHALLING(ps) && fa->num_actions ) {
- if ( !(fa->actions = TALLOC_ARRAY( get_talloc_ctx(), SC_ACTION, fa->num_actions )) ) {
- DEBUG(0,("svcctl_io_service_fa: talloc() failure!\n"));
- return False;
+ if ( UNMARSHALLING(ps)) {
+ if (fa->num_actions) {
+ if ( !(fa->actions = TALLOC_ARRAY( get_talloc_ctx(), SC_ACTION, fa->num_actions )) ) {
+ DEBUG(0,("svcctl_io_service_fa: talloc() failure!\n"));
+ return False;
+ }
+ } else {
+ fa->actions = NULL;
}
}