Skip to content

Commit e6064ec

Browse files
more applications
1 parent 07f9c6f commit e6064ec

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

src/fread.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2413,7 +2413,7 @@ int freadMain(freadMainArgs _args) {
24132413
// DTPRINT(_("Field %d: '%.10s' as type %d (tch=%p)\n"), j+1, tch, type[j], tch);
24142414
fieldStart = tch;
24152415
int8_t thisType = type[j]; // fetch shared type once. Cannot read half-written byte is one reason type's type is single byte to avoid atomic read here.
2416-
fun[abs(thisType)](&fctx);
2416+
fun[IGNORE_BUMP(thisType)](&fctx);
24172417
if (*tch!=sep) break;
24182418
int8_t thisSize = size[j];
24192419
if (thisSize) ((char **) targets)[thisSize] += thisSize; // 'if' for when rereading to avoid undefined NULL+0
@@ -2686,7 +2686,7 @@ int freadMain(freadMainArgs _args) {
26862686
// if nTypeBump>0, not-bumped columns are about to be assigned parse type APPLY_BUMP(CT_STRING) for the reread, so we have to count
26872687
// parse types now (for log). We can't count final column types afterwards because many parse types map to the same column type.
26882688
for (int i=0; i<NUMTYPE; i++) typeCounts[i] = 0;
2689-
for (int i=0; i<ncol; i++) typeCounts[ abs(type[i]) ]++;
2689+
for (int i=0; i<ncol; i++) typeCounts[ IGNORE_BUMP(type[i]) ]++;
26902690

26912691
if (nTypeBump) {
26922692
if (verbose) DTPRINT(_(" %d out-of-sample type bumps: %s\n"), nTypeBump, typesAsString(ncol));
@@ -2697,7 +2697,7 @@ int freadMain(freadMainArgs _args) {
26972697
if (type[j] == CT_DROP) continue;
26982698
if (type[j]<0) {
26992699
// column was bumped due to out-of-sample type exception
2700-
type[j] = -type[j];
2700+
type[j] = APPLY_BUMP(type[j]);
27012701
size[j] = typeSize[type[j]];
27022702
rowSize1 += (size[j] & 1);
27032703
rowSize4 += (size[j] & 4);

0 commit comments

Comments
 (0)