From ca845150c9427b9a14f092e07257df8f4bfc1f5f Mon Sep 17 00:00:00 2001
From: Tiago Freitas Pereira <tiagofrepereira@gmail.com>
Date: Thu, 5 Mar 2015 15:40:13 +0100
Subject: [PATCH] Fixed a bug in the constructor

---
 bob/learn/em/MAP_gmm_trainer.cpp | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/bob/learn/em/MAP_gmm_trainer.cpp b/bob/learn/em/MAP_gmm_trainer.cpp
index cecfea9..9868577 100644
--- a/bob/learn/em/MAP_gmm_trainer.cpp
+++ b/bob/learn/em/MAP_gmm_trainer.cpp
@@ -130,8 +130,18 @@ static int PyBobLearnEMMAPGMMTrainer_init(PyBobLearnEMMAPGMMTrainerObject* self,
     return -1;
   }
 
+  //Reading the input argument
+  PyObject* arg = 0;
+  if (PyTuple_Size(args))
+    arg = PyTuple_GET_ITEM(args, 0);
+  else {
+    PyObject* tmp = PyDict_Values(kwargs);
+    auto tmp_ = make_safe(tmp);
+    arg = PyList_GET_ITEM(tmp, 0);
+  }
+
   // If the constructor input is GMMBaseTrainer object
-  if(PyBobLearnEMMAPGMMTrainer_Check(args))
+  if(PyBobLearnEMMAPGMMTrainer_Check(arg))
     return PyBobLearnEMMAPGMMTrainer_init_copy(self, args, kwargs);
   else{
     return PyBobLearnEMMAPGMMTrainer_init_base_trainer(self, args, kwargs);
-- 
GitLab