* than one desktop.]]]
* than one desktop.  Logged as bugzilla bug 319645.]]]
static PyObject *core_module_init (PyObject *self) {	CORBA_Environment ev;	Accessibility_Desktop d;	char *obj_id;	/* Don't double-initialize 	 */	if (core_initialized) {		PyErr_SetString (PyExc_RuntimeError, 				 "Core already initialized");		return NULL;	}	/* Initialize the pyevent code, adding the Python "Event" class.	 */	pyevent_init (core_module);	/* Make an empty event listeners hash table 	 */	listeners = g_hash_table_new (NULL, NULL);	/* Create the global event queue 	 */	queue = event_queue_new ();	/* Attempt to activate the registry and add it as the "registry"	 * attribute to the core module.	 */	CORBA_exception_init (&ev);	obj_id = "OAFIID:Accessibility_Registry:1.0";	registry = bonobo_activation_activate_from_id (obj_id, 0, NULL, &ev);	if (ev._major != CORBA_NO_EXCEPTION) {		CORBA_exception_free (&ev);		PyErr_SetString (PyExc_RuntimeError, 				 "Could not activate accessibility registry");		return NULL;	}		PyModule_AddObject (core_module, 			    "registry",			    pycorba_object_new (registry));        /* Get the desktop and add it as the "desktop attribute to the core 	 * module.  [[[TODO:  WDW - I think there may be the notion of more	 * than one desktop.]]]	 */	d = Accessibility_Registry_getDesktop (registry,					       0,					       &ev);	if (ev._major != CORBA_NO_EXCEPTION) {		CORBA_exception_free (&ev);		PyErr_SetString (PyExc_RuntimeError, 				 "Could not access the desktop");		return NULL;	}		PyModule_AddObject (core_module, 			    "desktop", 			    pycorba_object_new(d));	CORBA_exception_free (&ev);	core_initialized = TRUE;	return PyInt_FromLong (1);}