[ 
https://issues.apache.org/jira/browse/THRIFT-1700?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13469321#comment-13469321
 ] 

Maxim Korobov commented on THRIFT-1700:
---------------------------------------

BTW, did thrift generator knows that byte in C# is [Unsigned 8-bit 
integer|http://msdn.microsoft.com/en-us/library/5bdb6693%28v=vs.71%29.aspx], 
not [8-bit signed two's complement 
integer|http://docs.oracle.com/javase/tutorial/java/nutsandbolts/datatypes.html]
 like in Java.
                
> Number overflow in ReadFrame.
> -----------------------------
>
>                 Key: THRIFT-1700
>                 URL: https://issues.apache.org/jira/browse/THRIFT-1700
>             Project: Thrift
>          Issue Type: Bug
>          Components: C# - Library
>    Affects Versions: 0.8
>            Reporter: Alexey
>
> private void ReadFrame()
> {
>       byte[] i32rd = new byte[header_size];
>       transport.ReadAll(i32rd, 0, header_size);
>       int size =
>               ((i32rd[0] & 0xff) << 24) |
>               ((i32rd[1] & 0xff) << 16) |
>               ((i32rd[2] & 0xff) <<  8) |
>               ((i32rd[3] & 0xff));
>       byte[] buff = new byte[size];
>       transport.ReadAll(buff, 0, size);
>       readBuffer = new MemoryStream(buff);
> }
> Here, when calculating size, number overflow throws sometimes.

--
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

Reply via email to