Three changes
- Updated 0.5.2 to 0.5.3
- Updated for latest cygwin, removing MKS dependency
- Added cleaned up ODBC code
Details:
Updated 0.5.2 to 0.5.3
M RELEASE
M scsh.spec
M bin/scsh-release
M bin/scsh-test
M doc/scsh-manual/front.tex
M doc/scsh-manual/man.tex
M scsh/minor-version-number
M scsh/oldtop.scm
M scsh/scsh-version.scm
Rebuilt to get new version number
M initial.image
Remove MKS dependency now that Cygwin cat works on binary files
without munging with carriage returns and newlines.
M cig/image2script
Changed cygwin32 to cygwin.
M scsh/Makefile.in
Added #ifndef __CYGWIN__ around some pesky extern references.
M scsh/scsh/network1.c
M scsh/scsh/time1.c
Updated with optional ODBC bits. This is going to be hard to make nice
and clean.
M scsh/Makefile.in
New ODBC code
A scsh/odbc/odbc.txt
A scsh/odbc/odbc0.c
A scsh/odbc/odbc0.scm
A scsh/odbc/odbc1.c
A scsh/odbc/odbc1.scm
A scsh/odbc/odbc2.c
A scsh/odbc/odbc2.scm
A scsh/odbc/scsh-odbc.c
New odbc-interface and odbc-package
M scsh/scsh/scsh-interfaces.scm
M scsh/scsh/scsh-package.scm
neglecting to assign them in error cases. We'd return from the C function
into the cig C stub with random garbage still in these pointers. The
string rep converters would then treat this garbage as a real pointer to
be copied into malloc'd storage, and havoc would result.
I fixed the code to assign 0 to the pointers in error cases. I should fix
cig to pre-initialise out parameters. The only real problem code was in
userinfo1.c, but I scanned all the sources, and fixed a few suspicious cases
here and there as well.
files. These files mostly mediate between the C source (export) and
the corresponding C stub files (import) generated by the Scheme files
calling the C routines.
This provided much better argument type checking that before; lots of
small bugs were caught.
Also added const keywords wherever I could find a reasonable place
to improve error detection and efficiency.
Tuned up the makefile to reflect all of this structure. Its dependencies
were pretty out-of-date as it was. It could probably use further work.