Quellcode durchsuchen

modules/corex: only free path_vector from pkg if it is still in pkg... not shm cloned
- related to earlier commit 4ab0f53ff247f411dde7b88d5b7d82fc7e17baa9

Jason Penton vor 11 Jahren
Ursprung
Commit
f15de29015
1 geänderte Dateien mit 2 neuen und 1 gelöschten Zeilen
  1. 2 1
      modules/corex/corex_lib.c

+ 2 - 1
modules/corex/corex_lib.c

@@ -84,7 +84,8 @@ int corex_append_branch(sip_msg_t *msg, gparam_t *pu, gparam_t *pq)
 		msg->dst_uri.s = 0;
 		msg->dst_uri.s = 0;
 		msg->dst_uri.len = 0;
 		msg->dst_uri.len = 0;
 		if(msg->path_vec.s!=0)
 		if(msg->path_vec.s!=0)
-			pkg_free(msg->path_vec.s);
+			if (likely(msg->path_vec.s >= msg->buf && (msg->path_vec.s < (msg->buf + msg->len))))
+				pkg_free(msg->path_vec.s);
 		msg->path_vec.s = 0;
 		msg->path_vec.s = 0;
 		msg->path_vec.len = 0;
 		msg->path_vec.len = 0;
 	}
 	}