view src/gaim-client.c @ 13834:378bba5011e7

[gaim-migrate @ 16283] SF Patch #1500688 from Brian Chu (roast) He already committed this to his soc-2006-file-loggers branch. Here's the patch description: In util.c, gaim_markup_html_to_xhtml() doesn't trim spaces of parsed background colors, parsed font names, or the end result for styles (which inserted spaces for the purpose of many span.style attributes). For example, things like this get written to the log: <span style='font-size: small; '> Things like the following this _can_ written to the log given a tag like this: <font face=" Comic Sans MS "> <span style='font-family: Comic Sans MS ; '> Same for: <body bgcolor=" Red "> <span style='background: Red ;'> committer: Tailor Script <tailor@pidgin.im>
author Richard Laager <rlaager@wiktel.com>
date Mon, 19 Jun 2006 05:57:11 +0000
parents 421a8523ad04
children 8bda65b88e49
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;

static GList *garray_int_to_glist(GArray *array) {
    GList *list = NULL;
    int i;

    for(i = 0; i < array->len; i++) 
	list = g_list_append(list, GINT_TO_POINTER(g_array_index(array,gint,i)));

    g_array_free(array, TRUE);
    return list;
}

static GSList *garray_int_to_gslist(GArray *array) {
    GSList *list = NULL;
    int i;

    for(i = 0; i < array->len; i++) 
	list = g_slist_append(list, GINT_TO_POINTER(g_array_index(array,gint,i)));

    g_array_free(array, TRUE);
    return list;
}

#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);
}