File tree Expand file tree Collapse file tree 1 file changed +10
-2
lines changed
Expand file tree Collapse file tree 1 file changed +10
-2
lines changed Original file line number Diff line number Diff line change @@ -219,8 +219,12 @@ KaitaiStream.prototype.readS8be = function() {
219219 var v2 = this . readU4be ( ) ;
220220
221221 if ( ( v1 & 0x80000000 ) !== 0 ) {
222+ var p1 = v1 ^ 0xffffffff ;
223+ var p2 = v2 ^ 0xffffffff ;
224+ var p3 = 0x100000000 * p1 + p2 ;
225+
222226 // negative number
223- return - ( 0x100000000 * ( v1 ^ 0xffffffff ) + ( v2 ^ 0xffffffff ) ) - 1 ;
227+ return - p3 - 1 ;
224228 } else {
225229 return 0x100000000 * v1 + v2 ;
226230 }
@@ -265,8 +269,12 @@ KaitaiStream.prototype.readS8le = function() {
265269 var v2 = this . readU4le ( ) ;
266270
267271 if ( ( v2 & 0x80000000 ) !== 0 ) {
272+ var p1 = v1 ^ 0xffffffff ;
273+ var p2 = v2 ^ 0xffffffff ;
274+ var p3 = 0x100000000 * p2 + p1 ;
275+
268276 // negative number
269- return - ( 0x100000000 * ( v2 ^ 0xffffffff ) + ( v1 ^ 0xffffffff ) ) - 1 ;
277+ return - p3 - 1 ;
270278 } else {
271279 return 0x100000000 * v2 + v1 ;
272280 }
You can’t perform that action at this time.
0 commit comments