projects
/
cascardo
/
f2fchat.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Compare response address with friend address.
[cascardo/f2fchat.git]
/
message.c
diff --git
a/message.c
b/message.c
index
7c73006
..
35b5d1c
100644
(file)
--- a/
message.c
+++ b/
message.c
@@
-52,15
+52,20
@@
gboolean message_incoming(GIOChannel *channel, GIOCondition cond, gpointer data)
iaddress = g_inet_socket_address_get_address(G_INET_SOCKET_ADDRESS(address));
if (g_inet_address_get_is_loopback(iaddress)) {
command(buffer, len);
iaddress = g_inet_socket_address_get_address(G_INET_SOCKET_ADDRESS(address));
if (g_inet_address_get_is_loopback(iaddress)) {
command(buffer, len);
+ } else {
+ struct friend *friend;
+ friend = friend_get_by_address(iaddress);
+ if (friend);
+ g_source_remove_by_user_data(friend);
}
g_object_unref(address);
g_free(buffer);
return TRUE;
}
}
g_object_unref(address);
g_free(buffer);
return TRUE;
}
-int message_init(
int
sock)
+int message_init(
GSocket *
sock)
{
{
- uchannel = g_io_channel_unix_new(
sock
);
+ uchannel = g_io_channel_unix_new(
g_socket_get_fd(sock)
);
g_io_add_watch(uchannel, G_IO_IN, message_incoming, NULL);
return 0;
}
g_io_add_watch(uchannel, G_IO_IN, message_incoming, NULL);
return 0;
}