Mercurial > pidgin.yaz
diff libpurple/protocols/gg/lib/pubdir50.c @ 31860:93b08d43f684
matekm and kkszysiu collaborated on this patch to update our internal libgadu
to version 1.10.1.
author | John Bailey <rekkanoryo@rekkanoryo.org> |
---|---|
date | Thu, 24 Mar 2011 20:53:13 +0000 |
parents | a8cc50c2279f |
children | 8b9e9c61d061 3a90a59ddea2 |
line wrap: on
line diff
--- a/libpurple/protocols/gg/lib/pubdir50.c Thu Mar 24 15:18:14 2011 +0000 +++ b/libpurple/protocols/gg/lib/pubdir50.c Thu Mar 24 20:53:13 2011 +0000 @@ -1,5 +1,3 @@ -/* $Id: pubdir50.c 854 2009-10-12 21:06:28Z wojtekka $ */ - /* * (C) Copyright 2003 Wojtek Kaniewski <wojtekka@irc.pl> * @@ -22,6 +20,9 @@ * \file pubdir50.c * * \brief Obsługa katalogu publicznego od wersji Gadu-Gadu 5.x + * + * \todo Zoptymalizować konwersję CP1250<->UTF8. Obecnie robiona jest + * testowa konwersja, żeby poznać długość tekstu wynikowego. */ #include <errno.h> @@ -31,6 +32,7 @@ #include "libgadu.h" #include "libgadu-internal.h" +#include "encoding.h" /** * Tworzy nowe zapytanie katalogu publicznego. @@ -224,7 +226,8 @@ } else { char *tmp; - tmp = gg_utf8_to_cp(req->entries[i].field); + // XXX \todo zoptymalizować + tmp = gg_encoding_convert(req->entries[i].field, sess->encoding, GG_ENCODING_CP1250, -1, -1); if (tmp == NULL) return -1; @@ -233,7 +236,8 @@ free(tmp); - tmp = gg_utf8_to_cp(req->entries[i].value); + // XXX \todo zoptymalizować + tmp = gg_encoding_convert(req->entries[i].value, sess->encoding, GG_ENCODING_CP1250, -1, -1); if (tmp == NULL) return -1; @@ -271,7 +275,8 @@ } else { char *tmp; - tmp = gg_utf8_to_cp(req->entries[i].field); + // XXX \todo zoptymalizować + tmp = gg_encoding_convert(req->entries[i].field, sess->encoding, GG_ENCODING_CP1250, -1, -1); if (tmp == NULL) { free(buf); @@ -282,7 +287,9 @@ p += strlen(tmp) + 1; free(tmp); - tmp = gg_utf8_to_cp(req->entries[i].value); + // XXX \todo zoptymalizować + tmp = gg_encoding_convert(req->entries[i].value, sess->encoding, GG_ENCODING_CP1250, -1, -1); + if (tmp == NULL) { free(buf); @@ -416,7 +423,7 @@ } else { char *tmp; - tmp = gg_cp_to_utf8(value); + tmp = gg_encoding_convert(value, GG_ENCODING_CP1250, sess->encoding, -1, -1); if (tmp == NULL) goto failure;