前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >谷歌程序员少输一个“&”,差点让全球Chrome笔记本变砖

谷歌程序员少输一个“&”,差点让全球Chrome笔记本变砖

作者头像
量子位
发布2023-03-10 12:50:13
2700
发布2023-03-10 12:50:13
举报
文章被收录于专栏:量子位量子位
晓查 发自 凹非寺 量子位 报道 | 公众号 QbitAI

代码只是少了一个字符,后果竟如此可怕。

上周,一些使用Chrome OS笔记本的用户发现,一旦重启笔记本,就将陷入了无法登录的死循环。

明明输入的开机密码是对的,但就是一直提示“无法验证您的密码”,进不了系统。更严重的情况是笔记本将反复重启。

一台好好的笔记本怎么突然就“变砖”了呢?

原来都是Chrome OS一次悄悄自动更新惹的祸。

由于ChromeOS是开源的,一位Reddit网友仔细检查系统更新的代码,发现其中的低级错误令人哭笑不得。

少一个“&”惹的祸

这位网友仔细对比两份代码后发现,这个“惊天大bug”背后竟然只是谷歌程序员少输了一个字符“&”。

原本正确的代码应该是:

代码语言:javascript
复制
if (keydata.hasvalue() && !key_data->label().empty())

而这位程序员却把这句if语句写成了

代码语言:javascript
复制
if (keydata.hasvalue() & !key_data->label().empty())

“&&”和“&”两个运算符虽然看起来只差一点点,但二者作用真是天壤之别。

前者是对两个变量求“与”(AND),而后者是对这两个值按位求与

这样就导致了条件语句两边变量每一位都会被求与,即使has_value()为真,返回结果也不一定就是真。

而这串代码是Chrome OS中保存用户加密密钥的部分,由于这个错误,系统无法验证将存储的密钥与输入密码进行比较,就出现了尴尬的一幕。

接到用户的反馈后,谷歌迅速发布了91.0.4472.167更新来解决该问题。

如果你的Chrome笔记本只是无法进入当前账户,那么可以先尝试安装最新更新,而不会丢失文件。

如果你的笔记本无限重启,就只能回复出厂设置然后再接收更新了,数据也会全部丢失。

没测试就发布,着实离谱

堂堂互联网大厂竟犯如此低级错误,这令不少Chromebook用户感到愤怒:

谷歌的测试团队这两个月是休假了吗?

谷歌没有代码测试的吗?为什么会在没有测试的情况下把代码发布到生产环境。

Chrome OS过去一直“小错不断”,所以有些用户已经学得精明了:

我已经学会了等更新发布一段时间后再升级。

真是没想到,代码少一个字符竟有这么大的破坏力。好在Chrome OS系统更新是分批进行,波及面也不算太广。

看到这个谷歌程序员的bug,你有没有想起自己犯过哪些低级错误呢?(比如把等于号“==”写成了赋值号“=”)

参考链接: [1]https://9to5google.com/2021/07/21/psa-chrome-os-update-locking-out-accounts/ [2]https://arstechnica.com/gadgets/2021/07/google-pushed-a-one-character-typo-to-production-bricking-chrome-os-devices/?comments=1 [3]https://www.reddit.com/r/chromeos/comments/onlcus/update_it_seems_google_has_pulled_the_165_stable/h5vev76/

本文系网易新闻•网易号特色内容激励计划签约账号【量子位】原创内容,未经账号授权,禁止随意转载。

免费报名 | 快速入门NLP、让你的文字会说话!

7.28晚8点,英伟达专家将在线讲解“语音合成技术”的工作流程与原理、深度学习模型在语音合成中的应用,并代码实战演示如何快速实现自然语言生成。扫码-关注,根据提示即可报名~

点这里👇关注我,记得标星哦~

一键三连「分享」、「点赞」和「在看」

科技前沿进展日日相见~

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2021-07-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 量子位 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 少一个“&”惹的祸
  • 没测试就发布,着实离谱
相关产品与服务
区块链
云链聚未来,协同无边界。腾讯云区块链作为中国领先的区块链服务平台和技术提供商,致力于构建技术、数据、价值、产业互联互通的区块链基础设施,引领区块链底层技术及行业应用创新,助力传统产业转型升级,推动实体经济与数字经济深度融合。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档