....
result = getitemfrom(packagenameitems, itemname)//1
//do sth
....
return result
}
}
从那里分析,在//1处,本应该是从已经解包过的packagenameitems中,取它的第n项;但这里误传入了解包前的packagenameitems。
似乎输入文本可能会发生几种情况,当然多数情况不需要进一步处理,直接用外部那个变量就行,此时两个变量内容一致,不会触发bug;但少数情况下,外部那个变量需要进一步处理,这才能提取到正确的内容。
这种情况下,两个变量内容不同,误用了前一个变量就读不到正确数据了。
这是个极为隐蔽的逻辑错误。
其实和变量作用域相关的故障都很隐蔽。
李明拿着整个调用链的详细记录,也是看了好几遍才发觉这两个变量的名字似乎有些意思,这才沿着这条线追查下去……
总之,意外的输出信息弄得他们一脸懵逼,因为这时候根本就不应该有这种信息,也幸好检查条件设的比较窄,只有正常返回可通过,其他一概抛异常崩掉——于是这个异常就被叶新晨的debug工具抓到,自动记录了调用栈信息。
所以说为什么之前钱志海等几人会惊讶,因为这个功能给他们抓到了一个bug。
还好这是个极为简单的bug,只需把最后那次访问时,首字符小写的变量名改成大写,故障就不再复发。
其实就这么简单个首字符大小写搞错、误访问了外部变量的bug,羽然科技公司在黑土平台上的悬赏单也是挂了有两三年了,前前后后换了很多人经手,但就是没人能抓到它。
最终,这个简单又奇葩的bug竟然被叶子大神的一个功能给抓住了。
不得不说这真的是意外之喜。
“真想见识见识叶子这样的大神是什么样的……”
………
八月三十一号。
这也是这个月的最后一天,叶新晨在公司之后,他今天没有像以往那样给自己的组员开会,他直接的就去往了主管自己的主管办公室里面。
他的主管是正是他的上一任组长张国强,所以他们之间的关系还算比较融洽,毕竟当时的叶新晨在他们组里可是业绩排名前三的,自然不会受到张国强的批评之类的。
“你要辞职?”张国强看着今天一大早就来跟他说今天要辞职的叶新晨,也是头疼的拍了拍自己的脑袋,“辞职都得提前最起码半个月啊,你这也太突然了吧?”
“张哥,我下个月就要回老家结婚了,而且女方家在c市,到时候我要两头跑,请假半个月都是打底的啊。”叶新晨一脸真诚的说道,“大概率都可能会请一个月假。”
“一个月……”张国强也是皱了皱眉头,“一个月公司肯定不会批下来的,哪怕半个月都不会给你批,时间太久了。而且,为什么要这么急着结婚呢?可以往后延一个月啊,这样子我就可以正常的给你打报告上去了。”
“哎,为什么这么急,我也不想的啊,主要那不是因为女朋友已经有了吗……”
张国强愣了一下,然后半晌道,“那恭喜啊。”
叶新晨则是看着张国强,苦笑着道,“哎,所以我才来先找张哥,毕竟结婚后也肯定需要钱,我要是一声不吭的离职,下个月恐怕发下来的工资只有一半。”
“嗯,公司的确会这样。”张国强最后看了一眼叶新晨,叹了口气,然后拿出一张纸,“行吧,你就正常的写一份报告好了,也是你正好赶上公司要提拔主管和组长,到时候我再说我忘了有你的辞职报告没打上去,你今天应该可以正常离职。”
“那谢谢张哥。”