Developing #371
DigibuilderReadCalCoeffs
Status: | Открыта | Start date: | 09/30/2019 | |
---|---|---|---|---|
Priority: | Нормальный | Due date: | ||
Assignee: | Vitaliy Schetinin | % Done: | 0% | |
Category: | - | |||
Target version: | - |
Description
Метод ERTelescopeUnpack::ReadCalFile(TString fileName) проверяет корректность структуры файла с калибровочными коэффициентами по условию
while (!in.eof()){
if (i >= nRows){
LOG(FATAL)
return NULL;
}
Некоторые редакторы (например, vim) по умолчанию добавляют пустую строку в конце файла, из-за чего с корректными вроде бы данными можно долго ломать голову над обламыванием программы.
Стоит ввести более совершенный контроль формата входных данных.
History
#1 Updated by Sergey Belogurov about 5 years ago
- Assignee set to Vitaliy Schetinin
Поскольку должна быть стилистическая единоораность кода, предлагаю Виталику разрулить этот ишью с учетом того, то это не единственный текстовый файл, который мы читаем..... Если вместо "fatal" писать, например, "wrong number of lines in the file NAME". Т.е. в сообщении пересказывать смысл проверяемого условия, м.б. будет проще, хотя случай пустых строк в конце, конечно, не должен приводить к падению программы.
#2 Updated by Mikhail Kozlov about 5 years ago
Там есть подсказка
"Wrong file format in " fileName FairLogger::FairLogger::endl;
Редмайн скрыл часть текста. Доработка сообщения нужна, конечно, но смысл ошибки передается - там не пустой вывод.