Mercurial > pidgin
diff libpurple/protocols/gg/gg.c @ 21316:d0b16c09c2c4
Handle fwrite returning 0 in gg's "save my buddy list to a file" code,
squashing a warning. (What's the point of this code given the various
export/import plugins?)
author | Will Thompson <will.thompson@collabora.co.uk> |
---|---|
date | Sun, 11 Nov 2007 14:08:30 +0000 |
parents | 6de09629f091 |
children | 12d6b551fb6a 97dc2a474513 1ce05db42eb3 |
line wrap: on
line diff
--- a/libpurple/protocols/gg/gg.c Sun Nov 11 13:03:31 2007 +0000 +++ b/libpurple/protocols/gg/gg.c Sun Nov 11 14:08:30 2007 +0000 @@ -281,12 +281,22 @@ return; } - fwrite(buddylist, sizeof(char), g_utf8_strlen(buddylist, -1), fh); + if (!fwrite(buddylist, sizeof(char), g_utf8_strlen(buddylist, -1), fh)) { + const gchar *err = g_strerror(errno); + gchar *title = g_strdup_printf( + _("Couldn't write buddylist to %s"), err); + + purple_debug_error("gg", "Error writing %s: %s\n", file, err); + purple_notify_error(account, title, title, err); + + g_free(title); + } else { + purple_notify_info(account, _("Save Buddylist..."), + _("Buddylist saved successfully!"), NULL); + } + fclose(fh); g_free(buddylist); - - purple_notify_info(account, _("Save Buddylist..."), - _("Buddylist saved successfully!"), NULL); } /* }}} */