PATCH FILE FOR DOPRNT.MAC IN DECUS 11-SP-18 KIT Purpose:- This program calls the function dtoa ($$dtoa) to convert floating and double variables to ascii strings. It allocates a character array BUF of size 20 chars to receive those strings. This is indequate for double precision variables. Ensure that the true size of BUF is passed to $$dtoa. Method:- Change the allocation to 30 chars. Pass the true buffer size to $$dtoa. There is a check in dtoa.c to ensure that strings longer than this are not written. Patching:- Patch the DOPRNT.MAC file using SLP. The commands are R SLP DOPRNT.NEW=DOPRNT.OLD,DOPRNT.PAT/A/T where DOPRNT.OLD is the 11-SP-18 version of DOPRNT.MAC, DOPRNT.NEW is the result of the patch and DOPRNT.PAT is the differences file which begins with the line -42 below. -42 ; 0000b1 12-Sep-84 HFR Increased BUF size to 30 for doubles. ; 0000b2 24-Feb-85 HFR Send true BUF size to $$dtoa. -59,59 ;; BUF = LORD-20. ; 20 bytes number output buffer ;b1 BUF = LORD-30. ; 30 bytes number output buffer ;b1 -181,181 ;; mov WIDE(r5),-(sp) ; Restricted width version ;b2 mov #,-(sp) ; Size of BUF space is width ;b2 /