# HG changeset patch # User Yoshiki Yazawa # Date 1216978759 -32400 # Node ID d6ecbdee0afa47a8a1e63f92ad9171ac4ffc0018 # Parent 07cedffb1c6375f3523e157bd9cfa588a82fed5f fixed a bug around strchr() pointed out by mojin. diff -r 07cedffb1c63 -r d6ecbdee0afa pidgin-twitter.c --- a/pidgin-twitter.c Fri Jul 25 16:53:43 2008 +0900 +++ b/pidgin-twitter.c Fri Jul 25 18:39:19 2008 +0900 @@ -1750,26 +1750,17 @@ gchar *tmp = g_strdup_printf("%s/%s", url, purple_url_encode(slash+1)); - gchar *startp = slash + 1; - gchar *ext = NULL; - do { - ext = strchr(startp, '.'); - if(ext) { - if(!strcasecmp(ext, ".jpg") || !strcasecmp(ext, ".jpeg")) { - data->img_type = "jpg"; - break; - } - else if(!strcasecmp(ext, ".png")) { - data->img_type = "png"; - break; - } - else if(!strcasecmp(ext, ".gif")) { - data->img_type = "gif"; - break; - } - startp = ext; - } - } while(ext); + + gchar *lower = g_ascii_strdown(slash+1, -1); + + if(strstr(lower, ".png")) + data->img_type = "png"; + else if(strstr(lower, ".gif")) + data->img_type = "gif"; + else if(strstr(lower, ".jpg") || strstr(lower, ".jpeg")) + data->img_type = "jpg"; + + g_free(lower); g_free(url); url = tmp;