Mercurial > pidgin-twitter
comparison pidgin-twitter.c @ 154:d6ecbdee0afa
fixed a bug around strchr() pointed out by mojin.
author | Yoshiki Yazawa <yaz@honeyplanet.jp> |
---|---|
date | Fri, 25 Jul 2008 18:39:19 +0900 |
parents | 07cedffb1c63 |
children | 0921655b4ae1 |
comparison
equal
deleted
inserted
replaced
153:07cedffb1c63 | 154:d6ecbdee0afa |
---|---|
1748 gchar *slash = strrchr(url, '/'); | 1748 gchar *slash = strrchr(url, '/'); |
1749 *slash = '\0'; | 1749 *slash = '\0'; |
1750 gchar *tmp = g_strdup_printf("%s/%s", url, | 1750 gchar *tmp = g_strdup_printf("%s/%s", url, |
1751 purple_url_encode(slash+1)); | 1751 purple_url_encode(slash+1)); |
1752 | 1752 |
1753 gchar *startp = slash + 1; | 1753 |
1754 gchar *ext = NULL; | 1754 gchar *lower = g_ascii_strdown(slash+1, -1); |
1755 do { | 1755 |
1756 ext = strchr(startp, '.'); | 1756 if(strstr(lower, ".png")) |
1757 if(ext) { | 1757 data->img_type = "png"; |
1758 if(!strcasecmp(ext, ".jpg") || !strcasecmp(ext, ".jpeg")) { | 1758 else if(strstr(lower, ".gif")) |
1759 data->img_type = "jpg"; | 1759 data->img_type = "gif"; |
1760 break; | 1760 else if(strstr(lower, ".jpg") || strstr(lower, ".jpeg")) |
1761 } | 1761 data->img_type = "jpg"; |
1762 else if(!strcasecmp(ext, ".png")) { | 1762 |
1763 data->img_type = "png"; | 1763 g_free(lower); |
1764 break; | |
1765 } | |
1766 else if(!strcasecmp(ext, ".gif")) { | |
1767 data->img_type = "gif"; | |
1768 break; | |
1769 } | |
1770 startp = ext; | |
1771 } | |
1772 } while(ext); | |
1773 | 1764 |
1774 g_free(url); | 1765 g_free(url); |
1775 url = tmp; | 1766 url = tmp; |
1776 | 1767 |
1777 twitter_debug("requested_url=%s\n", url); | 1768 twitter_debug("requested_url=%s\n", url); |