return res;
 }
 
+static PgDatabase *find_or_register_database(PgSocket *admin, const char *name)
+{
+       PgDatabase *db = find_database(name);
+       if (db == NULL) {
+               db = register_auto_database(name);
+               if (db != NULL) {
+                       slog_info(admin,
+                                 "registered new auto-database: %s", name);
+                }
+       }
+        return db;
+}
+
 /*
  * Command: SHOW FDS
  *
        } else {
                PgDatabase *db;
                log_info("PAUSE '%s' command issued", arg);
-               db = find_database(arg);
-               if (db == NULL) {
-                       db = register_auto_database(arg);
-                       if (db == NULL) {
-                               return admin_error(admin, "no such database: %s", arg);
-                       } else {
-                               slog_info(admin, "registered new auto-database for PAUSE: %s", arg);
-                       }
-               }
+               db = find_or_register_database(admin, arg);
+               if (db == NULL)
+                       return admin_error(admin, "no such database: %s", arg);
                if (db == admin->pool->db)
                        return admin_error(admin, "cannot pause admin db: %s", arg);
                db->db_paused = 1;
                return admin_error(admin, "a database is required");
 
        log_info("DISABLE '%s' command issued", arg);
-       db = find_database(arg);
-       if (db == NULL) {
-               db = register_auto_database(arg);
-               if (db == NULL) {
-                       return admin_error(admin, "no such database: %s", arg);
-               } else {
-                       slog_info(admin, "registered new auto-database for DISABLE: %s", arg);
-               }
-       }
+       db = find_or_register_database(admin, arg);
+       if (db == NULL)
+               return admin_error(admin, "no such database: %s", arg);
        if (db == admin->pool->db)
                return admin_error(admin, "cannot disable admin db: %s", arg);
 
                return admin_error(admin, "a database is required");
 
        log_info("KILL '%s' command issued", arg);
-       db = find_database(arg);
-       if (db == NULL) {
-               db = register_auto_database(arg);
-               if (db == NULL) {
-                       return admin_error(admin, "no such database: %s", arg);
-               } else {
-                       slog_info(admin, "registered new auto-database for KILL: %s", arg);
-               }
-       }
+       db = find_or_register_database(admin, arg);
+       if (db == NULL)
+               return admin_error(admin, "no such database: %s", arg);
        if (db == admin->pool->db)
                return admin_error(admin, "cannot kill admin db: %s", arg);