1
0
Fork 0
forked from len0rd/rockbox

code-policed my own code ;-)

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2393 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Daniel Stenberg 2002-09-24 12:48:23 +00:00
parent 869c952ea3
commit 571e8a26e0

View file

@ -27,44 +27,43 @@ static unsigned char language_buffer[MAX_LANGUAGE_SIZE];
void lang_load(char *filename) void lang_load(char *filename)
{ {
int filesize; int filesize;
int fd = open(filename, O_RDONLY); int fd = open(filename, O_RDONLY);
if(fd == -1) if(fd == -1)
return; return;
filesize = read(fd, language_buffer, MAX_LANGUAGE_SIZE); filesize = read(fd, language_buffer, MAX_LANGUAGE_SIZE);
if(filesize != MAX_LANGUAGE_SIZE) { if(filesize != MAX_LANGUAGE_SIZE) {
if((language_buffer[0] == LANGUAGE_COOKIE) && if((language_buffer[0] == LANGUAGE_COOKIE) &&
(language_buffer[1] == LANGUAGE_VERSION)) { (language_buffer[1] == LANGUAGE_VERSION)) {
unsigned char *ptr=&language_buffer[2]; unsigned char *ptr=&language_buffer[2];
int id; int id;
filesize-=2; filesize-=2;
while(filesize>3) { while(filesize>3) {
id = (ptr[0]<<8) | ptr[1]; id = (ptr[0]<<8) | ptr[1];
ptr+=2; ptr+=2;
language_strings[id] = ptr; language_strings[id] = ptr;
while(*ptr) { while(*ptr) {
filesize--; filesize--;
ptr++; ptr++;
}
filesize-=3;
ptr++; /* pass the terminating newline */
}
}
else {
DEBUGF("Illegal language file\n");
} }
filesize-=3;
ptr++; /* pass the terminating newline */
}
} }
else { else {
DEBUGF("Illegal language file\n"); DEBUGF("Language %s too large: %d\n", filename, filesize);
} }
} close(fd);
else {
DEBUGF("Language %s too large: %d\n", filename, filesize);
}
close(fd);
} }
/* ----------------------------------------------------------------- /* -----------------------------------------------------------------
* local variables: * local variables:
* eval: (load-file "../firmware/rockbox-mode.el") * eval: (load-file "../firmware/rockbox-mode.el")
* vim: et sw=4 ts=8 sts=4 tw=78
* end: * end:
* vim: et sw=4 ts=8 sts=4 tw=78
*/ */