diff pidgin/gtkeventloop.c @ 15682:14d85ee22d78

Added a new GaimEventLoopUiOps item, input_get_error(). This function allows the UI to return the current error status on a socket/input. If the UI does not implement it (as Pidgin and gntgaim do not, since glib's handling of sockets is sane), it is just a wrapper around getsockopt(). Implemented or not, its return values should match those of getsockopt() with a level of SOL_SOCKET and an option of SO_ERROR. For curious souls, Adium will be using this to provide a working version of getsockopt(); the CoreFoundation CFSocket class which is used for socket read/write calls getsockopt() with SO_ERROR itself, thereby clearing the error flag [as documented in getsockopt()'s behavior], so depending upon it for determining if an error occurred leads to significant misbehavior.
author Evan Schoenberg <evan.s@dreskin.net>
date Fri, 23 Feb 2007 05:17:20 +0000
parents d44fca5248a1
children 32c366eeeb99
line wrap: on
line diff
--- a/pidgin/gtkeventloop.c	Fri Feb 23 05:12:54 2007 +0000
+++ b/pidgin/gtkeventloop.c	Fri Feb 23 05:17:20 2007 +0000
@@ -118,7 +118,8 @@
 	g_timeout_add,
 	g_source_remove,
 	pidgin_input_add,
-	g_source_remove
+	g_source_remove,
+	NULL /* input_get_error */
 };
 
 GaimEventLoopUiOps *