rem: vs = s->first_vs; while (vs) { nvs = vs->next;
add: cnt = ptr_vector_size(&s->vs); for (i = 0; i < cnt; i++) { vs = ptr_vector_get(&s->vs, i); if (!vs) continue;
context: void rls_free(rl_subscription_t *s){	virtual_subscription_t *vs, *nvs;		if (!s) return;		sm_release_subscription_nolock(rls_manager, &s->subscription);	vs = s->first_vs;	while (vs) {		nvs = vs->next;		vs_free(vs);		vs = nvs;	}	shm_free(s);}