소스 검색

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

Nicolas Cannasse 7 년 전
부모
커밋
59eccd6eeb
1개의 변경된 파일3개의 추가작업 그리고 2개의 파일을 삭제
  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;
 	}