@@ -113,7 +113,7 @@ bmerge = function(i, x, icols, xcols, roll, rollends, nomatch, mult, ops, verbos
113113 # we've always coerced to int and returned int, for convenience.
114114 if (length(ic_idx )> 1L ) {
115115 xc_idx = xcols [ic_idx ]
116- for (b in which(vapply_1c(x [0L , .. xc_idx ], getClass ) == " double" )) {
116+ for (b in which(vapply_1c(x [0L , xc_idx , with = FALSE ], getClass ) == " double" )) {
117117 xb = xcols [b ]
118118 if (isReallyReal(x [[xb ]])) {
119119 coerce_x = FALSE
@@ -128,7 +128,7 @@ bmerge = function(i, x, icols, xcols, roll, rollends, nomatch, mult, ops, verbos
128128 set(callersi , j = ic , value = val ) # change the shallow copy of i up in [.data.table to reflect in the result, too.
129129 if (length(ic_idx )> 1L ) {
130130 xc_idx = xcols [ic_idx ]
131- for (b in which(vapply_1c(x [0L , .. xc_idx ], getClass ) == " double" )) {
131+ for (b in which(vapply_1c(x [0L , xc_idx , with = FALSE ], getClass ) == " double" )) {
132132 xb = xcols [b ]
133133 if (verbose ) catf(" Coercing double column %s (which contains no fractions) to type integer to match type of %s.\n " , paste0(" x." , names(x )[xb ]), xname )
134134 set(x , j = xb , value = cast_with_atts(x [[xb ]], as.integer ))
@@ -146,7 +146,7 @@ bmerge = function(i, x, icols, xcols, roll, rollends, nomatch, mult, ops, verbos
146146 set(i , j = ic , value = val )
147147 if (length(ic_idx )> 1L ) {
148148 xc_idx = xcols [ic_idx ]
149- for (b in which(vapply_1c(x [0L , .. xc_idx ], getClass ) == " integer" )) {
149+ for (b in which(vapply_1c(x [0L , xc_idx , with = FALSE ], getClass ) == " integer" )) {
150150 xb = xcols [b ]
151151 if (verbose ) catf(" Coercing integer column %s to type double for join to match type of %s.\n " , paste0(" x." , names(x )[xb ]), xname )
152152 set(x , j = xb , value = cast_with_atts(x [[xb ]], as.double ))
0 commit comments