http://packetstorm.tacticalflex.com/UNIX/admin/xscreensaver-3.27.tar.gz
[xscreensaver] / hacks / glx / pulsar.c
index 8c70a7e068288f1b6f7f00f356d0c2b621974951..a6125c8154ed3a3e6b02feb0a01761ee19fbed3d 100644 (file)
@@ -254,7 +254,7 @@ struct quad *quads;
 int checkError(int line, char *file)
 {
   if((errCode = glGetError()) != GL_NO_ERROR) {
-    errString = (char *)gluErrorString(errCode);
+    errString = (GLubyte *)gluErrorString(errCode);
     fprintf(stderr, "OpenGL error: %s detected at line %d in file %s\n", errString, line, file);
     exit(1);
   }
@@ -606,9 +606,13 @@ void Create_Texture(char *filename)
   /* mipmaps make the image look much nicer */
   if (do_mipmap)
        a=gluBuild2DMipmaps(GL_TEXTURE_2D, format, width, height, format, GL_UNSIGNED_BYTE, image);
-  else 
-       glTexImage2D(GL_TEXTURE_2D, 0, format, width, height, 0,
-                                format, GL_UNSIGNED_BYTE, image);
+  else
+    {
+      clear_gl_error();
+      glTexImage2D(GL_TEXTURE_2D, 0, format, width, height, 0,
+                   format, GL_UNSIGNED_BYTE, image);
+      check_gl_error("texture");
+    }
 
   free(image);
 }
@@ -628,15 +632,22 @@ void GenerateQuad(void)
 
   quad_list = glGenLists(1);
   glNewList(quad_list,GL_COMPILE);
+#if 1
   glBegin(GL_QUADS);
   glColor4f(1,0,0,.4); glNormal3f(0,0,1);  glTexCoord2f(0,0); glVertex2f(-1, -1);
   glColor4f(0,1,0,.4); glNormal3f(0,0,1);  glTexCoord2f(0,1); glVertex2f(-1,  1);
   glColor4f(0,0,1,.4); glNormal3f(0,0,1);  glTexCoord2f(1,1); glVertex2f( 1,  1);
   glColor4f(1,1,1,1); glNormal3f(0,0,1);  glTexCoord2f(1,0); glVertex2f( 1,  -1);
+#else
+  glBegin(GL_TRIANGLE_STRIP);
+  glColor4f(0,1,0,.4); glNormal3f(0,0,1);  glTexCoord2f(0,1); glVertex2f(-1,  1);
+  glColor4f(1,0,0,.4); glNormal3f(0,0,1);  glTexCoord2f(0,0); glVertex2f(-1, -1);
+  glColor4f(0,0,1,.4); glNormal3f(0,0,1);  glTexCoord2f(1,1); glVertex2f( 1,  1);
+  glColor4f(1,1,1,.4); glNormal3f(0,0,1);  glTexCoord2f(1,0); glVertex2f( 1,  -1);
+#endif
   glEnd();
   glEndList();
 
-
   quads = (struct quad *) malloc(sizeof(struct quad) * num_quads);
   for (i=0; i < num_quads; i++)
     {
@@ -647,8 +658,8 @@ void GenerateQuad(void)
       quads[i].ty = 0.;
       quads[i].tz = -10;
 
-      quads[i].drx = drand48() * 5.;
-      quads[i].dry = drand48() * 5.;
+      quads[i].drx = frand(5.0);
+      quads[i].dry = frand(5.0);
       quads[i].drz = 0;
     }
 }
@@ -728,7 +739,7 @@ void drawQuads(void) {
     }
 }
 
-GLvoid drawScene(GLvoid) 
+GLvoid drawScene(void) 
 {
 
   checkError(__LINE__, __FILE__);