Am Dienstag, den 16.09.2008, 07:58 -0700 schrieb Juan Lang: > Hi Peter, > > diff --git a/programs/services/services.c b/programs/services/services.c > index 36ed117..cd71a1f 100644 > --- a/programs/services/services.c > +++ b/programs/services/services.c > @@ -106,9 +106,9 @@ static DWORD load_service_config(HKEY hKey, struct > service_entry *entry) > return err; > if ((err = load_reg_string(hKey, SZ_DESCRIPTION, 0, > &entry->description)) != 0) > return err; > - if ((err = load_reg_multisz(hKey, SZ_DEPEND_ON_SERVICE, > &entry->dependOnServices)) != 0) > + if ((err = load_reg_multisz(hKey, SZ_DEPEND_ON_SERVICE, TRUE, > &entry->dependOnServices)) != 0) > return err; > - if ((err = load_reg_multisz(hKey, SZ_DEPEND_ON_GROUP, > &entry->dependOnGroups)) != 0) > + if ((err = load_reg_multisz(hKey, SZ_DEPEND_ON_GROUP, FALSE, > &entry->dependOnGroups)) != 0) > return err;
> It seems as though the bAllowSingle variable is useless, as the only > caller of it tries first with TRUE and again with FALSE. No, you are reading the patch wrong. It tries to read DependOnService with TRUE, and aborts if it *fails*. If it succeeds, it loads *another* setting (DependOnGroup) with FALSE, so definitely not a retry. Peter, are you sure that windows will handle REG_SZ *only* in the DependOnService case and fail if you have a REG_SZ in DependOnGroup? Regards, Michael Karcher