free的时候ABORTING: LIBC: ARGUMENT IS INVALID HEAP

今天和一个韩国公司联调, 在c代码中爆出以下错误, 让人很郁闷 html

11-02 16:09:19.055: A/libc(7453): @@@ ABORTING: LIBC: ARGUMENT IS INVALID HEAP ADDRESS IN dlfree addr=0xb84b7d78 spa

11-02 16:09:19.055: A/libc(7453): Fatal signal 11 (SIGSEGV) at 0xdeadbaad (code=1), thread 7453 (aon.aremotecool)


最后搜索资料发现有人遇到了类似的错误, 这个错误主要是 越界读写 形成的 .net

例子: code

 char* format = (char*)malloc(16); //16的倍数  orm

 format[16] = "\0"; htm

free(format); blog

format最大的index是15 操做16是没问题的, 是释放 fromat的时候就开始崩溃了 内存

之后仍是注意一些 c语言字符串形成的问题 rem


参考 字符串

内存写越界致使破环堆结构引发的崩溃问题定位经验[如报错malloc(): memory corruption或free(): invalid next size] 

如何实现一个malloc

相关文章
相关标签/搜索