GLint i = 0;
CLIPSPAN( x, y, n, x1, n1, i );
- if ( DBG ) fprintf( stderr, "WriteDepthSpan %d..%d (x1 %d)\n",
- (int)i, (int)n1, (int)x1 );
+ if ( DBG ) fprintf( stderr, "WriteDepthSpan %d..%d (x1 %d) (mask %p)\n",
+ (int)i, (int)n1, (int)x1, mask );
if ( mask ) {
- for ( ; i < n1 ; i++, x1++ ) {
+ for ( ; n1>0 ; i++, x1++, n1-- ) {
if ( mask[i] ) WRITE_DEPTH( x1, y, depth[i] );
}
} else {
- for ( ; i < n1 ; i++, x1++ ) {
+ for ( ; n1>0 ; i++, x1++, n1-- ) {
WRITE_DEPTH( x1, y, depth[i] );
}
}
HW_WRITE_UNLOCK();
}
+#if !HAVE_HW_DEPTH_SPANS
static void TAG(WriteMonoDepthSpan)( GLcontext *ctx,
GLuint n, GLint x, GLint y,
const GLdepth depth,
CLIPSPAN( x, y, n, x1, n1, i );
if ( DBG ) fprintf( stderr, "%s %d..%d (x1 %d) = %u\n",
- __FUNCTION__, (int)i, (int)n1, (int)x1, (uint)depth );
+ __FUNCTION__, (int)i, (int)n1, (int)x1, (GLuint)depth );
if ( mask ) {
- for ( ; i < n1 ; i++, x1++ ) {
+ for ( ; n1>0 ; i++, x1++, n1-- ) {
if ( mask[i] ) WRITE_DEPTH( x1, y, depth );
}
} else {
- for ( ; i < n1 ; i++, x1++ ) {
+ for ( ; n1>0 ; x1++, n1-- ) {
WRITE_DEPTH( x1, y, depth );
}
}
}
HW_WRITE_UNLOCK();
}
+#endif
static void TAG(WriteDepthPixels)( GLcontext *ctx,
GLuint n,
{
HW_WRITE_LOCK()
{
- GLint i;
+ GLuint i;
LOCAL_DEPTH_VARS;
if ( DBG ) fprintf( stderr, "WriteDepthPixels\n" );
{
GLint i = 0;
CLIPSPAN( x, y, n, x1, n1, i );
- for ( ; i < n1 ; i++ )
- READ_DEPTH( depth[i], (x1+i), y );
+ for ( ; n1>0 ; i++, n1-- ) {
+ READ_DEPTH( depth[i], x+i, y );
+ }
}
HW_ENDCLIPLOOP();
#endif
{
HW_READ_LOCK()
{
- GLint i;
+ GLuint i;
LOCAL_DEPTH_VARS;
if ( DBG ) fprintf( stderr, "ReadDepthPixels\n" );