diff --git a/main/channel.c b/main/channel.c
index 83b6eea524d368fec5972bf15a141ceddcfd55d2..77a7908025cf0c52e9acfa6b17799f0fe5052954 100644
--- a/main/channel.c
+++ b/main/channel.c
@@ -429,12 +429,12 @@ int ast_channel_trace_enable(struct ast_channel *chan)
 	struct ast_datastore *store = ast_channel_datastore_find(chan, &ast_chan_trace_datastore_info, NULL);
 	struct ast_chan_trace_data *traced;
 	if (!store) {
-		store = ast_channel_datastore_alloc(&ast_chan_trace_datastore_info, "ChanTrace");
+		store = ast_datastore_alloc(&ast_chan_trace_datastore_info, "ChanTrace");
 		if (!store) 
 			return -1;
 		traced = ast_calloc(1, sizeof(*traced));
 		if (!traced) {
-			ast_channel_datastore_free(store);
+			ast_datastore_free(store);
 			return -1;
 		}	
 		store->data = traced;