1
0
Fork 0

(svn r26511) -Codechange: use strecpy in game_text

release/1.5
rubidium 2014-04-25 17:43:09 +00:00
parent 6ad6845f8c
commit 5e90054f20
4 changed files with 7 additions and 7 deletions

View File

@ -151,11 +151,11 @@ struct StringListReader : StringReader {
{ {
} }
/* virtual */ char *ReadLine(char *buffer, size_t size) /* virtual */ char *ReadLine(char *buffer, const char *last)
{ {
if (this->p == this->end) return NULL; if (this->p == this->end) return NULL;
strncpy(buffer, *this->p, size); strecpy(buffer, *this->p, last);
this->p++; this->p++;
return buffer; return buffer;

View File

@ -122,9 +122,9 @@ struct FileStringReader : StringReader {
fclose(this->fh); fclose(this->fh);
} }
/* virtual */ char *ReadLine(char *buffer, size_t size) /* virtual */ char *ReadLine(char *buffer, const char *last)
{ {
return fgets(buffer, size, this->fh); return fgets(buffer, last - buffer + 1, this->fh);
} }
/* virtual */ void HandlePragma(char *str); /* virtual */ void HandlePragma(char *str);

View File

@ -72,10 +72,10 @@ struct StringReader {
/** /**
* Read a single line from the source of strings. * Read a single line from the source of strings.
* @param buffer The buffer to read the data in to. * @param buffer The buffer to read the data in to.
* @param size The size of the buffer. * @param last The last element in the buffer.
* @return The buffer, or NULL if at the end of the file. * @return The buffer, or NULL if at the end of the file.
*/ */
virtual char *ReadLine(char *buffer, size_t size) = 0; virtual char *ReadLine(char *buffer, const char *last) = 0;
/** /**
* Handle the pragma of the file. * Handle the pragma of the file.

View File

@ -821,7 +821,7 @@ void StringReader::ParseFile()
strecpy(_lang.digit_decimal_separator, ".", lastof(_lang.digit_decimal_separator)); strecpy(_lang.digit_decimal_separator, ".", lastof(_lang.digit_decimal_separator));
_cur_line = 1; _cur_line = 1;
while (this->ReadLine(buf, sizeof(buf)) != NULL) { while (this->ReadLine(buf, lastof(buf)) != NULL) {
rstrip(buf); rstrip(buf);
this->HandleString(buf); this->HandleString(buf);
_cur_line++; _cur_line++;