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

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