aboutsummaryrefslogtreecommitdiffstats
path: root/channels/sig_analog.c
diff options
context:
space:
mode:
authorrmudgett <rmudgett@f38db490-d61c-443f-a65b-d21fe96a405b>2009-09-08 23:37:57 +0000
committerrmudgett <rmudgett@f38db490-d61c-443f-a65b-d21fe96a405b>2009-09-08 23:37:57 +0000
commit7ca87fcab5a5e9b78b34afcbb8d36d7469a55d2f (patch)
tree42dc130bc7005d8507587595f03339692d2f0ca3 /channels/sig_analog.c
parent2c3011915a9bd083d08213f8fb773e81436226eb (diff)
Fix memory leak of sig_xxx private structures.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@217332 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels/sig_analog.c')
-rw-r--r--channels/sig_analog.c16
1 files changed, 14 insertions, 2 deletions
diff --git a/channels/sig_analog.c b/channels/sig_analog.c
index 2b4119fb7..398b5f170 100644
--- a/channels/sig_analog.c
+++ b/channels/sig_analog.c
@@ -3394,12 +3394,11 @@ int analog_handle_init_event(struct analog_pvt *i, int event)
}
-struct analog_pvt * analog_new(enum analog_sigtype signallingtype, struct analog_callback *c, void *private_data)
+struct analog_pvt *analog_new(enum analog_sigtype signallingtype, struct analog_callback *c, void *private_data)
{
struct analog_pvt *p;
p = ast_calloc(1, sizeof(*p));
-
if (!p) {
return p;
}
@@ -3418,6 +3417,19 @@ struct analog_pvt * analog_new(enum analog_sigtype signallingtype, struct analog
return p;
}
+/*!
+ * \brief Delete the analog private structure.
+ * \since 1.6.3
+ *
+ * \param doomed Analog private structure to delete.
+ *
+ * \return Nothing
+ */
+void analog_delete(struct analog_pvt *doomed)
+{
+ ast_free(doomed);
+}
+
int analog_config_complete(struct analog_pvt *p)
{
/* No call waiting on non FXS channels */