Retrieve value within uint32_t before casting it to MAPISTORE_DFLT_FOLDERS enum
authorJulien Kerihuel <j.kerihuel@openchange.org>
Mon, 31 Jan 2011 16:30:24 +0000 (16:30 +0000)
committerJulien Kerihuel <j.kerihuel@openchange.org>
Mon, 31 Jan 2011 16:30:24 +0000 (16:30 +0000)
pyopenchange/pymapistoredb.c

index 9343c2ed9d70d28583fed2b8a4ee2f9adfba5d02..d265871e938f71b476873f75413e66bc9576b633 100644 (file)
@@ -95,16 +95,18 @@ static PyObject *py_MAPIStoreDB_get_mapistore_uri(PyObject *module, PyObject *ar
        const char * const              kwnames[] = { "folder", "username", "namespace", NULL };
        enum MAPISTORE_ERROR            retval;
        enum MAPISTORE_DFLT_FOLDERS     dflt_folder;
+       uint32_t                        folder_int;
        const char                      *username;
        const char                      *ns;
        char                            *uri;
 
        if (!PyArg_ParseTupleAndKeywords(args, kwargs, "iss", 
                                         discard_const_p(char *, kwnames), 
-                                        &dflt_folder, &username, &ns)) {
+                                        &folder_int, &username, &ns)) {
                return NULL;
        }
 
+       dflt_folder = (enum MAPISTORE_DFLT_FOLDERS)folder_int;
        retval = mapistoredb_get_mapistore_uri(self->mdb_ctx, dflt_folder, ns, username, &uri);
        if (retval == MAPISTORE_SUCCESS && uri != NULL) {
                ret = PyString_FromString(uri);