[#18961] Use const char * where appropriate (2.5)
[blender-staging.git] / source / gameengine / VideoTexture / BlendType.h
index ac3ed8812a6d1e8b62ca61a8e5f0d6b759294367..2b273253af60606d5858a3f71fa2b37c20cd4309 100644 (file)
@@ -25,11 +25,12 @@ http://www.gnu.org/copyleft/lesser.txt.
 
 
 /// class allows check type of blender python object and access its contained object
+/// MUST ONLY BE USED FOR KX classes that are descendent of PyObjectPlus
 template <class PyObj> class BlendType
 {
 public:
        /// constructor
-       BlendType (char * name) : m_name(name) {}
+       BlendType (const char * name) : m_name(name) {}
 
        /// check blender type and return pointer to contained object or NULL (if type is not valid)
        PyObj * checkType (PyObject * obj)
@@ -48,8 +49,9 @@ public:
                // if pointer to type is set and don't match to type of provided object, return NULL
                else if (obj->ob_type != m_objType) 
                        return NULL;
-               // return pointer to object
-               return (PyObj*)obj;
+               // return pointer to object, this class can only be used for KX object =>
+               // the Py object is actually a proxy
+               return (PyObj*)BGE_PROXY_REF(obj);
        }
 
        /// parse arguments to get object
@@ -66,7 +68,7 @@ public:
 
 protected:
        /// name of Python type
-       char * m_name;
+       const char * m_name;
        /// pointer to Python type
        PyTypeObject * m_objType;
 };