Update the dgamelaunch compatibility patch.

The patch is now to be applied to dgamelaunch revision 6753fd6e.

Maybe I should maintain my own Git branch.  But this project already
uses autotools and npm.  I don't need any more software that's amazing
in theory but painful to actually work with.
This commit is contained in:
John "Elwin" Edwards 2016-01-23 19:04:17 -05:00
parent 2f95935349
commit 42188c1934

View file

@ -1,5 +1,5 @@
diff --git a/dgamelaunch.c b/dgamelaunch.c
index fbf6ef5..b52b545 100644
index a52812d..6107851 100644
--- a/dgamelaunch.c
+++ b/dgamelaunch.c
@@ -1489,7 +1489,10 @@ int
@ -43,17 +43,21 @@ index fbf6ef5..b52b545 100644
if (dowrite)
writefile (0);
@@ -2053,6 +2076,8 @@ passwordgood (char *cpw)
{
@@ -2054,6 +2077,12 @@ passwordgood (char *cpw)
char *crypted;
assert (me != NULL);
+ if (!strncmp (crypt (cpw, me->password), me->password, DGL_PASSWDLEN))
+ crypted = crypt (cpw, me->password);
+ if (crypted == NULL)
+ return 0;
+ if (!strncmp (crypted, me->password, DGL_PASSWDLEN))
+ return 1;
if (!strncmp (crypt (cpw, cpw), me->password, DGL_PASSWDLEN))
return 1;
if (!strncmp (cpw, me->password, DGL_PASSWDLEN))
+
crypted = crypt (cpw, cpw);
if (crypted == NULL)
return 0;
diff --git a/dgamelaunch.h b/dgamelaunch.h
index b9ce41c..ca5e11b 100644
index e298adf..411c7c3 100644
--- a/dgamelaunch.h
+++ b/dgamelaunch.h
@@ -20,7 +20,7 @@
@ -66,10 +70,10 @@ index b9ce41c..ca5e11b 100644
#define DGL_MAXWATCHCOLS 10
diff --git a/dgl-common.c b/dgl-common.c
index e5c80bc..fbc4eea 100644
index 80560b5..94f7b69 100644
--- a/dgl-common.c
+++ b/dgl-common.c
@@ -593,7 +593,7 @@ game_read_extra_info(struct dg_game *game, const char *extra_info_file)
@@ -608,7 +608,7 @@ game_read_extra_info(struct dg_game *game, const char *extra_info_file)
struct dg_game **
populate_games (int xgame, int *l, struct dg_user *me)
{
@ -78,7 +82,7 @@ index e5c80bc..fbc4eea 100644
DIR *pdir;
struct dirent *pdirent;
struct stat pstat;
@@ -631,13 +631,15 @@ populate_games (int xgame, int *l, struct dg_user *me)
@@ -646,13 +646,15 @@ populate_games (int xgame, int *l, struct dg_user *me)
if (!inprog) continue;
@ -95,7 +99,7 @@ index e5c80bc..fbc4eea 100644
{
char *ttrecdir = NULL;
strncpy(playername, pdirent->d_name, DGL_PLAYERNAMELEN);
@@ -651,6 +653,9 @@ populate_games (int xgame, int *l, struct dg_user *me)
@@ -666,6 +668,9 @@ populate_games (int xgame, int *l, struct dg_user *me)
graceful_exit(145);
}
replacestr++;
@ -105,7 +109,7 @@ index e5c80bc..fbc4eea 100644
ttrecdir = dgl_format_str(game, me, myconfig[game]->ttyrecdir, playername);
if (!ttrecdir) continue;
@@ -673,6 +678,8 @@ populate_games (int xgame, int *l, struct dg_user *me)
@@ -688,6 +693,8 @@ populate_games (int xgame, int *l, struct dg_user *me)
strlcpy (games[len]->name, pdirent->d_name,
strlen (pdirent->d_name) + 1);