原文见http://thedailywtf.com/forums/65091/ShowPost.aspx
下面是那个好心肠的程序员写的代码
/*
* 我的这段代码很烂。真的很烂。我真心诚意的承认,我的代码很烂。如果你是Intertrode通信公司
* 的雇员。我非常非常抱歉你得维护这段代码。我打算明天就改写这段烂代码,但是我很健忘。我常
* 忘记我写的代码。例如这段代码就是我健忘的产物。
*
* 事情的来龙去脉是这样的。我已经记不清了AccountId(帐户号)这个变量为什么没有设置数值。
* 我查了一遍有一遍代码。就是搞不明白。现在我得走人了。还好,我发觉可以从调试记录(debugging
* log)里抓出AccountID来。也许问题就这样被搞定了也说不准。弄清什么时候AccountID被清空
* 就靠老兄你了。
*
* 最后,请再一次接受我真诚的道歉
*/
if ( (AccountId == NULL) || (AccountId == "") ||
(ServerSesion["AccountId"] == NULL) || (ServerSesion["AccountId"] == "") )
{
//open session logs
FileHandle file = f_open(LOG_PATH + "\sessionlog-" + LOG_FILE_DATE + ".log", 1);
while (file != NULL)
{
TString line = f_readline(file);
//look for IP and changereg
if ( (sfind(line,REMOTE_ADDR) != -1) && (sfind(line,"changereg") != -1) )
{
//0000-00-00 00:00 /accountmaint/changereg/?AccountId=123456 255.255.255.255 ...
// *
AccountId = substr(line, 52, 6);
}
if (f_EOF(file)) { f_close(file); file = NULL; }
}
}