Read a signed long. "zwidth" is the zero-based byte count.
| 549 | |
| 550 | // Read a signed long. "zwidth" is the zero-based byte count. |
| 551 | int64_t DexFile::ReadSignedLong(const uint8_t* ptr, int zwidth) { |
| 552 | int64_t val = 0; |
| 553 | for (int i = zwidth; i >= 0; --i) { |
| 554 | val = ((uint64_t)val >> 8) | (((int64_t)*ptr++) << 56); |
| 555 | } |
| 556 | val >>= (7 - zwidth) * 8; |
| 557 | return val; |
| 558 | } |
| 559 | |
| 560 | // Read an unsigned long. "zwidth" is the zero-based byte count, |
| 561 | // "fill_on_right" indicates which side we want to zero-fill from. |
nothing calls this directly
no outgoing calls
no test coverage detected