]> granicus.if.org Git - nethack/commitdiff
sanity check for dlb_fopen
authorkeni <keni>
Mon, 9 Jan 2012 22:42:48 +0000 (22:42 +0000)
committerkeni <keni>
Mon, 9 Jan 2012 22:42:48 +0000 (22:42 +0000)
Fail if dlb_fopen is called with a non-read mode.

src/dlb.c

index 6f0d3fddb76e51a1d289c735b7d5a35c47f15db8..50c0230f2b09ec0dd0f231414bd5334d6de8adff 100644 (file)
--- a/src/dlb.c
+++ b/src/dlb.c
@@ -468,6 +468,9 @@ dlb_fopen(name, mode)
 
     if (!dlb_initialized) return (dlb *) 0;
 
+       /* only support reading; ignore possible binary flag */
+    if (!mode || mode[0] != 'r') return (dlb *)0;
+
     dp = (dlb *) alloc(sizeof(dlb));
     if (do_dlb_fopen(dp, name, mode))
        dp->fp = (FILE *) 0;