1
1
mirror of https://github.com/profanity-im/profanity.git synced 2025-01-03 14:57:42 -05:00
profanity/contact.c
2012-05-04 01:00:01 +01:00

62 lines
1.1 KiB
C

#include <stdlib.h>
#include <string.h>
#include "contact.h"
struct p_contact_t {
char *name;
char *show;
char *status;
};
PContact p_contact_new(const char * const name, const char * const show,
const char * const status)
{
PContact contact = malloc(sizeof(struct p_contact_t));
contact->name = strdup(name);
if (show == NULL || (strcmp(show, "") == 0))
contact->show = strdup("online");
else
contact->show = strdup(show);
if (status != NULL)
contact->status = strdup(status);
else
contact->status = NULL;
return contact;
}
void p_contact_free(PContact contact)
{
free(contact->name);
if (contact->show != NULL) {
free(contact->show);
contact->show = NULL;
}
if (contact->status != NULL) {
free(contact->status);
contact->status = NULL;
}
free(contact);
contact = NULL;
}
char * p_contact_name(PContact contact)
{
return contact->name;
}
char * p_contact_show(PContact contact)
{
return contact->show;
}
char * p_contact_status(PContact contact)
{
return contact->status;
}