/* stderr.c --- capturing stdout/stderr output onto the screensaver window.
- * xscreensaver, Copyright (c) 1991-1997 Jamie Zawinski <jwz@netscape.com>
+ * xscreensaver, Copyright (c) 1991-1998 Jamie Zawinski <jwz@jwz.org>
*
* Permission to use, copy, modify, distribute, and sell this software and its
* documentation for any purpose is hereby granted without fee, provided that
{
saver_info *si = ssi->global;
-#ifdef DEBUG
if (si->prefs.debug_p)
fprintf ((real_stderr ? real_stderr : stderr),
- "%s: resetting stderr\n", progname);
-#endif
+ "%s: resetting stderr\n", blurb());
ssi->stderr_text_x = 0;
ssi->stderr_text_y = 0;
print_stderr_1 (saver_screen_info *ssi, char *string)
{
saver_info *si = ssi->global;
- saver_preferences *p = &si->prefs;
Display *dpy = si->dpy;
Screen *screen = ssi->screen;
Window window = (ssi->stderr_overlay_window ?
char *head = string;
char *tail;
- /* In verbose mode, copy it to stderr as well. */
- if (p->verbose_p)
- fprintf (real_stderr, "%s", string);
-
if (! ssi->stderr_font)
{
char *font_name = get_string_resource ("font", "Font");
cmap = ssi->stderr_cmap;
}
- fg = get_pixel_resource ("textForeground", "Foreground", dpy, cmap);
- bg = get_pixel_resource ("textBackground", "Background", dpy, cmap);
+ fg = get_pixel_resource ("overlayTextForeground","Foreground",dpy,cmap);
+ bg = get_pixel_resource ("overlayTextBackground","Background",dpy,cmap);
gcv.font = ssi->stderr_font->fid;
gcv.foreground = fg;
gcv.background = bg;
XSetWindowAttributes attrs;
unsigned long attrmask;
-#ifdef DEBUG
if (si->prefs.debug_p)
fprintf(real_stderr,
"%s: using overlay visual 0x%0x for stderr text layer.\n",
- progname, (int) XVisualIDFromVisual (visual));
-#endif /* DEBUG */
+ blurb(), (int) XVisualIDFromVisual (visual));
ssi->stderr_cmap = XCreateColormap(si->dpy,
RootWindowOfScreen(ssi->screen),
int stdout_fd = 1;
int stderr_fd = 2;
int flags = 0;
- Boolean stderr_dialog_p, stdout_dialog_p;
+ Boolean stderr_dialog_p;
if (done) return;
done = True;
+ real_stderr = stderr;
+ real_stdout = stdout;
+
stderr_dialog_p = get_boolean_resource ("captureStderr", "Boolean");
- stdout_dialog_p = get_boolean_resource ("captureStdout", "Boolean");
- if (!stderr_dialog_p && !stdout_dialog_p)
+ if (!stderr_dialog_p)
return;
- real_stderr = stderr;
- real_stdout = stdout;
-
if (pipe (fds))
{
perror ("error creating pipe:");
if (stderr_dialog_p)
{
FILE *new_stderr_file;
+ FILE *new_stdout_file;
+
new_stderr = dup (stderr_fd);
if (new_stderr < 0)
{
perror ("could not dup() a new stderr:");
return;
}
- }
- if (stdout_dialog_p)
- {
- FILE *new_stdout_file;
+
new_stdout = dup (stdout_fd);
if (new_stdout < 0)
{