From 3a5c4eba522e5d1f5d55a8b57862084fbf635a3d Mon Sep 17 00:00:00 2001
From: Jonas Kulla <Nyocurio@gmail.com>
Date: Fri, 20 Dec 2013 07:39:11 +0100
Subject: [PATCH] BltShader: More hacks! Yay!

Seriously, I'm about to kill myself over this..
Not even gonna bother with math-if optimization.
---
 shader/bitmapBlit.frag | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/shader/bitmapBlit.frag b/shader/bitmapBlit.frag
index fcef692..1913c5b 100644
--- a/shader/bitmapBlit.frag
+++ b/shader/bitmapBlit.frag
@@ -27,7 +27,11 @@ void main()
 	float at = ab*as;
 	resFrag.a = at + ad - ad*at;
 
-	resFrag.rgb = as*srcFrag.rgb + (1.0-at) * ad * dstFrag.rgb;
+	// Sigh...
+	if (ad == 0.0)
+		resFrag.rgb = srcFrag.rgb;
+	else
+		resFrag.rgb = as*srcFrag.rgb + (1.0-at) * ad * dstFrag.rgb;
 
 	gl_FragColor = resFrag;
 }