From 826972481bd5b858c29ebf34c1939832f5d5d4c9 Mon Sep 17 00:00:00 2001 From: "Charles.Forsyth" Date: Thu, 22 May 2008 18:57:24 +0000 Subject: 20080522-1956 --- CHANGES | 2 ++ appl/lib/debug.b | 3 +++ appl/lib/msgio.b | 2 +- dis/lib/debug.dis | Bin 23355 -> 23398 bytes dis/lib/msgio.dis | Bin 1391 -> 1391 bytes include/version.h | 2 +- 6 files changed, 7 insertions(+), 2 deletions(-) diff --git a/CHANGES b/CHANGES index fa287c3c..56aa73a5 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,5 @@ +20080522 + dis/lib/msgio.dis appl/lib/msgio.b - fix incorrect check for 16rFF 20080416 fix emu/Nt/os.c use of wrong name for null value move win/win-x11a references to emu/*/emu config files from emu/*/mkfile diff --git a/appl/lib/debug.b b/appl/lib/debug.b index 5e479274..44d77100 100644 --- a/appl/lib/debug.b +++ b/appl/lib/debug.b @@ -921,6 +921,9 @@ pstring(p: ref Prog, a: int): (int, string, string) (n, s, err) = pstring0(p, a, m); if(err != "" || n <= len s) break; + # guard against broken devprog + if(m >= 3 * n) + return (-1, nil, "bad string"); m *= 2; } return (n, s, err); diff --git a/appl/lib/msgio.b b/appl/lib/msgio.b index 035b1783..65ce6017 100644 --- a/appl/lib/msgio.b +++ b/appl/lib/msgio.b @@ -89,7 +89,7 @@ getbuf(fd: ref Sys->FD, buf: array of byte, n: int): (int, string) } if(buf[0] == byte 0) return (n, nil); - if(buf[0] == byte 16rFF){ + if(buf[0] != byte 16rFF){ # garbled, possibly the wrong encryption return (-1, "failure"); } diff --git a/dis/lib/debug.dis b/dis/lib/debug.dis index 8d44ecb8..a2ebc0c0 100644 Binary files a/dis/lib/debug.dis and b/dis/lib/debug.dis differ diff --git a/dis/lib/msgio.dis b/dis/lib/msgio.dis index 34ff350c..a41d8577 100644 Binary files a/dis/lib/msgio.dis and b/dis/lib/msgio.dis differ diff --git a/include/version.h b/include/version.h index fca0941d..1e70c2b7 100644 --- a/include/version.h +++ b/include/version.h @@ -1 +1 @@ -#define VERSION "Fourth Edition (20080416)" +#define VERSION "Fourth Edition (20080522)" -- cgit v1.2.3