Răsfoiți Sursa

core: safety check for freeing either pkg or shm values for var, when applicable

- just an improvement to avoid doing both operations by mistake
Daniel-Constantin Mierla 11 ani în urmă
părinte
comite
256b1e17e5
1 a modificat fișierele cu 3 adăugiri și 1 ștergeri
  1. 3 1
      pvapi.c

+ 3 - 1
pvapi.c

@@ -1473,8 +1473,10 @@ int pv_elem_free_all(pv_elem_p log)
 void pv_value_destroy(pv_value_t *val)
 {
 	if(val==0) return;
+
 	if(val->flags&PV_VAL_PKG) pkg_free(val->rs.s);
-	if(val->flags&PV_VAL_SHM) shm_free(val->rs.s);
+	else if(val->flags&PV_VAL_SHM) shm_free(val->rs.s);
+
 	memset(val, 0, sizeof(pv_value_t));
 }