return ret;
}
+
+void
+g_socket_close (GSocket *socket)
+{
+ g_return_if_fail (G_IS_SOCKET (socket));
+
+#ifdef G_OS_WIN32
+ closesocket (socket->priv->fd);
+#else
+ close (socket->priv->fd);
+#endif
+}
gsize size,
GError **error);
+void g_socket_close (GSocket *socket);
+
G_END_DECLS
#endif /* G_SOCKET_H */
g_printf ("connected, local socket is %s:%d\n", g_inet_address_to_string (g_inet_socket_address_get_address (G_INET_SOCKET_ADDRESS (address))), g_inet_socket_address_get_port (G_INET_SOCKET_ADDRESS (address)));
- g_main_loop_run (loop);
+ g_socket_close (socket);
+
+ g_object_unref (G_OBJECT (socket));
+
+// g_main_loop_run (loop);
return 0;
}
g_print ("connection closed\n");
+ g_object_unref (G_OBJECT (new_socket));
+
+ g_socket_close (socket);
+
+ g_object_unref (G_OBJECT (socket));
+
return 0;
}