该内容已被发布者删除 该内容被自由微信恢复
文章于 2023年11月22日 被检测为删除。
查看原文
被用户删除
其他

火爆外网!23岁华人博士修复22年历史漏洞,网友:我喜欢这个故事

新智元 俗世传媒 2023-11-22

请点上面的 俗世传媒关注我



新智元报道  

编辑:贝果


【新智元导读】导语:年仅23岁的斯坦福大学华人博士,修复了一个已有22年历史的bug。一夜之间在外网爆火,引得无数网友围观和赞赏。有人直呼,喜欢这个故事!

近日,又有一位华人小伙在外网爆火,原因是修复了一个存在22年的Bug。

自2002年以来,这个错误就一直潜伏在Firefox浏览器的核心代码中。

当时,这款应用程序还被称为Mozilla浏览器,处于其早期版本的阶段。

事实上,这个bug的存在已经如同Firefox浏览器的一部分一样久远。

这个问题不仅仅比Firefox浏览器自身的发布历史更早,而且已经伴随我们很长时间了。

https://mp.weixin.qq.com/s/QyJk84luXxMOnu1FaDcoSw

早在2002年6月,在司法部针对微软的反垄断案件即将进入最终辩论阶段时,Adam Price在他的Mac电脑上使用当时被称为Mozilla软件的时候,不得不应对一个一直存在的问题——工具提示。


「如果我将鼠标悬停在工具栏链接上,并等待一秒钟,将会出现一个黄色小框,其中包含链接的描述信息。现在,如果我使用command-tab将Mozilla切换至后台,那么这个黄色小框将依然停留在前台。唯一摆脱它的方法就是再次将Mozilla切换到前台,并将鼠标移开工具栏链接。」

这是Price在6月2日的描述。

此外,还存在一些与这个问题相关的其他错误,但Price确定了一个可以重复的错误情景。这个问题在过去几周、几个月、几年,甚至接近二十年的时间里,都被许多其他人所证实。

BUG难以修复


多年来,人们一直在检查该线程或者将其他错误标记为与该问题重复项。

有时,这个问题似乎已经得到了修复,但程序员和评论者却发现它在不同版本中略有不同,或者之前的修复似乎是偶然的。

肇庆管道疏通 清理化粪池 河道清淤 疏通厕所、厨房、马桶、地漏下水道等。给你方便,让你舒心。请联系我

刘付先生13717208826


有时,这个问题似乎也会在不同操作系统如Windows或Linux中出现。

也有人不希望这个bug解决。在该问题的21周年之际,丹尼斯(denis)评论道:「我有点倾向于让它永远存在,感觉就像是过去的一个遗迹。」

现在这个古老的问题已经不复存在,因为Bug 148624的修复已在九月初推送,这个修复已经包含在新的构建版本中。

笔者特意尝试在一台尚未更新至118.0.1版本的Mac上的Firefox浏览器中重新复制工具提示问题,但却未能再次重现它。

这次修复本身非常小巧,主要是添加了对文档是否具有焦点的检查,以确保工具提示的显示。

华人小伙修复BUG


修复这个长达二十多年bug的是华人Yifan Zhu。

Zhu出生于1999年,而三年前人们刚发现这个bug。

当Zhu开始研究这个问题时,他刚刚完成了斯坦福大学的本科和硕士学位。此时,他正在攻读电气工程博士学位,并受到本杰明·范·罗伊(Benjamin Van Roy)教授的指导。

个人主页:https://fanzhuyifan.github.io/

为Firefox的Tooltip Listener编写补丁的Yifan Zhu写信给Ars表示,他们首先在Linux上的Thunderbird中遇到了这个错误,屏幕上漂浮着看似随机的文本片段。

在虚拟桌面之间频繁切换导致主题行漂浮在屏幕上,这非常烦人。Zhu学会了切换回Firefox或Thunderbird,并在切换回来之前移动光标。

Yifan Zhu给Ars的信中说:他们首次遇到了这个问题是在运行Linux上的Thunderbird时,当在虚拟桌面之间频繁切换时,屏幕上会出现一些看似随机的文本片段,这真的很让人恼火。

Zhu发现,要解决这个问题,就必须切换回Firefox或Thunderbird应用,然后在再次返回之前移动鼠标光标。

因此,Zhu对这个问题越来越感兴趣,并着手进行研究,试图提交错误报告。

然而,他开始感到担忧,因为这个bug已经存在了20多年,但却一直没有得到修复。因为这只是一个小小的外观问题,不会导致程序崩溃,所以很可能没有人会花时间修复它。

Zhu在信中写道:除非我亲自来解决。

Zhu很有动力并且知道如何编程,但是他在像火狐浏览器这样复杂的项目中零经验,并且以前从未为开源项目做出过贡献。

然而这些困难并没有难到他,在他博士课程开始前的那个夏天,他写道:

「那么,为什么不呢?」

最终,Zhu提交了一个更新,使工具提示在Firefox失去焦点时显示,而不是在鼠标离开应用程序时。

网友赞不绝口

不久之后,Zhu收到了Emilio Cobos Álvarez的来信,Emilio改进了Zhu的方法,并协助将这个提交添加到代码库中。

虽然这个修复引入了一些新问题,但它也成功地解决了这个长期存在的错误。Cobos Álvarez称赞道:「他对Firefox的第一个贡献令人印象深刻!」


在社交媒体上,Mastodon对Zhu的贡献进行了热烈庆祝,并感到十分地高兴。

他感叹道,Bugzilla本身(bug报告工具)的存在时间甚至比bug还要长(截至8月已持续25年)。

有人赞叹了Zhu的英雄之旅:

不是任何人都能做出伟大的承诺,但伟大的承诺可以来自任何地方。

有些人甚至毫不犹豫地表示他们热爱这个故事,并随之而来的是大量的点赞和赞美。

尽管有句话说得好,在你解决一个bug时,可能会引发更多bug的出现。然而,网友们对这位华人小伙的工作给予了非常高的赞誉。

还有人感叹这就是开源的魅力,当你解决一个问题时候,所有人都能共享你的贡献,这是非常有意义的。

参考资料:

https://arstechnica.com/gadgets/2023/10/22-year-old-firefox-tooltip-bug-fixed-in-a-few-lines-offering-hope-to-us-all/

https://fanzhuyifan.github.io/

注:本文内容转自网络,如有侵权请微信13824384292联系删除!谢谢!


往期推荐  

 

我亲身体验了一把免费同城约炮APP

肇庆管道疏通电话13717208826刘付先生 给你方便,让你舒心

占榜控评 关注投票打榜删贴,无所不能!一波网络水军被打掉

台积电:已获准于南京持续营运

687亿 微软正式收购动视暴雪

谷歌苹果将被韩国处罚680亿 因强制使用自家支付

感谢您抽出  · 来阅读此文

更多精彩请点击【阅读原文】哦

↓↓↓

继续滑动看下一个

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存