3318 static PyObject *
3319 register_application(PyObject *self, PyObject *args, PyObject *keywds)
3320 {
3321 arm_error_t status;
3322 arm_id_t app_id;
3323 const char *app_name;
3324 ArmBuffer *buffer = NULL;
3325 arm_buffer4_t *buffer_ptr = NULL;
3326
3327 /*
3328 * Supported calling signatures:
3329 * register_application ("Name")
3330 * register_application ("Name",(buffers...))
3331 */
3332 static char *kwlist[] = {"app_name", "buffer", NULL};
3333
3334 if (!PyArg_ParseTupleAndKeywords(args, keywds, "s|O:register_application", kwlist, &app_name, &buffer))
when PyArg_ParseTupleAndKeywords() succeeds
taking False path
3335 return NULL;
3336 if (buffer && ArmBuffer_Object_Check(buffer))
taking True path
when taking False path
when considering value == (int)0 from arm4module.c:3336
taking False path
3337 {
3338 prepare (buffer);
3339 buffer_ptr = &(buffer->arm_buffer);
3340 }
3341
3342 status = arm_register_application(
3343 app_name, /* application name */
3344 NULL, /* input app id */
3345 0, /* flags */
3346 buffer_ptr, /* buffer4 */
3347 &app_id); /* output app id */
3348 if (GETSTATE0->enableExceptions && (status != ARM_SUCCESS))
when considering range: -0x80000000 <= value <= -1
when considering range: -0x80000000 <= value <= -1
taking True path
3349 {
3350 set_arm_error (status, "arm_register_application");
3351 return NULL;
3352 }
3353
3354 /* Return the application ID */
3355 PyObject *id_ptr = (PyObject *) newArmID (&app_id);
3356 return id_ptr;
3357 }
returning (PyObject*)NULL without setting an exception
found 9 similar trace(s) to this