mirror of
				https://github.com/asterisk/asterisk.git
				synced 2025-10-31 02:37:10 +00:00 
			
		
		
		
	Address JSON thread safety issues.
In tracking down some unit tests failures, I ended up reading the fine print[1] regarding Jansson's thread safety. In short: 1. Ref-counting is non-atomic. 2. json_dumps() and friends are not thread safe. This patch adds locking where necessary to our ast_json_* wrapper API, with documentation in json.h describing the thread safety limitations of the API. [1]: http://www.digip.org/jansson/doc/2.4/portability.html#thread-safety Review: https://reviewboard.asterisk.org/r/2716/ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@396119 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
		| @@ -142,7 +142,7 @@ struct ast_json *ast_ari_websocket_session_read( | ||||
| int ast_ari_websocket_session_write(struct ast_ari_websocket_session *session, | ||||
| 	struct ast_json *message) | ||||
| { | ||||
| 	RAII_VAR(char *, str, NULL, ast_free); | ||||
| 	RAII_VAR(char *, str, NULL, ast_json_free); | ||||
|  | ||||
| #ifdef AST_DEVMODE | ||||
| 	if (!session->validator(message)) { | ||||
|   | ||||
		Reference in New Issue
	
	Block a user