lib: Remove global xfile.h includes
[samba.git] / source3 / rpc_server / svcctl / srv_svcctl_reg.c
index 930c327622f2023e60a234248d1e5ec9bb171618..9b1af800b9dbfe23dfdd0ada0440902a3901d53a 100644 (file)
@@ -31,6 +31,7 @@
 #include "rpc_server/svcctl/srv_svcctl_reg.h"
 #include "auth.h"
 #include "registry/reg_backend_db.h"
+#include "lib/util/xfile.h"
 
 #undef DBGC_CLASS
 #define DBGC_CLASS DBGC_REGISTRY
@@ -224,13 +225,13 @@ static bool read_init_file(TALLOC_CTX *mem_ctx,
                p = strstr(str, "Description:");
                if (p != NULL) {
                        char *desc;
+                       size_t len = strlen(p);
 
-                       p += strlen( "Description:" ) + 1;
-                       if (p == NULL) {
+                       if (len <= 12) {
                                break;
                        }
 
-                       desc = svcctl_cleanup_string(mem_ctx, p);
+                       desc = svcctl_cleanup_string(mem_ctx, p + 12);
                        if (desc != NULL) {
                                info->description = talloc_strdup(info, desc);
                        }
@@ -487,7 +488,7 @@ static bool svcctl_add_service(TALLOC_CTX *mem_ctx,
        ZERO_STRUCT(wkey);
        wkey.name = talloc_asprintf(mem_ctx, "%s\\%s\\Security", key, name);
        if (wkey.name == NULL) {
-               result = WERR_NOMEM;
+               result = WERR_NOT_ENOUGH_MEMORY;
                goto done;
        }