GNU Barcode 0.99 的一个 BUG 及解决办法

这两天将 barcode 库编译成 dll,测试时 调用 Barcode_Version 函数直接程序跑死。刚开始一直怀疑是我生成的 dll 有问题。后来用自带的 sample.c 测试却没问题。所以肯定是 Barcode_Version 函数出了问题。单步跟进去还真发现这个函数有个重大bug。下面是代码片段,大家一看就明白了。

    for (it = PACKAGE_VERSION; it; it++)
    ///                      ^ 这里应该是 *it ,it 不会变为0.
      {

没想到 GNU 的代码库还能出这种低级错误。。。

猜你喜欢

转载自blog.csdn.net/liyuanbhu/article/details/106306750