Thrift
  1. Thrift
  2. THRIFT-729

I64 types improperly written via TBinaryProtocolAccelerated

    Details

    • Type: Bug Bug
    • Status: Open
    • Priority: Major Major
    • Resolution: Unresolved
    • Affects Version/s: 0.3
    • Fix Version/s: None
    • Component/s: PHP - Library
    • Labels:
      None
    • Environment:

      32-bit linux (tested centos, ubuntu, debian)

      Description

      When TBinaryProtocolAccelerated writes an I64 to the network derived from a 32-bit PHP 'float' type, the value is incorrectly attributed a sign.

      Writing round(microtime(true) * 1000, 3) for instance, will appear on the server as something like -379667704. This is implemented fine in TBinaryProtocol.php, it only looks to affect the php module compiled for a 32-bit system (htonll might not be cutting it).

        Activity

          People

          • Assignee:
            Unassigned
            Reporter:
            Michael Pearson
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:

              Development