阅读 143

谷歌的代码少打了一个 &:Chrome OS 设备成废砖

谷歌的代码少打了一个 &:Chrome OS 设备成废砖

 谷歌搞砸了验证密码的条件语句。随后部署了修复程序。

ChromeOS 的编程错误,这个错误发生在我们当中最优秀的程序员身上

  谷歌声称,它已修复了 Chrome OS 中害得用户无法正常使用设备的一个严重 bug。谷歌的公告显示,本周短暂亮相的 Chrome OS 版本 91.0.4472.165 使用户无法登录到他们的设备,设备实际上沦为废砖。

  Chrome OS 在重新启动后自动下载更新并切换到新版本,因此重启设备的用户会突然被锁在外面,无法正常使用设备。面对这个糟糕的更新版,可靠的建议是不要重启。

  公告称,现已发布新版本 91.0.4472.167 以解决该问题,但可能需要“几天”才会到所有人的手里。受糟糕更新版影响的用户可以等待设备再次更新,或者“强力清洗”设备(即擦除所有本地数据),以便能够正常登录。Chrome OS 主要基于云,所以如果您未执行高级的操作(比如运行 Linux 应用程序),这个解决方法带来的不便比在其他操作系统上要少。不过,一些用户抱怨数据丢失。

  ChromeOS 是开源的,所以我们可以得到更多关于修复的细节,这归功于 Android Police 网站搜索用户 elitist_ferret 的 Reddit 评论帖子。问题显然归结为拼错了一个字符。谷歌搞砸了 Chrome OS 的 Cryptohome VaultKeyset 中的一个条件语句,这是操作系统中保存用户加密密钥的部分。这一行应该是“if (key_data_.has_value () && !key_data_->label () .empty ()) {”,但糟糕的更新版使用了单单一个&,因而搞砸了条件语句的后半部分,而不是使用&&(“AND”运算符的 C++ 版本)。

  听起来是由于这个错误,Chrome OS 从未对照所存储的密钥正确检查用户密码,因此即使是正确的密码也会返回一条消息:“抱歉,无法验证您的密码。”

  Chrome OS 的全部卖点在于它很可靠且牢不可破,像这样的拙劣更新版无疑损害了这款操作系统的形象。目前尚不清楚像这样一个如此明显的严重问题是如何进入稳定版本发布渠道的。Chrome OS 共有三个测试渠道:“金丝雀”渠道、“开发”渠道和“beta 测试”渠道,代码变更应经过这三个渠道的审查,版本发布之间进行数周的测试。不知何故,这个 bug 成了这整个过程的漏网之鱼。这个问题也似乎是单元测试或自动化测试本该发现的问题——无法登录实在太过明显。

  这个错误标志着本月推出的第二个有缺陷的 Chrome OS 更新版。7 月初的更新版使一些型号的 CPU 使用率飙升,因而运行速度最终如蜗牛爬行。


来自: mp.weixin.qq.com

服务器评测 http://www.cncsto.com/ 

服务器测评 http://www.cncsto.com/ 

站长资源 https://www.cscnn.com/ 

 


文章分类
后端
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