Got rid of ioFailed in font code, also added another check for err() when loading bdf fonts from text files.
svn-id: r42486
This commit is contained in:
parent
aa50dd61e9
commit
3f1563c819
1 changed files with 8 additions and 6 deletions
|
@ -572,8 +572,10 @@ bitmap_t bdf_hexval(unsigned char *buf) {
|
|||
|
||||
NewFont *NewFont::loadFont(Common::SeekableReadStream &stream) {
|
||||
NewFontData *data = bdf_read_font(stream);
|
||||
if (!data)
|
||||
if (!data || stream.err()) {
|
||||
free_font(data);
|
||||
return 0;
|
||||
}
|
||||
|
||||
FontDesc desc;
|
||||
desc.name = data->name;
|
||||
|
@ -673,7 +675,7 @@ NewFont *NewFont::loadFromCache(Common::SeekableReadStream &stream) {
|
|||
data->defaultchar = stream.readUint16BE();
|
||||
data->bits_size = stream.readUint32BE();
|
||||
|
||||
data->bits = (bitmap_t*)malloc(sizeof(bitmap_t)*data->bits_size);
|
||||
data->bits = (bitmap_t *)malloc(sizeof(bitmap_t) * data->bits_size);
|
||||
if (!data->bits) {
|
||||
free(data);
|
||||
return 0;
|
||||
|
@ -685,7 +687,7 @@ NewFont *NewFont::loadFromCache(Common::SeekableReadStream &stream) {
|
|||
|
||||
bool hasOffsetTable = (stream.readByte() != 0);
|
||||
if (hasOffsetTable) {
|
||||
data->offset = (unsigned long*)malloc(sizeof(unsigned long)*data->size);
|
||||
data->offset = (unsigned long *)malloc(sizeof(unsigned long) * data->size);
|
||||
if (!data->offset) {
|
||||
free(data->bits);
|
||||
free(data);
|
||||
|
@ -699,7 +701,7 @@ NewFont *NewFont::loadFromCache(Common::SeekableReadStream &stream) {
|
|||
|
||||
bool hasWidthTable = (stream.readByte() != 0);
|
||||
if (hasWidthTable) {
|
||||
data->width = (unsigned char*)malloc(sizeof(unsigned char)*data->size);
|
||||
data->width = (unsigned char *)malloc(sizeof(unsigned char) * data->size);
|
||||
if (!data->width) {
|
||||
free(data->bits);
|
||||
free(data->offset);
|
||||
|
@ -714,7 +716,7 @@ NewFont *NewFont::loadFromCache(Common::SeekableReadStream &stream) {
|
|||
|
||||
bool hasBBXTable = (stream.readByte() != 0);
|
||||
if (hasBBXTable) {
|
||||
data->bbx = (BBX *)malloc(sizeof(BBX)*data->size);
|
||||
data->bbx = (BBX *)malloc(sizeof(BBX) * data->size);
|
||||
if (!data->bbx) {
|
||||
free(data->bits);
|
||||
free(data->offset);
|
||||
|
@ -750,7 +752,7 @@ NewFont *NewFont::loadFromCache(Common::SeekableReadStream &stream) {
|
|||
desc.bits_size = data->bits_size;
|
||||
|
||||
font = new NewFont(desc, data);
|
||||
if (!font || stream.ioFailed()) {
|
||||
if (!font || stream.err()) {
|
||||
free(data->bits);
|
||||
free(data->offset);
|
||||
free(data->width);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue