* Extracts a 32-bit signed integer from byte array (big-endian).
(bytes, offset)
| 135 | * Extracts a 32-bit signed integer from byte array (big-endian). |
| 136 | */ |
| 137 | function extractInt32BE(bytes, offset) { |
| 138 | var value = (bytes[offset] << 24) | (bytes[offset + 1] << 16) | |
| 139 | (bytes[offset + 2] << 8) | bytes[offset + 3]; |
| 140 | return value > 2147483647 ? value - 4294967296 : value; |
| 141 | } |
| 142 | |
| 143 | /** |
| 144 | * Validates SiRF checksum. |