Browse Source

Bugfix: SSM: Clean _ssm_cur_job_work as needed to avoid memory leaks

Luke Dashjr 12 years ago
parent
commit
6f7af4492d
1 changed files with 3 additions and 0 deletions
  1. 3 0
      driver-stratum.c

+ 3 - 0
driver-stratum.c

@@ -152,6 +152,9 @@ bool stratumsrv_update_notify_str(struct pool * const pool, bool clean)
 	
 	
 	ssj->swork.data_lock_p = NULL;
 	ssj->swork.data_lock_p = NULL;
 	HASH_ADD_KEYPTR(hh, _ssm_jobs, ssj->my_job_id, strlen(ssj->my_job_id), ssj);
 	HASH_ADD_KEYPTR(hh, _ssm_jobs, ssj->my_job_id, strlen(ssj->my_job_id), ssj);
+	
+	if (likely(_ssm_cur_job_work.pool))
+		clean_work(&_ssm_cur_job_work);
 	_ssm_gen_dummy_work(&_ssm_cur_job_work, ssj, NULL, 0);
 	_ssm_gen_dummy_work(&_ssm_cur_job_work, ssj, NULL, 0);
 	
 	
 	_ssm_notify_sz = p - buf;
 	_ssm_notify_sz = p - buf;