chiark / gitweb /
missing initialization
[disorder] / lib / trackdb.c
index c57dab21cf0bc9753d4ee112c5dad4b053ae5506..46a875c5a3f48c6e6ed6636c7eb55d614a2f334b 100644 (file)
@@ -1523,6 +1523,7 @@ char **trackdb_alltags(void) {
   int e;
   struct vector v[1];
 
+  vector_init(v);
   WITH_TRANSACTION(trackdb_listkeys(trackdb_tagsdb, v, tid));
   return v->vec;
 }
@@ -2455,9 +2456,9 @@ static int one_old_user(const char *user, const char *password,
   if(!strcmp(user, "root"))
     rights = "all";
   else if(trusted(user))
-    rights = rights_string(default_rights()|RIGHT_ADMIN);
+    rights = rights_string(config->default_rights|RIGHT_ADMIN|RIGHT_RESCAN);
   else
-    rights = rights_string(default_rights());
+    rights = rights_string(config->default_rights);
   return create_user(user, password, rights, 0/*email*/, tid, DB_NOOVERWRITE);
 }
 
@@ -2514,9 +2515,6 @@ void trackdb_create_root(void) {
  * Only works if running as a user that can read the database!
  *
  * If the user exists but has no password, "" is returned.
- *
- * If the user was created with 'register' and has not yet been confirmed then
- * NULL is still returned.
  */
 const char *trackdb_get_password(const char *user) {
   int e;
@@ -2526,8 +2524,6 @@ const char *trackdb_get_password(const char *user) {
   WITH_TRANSACTION(trackdb_getdata(trackdb_usersdb, user, &k, tid));
   if(e)
     return 0;
-  if(kvp_get(k, "confirmation"))
-    return 0;
   password = kvp_get(k, "password");
   return password ? password : "";
 }