]> git.tdb.fi Git - geometrycompositor.git/blobdiff - source/main.c
Correctly check the length of the correction value property
[geometrycompositor.git] / source / main.c
index a14ea8ded2f01568528d14eeae2b4eda03b5b3ca..1a4d5960b257059dccf6d288a0d024be9ed30b36 100644 (file)
@@ -653,8 +653,8 @@ void update_monitor_vertices(CompositedScreen *screen, CompositedMonitor *monito
                {
                        i = 1+(1+y*2+x)*3;
                        monitor->geometry_data[i] = ((x-0.5f)*distance/monitor->perspective)*10000;
-                       monitor->geometry_data[i+1] = (eye[1]+look[1]*distance-(y-0.5f)*look[2]*distance/monitor->perspective/aspect)*10000;
-                       monitor->geometry_data[i+2] = (eye[2]+look[2]*distance+(y-0.5f)*look[1]*distance/monitor->perspective/aspect)*10000;
+                       monitor->geometry_data[i+1] = (eye[1]+look[1]*distance-(y-monitor->vertical_center)*look[2]*distance/monitor->perspective/aspect)*10000;
+                       monitor->geometry_data[i+2] = (eye[2]+look[2]*distance+(y-monitor->vertical_center)*look[1]*distance/monitor->perspective/aspect)*10000;
                }
        for(i=0; i<(t+1)*(t+1)*3; ++i)
                monitor->geometry_data[16+i] = vertex_data[i]*10000;
@@ -821,7 +821,7 @@ void update_geometry_correction(Compositor *compositor, CompositedScreen *screen
        use_gl(compositor, screen);
 
        name_ptr = names;
-       for(i=0; i*4<values_length; ++i)
+       for(i=0; i*4+3<values_length; ++i)
        {
                CompositedMonitor *monitor;