aboutsummaryrefslogtreecommitdiffstats
path: root/doc
diff options
context:
space:
mode:
authorrussell <russell@f38db490-d61c-443f-a65b-d21fe96a405b>2008-03-28 22:50:46 +0000
committerrussell <russell@f38db490-d61c-443f-a65b-d21fe96a405b>2008-03-28 22:50:46 +0000
commitac86bfbc5585889c7f4965fec717e96a9c7a2845 (patch)
tree27d037081f39ba34ef502014db779c90433e7d6c /doc
parentbb6aa422ad02b4908c4eda336288911e1de6b4aa (diff)
Make some notes about common usage of pbx_builtin_getvar_helper() that is not
thread-safe. git-svn-id: http://svn.digium.com/svn/asterisk/trunk@111909 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'doc')
-rw-r--r--doc/janitor-projects.txt12
1 files changed, 12 insertions, 0 deletions
diff --git a/doc/janitor-projects.txt b/doc/janitor-projects.txt
index 9d89ef18c..b111204f0 100644
--- a/doc/janitor-projects.txt
+++ b/doc/janitor-projects.txt
@@ -1,3 +1,15 @@
+ -- There a bunch of places where the result of pbx_builtin_getvar_helper()
+ gets stored and used. This is not threadsafe. This code should be replaced
+ with the following thread-safe version:
+
+ const char *var;
+
+ ast_channel_lock(chan);
+ if ((var = pbx_builtin_getvar_helper(chan, "MYVAR"))) {
+ var = ast_strdupa(var);
+ }
+ ast_channel_unlock(chan);
+
-- Convert all existing uses of astobj.h to astobj2.h
-- (chan_sip already in progress in a branch)