projects
/
xscreensaver
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
From http://www.jwz.org/xscreensaver/xscreensaver-5.39.tar.gz
[xscreensaver]
/
hacks
/
glx
/
pulsar.c
diff --git
a/hacks/glx/pulsar.c
b/hacks/glx/pulsar.c
index 12b16a80de83aed4fe916cf957324dda9e1dbe35..285b5decc344fed70bda1c3a65fe1d70630cd6e1 100644
(file)
--- a/
hacks/glx/pulsar.c
+++ b/
hacks/glx/pulsar.c
@@
-44,8
+44,8
@@
#define DEFAULTS "*delay: 10000 \n" \
"*showFPS: False \n" \
#define DEFAULTS "*delay: 10000 \n" \
"*showFPS: False \n" \
-# define re
fresh
_pulsar 0
-# define pulsar_handle_event
0
+# define re
lease
_pulsar 0
+# define pulsar_handle_event
xlockmore_no_events
# include "xlockmore.h" /* from the xpulsar distribution */
#else /* !STANDALONE */
# include "xlock.h" /* from the xlockmore distribution */
# include "xlockmore.h" /* from the xpulsar distribution */
#else /* !STANDALONE */
# include "xlock.h" /* from the xlockmore distribution */
@@
-61,7
+61,7
@@
# endif /* VMS */
#endif
# endif /* VMS */
#endif
-#include "x
pm-ximage
.h"
+#include "x
image-loader
.h"
/* Functions for loading and storing textures */
/* Functions for loading and storing textures */
@@
-160,8
+160,8
@@
ENTRYPOINT ModeSpecOpt pulsar_opts = {countof(opts), opts, countof(vars), vars,
#ifdef USE_MODULES
ModStruct pulsar_description =
#ifdef USE_MODULES
ModStruct pulsar_description =
-{"pulsar", "init_pulsar", "draw_pulsar",
"release_pulsar"
,
- "draw_pulsar", "init_pulsar",
NULL
, &pulsar_opts,
+{"pulsar", "init_pulsar", "draw_pulsar",
NULL
,
+ "draw_pulsar", "init_pulsar",
"free_pulsar"
, &pulsar_opts,
1000, 1, 2, 1, 4, 1.0, "",
"OpenGL pulsar", 0, NULL};
#endif
1000, 1, 2, 1, 4, 1.0, "",
"OpenGL pulsar", 0, NULL};
#endif
@@
-230,11
+230,16
@@
static void Create_Texture(ModeInfo *mi, const char *filename)
int format;
if ( !strncmp(filename, "BUILTIN", 7))
int format;
if ( !strncmp(filename, "BUILTIN", 7))
- image = Generate_Image(&width, &height, &format);
+ {
+ BUILTIN:
+ image = Generate_Image(&width, &height, &format);
+ }
else
{
else
{
- XImage *ximage = xpm_file_to_ximage (MI_DISPLAY (mi), MI_VISUAL (mi),
- MI_COLORMAP (mi), filename);
+ XImage *ximage = file_to_ximage (MI_DISPLAY (mi), MI_VISUAL (mi),
+ filename);
+ if (! ximage)
+ goto BUILTIN;
image = (GLubyte *) ximage->data;
width = ximage->width;
height = ximage->height;
image = (GLubyte *) ximage->data;
width = ximage->width;
height = ximage->height;
@@
-363,6
+368,10
@@
static void initializeGL(ModeInfo *mi, GLsizei width, GLsizei height)
glColorMaterial(GL_FRONT_AND_BACK, GL_AMBIENT_AND_DIFFUSE);
}
glColorMaterial(GL_FRONT_AND_BACK, GL_AMBIENT_AND_DIFFUSE);
}
+# ifdef HAVE_JWZGLES /* #### glPolygonMode other than GL_FILL unimplemented */
+ do_wire = 0;
+# endif
+
if (do_wire)
glPolygonMode(GL_FRONT_AND_BACK, GL_LINE);
else
if (do_wire)
glPolygonMode(GL_FRONT_AND_BACK, GL_LINE);
else
@@
-479,10
+488,7
@@
init_pulsar(ModeInfo * mi)
pulsarstruct *gp;
pulsarstruct *gp;
- if (Pulsar == NULL) {
- if ((Pulsar = (pulsarstruct *) calloc(MI_NUM_SCREENS(mi), sizeof (pulsarstruct))) == NULL)
- return;
- }
+ MI_INIT (mi, Pulsar);
gp = &Pulsar[screen];
gp->window = MI_WINDOW(mi);
gp = &Pulsar[screen];
gp->window = MI_WINDOW(mi);
@@
-499,18
+505,10
@@
init_pulsar(ModeInfo * mi)
/* all sorts of nice cleanup code should go here! */
/* all sorts of nice cleanup code should go here! */
-ENTRYPOINT void
releas
e_pulsar(ModeInfo * mi)
+ENTRYPOINT void
fre
e_pulsar(ModeInfo * mi)
{
{
- int screen;
- if (Pulsar != NULL) {
- for (screen = 0; screen < MI_NUM_SCREENS(mi); screen++) {
- pulsarstruct *gp = &Pulsar[screen];
- free(gp->quads);
- }
- (void) free((void *) Pulsar);
- Pulsar = NULL;
- }
- FreeAllGL(mi);
+ pulsarstruct *gp = &Pulsar[MI_SCREEN(mi)];
+ free(gp->quads);
}
#endif
}
#endif