老弟兴奋的说:哥,我发现了 Linus Torvalds git 代码里的 bug
資深大佬 : 52coder 6
读大三的老弟最近喜欢上了 c/c++,看 c/c++的源码,他告诉我他发现了 Linus Torvalds git 仓库里的 bug (程序 bug + 内存泄露 + 段错误),然后我说你赶紧提 PR 呀,看了半天他说的其中一个 bug init-db.c 没发现问题,各种怀疑人生,一问才知道是第一版 git. 其中一个 bug
sha1_dir = getenv(DB_ENVIRONMENT); if (sha1_dir) { struct stat st; if (!stat(sha1_dir, &st) < 0 && S_ISDIR(st.st_mode)) return 0; fprintf(stderr, "DB_ENVIRONMENT set to bad directory %s: ", sha1_dir); }
stat 返回 0 或 -1,非零加!结果为 0,0 加!结果为 1,这里<0 条件永远不成立?各位老哥们,这里我没理解错吧,别误导了我弟,哈哈哈哈。
顺带求一份适合深入学习的 C++开源代码( C 的话老弟专心看 redis 了,时不时问我一些问题,我也跟着学习下 redis,到时候再被八股文,岂不美滋滋?)
大佬有話說 (17)