struct imlog *imlist = NULL;
+
+
+
+/*
+ * FIXME: OMG this module is realy horrible to the rest of the system when accessing contexts.
+ * It pays no regard at all to how long it may have the context list locked for.
+ * It carries out IO whilst the context list is locked.
+ * I'd recomend disabling this module altogether for the moment.
+ */
+
/*
* This function handles the logging of instant messages to disk.
*/
cprintf("Message ");
cprintf("from %s:\n", ptr->sender);
if (ptr->text != NULL)
- memfmout(ptr->text, 0, "\n");
+ memfmout(ptr->text, "\n");
holdptr = ptr->next;
if (ptr->text != NULL) free(ptr->text);
);
if (ptr->text != NULL) {
- memfmout(ptr->text, 0, "\n");
+ memfmout(ptr->text, "\n");
if (ptr->text[strlen(ptr->text)-1] != '\n') cprintf("\n");
free(ptr->text);
}
/* If the target context is a session which can handle asynchronous
* messages, go ahead and set the flag for that.
*/
- if (ccptr->is_async) {
- ccptr->async_waiting = 1;
- if (ccptr->state == CON_IDLE) {
- ccptr->state = CON_READY;
- }
- }
+ set_async_waiting(ccptr);
}