Code Duplication    Length = 16-23 lines in 2 locations

Sources/Subs-Compat.php 1 location

@@ 162-177 (lines=16) @@
159
 * @param string $number
160
 * @return string The crc32 polynomial of $number
161
 */
162
if (!function_exists('smf_crc32'))
163
{
164
	function smf_crc32($number)
165
	{
166
		$crc = crc32($number);
167
168
		if ($crc & 0x80000000)
169
		{
170
			$crc ^= 0xffffffff;
171
			$crc += 1;
172
			$crc = -$crc;
173
		}
174
175
		return $crc;
176
	}
177
}
178
179
?>

Sources/Subs-Package.php 1 location

@@ 3258-3280 (lines=23) @@
3255
	return $data;
3256
}
3257
3258
if (!function_exists('smf_crc32'))
3259
{
3260
	/**
3261
	 * crc32 doesn't work as expected on 64-bit functions - make our own.
3262
	 * https://php.net/crc32#79567
3263
	 *
3264
	 * @param string $number
3265
	 * @return string The crc32
3266
	 */
3267
	function smf_crc32($number)
3268
	{
3269
		$crc = crc32($number);
3270
3271
		if ($crc & 0x80000000)
3272
		{
3273
			$crc ^= 0xffffffff;
3274
			$crc += 1;
3275
			$crc = -$crc;
3276
		}
3277
3278
		return $crc;
3279
	}
3280
}
3281
3282
?>