Updated.
authorRyan C. Gordon <icculus@icculus.org>
Fri, 29 Mar 2002 08:19:39 +0000
changeset 142 e3eb45e37874
parent 141 1daf99b75132
child 143 337505f94c10
Updated.
CHANGELOG
TODO
--- a/CHANGELOG	Mon Mar 25 08:28:40 2002 +0000
+++ b/CHANGELOG	Fri Mar 29 08:19:39 2002 +0000
@@ -2,32 +2,44 @@
  * CHANGELOG.
  */
 
-07282001 - Initial release.
-08012001 - Added a safety memset in error setting, fixed URLs and email addr.
-08062001 - Added CD-ROM detection code to the unix platform driver.
-08072001 - Changed version to 0.1.1.
-08232001 - Fixed a potential free()ing of a NULL pointer in
-           __PHYSFS_platformEnumerateFiles() in platform/unix.c. Added
-           platform/win32.c. Other cleanups to get this compiling with
-           Visual C and CygWin. Added BAIL_MACRO for times when we were doing
-           BAIL_IF_MACRO(1, ...). Abstracted mkdir() in the platform drivers.
-           Added GRP setting output to showcfg in the Makefile. Updated INSTALL
-           with license info and Win32 build instructions. Dependency on the
-           readline library in test_physfs.c is now optional.
-           Changed version to 0.1.2.
-08282001 - win32.c now checks HOMEDRIVE, HOMEPATH, and HOME when calculating
-           the userdir. Added include files that make it a little closer to
-           compiling under Cygwin. Added a TODO file. Fixed unix.c's
-           __PHYSFS_platformCalcBaseDir() so that it actually works. Fixed
-           Makefile so that it links the test program properly.
-           Changed version to 0.1.3.
-08292001 - win32.c calculates the base dir with GetModuleFileName() first, now,
-           and falls back to SearchPath() if there were problems. Changed an
-           occurence of _MAX_PATH to MAX_PATH, so both CygWin and Visual C can
-           handle it.
-08312001 - Built PhysicsFS on Mandrake 8.0 for the PowerPC. Compiles clean,
-           but there's at least one byte-ordering issue in zip.c that needs
-           to be fixed.
+03292002 - Fixed a potential problem in ZIP_realpath() and some byte order
+           issues in zip.c. Converted unzip.c to use physfs file i/o
+           abstractions. Converted CHANGELOG to list latest entries first.
+03242002 - Added __PHYSFS_platformInit() and __PHYSFS_platformDeinit(). Win32
+           improvements by Gregory S. Read. Added PHYSFS_[us]int(8|16|32)
+           types...this breaks binary compatibility with previous PhysicsFS
+           releases! Added platform specific i/o functions, so we don't have
+           to rely on stdio anymore. Updated TODO with my comments on the
+           physfs mailing list. 1.0, here we come! Removed race condition from
+           grp.c and converted to file i/o abstraction layer calls from stdio.
+           Tons of other fixes and enhancements.
+03202002 - Patched platform/win32.c to compile.
+03152002 - PHYSFS_setSaneConfig() now handles failure to set the write dir
+           better. Patched makefile to link the test program. Changed all the
+           "write" functions to get data from a "const" buffer. Added an
+           "extras" dir, which currently contains PhysFS->SDL_RWops glue code.
+03052002 - Made unix.c's timeslice implementation more portable, and added a
+           Darwin-specific means to detect CDs (thanks to Patrick Stein).
+           Minor cleanup in win32.c (changed "for (; condition ;)" into
+           "while (condition)" ...)
+11142001 - Removed a redundant error check in platform/win32.c
+10092001 - Syntax fixes in dir.c, a FIXME in grp.c, and a "cat" command in
+           the test program. Apparently I had accidentally removed a rather
+           crucial line from dir.c a few revisions ago, and no one noticed. :(
+           Fixed. The win32 userdir will default to the base dir, now.
+09252001 - Changed API: PHYSFS_setSaneConfig() takes an organization name, and
+           sets up less directories. Be warned. Fixes from David Hedbor:
+           make setSaneConfig() set write directory correctly if it had to
+           create the directory, and make sure that the writing functions
+           get used in dir.c when a file is opened for writing/appending.
+           Updated CREDITS.
+09142001 - David Hedbor submitted a patch to handle a case where the
+           current working directory has been deleted out from under the
+           process (both in platform/unix.c and physfs.c itself). Thanks,
+           David! Added a CREDITS file. Changed the format of the author field
+           in PHYSFS_ArchiveInfo to put the email address between "<>" instead
+           of "()" chars. Updated TODO. make install now deletes previous
+           revisions of the library. Changed version to 0.1.4.
 09012001 - Happy September. Moved the Visual C project files and the zlib
            source to a separate download. Look for it at
            http://icculus.org/physfs/downloads/physfs-win32-support.zip ...
@@ -43,41 +55,32 @@
            code somewhat). Haven't tried to compile the zipfile support, and
            I still can't link the library. Dunno what the hell I'm supposed
            to do there. Isn't Unix supposed to be hard compared to this?
