aboutsummaryrefslogtreecommitdiff
path: root/node_modules/buf-compare/index.js
blob: bf7d1c654d4dd64e3b0265283999029d55189df4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
'use strict';
module.exports = Buffer.compare || function (a, b) {
	if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) {
		throw new TypeError('Arguments must be Buffers');
	}

	if (a === b) {
		return 0;
	}

	var x = a.length;
	var y = b.length;
	var len = Math.min(x, y);

	for (var i = 0; i < len; i++) {
		if (a[i] !== b[i]) {
			break;
		}
	}

	if (i !== len) {
		x = a[i];
		y = b[i];
	}

	return x < y ? -1 : y < x ? 1 : 0;
};