[
https://issues.apache.org/jira/browse/THRIFT-1870?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13591178#comment-13591178
]
Ben Craig commented on THRIFT-1870:
-----------------------------------
So the main changes that I see that improve portability are the addition of the
TSocket and TServerSocket members, and the #ifdefed functions that are using
those members. Maybe I'm overlooking something, but I don't see any place
where the HANDLE / ptrdiff_t data types are interacting with the TSocket and
TServerSocket members.
I think the changes related to the TSocket and TServerSocket members are great,
but I'm not really sure what was accomplished with the HANDLE -> ptrdiff_t
translation. The main "benefit" I'm seeing right now is it lets you compile
and link against methods that aren't really implemented in a useful way on
*NIX. If you revert the ptrdiff_t changes, then you could pretty easily ifdef
away everything that referred to HANDLES, and then clients would get build time
errors instead of run-time errors.
> Enhance TPipe / TPipeServer transport to support both Windows 64-bit and
> cross-platform *NIX support
> ----------------------------------------------------------------------------------------------------
>
> Key: THRIFT-1870
> URL: https://issues.apache.org/jira/browse/THRIFT-1870
> Project: Thrift
> Issue Type: Improvement
> Affects Versions: 0.9
> Environment: Windows, *NIX
> Reporter: Peace C
> Fix For: 0.9
>
> Attachments: TPipe_64bit_xplatform.patch
>
>
> This patch adds support for Windows 64-bit builds by using std::ptrdiff_t to
> represent Windows' pipe HANDLE. It also restores cross-platform *NIX support
> that was broken in THRIFT-1690.
> See contrib/transport-sample for a working cross-platform example of how to
> use TPipe[Server].
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira