aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorRay <raysan5@gmail.com>2019-02-24 12:41:11 +0100
committerGitHub <noreply@github.com>2019-02-24 12:41:11 +0100
commit32c61b1fa0736113517357e1c116acdf1b021115 (patch)
treefa579f6d03bde2959b55c3b88f7df7142fce7f6a /src
parent56c79a10de02781a198224216ea57bc1922fd0ff (diff)
parentfc11b360af4ea70adbbfd732512880bce18347b4 (diff)
downloadraylib-32c61b1fa0736113517357e1c116acdf1b021115.tar.gz
raylib-32c61b1fa0736113517357e1c116acdf1b021115.zip
Merge pull request #767 from Skabunkel/master
Fixed segmentation fult created by quick fix
Diffstat (limited to 'src')
-rw-r--r--src/text.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/text.c b/src/text.c
index f6a4a0d8..24f51f97 100644
--- a/src/text.c
+++ b/src/text.c
@@ -430,6 +430,7 @@ Font LoadFontFromImage(Image image, Color key, int firstChar)
spriteFont.chars[i].offsetX = 0;
spriteFont.chars[i].offsetY = 0;
spriteFont.chars[i].advanceX = 0;
+ spriteFont.chars[i].data = NULL;
}
spriteFont.baseSize = (int)spriteFont.chars[0].rec.height;
@@ -511,6 +512,7 @@ CharInfo *LoadFontData(const char *fileName, int fontSize, int *fontChars, int c
if (type != FONT_SDF) chars[i].data = stbtt_GetCodepointBitmap(&fontInfo, scaleFactor, scaleFactor, ch, &chw, &chh, &chars[i].offsetX, &chars[i].offsetY);
else if (ch != 32) chars[i].data = stbtt_GetCodepointSDF(&fontInfo, scaleFactor, ch, SDF_CHAR_PADDING, SDF_ON_EDGE_VALUE, SDF_PIXEL_DIST_SCALE, &chw, &chh, &chars[i].offsetX, &chars[i].offsetY);
+ else chars[i].data = NULL;
if (type == FONT_BITMAP)
{
@@ -686,7 +688,8 @@ void UnloadFont(Font font)
{
for (int i = 0; i < font.charsCount; i++)
{
- free(font.chars[i].data);
+ if(font.chars[i].data != NULL)
+ free(font.chars[i].data);
}
UnloadTexture(font.texture);
free(font.chars);
@@ -1442,6 +1445,7 @@ static Font LoadBMFont(const char *fileName)
font.chars[i].offsetX = charOffsetX;
font.chars[i].offsetY = charOffsetY;
font.chars[i].advanceX = charAdvanceX;
+ font.chars[i].data = NULL;
}
fclose(fntFile);