刘岗甚至想到:“莫非他找到了漏洞,偷偷下载了开发组的代码?”</p>
如果真是这样,他会毫不犹豫地出来向全公司控诉漏洞组窃取他们的开发成果,并以辞职为威胁要求公司开除这个人!</p>
“这个问题的出现与输入的字符串有关,随机性很大。”</p>
孟飞丝毫没有理会在场所有人的震惊,双目闪烁着奇异的自信光芒,一边操作一边说:</p>
“但我找到了这么一个组合,百分之百可以重现这个问题。”</p>
他又输入同样的一句话,果然,输入法再次卡住了。</p>
“现在我试试修复。”</p>
说完他打开了系统下的程序目录“Programfiles”,然后找到螳螂软件的目录“MantisSoft”。</p>
接下来是内网安全“IntranetSecurity”,他找到了一个文件“Misnetgate.dll”。</p>
螳螂软件内网安全之门,这是个动态库,是刘岗他们组的产品无疑了。</p>
打开文件,一大片密密麻麻的二进制码。这不是源码,是机器码。</p>
在人类眼中,这就是一堆毫无意义的数字。</p>
程序员是可以认识机器码的。但那得拿着几千页的指令手册,一条条指令去查。</p>
有人能记住所有指令的机器码吗?或许真有这种变态,但在这个会议室里,肯定没有!</p>
更何况记住也是没用的。指令只是指令,脱离了具体的执行逻辑和环境,那就什么也不是。</p>
刘岗他们编译出来的最终执行码还是经过了各种混淆、虚拟化,令人眼花缭乱到死来防止被人破解的。</p>
你孟飞就算知道这里有BUG,你能找到正确的修改点?</p>
然而就在他强烈质疑的目光中,孟飞先是备份了文件,然后连点鼠标键盘,修改了好几串数字。</p>
他能看懂机器码?</p>
当然不能!</p>
但他有最强BUG系统啊。程序进了他的眼,扫描一下BUG并不用他吹灰之力。</p>
至于修改机器码,他瞎改一些字节就行了。</p>
他乱改岂不是要改坏?</p>
改坏又有什么关系?让系统瞬间修复就行。</p>
在场这么多人看着,就没有一个人能发现其中蹊跷?</p>
当然没有了。</p>
大家看到的都是一堆数字,你操作又眼疾手快,谁能看清你究竟改了什么啊。</p>
保存,重启电脑。再打开,输入同一个句子。</p>
流畅无比,毫无卡顿!</p>
孟飞又将修改前保留的备份文件恢复了回去,重启系统,再输入同一个句子。</p>
果然,再度卡顿!</p>
修改,测试,问题解决。</p>
恢复,测试,问题再度出现。</p>
如铁一般的证据,毫无质疑的可能。</p>
见惯了太多大场面的罗安脸上并没有太多的震惊,但对孟飞其人的赞赏和满意是明显的。</p>
而刘岗则焦灼得脸都快歪了。</p>
这事他已经彻底败了。</p>
无论这个问题有多严重、是不是BUG,也无论漏洞组是否提过这个问题他们又是否拒绝了改动。</p>
他们的问题导致用户抱怨,被当场演示在大老板面前的时候,他就已经彻底败了。</p>
但罗安并未放过,还在继续问孟飞:</p>
“你说你们曾经提过这个BUG,但开发组拒绝修复?”</p>
孟飞咔咔咔地点击鼠标,一份四个月前的旧邮件居然被他给找了出来。</p>
连欧阳聪都佩服了。时间跨度这么大的事,你是怎么给关联到一起全揪出来反攻倒算的?</p>
他当然不知道,从扫描BUG,到寻找用户抱怨、寻找他们预先提交BUG的邮件,孟飞早都让系统一条龙服务准备好了。</p>
“这事的原理其实很简单。</p>
“内网安全系统阻止程序对外网的不可信任的访问。</p>
“而这个输入法在用户输入某些字符串的时候,会试图弹出广告。</p>
“广告的来源五花八门。</p>
“这些来源网址大多数已经被加入信任名单,所以平时输入文字一点都不会卡。</p>
“但有极少数广告来源网址不在白名单里,被内网安全系统阻止。</p>
“本来阻止如果是连接直接中断,后果就是没有广告,输入还是正常的。</p>
“但我们的安全系统阻止的方式并不是中断连接,而是挂起。”</p>
挂起就是给堵塞了,无回复。你不知道这路通不通,只知道堵着。那么输入法没辙了,只能等待。</p>
一等待就卡着了。大约要卡好几秒。</p>
平时其他操作卡几秒还可以接受。输入文字的时候卡一下,就像说话结巴,用户就会觉得浑身难受了。</p>
“几个月前,我们测试的时候发现安全系统阻止的方式是挂起,所以发了这封邮件给开发组。”</p>
孟飞念出邮件的内容:“挂起的方式阻止会导致不可预知的卡顿,可能影响用户体验,建议直接中断连接。”</p>
“但开发组没有回复。”</p>
孟飞毫不留情地钉上了这棺材盖板的最后一颗钉子。全场静默。</p>
其实这事刘岗也很冤。</p>
挂起还是中断这只是一个策略问题。</p>
挂起的话,连接还活着,程序还在不会死,理论上比暴力中断更温和。</p>
你现在说应该中断,那谁知道改成中断之后,在其他情况下会不会爆出更怪异的问题来?</p>
漏洞组只需要提出问题和改进建议就行了。</p>
然而这建议是否可行,放出去会不会捅娄子是不需要也没法管的。</p>
进行修改,最终背锅的还不是开发组自己?</p>
所以他们的人看了邮件直接不回复或者回复一通理由拒绝修改,都是合理的。</p>
但现在说什么都迟了。用户的抱怨、现场的证据都摆在眼前。</p>
漏洞组在四个月之前就提出了问题,准确地预言了用户抱怨的可能,而他们拒绝了修复!</p>
如果他继续纠结应该中断还是应该挂起这种根本就无解的话题,只能让罗安觉得他没有担当,不愿意承担责任罢了。</p>
“这个的确是我们的问题。”</p>
刘岗沉着脸认栽。</p>
“将来我会监督开发组这边对提来的BUG的跟进,确定每一个问题都妥善解决。”</p>
罗安同样赞赏地点了点头:</p>
“能找到问题就好。今天会议时间太长,就到这里了。刘岗你回去写一下会议纪要和将来具体的改进措施发出来。”</p>
罗安的风格就是如此,喜怒不形于色。</p>
他从不会当所有人的面直接批评任何一个人。这样会让受批评的人很没面子,积极性受到打击。</p>
但应该要解决的问题也一定得解决。表决心是没用的,必须得看到具体的能实行的措施。</p>
光有措施也是不行的,将来还要看措施是否实行,实行的结果如何。</p>
他会像狼一样对你穷追不舍。一旦被他盯上,那就要么你积极解决问题,要么等他来解决你。</p>
刘岗一时感觉压力山大,沉闷地收拾东西带着开发组的人马离开。</p>
“孟飞你留下。”</p>
就在大家即将散去的时候,罗安忽然说了一句。</p>
……</p>
</p>sxbiquge/read/4/4325/ )