fixed renameAccount function (merging mode)
authorpk910 <philipp@zoelle1.de>
Wed, 26 Sep 2012 14:06:47 +0000 (16:06 +0200)
committerpk910 <philipp@zoelle1.de>
Wed, 26 Sep 2012 14:06:47 +0000 (16:06 +0200)
src/DBHelper.c

index d5d8d0bd133c834559e50f9e50d753d6feb03864..69bdf44fdd79b1e3f8de6fbccfd9e571a40656c9 100644 (file)
@@ -226,8 +226,8 @@ int renameAccount(char *oldauth, char *newauth) {
                 printf_mysql_query("SELECT `chanuser_id`, `chanuser_access`, `chanuser_flags` FROM `chanusers` WHERE `chanuser_uid` = '%d'", userid);
                 res2 = mysql_use();
                 if((row2 = mysql_fetch_row(res2)) != NULL) {
-                    if(atoi(row[0]) > atoi(row2[0])) {
-                        printf_mysql_query("UPDATE `chanusers` SET `chanuser_access` = '%s' WHERE `chanuser_id` = '%s'", row[0], row2[0]);
+                    if(atoi(row[1]) > atoi(row2[1])) {
+                        printf_mysql_query("UPDATE `chanusers` SET `chanuser_access` = '%s' WHERE `chanuser_id` = '%s'", row[1], row2[0]);
                     }
                     printf_mysql_query("DELETE FROM `chanusers` WHERE `chanuser_id` = '%s'", row[0]);
                 } else
@@ -241,11 +241,10 @@ int renameAccount(char *oldauth, char *newauth) {
             printf_mysql_query("UPDATE `owner_history` SET `owner_history_from_uid` = '%d' WHERE `owner_history_from_uid` = '%d'", userid, newuid);
             printf_mysql_query("UPDATE `owner_history` SET `owner_history_from_uid` = '%d' WHERE `owner_history_from_uid` = '%d'", userid, newuid);
             printf_mysql_query("UPDATE `noinvite` SET `uid` = '%d' WHERE `uid` = '%d'", userid, newuid);
-            printf_mysql_query("DELETE FROM `users` WHERE `chanuser_id` = '%d'", newuid);
-        } else {
-            //simply rename the account
-            printf_mysql_query("UPDATE `users` SET `user_user` = '%s' WHERE `user_id` = '%d'", escape_string(newauth), userid);
+            printf_mysql_query("DELETE FROM `users` WHERE `user_id` = '%d'", newuid);
         }
+        //simply rename the account
+        printf_mysql_query("UPDATE `users` SET `user_user` = '%s' WHERE `user_id` = '%d'", escape_string(newauth), userid);
         char *alertchan = get_string_field("General.CheckAuths.alertchan");
         if(alertchan) {
             struct ChanNode *alertchan_chan = getChanByName(alertchan);