一個持續22年之久的Firefox bug終於被一位年輕的程式碼貢獻者修復了
在Mozilla Firefox 專案的整個歷史中,用戶偶爾會遇到臭名昭著的「持久工具提示」錯誤。由於一位比該錯誤本身僅大一年的程式設計師貢獻的程式碼,該問題現已永久解決。 Firefox bug 148624 是22 年前由Mac 上「Mozilla Suite」網路瀏覽器的使用者提交的。該用戶將滑鼠遊標放在網頁連結上後,遇到了奇怪的持續工具提示(一個帶有文字描述的黃色小框)。他說,在使用鍵盤快捷鍵將Mozilla 移至後台後,工具提示將保留在螢幕上,直到他再次將該軟體移至前台並將滑鼠遊標從工具列上移開。 幾年後,Mozilla Suite 變成了Mozilla Firefox,但持續的工具提示錯誤從未修復。直到一個月前,也就是朱一帆決定親自杜絕這種軟體滋擾事件。作為史丹佛大學電機工程系一年級博士生,Zhu 將自己描述為他使用的開源軟體(如Mozilla Firefox)的「偶爾」的小貢獻者。在開始分析工具提示錯誤之前,朱對像Firefox 這樣複雜的專案沒有任何經驗。這位博士生證實,他以前從未為開源軟體做出貢獻,但他能夠在Firefox 的程式碼庫中找到正確的線索,為工具提示錯誤準備潛在的解決方案。Zhu 選擇的方法包括一個新的計時器,用於顯示當滑鼠懸停在某些元素上時啟動的工具提示。當滑鼠遊標失去焦點時,計時器停止。Zhu 的程式碼修復由一位更有經驗的程式設計師(Cobos Álvarez) 進行了完善,最終被Mozilla 接受,作為即將發布的Firefox 穩定版本的一部分(119)。該補丁在Mozilla 的工具提示系統的其他地方引入了一些小的回歸,但它最終應該解決Firefox 用戶群所經歷過的最古老(如果不是最古老)和最煩人的錯誤之一。Álvarez評論說,考慮到瀏覽器設計用於運行的配置和作業系統的數量,工具提示系統是Firefox 程式碼中「相當棘手」的區域。因此,對於像Yifan Zhu 這樣的首次Firefox 貢獻者來說,找到一個優雅、可行的解決方案「相當令人印象深刻」。作為一個有著悠久而複雜歷史的開源項目,Firefox 因包含一些小錯誤而聞名,這些錯誤不太可能很快得到一些忙碌的Mozilla 開發人員的適當關注。一些錯誤和軟體問題最終在幾年後得到修復,而另一些錯誤和軟體問題則在程式碼中腐爛,而整個瀏覽器市場正在加速發展。