view libgaim/dbus-useful.c @ 14951:8f27e3e5d2a2

[gaim-migrate @ 17723] This fixes by console Gaim compile errors: gntwm.c: In function 'reverse_char': gntwm.c:574: error: implicit declaration of function 'mvwin_wch' gntwm.c:578: error: implicit declaration of function 'mvwadd_wch' What was happening was, gntwm.h #includes <panel.h> before <ncurses.h> gets #included. And on my system /usr/ncursesw/panel.h #includes <ncurses/curses.h>, which doesn't have mvwin_wch or wvmadd_wch. So basically ncurses.h needs to be the first ncurses include. Otherwise we might get the wrong ncurses.h committer: Tailor Script <tailor@pidgin.im>
author Mark Doliner <mark@kingant.net>
date Fri, 10 Nov 2006 07:01:13 +0000
parents 60b1bc8dbf37
children
line wrap: on
line source

#include <string.h>
#include <glib.h>

#include "dbus-useful.h"
#include "conversation.h"
#include "util.h"


GaimAccount *
gaim_accounts_find_ext(const char *name, const char *protocol_id,
		       gboolean (*account_test)(const GaimAccount *account))
{
	GaimAccount *result = NULL;
	GList *l;
	char *who;

	if (name)
		who = g_strdup(gaim_normalize(NULL, name));
	else
		who = NULL;

	for (l = gaim_accounts_get_all(); l != NULL; l = l->next) {
		GaimAccount *account = (GaimAccount *)l->data;

		if (who && strcmp(gaim_normalize(NULL, gaim_account_get_username(account)), who))
			continue;

		if (protocol_id && strcmp(account->protocol_id, protocol_id))
			continue;

		if (account_test && !account_test(account))
			continue;

		result = account;
		break;
	}

	g_free(who);

	return result;
}

GaimAccount *gaim_accounts_find_any(const char *name, const char *protocol)
{
	return gaim_accounts_find_ext(name, protocol, NULL);
}

GaimAccount *gaim_accounts_find_connected(const char *name, const char *protocol)
{
	return gaim_accounts_find_ext(name, protocol, gaim_account_is_connected);
}