Better verification of bad idxdict input

...see dictionaries comits df423c53829faa96f46acd71887fd0f8697c49e9
"fix Lithuanian thesaurus" and 9b6407dadc64e10e7117d8551917b46105ecc6c8
"Fix more thesauri."

Change-Id: I6ddc41fce4e3f68d80d05af3320c835b98908fcb
This commit is contained in:
Stephan Bergmann
2013-05-28 12:58:39 +02:00
parent b263b27c01
commit 788a38fd32

View File

@@ -7,6 +7,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. * file, You can obtain one at http://mozilla.org/MPL/2.0/.
*/ */
#include <cerrno>
#include <iostream> #include <iostream>
#include <fstream> #include <fstream>
#include <string> #include <string>
@@ -55,7 +56,16 @@ int main(int argc, char *argv[])
exit(99); exit(99);
} }
currentOffset += strlen(inputBuffer)+1; currentOffset += strlen(inputBuffer)+1;
int entryCount(strtol(inputBuffer, NULL, 10)); char * endptr;
errno = 0;
int entryCount(strtol(inputBuffer, &endptr, 10));
if (errno != 0 || endptr == inputBuffer || *endptr != '\0')
{
cerr
<< "Unable to read count from \"" << inputBuffer
<< "\" input.\n";
exit(99);
}
for (int i(0); i < entryCount; ++i) for (int i(0); i < entryCount; ++i)
{ {
cin.getline(inputBuffer, MAXLINE); cin.getline(inputBuffer, MAXLINE);