From 50ed891da2c7a66f1139fcaf250a478d59da634c Mon Sep 17 00:00:00 2001
From: Paul Cadach <paul@odt.east.telecom.kz>
Date: Fri, 22 Sep 2006 19:54:20 +0000
Subject: [PATCH] Fix our capability's factory

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@43495 65c4cc65-6c06-0410-ace0-fbb531ad65f3
---
 channels/h323/caps_h323.cxx | 1 +
 channels/h323/compat_h323.h | 4 +++-
 2 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/channels/h323/caps_h323.cxx b/channels/h323/caps_h323.cxx
index 2cbb743dd4..e1a643d203 100644
--- a/channels/h323/caps_h323.cxx
+++ b/channels/h323/caps_h323.cxx
@@ -1,6 +1,7 @@
 #include <ptlib.h>
 #include <h323.h>
 #include <h245.h>
+#include "ast_h323.h"
 #include "caps_h323.h"
 
 #define DEFINE_G711_CAPABILITY(cls, code, capName) \
diff --git a/channels/h323/compat_h323.h b/channels/h323/compat_h323.h
index 2ea640c4a9..63da8ac8cc 100644
--- a/channels/h323/compat_h323.h
+++ b/channels/h323/compat_h323.h
@@ -52,7 +52,7 @@ template <class _Abstract_T, typename _Key_T = PString>
 class MyPFactory: public PFactory<_Abstract_T, _Key_T>
 {
 public:
-	template <class _Contrete_T> class Worker: public PFactory<_Abstract_T, _Key_T>::WorkerBase
+	template <class _Concrete_T> class Worker: public PFactory<_Abstract_T, _Key_T>::WorkerBase
 	{
 	public:
 		Worker(const _Key_T &_key, bool singleton = false)
@@ -64,6 +64,8 @@ public:
 		{
 			PFactory<_Abstract_T, _Key_T>::Unregister(key);
 		}
+	protected:
+		virtual _Abstract_T *Create(const _Key_T &) const { return new _Concrete_T; }
 
 	private:
 		PString key;
-- 
GitLab