File tree 1 file changed +10
-2
lines changed
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() {
219
219
var v2 = this . readU4be ( ) ;
220
220
221
221
if ( ( v1 & 0x80000000 ) !== 0 ) {
222
+ var p1 = v1 ^ 0xffffffff ;
223
+ var p2 = v2 ^ 0xffffffff ;
224
+ var p3 = 0x100000000 * p1 + p2 ;
225
+
222
226
// negative number
223
- return - ( 0x100000000 * ( v1 ^ 0xffffffff ) + ( v2 ^ 0xffffffff ) ) - 1 ;
227
+ return - p3 - 1 ;
224
228
} else {
225
229
return 0x100000000 * v1 + v2 ;
226
230
}
@@ -265,8 +269,12 @@ KaitaiStream.prototype.readS8le = function() {
265
269
var v2 = this . readU4le ( ) ;
266
270
267
271
if ( ( v2 & 0x80000000 ) !== 0 ) {
272
+ var p1 = v1 ^ 0xffffffff ;
273
+ var p2 = v2 ^ 0xffffffff ;
274
+ var p3 = 0x100000000 * p2 + p1 ;
275
+
268
276
// negative number
269
- return - ( 0x100000000 * ( v2 ^ 0xffffffff ) + ( v1 ^ 0xffffffff ) ) - 1 ;
277
+ return - p3 - 1 ;
270
278
} else {
271
279
return 0x100000000 * v2 + v1 ;
272
280
}
You can’t perform that action at this time.
0 commit comments