mirror of
				https://github.com/asterisk/asterisk.git
				synced 2025-10-31 02:37:10 +00:00 
			
		
		
		
	Merged revisions 45031 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4 ................ r45031 | file | 2006-10-13 11:53:22 -0400 (Fri, 13 Oct 2006) | 10 lines Merged revisions 45030 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.2 ........ r45030 | file | 2006-10-13 11:49:53 -0400 (Fri, 13 Oct 2006) | 2 lines Pass the right value to usleep for sleeping, and always add the background refresh item back into the scheduler if enabled since it is deleted during reload. (issue #8142 reported by p_lindheimer) ........ ................ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@45032 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
		| @@ -212,7 +212,7 @@ static void *do_refresh(void *data) | ||||
| { | ||||
| 	for (;;) { | ||||
| 		pthread_testcancel(); | ||||
| 		usleep(ast_sched_wait(sched)); | ||||
| 		usleep((ast_sched_wait(sched)*1000)); | ||||
| 		pthread_testcancel(); | ||||
| 		ast_sched_runq(sched); | ||||
| 	} | ||||
| @@ -389,16 +389,16 @@ static int do_reload(int loading) | ||||
|  | ||||
| 	/* if this reload enabled the manager, create the background thread | ||||
| 	   if it does not exist */ | ||||
| 	if (enabled && !was_enabled && (refresh_thread == AST_PTHREADT_NULL)) { | ||||
| 		if (ast_pthread_create_background(&refresh_thread, NULL, do_refresh, NULL) < 0) { | ||||
| 			ast_log(LOG_ERROR, "Unable to start refresh thread.\n"); | ||||
| 		} | ||||
| 		else { | ||||
| 	if (enabled) { | ||||
| 		if (!was_enabled && (refresh_thread == AST_PTHREADT_NULL)) { | ||||
| 			if (ast_pthread_create_background(&refresh_thread, NULL, do_refresh, NULL) < 0) { | ||||
| 				ast_log(LOG_ERROR, "Unable to start refresh thread.\n"); | ||||
| 			} | ||||
| 			ast_cli_register(&cli_refresh); | ||||
| 			/* make a background refresh happen right away */ | ||||
| 			refresh_sched = ast_sched_add_variable(sched, 100, refresh_list, &master_refresh_info, 1); | ||||
| 			res = 0; | ||||
| 		} | ||||
| 		/* make a background refresh happen right away */ | ||||
| 		refresh_sched = ast_sched_add_variable(sched, 100, refresh_list, &master_refresh_info, 1); | ||||
| 		res = 0; | ||||
| 	} | ||||
| 	/* if this reload disabled the manager and there is a background thread, | ||||
| 	   kill it */ | ||||
|   | ||||
		Reference in New Issue
	
	Block a user