summary refs log tree commit diff
path: root/pkgs/games/openttd/fix-freetype-1.4.4.patch
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/games/openttd/fix-freetype-1.4.4.patch')
-rw-r--r--pkgs/games/openttd/fix-freetype-1.4.4.patch31
1 files changed, 31 insertions, 0 deletions
diff --git a/pkgs/games/openttd/fix-freetype-1.4.4.patch b/pkgs/games/openttd/fix-freetype-1.4.4.patch
new file mode 100644
index 00000000000..37706ce05c9
--- /dev/null
+++ b/pkgs/games/openttd/fix-freetype-1.4.4.patch
@@ -0,0 +1,31 @@
+diff --git a/src/fontcache.cpp b/src/fontcache.cpp
+===================================================================
+--- a/src/fontcache.cpp
++++ b/src/fontcache.cpp
+@@ -537,6 +537,6 @@
+ 
+ 	/* Add 1 pixel for the shadow on the medium font. Our sprite must be at least 1x1 pixel */
+-	int width  = max(1, slot->bitmap.width + (this->fs == FS_NORMAL));
+-	int height = max(1, slot->bitmap.rows  + (this->fs == FS_NORMAL));
++	unsigned int width  = max(1U, (unsigned int)slot->bitmap.width + (this->fs == FS_NORMAL));
++	unsigned int height = max(1U, (unsigned int)slot->bitmap.rows  + (this->fs == FS_NORMAL));
+ 
+ 	/* Limit glyph size to prevent overflows later on. */
+@@ -554,6 +554,6 @@
+ 	/* Draw shadow for medium size */
+ 	if (this->fs == FS_NORMAL && !aa) {
+-		for (int y = 0; y < slot->bitmap.rows; y++) {
+-			for (int x = 0; x < slot->bitmap.width; x++) {
++		for (unsigned int y = 0; y < (unsigned int)slot->bitmap.rows; y++) {
++			for (unsigned int x = 0; x < (unsigned int)slot->bitmap.width; x++) {
+ 				if (aa ? (slot->bitmap.buffer[x + y * slot->bitmap.pitch] > 0) : HasBit(slot->bitmap.buffer[(x / 8) + y * slot->bitmap.pitch], 7 - (x % 8))) {
+ 					sprite.data[1 + x + (1 + y) * sprite.width].m = SHADOW_COLOUR;
+@@ -564,6 +564,6 @@
+ 	}
+ 
+-	for (int y = 0; y < slot->bitmap.rows; y++) {
+-		for (int x = 0; x < slot->bitmap.width; x++) {
++	for (unsigned int y = 0; y < (unsigned int)slot->bitmap.rows; y++) {
++		for (unsigned int x = 0; x < (unsigned int)slot->bitmap.width; x++) {
+ 			if (aa ? (slot->bitmap.buffer[x + y * slot->bitmap.pitch] > 0) : HasBit(slot->bitmap.buffer[(x / 8) + y * slot->bitmap.pitch], 7 - (x % 8))) {
+ 				sprite.data[x + y * sprite.width].m = FACE_COLOUR;