Баги vs кривые руки

Два дня бился на багами, первый баг был, что после регистрации срабатывал редирект на /maze, хотя старт был явно из города и должна грузиться страница /game.
Затем пронализировал код и нашел ошибку
TUser u;
findCity(CITY_DATOR,&u.wx,&u.wy);
u.nick = l;
u.pass = p1;
u.id = max;
u.color = get_color(max);
u.email = email;
userList[max] = u;

.mazeid не иницилизировалась и была не пуста, а в /game - проверка на эту переменную и соотвественно как результат - редирект.

Не долго думая (а зря) - сделал memset((char*)&u,0,sizeof(TUser)) - так код регистрации вообще стал выбивать серверную часть. Копал-копал и плюнул (вчера было дело). Сегодня с ясной головой понял, что я нулем иницилизровал и все члены структуры TUser, а там используется класс string.