-09142001 - David Hedbor submitted a patch to handle a case where the
-           current working directory has been deleted out from under the
-           process (both in platform/unix.c and physfs.c itself). Thanks,
-           David! Added a CREDITS file. Changed the format of the author field
-           in PHYSFS_ArchiveInfo to put the email address between "<>" instead
-           of "()" chars. Updated TODO. make install now deletes previous
-           revisions of the library. Changed version to 0.1.4.
-09252001 - Changed API: PHYSFS_setSaneConfig() takes an organization name, and
-           sets up less directories. Be warned. Fixes from David Hedbor:
-           make setSaneConfig() set write directory correctly if it had to
-           create the directory, and make sure that the writing functions
-           get used in dir.c when a file is opened for writing/appending.
-           Updated CREDITS.
-10092001 - Syntax fixes in dir.c, a FIXME in grp.c, and a "cat" command in
-           the test program. Apparently I had accidentally removed a rather
-           crucial line from dir.c a few revisions ago, and no one noticed. :(
-           Fixed. The win32 userdir will default to the base dir, now.
-11142001 - Removed a redundant error check in platform/win32.c
-03052002 - Made unix.c's timeslice implementation more portable, and added a
-           Darwin-specific means to detect CDs (thanks to Patrick Stein).
-           Minor cleanup in win32.c (changed "for (; condition ;)" into
-           "while (condition)" ...)
-03152002 - PHYSFS_setSaneConfig() now handles failure to set the write dir
-           better. Patched makefile to link the test program. Changed all the
-           "write" functions to get data from a "const" buffer. Added an
-           "extras" dir, which currently contains PhysFS->SDL_RWops glue code.
-03202002 - Patched platform/win32.c to compile.
-03242002 - Added __PHYSFS_platformInit() and __PHYSFS_platformDeinit(). Win32
-           improvements by Gregory S. Read. Added PHYSFS_[us]int(8|16|32)
-           types...this breaks binary compatibility with previous PhysicsFS
-           releases! Added platform specific i/o functions, so we don't have
-           to rely on stdio anymore. Updated TODO with my comments on the
-           physfs mailing list. 1.0, here we come! Removed race condition from
-           grp.c and converted to file i/o abstraction layer calls from stdio.
-           Tons of other fixes and enhancements.
+08312001 - Built PhysicsFS on Mandrake 8.0 for the PowerPC. Compiles clean,
+           but there's at least one byte-ordering issue in zip.c that needs
+           to be fixed.
+08292001 - win32.c calculates the base dir with GetModuleFileName() first, now,
+           and falls back to SearchPath() if there were problems. Changed an
+           occurence of _MAX_PATH to MAX_PATH, so both CygWin and Visual C can
+           handle it.
+08282001 - win32.c now checks HOMEDRIVE, HOMEPATH, and HOME when calculating
+           the userdir. Added include files that make it a little closer to
+           compiling under Cygwin. Added a TODO file. Fixed unix.c's
+           __PHYSFS_platformCalcBaseDir() so that it actually works. Fixed
+           Makefile so that it links the test program properly.
+           Changed version to 0.1.3.
+08232001 - Fixed a potential free()ing of a NULL pointer in
+           __PHYSFS_platformEnumerateFiles() in platform/unix.c. Added
+           platform/win32.c. Other cleanups to get this compiling with
+           Visual C and CygWin. Added BAIL_MACRO for times when we were doing
+           BAIL_IF_MACRO(1, ...). Abstracted mkdir() in the platform drivers.
+           Added GRP setting output to showcfg in the Makefile. Updated INSTALL
+           with license info and Win32 build instructions. Dependency on the
+           readline library in test_physfs.c is now optional.
+           Changed version to 0.1.2.
+08072001 - Changed version to 0.1.1.
+08062001 - Added CD-ROM detection code to the unix platform driver.
+08012001 - Added a safety memset in error setting, fixed URLs and email addr.
+07282001 - Initial release.
 
 --ryan. (icculus@clutteredmind.org)
 
--- a/TODO	Mon Mar 25 08:28:40 2002 +0000
+++ b/TODO	Fri Mar 29 08:19:39 2002 +0000
@@ -8,14 +8,12 @@
   compiles under Cygwin otherwise.
 - Hmm...we can determine the actual CD-ROM drives under Win32, but how do you
   decide that there's no disc in the drive?
-- MacOS (Classic and X) support.
 - Platform-specific functions/macros to handle byte ordering.
 - A PHYSFS_readUint32(), _readSint32(), etc API.
 - Patch the zlib used on win32 to 1.1.4.
 - Switch the CHANGELOG to list newest changes first.
 - Write manpages, preferrably generated from some javadoc-style solution
   so we can make HTML versions etc from the same data.
-- Make internal code respect the new typedefs (PHYSFS_?int??).
 - Byte order API; just something simple like:
     __EXPORT__ PHYSFS_uint16 PHYSFS_swapBE16(PHYSFS_uint16 val);
     __EXPORT__ PHYSFS_uint16 PHYSFS_swapLE16(PHYSFS_uint16 val);
@@ -26,15 +24,12 @@
 - Make win32.c respect the more strict filesystem layout enforced by
   Win2000 and later.
 - Improve ZIP_seek() (archivers/zip.c)
-- entry_is_symlink() and version_does_symlinks() in zip.c have byte-order bugs.
+- Make the zipfile parse symlinks with relative paths. See the function
+  expand_symlink_path() in archivers/zip.c ...
+- Make archivers/unzip.c use the new byte order API for a little more
+  efficiency (it gets 32-bit ints as four 1-byte reads; yuck.)
 - Actually, the zipfile driver could use a lot of tweaking. Please look
   through it.
-- Abstract out the use of stdio. It's not as "std" as I would like, in my
-  experience. Add code to the platform drivers to open, read, write, seek,
-  tell, etc on an abstract data type that is opaque outside the individual
-  platform drivers, so that dir.c has a unified codebase that talks to this
-  internal abstraction layer. This opaque data type can be a FILE * on unix,
-  and a HANDLE on win32, etc...
 - Other archivers: perhaps tar(.gz|.bz2), RPM, etc. These are less
   important, since streaming archives aren't of much value to games (which
   is why zipfiles are king: random access), but it could have uses for, say,