view src/gaim-client.c @ 11243:a511b77a368b

[gaim-migrate @ 13408] sf patch #1246384, from shiyee "This patch globally defines spacings and boreders according to the Gnome Human Interfaces Guidelines, and uses those defines where appropriate. No visual changes are made, but the the intention is that the defines should help promote uniformness." committer: Tailor Script <tailor@pidgin.im>
author Mark Doliner <mark@kingant.net>
date Fri, 12 Aug 2005 23:53:28 +0000
parents 66f872f30e40
children 421a8523ad04
line wrap: on
line source

#define DBUS_API_SUBJECT_TO_CHANGE

#include <dbus/dbus-glib.h>
#include <stdio.h>
#include <stdlib.h>

#include "dbus-gaim.h"
#include "gaim-client-bindings.h"

static DBusGConnection *bus;
static DBusGProxy *gaim_proxy;

#include "gaim-client-bindings.c"

static void lose (const char *fmt, ...) G_GNUC_NORETURN G_GNUC_PRINTF (1, 2);
static void lose_gerror (const char *prefix, GError *error) G_GNUC_NORETURN;

static void
lose (const char *str, ...)
{
  va_list args;

  va_start (args, str);

  vfprintf (stderr, str, args);
  fputc ('\n', stderr);

  va_end (args);

  exit (1);
}

static void
lose_gerror (const char *prefix, GError *error) 
{
  lose ("%s: %s", prefix, error->message);
}

void gaim_init(void) {
  GError *error = NULL;

  g_type_init ();

  bus = dbus_g_bus_get (DBUS_BUS_SESSION, &error);
  if (!bus) 
    lose_gerror ("Couldn't connect to session bus", error);

  gaim_proxy = dbus_g_proxy_new_for_name (bus,
				    DBUS_SERVICE_GAIM,
				    DBUS_PATH_GAIM,         
				    DBUS_INTERFACE_GAIM);

  if (!gaim_proxy)
    lose_gerror ("Couldn't connect to the Gaim Service", error);
}