问题描述
在阅读swoole源码的时候,发现hashmap的swHashMap_node_delete函数可能存在问题,uthash的add方法会判断是不是有UT_hash_table结构体,如果没有创建。 但是swoole是自己实现的swHashMap_node_add函数,没有这部分判断。
但是在swHashMap_node_delete函数中,如果表为空,直接把table给free了。这块可能导致root变成野指针,并且add新元素有几率被别的程序覆盖
相关代码
// 请把代码文本粘贴到下方(请勿用图片代替代码)