blob: 899dbbc6a764bfdf43c7c3143b08aa2e4bf65e14 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
$NetBSD: patch-jsapi.h,v 1.1 2015/09/08 18:53:46 joerg Exp $
Multiplication is safe, even if the input is negative. Left shift is not.
--- jsapi.h.orig 2015-09-03 12:07:45.000000000 +0000
+++ jsapi.h
@@ -103,7 +103,7 @@ JS_BEGIN_EXTERN_C
#define JSVAL_INT_MAX (JSVAL_INT_POW2(30) - 1)
#define INT_FITS_IN_JSVAL(i) ((jsuint)((i)+JSVAL_INT_MAX) <= 2*JSVAL_INT_MAX)
#define JSVAL_TO_INT(v) ((jsint)(v) >> 1)
-#define INT_TO_JSVAL(i) (((jsval)(i) << 1) | JSVAL_INT)
+#define INT_TO_JSVAL(i) (((jsval)(i) * 2) | JSVAL_INT)
/* Convert between boolean and jsval. */
#define JSVAL_TO_BOOLEAN(v) ((JSBool)((v) >> JSVAL_TAGBITS))
|