summaryrefslogtreecommitdiffstats
path: root/vendor/maxmind-db/reader/src/MaxMind/Db/Reader/Util.php
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--vendor/maxmind-db/reader/src/MaxMind/Db/Reader/Util.php11
1 files changed, 9 insertions, 2 deletions
diff --git a/vendor/maxmind-db/reader/src/MaxMind/Db/Reader/Util.php b/vendor/maxmind-db/reader/src/MaxMind/Db/Reader/Util.php
index 149a5c4..b8c461e 100644
--- a/vendor/maxmind-db/reader/src/MaxMind/Db/Reader/Util.php
+++ b/vendor/maxmind-db/reader/src/MaxMind/Db/Reader/Util.php
@@ -1,10 +1,16 @@
<?php
+declare(strict_types=1);
+
namespace MaxMind\Db\Reader;
class Util
{
- public static function read($stream, $offset, $numberOfBytes)
+ /**
+ * @param resource $stream
+ * @param int<0, max> $numberOfBytes
+ */
+ public static function read($stream, int $offset, int $numberOfBytes): string
{
if ($numberOfBytes === 0) {
return '';
@@ -15,10 +21,11 @@ class Util
// We check that the number of bytes read is equal to the number
// asked for. We use ftell as getting the length of $value is
// much slower.
- if (ftell($stream) - $offset === $numberOfBytes) {
+ if ($value !== false && ftell($stream) - $offset === $numberOfBytes) {
return $value;
}
}
+
throw new InvalidDatabaseException(
'The MaxMind DB file contains bad data'
);