tags 517592 + patch thanks Neil Williams wrote: > GPE upstream is still using libsoup2.2 in the current SVN and it is the > same with the new upstream release made during the Lenny cycle.
Hi Neil, Since there are only 3 packages remaining to migrate, and the other two already have patches, I thought I'd look into gpe-calendar. I've prepared a patch, it builds fine with libsoup-2.4 and the package runs fine. I've only tested one iCal from Google, so please test thoroughly and let me know if you find any issues and can't work on it - I'll do it. By the way, you will need to s/libsoup-2.2/libsoup-2.4/ in configure.ac and regenerate configure. The patch is against the version in the archive. If there are problems applying it to trunk let me know. Cheers, Emilio
--- gpe-calendar-0.91/calendar-update.c 2007-02-16 22:08:20.000000000 +0100
+++ gpe-calendar-0.91.new/calendar-update.c 2009-03-03 19:10:38.000000000 +0100
@@ -115,7 +115,7 @@ g_io_buffer_get_flags (GIOChannel *chann
}
static GIOChannel *
-g_io_channel_from_buffer (char *buffer, int length)
+g_io_channel_from_buffer (const char *buffer, int length)
{
static GIOFuncs buffer_channel_funcs =
{
@@ -139,7 +139,7 @@ g_io_channel_from_buffer (char *buffer,
channel->is_seekable = TRUE;
channel->is_readable = TRUE;
- b->buffer = buffer;
+ b->buffer = g_strdup (buffer);
b->length = length;
return channel;
@@ -295,7 +295,7 @@ need_retry (struct info *info)
}
static void
-pushed (SoupMessage *msg, gpointer data)
+pushed (SoupSession *session, SoupMessage *msg, gpointer data)
{
struct info *info = data;
@@ -365,7 +365,7 @@ calendar_push_internal (struct info *inf
char *s = cal_export_as_string (info->ec);
soup_message_set_request (msg, "text/calendar",
- SOUP_BUFFER_SYSTEM_OWNED, s, strlen (s));
+ SOUP_MEMORY_TAKE, s, strlen (s));
soup_session_queue_message (session, msg, pushed, info);
}
@@ -386,7 +386,7 @@ calendar_push (EventCalendar *ec)
}
static void
-pulled (SoupMessage *msg, gpointer data)
+pulled (SoupSession *session, SoupMessage *msg, gpointer data)
{
struct info *info = data;
@@ -403,8 +403,8 @@ pulled (SoupMessage *msg, gpointer data)
}
else
{
- GIOChannel *channel = g_io_channel_from_buffer (msg->response.body,
- msg->response.length);
+ GIOChannel *channel = g_io_channel_from_buffer (msg->response_body->data,
+ msg->response_body->length);
GError *error = NULL;
int res = cal_import_from_channel (info->ec, channel, &error);
g_io_channel_unref (channel);
signature.asc
Description: OpenPGP digital signature

