W dniu 25 października 2011 00:08 użytkownik Wojtek Kaniewski <wojte...@toxygen.net> napisał: > Dnia 2011-10-24, pon o godzinie 13:49 +0200, Bartosz Brachaczek pisze: >> W dniu 24 października 2011 07:28 użytkownik Wojtek Kaniewski >> <wojte...@toxygen.net> napisał: >> > No tak, API. To trzeba będzie zrobić warunek, że ustawienie >> > GG_RESOLVER_CUSTOM powoduje użycie read(), a wbudowane recv(), mimo że w >> > praktyce pewnie nikt nigdy nie korzystał z oryginalnego libgadu na >> > Win32. >> >> Wówczas GG_RESOLVER_CUSTOM i tak nie będzie działać na Win32. Zdaje mi >> się, że jedyny sposób na zachowanie kompatybilności pod Unix-like to >> jednak ifdefy dla Win32 w tych dwóch, trzech miejscach w obsłudze >> resolvera w libgadu. > > Słuszna uwaga. Zrobiłem funkcję do czytania wyniku resolvera, żeby nie > zaśmiecać kodu ifdefami. Teraz jest tylko w jednym miejscu. Może tak > być?
Super, myślę że czytanie z gniazd/czegokolwiek pod Win32 mamy załatwione :). Natomiast jeszcze została podobna kwestia write() vs send() w gg_resolver_run(), którego słusznie użyłeś w gg_resolver_win32_thread(). Ponadto zostało wywołanie socket_pipe() w gg_resolver_win32_start(). Mam nadzieję, że w środę napiszę te wszystkie errno-wrappery i przetestuję całość pod MSVC (paru dodatkowych łatek jeszcze będę musiał pewnie użyć). Przetestuję również w szczególności tego resolvera Win32. Ale powinien działać dobrze - porównałem go wreszcie z tym z libpurple. Wnioski wyciągnąłem takie, że wygląda czyściej i nie powinno mu niczego brakować. Pozdrawiam, Bartosz _______________________________________________ libgadu-devel mailing list libgadu-devel@lists.ziew.org http://lists.ziew.org/mailman/listinfo/libgadu-devel