**Describe the bug**
When you set the setting `input_format_with_names_use_header` to `0`, `INSERT` does not actually insert rows.

**How to reproduce**
* Which ClickHouse server version to use: git master `a21fe0b492cbc8628126a3cd493b83e82abf9978`, checked out on 2021-03-31
* Which interface to use: the native command-line client
* Non-default settings, if any: `input_format_with_names_use_header` = `0`
* `CREATE TABLE` statements for all tables involved:
```sql
CREATE TABLE csvtest
(
    `t` String
)
ENGINE = MergeTree
ORDER BY t
```
* Sample data for all these tables
`test.csv`:
```csv
t
testdata1
testdata2
```
* Queries to run that lead to unexpected result:
```
% clickhouse-client --input_format_with_names_use_header 0 --query "INSERT INTO csvtest FORMAT CSVWithNames" < test.csv
```

**Expected behavior**
Two rows `('testdata1'), ('testdata2')` will be inserted to the table `csvtest`.

**Error message and/or stacktrace**
Nothing. It silently discards the input and inserts nothing to the table.

**Additional context**
It works as expected if you set `input_format_with_names_use_header` to `1`.

{
    skipToNextLineOrEOF(in);
}
void CSVRowInputFormat::tryDeserializeField(const DataTypePtr & type, IColumn & column, size_t file_column)
{
    const auto & index = column_mapping->column_indexes_for_input_fields[file_column];
    if (index)
    {
        const bool is_last_file_column = file_column + 1 == column_mapping->column_indexes_for_input_fields.size();
        readField(column, type, serializations[*index], is_last_file_column);
    }
    else
    {
        String tmp;
        readCSVString(tmp, in, format_settings.csv);
    }
}
bool CSVRowInputFormat::readField(IColumn & column, const DataTypePtr & type, const SerializationPtr & serialization, bool is_last_file_column)