Răsfoiți Sursa

ensure 8 bytes alignment on streaming data (fix for some low end android devices)

Nicolas Cannasse 7 ani în urmă
părinte
comite
59eccd6eeb
1 a modificat fișierele cu 3 adăugiri și 2 ștergeri
  1. 3 2
      h3d/impl/GlDriver.hx

+ 3 - 2
h3d/impl/GlDriver.hx

@@ -881,10 +881,11 @@ class GlDriver extends Driver {
 	inline function streamData(data, pos:Int, length:Int) {
 		#if hl
 		var needed = streamPos + length;
-		if( needed > streamLen ) expandStream(needed);
+		var total = (needed + 7) & ~7; // align on 8 bytes
+		if( total > streamLen ) expandStream(total);
 		streamBytes.blit(streamPos, data, pos, length);
 		data = streamBytes.offset(streamPos);
-		streamPos += length;
+		streamPos = total;
 		#end
 		return data;
 	}