[v26] Randomrooms causes crash

Eronisch

Web Developer
Jan 1, 2011
234
25
Hi,
Apparantly, my emulator crashed because there was a bug with random rooms. the problem is because the minimum number was higher than the max number, something like that.
Does someon haves a fix for it?
Code:
Code:
 private static void randomRooms()
        {
            DataRow dRow;
            int nummer;
            int i;
            int randomNummer;
            int minimum;
            using (DatabaseClient dbClient = Eucalypt.dbManager.GetClient())
            {
                minimum = dbClient.getInt("SELECT min(id) FROM rooms");
            }
            while (true)
            {
                i = 0;
                Rooms = "";
                bool findResult = false;
                using (DatabaseClient dbClient = Eucalypt.dbManager.GetClient())
                {
                    nummer = dbClient.getInt("SELECT max(id)FROM rooms ");
                }
                while (i < 3)
                {
                    randomNummer = random.Next(minimum, nummer);
                    using (DatabaseClient dbClient = Eucalypt.dbManager.GetClient())
                    {
                        findResult = dbClient.findsResult("SELECT id FROM rooms WHERE id = " + randomNummer);
                    }
                    if (findResult && (randomNummer > 0))
                    {
                        using (DatabaseClient dbClient = Eucalypt.dbManager.GetClient())
                        {
                            dRow = dbClient.getRow("SELECT id,name,owner,description,state,visitors_now,visitors_max FROM rooms WHERE id = " + randomNummer);
                        }
                        Rooms += Encoding.encodeVL64(Convert.ToInt32(dRow["id"])) + Convert.ToString(dRow["name"]) + Convert.ToChar(2) + Convert.ToString(dRow["owner"]) + Convert.ToChar(2) + roomManager.getRoomState(Convert.ToInt32(dRow["state"])) + Convert.ToChar(2) + Encoding.encodeVL64(Convert.ToInt32(dRow["visitors_now"])) + Encoding.encodeVL64(Convert.ToInt32(dRow["visitors_max"])) + Convert.ToString(dRow["description"]) + Convert.ToChar(2);
                        i++;
                    }
                }
                Thread.Sleep(30000);
            }
        }
 

Users who are viewing this thread

Top