Throw out virus in favor of ee, which is much more newbie-friendly and somewhat

less iffy than virus.


git-svn-id: svn://katsu.triplehelix.org/dgamelaunch/trunk@150 db0b04b0-f4d1-0310-9a6d-de3e77497b0e
This commit is contained in:
Joshua Kwan 2004-01-23 18:14:48 +00:00
parent 71804b9f88
commit 849a8c5012
5 changed files with 4815 additions and 4503 deletions

7
Bugs
View File

@ -1,6 +1 @@
* Since virus kept calling alarm() on itself, I removed SIGALRM handling
altogether, which breaks occasional refresh of the bottom status line.
I don't consider this a huge bug, but if one day I, or someone else,
gets really bored, the full solution to this would be to bring back
the virus signal handling, and just clear the alarm calls before exiting
and going back to dgamelaunch code (or clear the alarm() handlers).
None!!

View File

@ -1,12 +1,7 @@
1.4 (2003/12/27)
* Major cleanups - remove most uses of strcpy() and strcat(), except
in virus.c, replace with snprintf.
* Major cleanups - remove most uses of strcpy() and strcat()
* Add support for mailing users while they are playing.
[nh343-simple_mail.diff is needed]
* Rip out some crazy getopt code that was causing virus to go crazy
after a "q!" Since dgamelaunch only passes up to argv[1] to virus
*ever*, just make it use argv[1] and panic if argc < 2, which should
never happen anyway.
* Add a confirmation to the change password screen so people like me
don't change their passwords by accident all the time.
* Remove many unused variables and make some functions void because
@ -37,6 +32,7 @@
* Port to FreeBSD 5 and Solaris (as of yet, untested)
* Switched to own version of getnstr() that always accepts both
^H and ^?
* Replace virus with ee!!
1.3.10 (2003/10/22)
* Added a mode flag to the open call for inprogress lock files.

View File

@ -53,6 +53,7 @@
#include <sys/types.h>
#include <sys/file.h> /* for flock() */
#include <sys/time.h>
#include <sys/wait.h>
#ifndef __FreeBSD__
# include <crypt.h>
@ -88,7 +89,7 @@
extern FILE* yyin;
extern int yyparse ();
extern int vi_main (int argc, char **argv);
extern int ee_main (int argc, char **argv);
extern int ttyplay_main (char *ttyfile, int mode, int rstripgfx);
extern int ttyrec_main (char *);
extern int master;
@ -716,7 +717,7 @@ drawmenu ()
{
mvprintw (banner.len + 2, 1, "Logged in as: %s", me->username);
mvaddstr (banner.len + 4, 1, "c) Change password");
mvaddstr (banner.len + 5, 1, "o) Edit option file (requires vi use)");
mvaddstr (banner.len + 5, 1, "o) Edit option file (uses ee)");
mvaddstr (banner.len + 6, 1, "w) Watch games in progress");
mvaddstr (banner.len + 7, 1, "p) Play nethack!");
mvaddstr (banner.len + 8, 1, "q) Quit");
@ -1175,20 +1176,37 @@ editoptions ()
{
FILE *rcfile;
char *myargv[3];
pid_t editor;
rcfile = fopen (rcfilename, "r");
printf (" read");
if (!rcfile) /* should not really happen except for old users */
write_canned_rcfile (rcfilename);
/* use virus to edit */
/* use ee to edit */
myargv[0] = "";
myargv[1] = rcfilename;
myargv[2] = 0;
endwin ();
vi_main (2, myargv);
editor = fork();
if (editor == -1)
{
perror("fork");
graceful_exit(114);
}
else if (editor == 0)
{
ee_main (2, myargv);
exit(0);
}
else
waitpid(editor, NULL, 0);
refresh ();
}

4790
ee.c Normal file

File diff suppressed because it is too large Load Diff

4487
virus.c

File diff suppressed because it is too large Load Diff