openfetion的代码质量太差了

我想把openfetion移植到n900上去。总的来说很顺利,不用改任何代码,重新编译一次就可以在我的手机上跑了。只是显示效果很不好。于是我就打算把一部分gtk的控件改成hildon的。
刚开始的时候主要是消灭警告。因为这位作者写代码写的相当的随意。总是忘了写return,或者是函数声明需要返回值,但是return语句没有返回值。
接着就是层出不穷的buffer overflow.很多这样的代码

char nametext[512]
bzero(nametext , sizeof(nametext));
sprintf(nametext , "与[%s]聊天中" , name);

作者习惯的就是先bzero.然后sprintf。为什么不把bzero换成memset呢?移植性好啊。另外就是,为什么使用buffer之前必须要bzero呢?这样就安全了?
还有,中文字符串直接写在代码中,而不是放在资源文件里。

此博客中的热门博文

少写代码,多读别人写的代码

在windows下使用llvm+clang

tensorflow distributed runtime初窥