怪问题的解决
来源:互联网 发布:内网远程桌面软件 编辑:程序博客网 时间:2024/04/29 19:37
在参与openSSL项目的时候,发现一个怪异的情况:
用标准malloc,free有错,要使用OPENSSL_malloc, OPENSSL_free正常,可能openSSL提供了自己的堆管理,浪费了我一个半小时。
使用OPENSSL_malloc分配的空间不够,sprintf溢出此空间,但VC报告一个NULL访问异常(调试状态下运行又没有错误),不知是怎么来的。还是意外发现了这个bug,浪费4个小时左右。
原因:最有可能的情况是这样的,当时OPENSSL_malloc少申请了一个字节的空间,这导致在运行时,字符串的终止字符'/0'拷贝到下一指针中,'/0' 和 NULL是相同的,就产生了NULL访问异常。当在调试时,可能激活了部分纪录调试信息的结构,使'/0'写入到调试结构中,这时,错误又消失了。
- 怪问题的解决
- 关于interbase一个怪问题的解决
- 自己没有解决的怪问题
- 需要解决的问题
- ParsingError问题的解决
- 首先解决的问题
- PostNotCached问题的解决
- 昨天解决的问题
- 待解决的问题
- Decorator 解决的问题
- 一些问题的解决
- 解决不可思议的问题
- 解决的问题
- NonUniqueObjectException问题的解决
- HessianProtocolException问题的解决
- formid问题的解决
- 问题的解决
- 待解决的问题
- linux version
- 同步客户端套接字示例
- u-boot源码分析 --- 启动第二阶段003
- 从 ANSI 到 Unicode & Unicode 到 ANSI 用于 OLE 如何转换
- 教你一简单办法 用Java获得IP地址
- 怪问题的解决
- u-boot源码分析 --- 启动第二阶段004
- 《清水蓝天》续集悄然开拍,“大嘴”姜超再扮“钱二宝”
- sqlserver有效标识符的规则(部分)
- “大”是大嘴的“嘴”,“嘴”是大嘴的“大”
- 与sum类似的自编mul函数(求乘积)
- SQL取出数据的个人小技巧
- Cannot set header. Response already committed及response.sendRedirect报java.lang.IllegalStateException的一次解决
- FSO组件操作