author | Ryan C. Gordon <icculus@icculus.org> |
Wed, 28 Aug 2002 23:32:29 +0000 | |
changeset 483 | d788c84d8694 |
parent 479 | 5990d6efd4f8 |
child 484 | 607915da2103 |
permissions | -rw-r--r-- |
59 | 1 |
/* |
2 |
* CHANGELOG. |
|
3 |
*/ |
|
4 |
||
479 | 5 |
08282002 - Cleanups in grp.c so that Visual C++ doesn't complain anymore. |
477 | 6 |
08222002 - Fixed ZIP_exists() to work with directories. Now breaks out of |
7 |
__PHYSFS_verifySecurity() early if a path element is missing |
|
8 |
(since all the others will be, too)...this check is only done |
|
9 |
if symlinks are disabled, but we might as well save easy cycles |
|
10 |
where we can. |
|
466 | 11 |
08212002 - Did a couple tedious-for-small-rewards cleanups, optimizations, |
12 |
corrections and streamlinings I've been meaning to do. Touched a |
|
469 | 13 |
lot of code. One of the side results is that ZIP_isDirectory() |
14 |
got fixed. |
|
463 | 15 |
08192002 - Generalized sorting routines, moved them into physfs.c and removed |
16 |
the multiple copies from the various archivers. Adding profiling |
|
17 |
code (currently only for sort routines)...enable it with |
|
18 |
--enable-profiling in the configure script. Fixed incorrect |
|
19 |
behaviours in configure.in. |
|
460 | 20 |
08172002 - Patched configure.in to work around buggy autoconfs. |
458 | 21 |
08162002 - Fixed QPAK archiver, since I broke it (sorry!). Also fixed a |
22 |
qpak memory leak. |
|
451 | 23 |
08092002 - Added Quake PAK archiver (qpak.c) by Ed Sinjiashvili. Thanks! |
455 | 24 |
Made (successful?) attempt to fix pthread-to-ui64 cast problem. |
25 |
Check for OS/2 in configure.in, in case anyone gets autoconf and |
|
26 |
such to work right on their OS/2 box. |
|
449 | 27 |
08012002 - Patched win32.c to compile. |
447 | 28 |
07302002 - Minor error handling fix (thanks, Alexander!) |
428 | 29 |
07292002 - Found some memory leaks, thanks to Valgrind (which rules, btw). |
445 | 30 |
Added Russian translations (koi8-r, cp1251, cp866, and iso-8859-5) |
31 |
by Ed Sinjiashvili. Added Spanish translation by Pedro J. Pérez. |
|
32 |
Debian package support in CVS, thanks to Colin Bayer. French |
|
33 |
translation by Stéphane Peter. |
|
425 | 34 |
07282002 - macclassic.c now returns human readable error messages instead of |
426 | 35 |
ERR_OS_ERROR. Closing files on MacOS no longer fails if the volume |
36 |
info can't be flushed. Minor error message tweak in os2.c. All |
|
37 |
possible human-readable literal strings (including all those OS/2 |
|
38 |
and MacOS error messages) have moved to constants in |
|
39 |
physfs_internal.h...this allows the library to be translated to |
|
436 | 40 |
other spoken languages fairly easily. |
418 | 41 |
07272002 - Patched the OS/2 code to be useful...works pretty well, now. Added |
410 | 42 |
makeos2.cmd for building (not an ideal solution, but oh well). |
414 | 43 |
Initialized some variables in zip.c to prevent compiler whining. |
400 | 44 |
07262002 - Fixed a typo in documentation. Archivers with matching file |
45 |
extensions are now given first shot at opening an archive, but if |
|
403 | 46 |
they fail, the other archivers are tried. More fixes to zip.c's |
405 | 47 |
ZIP_enumerateFiles(). Wrote an OS/2 platform driver based on API |
48 |
specs and a heavy pounding of Google Groups...as I don't have an |
|
49 |
OS/2 compiler at the moment, it probably doesn't even compile. :) |
|
391 | 50 |
07252002 - configure.in and unix.c now deal with platforms that lack a |
51 |
functional pthread library. Edward Rudd sent in a patch to the RPM |
|
52 |
specfile to have the build system set the correct version. |
|
394 | 53 |
Clean ups in grp.c, beos.cpp and macclassic.c. |
380 | 54 |
07242002 - Rewrote ZIP_enumerate(). Hopefully it sucks less this time. |
383 | 55 |
unix.c and configure.in now have the infrastructure to disable |
56 |
the CD-ROM detection code, and use a stub that successfully (and |
|
57 |
unconditionally) reports no detected discs. Currently this is |
|
58 |
used on AtheOS (which doesn't have CD-ROM support at the moment |
|
59 |
anyhow), but it will be useful to get the library up on odd, |
|
60 |
Unix-like systems that don't use either getmntinfo() or getmntent(). |
|
366 | 61 |
07232002 - Cleaned up the cut-and-pastes in the various file enumeration |
62 |
routines and moved it into __PHYSFS_addToLinkedStringList(). |
|
63 |
Tons more ZIP file enhancing. I'm fairly certain it's robust and |
|
64 |
fast in every reasonable respect, now. GRP archiver now caches |
|
65 |
the file table...it was generally overhauled like the ZIP driver. |
|
375 | 66 |
Added "ls" as an alias of "enumerate" in test_physfs. |
377 | 67 |
I lied about zip.c's robustness; disabled the enumeration code. |
356 | 68 |
07212002 - More FreeBSD build system patches. Added some new autoconf spew to |
358 | 69 |
.cvsignore. bootstrap now copies the appropriate Makefile.am |
70 |
instead of rename()ing it. |
|
352 | 71 |
07192002 - Cleaned up configure.in and unix.c so that we check by available |
72 |
header to determine the appropriate CD-ROM detection code...this |
|
73 |
should make this more future-proof (and probably get it building |
|
74 |
out of the box on other BSD platforms.) |
|
346 | 75 |
07172002 - Fixed seeking backwards in ZIP_seek(). Changed the error message |
348 | 76 |
ERR_TOO_MANY_SYMLINKS to ERR_SYMLINK_LOOP. Patches to build system |
349 | 77 |
and unix.c for FreeBSD compatibility. Added physfs.spec to |
78 |
"make dist" archives (thanks, Edward Rudd!). |
|
346 | 79 |
07152002 - Symlinks in ZIP archives are detected correctly now, I think. |
339 | 80 |
07142002 - Use GetVolumeInformation() instead of GetDiskFreeSpace() in |
81 |
win32.c's mediaInDrive() function. This allows Windows NT 3.x to |
|
82 |
correctly detect CD-ROM drives. Library now appears to be fully |
|
83 |
functional on WinNT 3.51...need to try NT 3.1 still. :) |
|
341 | 84 |
Patches to new ZIP code; cleaned up bugs in symlink reading code, |
85 |
but we incorrectly identify some entries as symlinks, which doesn't |
|
86 |
fly...for now, symlink code is commented out, so symlinks look |
|
87 |
like regular files (and reading from a symlink entry gives you |
|
88 |
the link as file data). |
|
336 | 89 |
07122002 - Rewrote the ZIP archiver to no longer use Gilles Vollant's unzip.c |
90 |
code. Losing that abstraction should make the ZIP archiver |
|
91 |
significantly more efficient, and halved the amount of code used. |
|
92 |
Plus, being a control freak, I like my coding style more than |
|
93 |
Gilles's. :) There are still bugs to shake out, but this is good |
|
94 |
progress. |
|
333 | 95 |
07112002 - configure.in updated to make it happier on newer autoconfs |
334 | 96 |
(thanks again, Alexander!). FIXME cleanups. |
324 | 97 |
07102002 - Added a byteorder-friendly convenience API, so you can read/write |
98 |
data and convert to the native byteorder without too much effort. |
|
99 |
Upped version to 0.1.7. |
|
329 | 100 |
Build system corrections for BeOS and Cygwin (thanks, Alexander!). |
101 |
Added RPM specfile for PhysicsFS (thanks, Edward Rudd!). |
|
315 | 102 |
06292002 - Fixed incorrect error message when opening a file for read without |
103 |
defining a search path. LOTS of win32 updates and fixes; lots of |
|
104 |
things that were broken work now, and we are slowly becoming |
|
105 |
more compatible with legacy win32 systems. Builds on Cygwin again. |
|
106 |
All platform drivers (except beos.cpp) had a buffer overflow when |
|
107 |
detecting mounted CD-ROM drives...it only occurs when a drive is |
|
108 |
detected, and it probably won't result in your box getting rooted, |
|
320 | 109 |
but upgrade soon anyhow. Readded the .cvsignore files from the old |
110 |
build system. |
|
309 | 111 |
06282002 - Reworked build system _AGAIN_. |
293 | 112 |
06222002 - Alexander Pipelka spotted a bug in the file open routines in |
113 |
posix.c; patched. |
|
290 | 114 |
06152002 - Autoconf build system will now generate shared libraries on BeOS, |
115 |
and (supposedly) Cygwin. |
|
116 |
06142002 - Rewrote autoconf build system. It now works around the MacOS X bug |
|
117 |
that prevented shared libraries from building. |
|
281 | 118 |
06112002 - Updated CodeWarrior projects and added them to CVS. _Finally_ |
119 |
officially released 0.1.6. |
|
276 | 120 |
06102002 - Major overhauls to platform/win32.c ... should work on all Windows |
121 |
platforms, including 95/98/ME and NT/2K/XP flavors. Someone should |
|
122 |
see if this builds on WinCE! :) You no longer need the latest |
|
123 |
platform SDK to build it, either; the questionable DLL is accessed |
|
124 |
with LoadLibrary() at runtime now, and handled if not present. This |
|
125 |
now builds correctly on a freshly installed Visual Studio 6.0, and |
|
277 | 126 |
the DLL it builds works everywhere. Plus, a bunch of other bugs |
279 | 127 |
and incorrect behaviours were squashed. Visual Studio 6.0 project |
128 |
file added to CVS. |
|
271 | 129 |
06082002 - Fixes to __PHYSFS_platformEnumerateFiles() in win32.c: cleaned up |
130 |
memory leak, handles paths more robustly, and prevents possible |
|
131 |
skipped file entries. Removed AC_C_CONST and AC_TYPE_SIZE_T checks |
|
132 |
from configure.in (not needed, and they broke BeOS build). Clean |
|
133 |
out the docs/ directory when doing a "make dist". Fixed crashbug |
|
274 | 134 |
when calling PHYSFS_deinit() more than once in a row. Tried to get |
135 |
MacOS X to build a shared library, gave up; I'm doing something |
|
136 |
wrong in my Makefile.am, I think. On MacOS X, running ./configure |
|
137 |
--enable-static --disable-shared works, though. Hopefully someone |
|
138 |
will fix this soon. In unix.c, the Darwin version of |
|
139 |
__PHYSFS_platformDetectAvailableCDs() was free()ing a static |
|
140 |
buffer; fixed. |
|
266 | 141 |
06072002 - Manpages! Finally installed Doxygen and scratched together a |
142 |
Doxyfile. After some revision to physfs.h, we've got a rather |
|
143 |
nice API reference. |
|
256 | 144 |
06062002 - Fixed __PHYSFS_platformSeek() in archivers/posix.c. Implemented the |
257 | 145 |
getLastModTime method in archivers/zip.c (returns legitimate info) |
146 |
and archivers/grp.c (returns lastmodtime of GRPfile itself in the |
|
260 | 147 |
physical filesystem). Put a 64-bit _llseek() version of the seek() |
148 |
and tell() methods in platform/posix.c, but you need to hack (or |
|
267 | 149 |
rather, fix) configure.in to enable it. From Greg on win32.c: Fixed |
150 |
file enumerator function (needed a wildcard '*' specification), CD |
|
151 |
enumeration only reports CDs that have media, getLastModTime() has |
|
152 |
been implemented. |
|
253 | 153 |
06012002 - Added -Wall to debug builds. Removed ANSI stdio calls from |
154 |
platform/posix.c, and replaced them with actual POSIX calls (that |
|
155 |
is, fopen() became open(), fseek() became lseek(), etc...) |
|
250 | 156 |
05272002 - Added some explicit casts when calling malloc() in platform/posix.c |
245 | 157 |
05252002 - Added John Hall's file modification time patch, and added a |
158 |
getlastmodtime command to test_physfs. Corrected error reporting |
|
159 |
for missing files a little bit. Changed build system to only try |
|
160 |
building beos.cpp if on a BeOS system (since we need a C++ compiler |
|
248 | 161 |
available to do so). Implemented getLastModTime in macclassic.c. |
239 | 162 |
05242002 - Upped version to 0.1.6 (not officially released yet). |
238 | 163 |
05232002 - Fixed the build system to always package the complete source, not |
230 | 164 |
just what we built for a given system, when doing a "make dist". |
236 | 165 |
Updated INSTALL. Wrote BeOS platform code (platform/beos.cpp). |
166 |
Split unix.c into unix.c and posix.c. Linux and BeOS both share |
|
167 |
posix.c, although I don't think it's completely POSIX compliant at |
|
168 |
this point (not that it matters much). |
|
226 | 169 |
05212002 - Cleaned up some FIXMEs. |
223 | 170 |
05202002 - Added .cvsignore files. |
171 |
05162002 - Edward Rudd also caught an embarrassing screwup by me in |
|
226 | 172 |
unix.c: the open-for-append call was using "wb+" instead of |
173 |
"ab" when calling fopen(). Doh! |
|
174 |
05152002 - configure script now deals with systems that have a readline |
|
175 |
lib, but require it to be linked with curses. Thanks to Edward |
|
219 | 176 |
Rudd for the patch. |
214
19846c18071b
Initial autoconf support.
Ryan C. Gordon <icculus@icculus.org>
parents:
212
diff
changeset
|
177 |
05102002 - A trimmed-down zlib 1.1.4 is now included in the source distro, for |
19846c18071b
Initial autoconf support.
Ryan C. Gordon <icculus@icculus.org>
parents:
212
diff
changeset
|
178 |
use by win32, MacOS, and Unix systems that don't have it installed |
19846c18071b
Initial autoconf support.
Ryan C. Gordon <icculus@icculus.org>
parents:
212
diff
changeset
|
179 |
on the system. Autoconf support! Initial attempt at this. Lots of |
19846c18071b
Initial autoconf support.
Ryan C. Gordon <icculus@icculus.org>
parents:
212
diff
changeset
|
180 |
stuff may be very broken. |
212 | 181 |
05082002 - From Greg: More win32 work. Library is now 95% functional on win32. |
182 |
Only known win32 problem is that the CD drives are reported whether |
|
183 |
they contain a disc or not). |
|
184 |
05062002 - From Greg: Win32 boxes without the latest Platform SDK can now |
|
185 |
#define DISABLE_NT_SUPPORT. Other fixes. |
|
209 | 186 |
04242002 - Updated win32 info in INSTALL to discuss Platform SDK issues. |
207 | 187 |
04202002 - Added a (very) quick and (very) dirty http server to the |
188 |
extras directory (public domain), as another example of using |
|
189 |
the library. |
|
226 | 190 |
04192002 - Corrected some win32 info in INSTALL. Changed Makefile to |
205 | 191 |
package releases as .tar.gz instead of .tar.bz2. |
226 | 192 |
04122002 - Some win32 cleanups and fixes across several files. Upped |
202 | 193 |
version to 0.1.5. |
192 | 194 |
04082002 - Fixed problem when calling __PHYSFS_setError before PHYSFS_init. |
226 | 195 |
04062002 - Added MacOS info, etc to INSTALL. Patched unix.c and |
192 | 196 |
test_physfs.c to compile on Darwin again. |
179 | 197 |
04052002 - Added byte ordering API. Byte ordering fixes in grp.c, and some |
184 | 198 |
cleanups in unzip.c. Mac work is more or less complete. |
174 | 199 |
04042002 - Mac work continues. Almost complete, now. test_physfs now has |
200 |
tests for write, append, and filelength, and most of the |
|
201 |
commands can tolerate a quoted argument (although this is |
|
202 |
hacky, it's good enough for these purposes). Upped test_physfs |
|
203 |
version to 0.1.1. Added a malloc-failure check in the Unix |
|
204 |
CD-ROM detection code. |
|
168 | 205 |
04032002 - PHYSFS_init always makes sure the calling thread initializes its |
186 | 206 |
error state. Win32 codebase is updated with mutex implementation |
207 |
(thanks, Greg!). |
|
154 | 208 |
04022002 - Mac work continues. Found a bug where we put a double dir |
209 |
separator in if we had to resort to the fallback userdir (if |
|
210 |
__PHYSFS_platformGetUserDir() returned NULL to calculateUserDir(). |
|
211 |
Made note of potential infinite recursion in platform driver docs. |
|
151 | 212 |
04012002 - (_NOT_ an April Fool's Joke:) Started working on MacOS Classic |
213 |
port. Added skeleton.c to platform directory. Minor patches to |
|
214 |
get things compiling on Mac (notably, DirInfo conflicts with |
|
215 |
a type exposed by MacOS's namespace-polluting API, and some |
|
216 |
typecasting issues). Found a call to ferror() I had missed in |
|
217 |
unzip.c. |
|
226 | 218 |
03302002 - Mutexes! PhysicsFS should be thread safe now, so long as you |
146 | 219 |
don't try to do something like close a file at the same time as |
220 |
you are reading from it in another thread. All reasonable race |
|
221 |
conditions should now be gone, but the new code will need some |
|
222 |
eyeballing before we install it on life support systems or anything. |
|
223 |
The mutex abstraction is implemented in unix.c, win32.c will be |
|
224 |
updated shortly. |
|
142 | 225 |
03292002 - Fixed a potential problem in ZIP_realpath() and some byte order |
226 |
issues in zip.c. Converted unzip.c to use physfs file i/o |
|
227 |
abstractions. Converted CHANGELOG to list latest entries first. |
|
228 |
03242002 - Added __PHYSFS_platformInit() and __PHYSFS_platformDeinit(). Win32 |
|
229 |
improvements by Gregory S. Read. Added PHYSFS_[us]int(8|16|32) |
|
230 |
types...this breaks binary compatibility with previous PhysicsFS |
|
231 |
releases! Added platform specific i/o functions, so we don't have |
|
232 |
to rely on stdio anymore. Updated TODO with my comments on the |
|
233 |
physfs mailing list. 1.0, here we come! Removed race condition from |
|
234 |
grp.c and converted to file i/o abstraction layer calls from stdio. |
|
226 | 235 |
Tons of other fixes and enhancements. |
142 | 236 |
03202002 - Patched platform/win32.c to compile. |
237 |
03152002 - PHYSFS_setSaneConfig() now handles failure to set the write dir |
|
238 |
better. Patched makefile to link the test program. Changed all the |
|
239 |
"write" functions to get data from a "const" buffer. Added an |
|
240 |
"extras" dir, which currently contains PhysFS->SDL_RWops glue code. |
|
241 |
03052002 - Made unix.c's timeslice implementation more portable, and added a |
|
242 |
Darwin-specific means to detect CDs (thanks to Patrick Stein). |
|
243 |
Minor cleanup in win32.c (changed "for (; condition ;)" into |
|
244 |
"while (condition)" ...) |
|
245 |
11142001 - Removed a redundant error check in platform/win32.c |
|
246 |
10092001 - Syntax fixes in dir.c, a FIXME in grp.c, and a "cat" command in |
|
247 |
the test program. Apparently I had accidentally removed a rather |
|
248 |
crucial line from dir.c a few revisions ago, and no one noticed. :( |
|
249 |
Fixed. The win32 userdir will default to the base dir, now. |
|
250 |
09252001 - Changed API: PHYSFS_setSaneConfig() takes an organization name, and |
|
226 | 251 |
sets up less directories. Be warned. Fixes from David Hedbor: |
252 |
make setSaneConfig() set write directory correctly if it had to |
|
142 | 253 |
create the directory, and make sure that the writing functions |
254 |
get used in dir.c when a file is opened for writing/appending. |
|
255 |
Updated CREDITS. |
|
256 |
09142001 - David Hedbor submitted a patch to handle a case where the |
|
257 |
current working directory has been deleted out from under the |
|
258 |
process (both in platform/unix.c and physfs.c itself). Thanks, |
|
259 |
David! Added a CREDITS file. Changed the format of the author field |
|
260 |
in PHYSFS_ArchiveInfo to put the email address between "<>" instead |
|
261 |
of "()" chars. Updated TODO. make install now deletes previous |
|
262 |
revisions of the library. Changed version to 0.1.4. |
|
90 | 263 |
09012001 - Happy September. Moved the Visual C project files and the zlib |
264 |
source to a separate download. Look for it at |
|
265 |
http://icculus.org/physfs/downloads/physfs-win32-support.zip ... |
|
266 |
Updated the INSTALL doc for Win32 building. Rewrote win32.c's |
|
267 |
__PHYSFS_platformRealPath() to not rely on Visual C's runtime lib, |
|
268 |
which was the last Cygwin incompatibility (although the Makefile |
|
269 |
needs to be updated to build a DLL under Cygwin). Tinkered with the |
|
94 | 270 |
Makefile a little, but it needs more work. Started working on a |
271 |
MacOS version. All I have is CodeWarrior 4, which is way out of |
|
272 |
date, and (for what is supposed to be an ultra-user-friendly |
|
273 |
environment) is completely uninituitive to me. Still, managed to |
|
274 |
get most everything compiling, which improved the quality of the |
|
275 |
code somewhat). Haven't tried to compile the zipfile support, and |
|
276 |
I still can't link the library. Dunno what the hell I'm supposed |
|
277 |
to do there. Isn't Unix supposed to be hard compared to this? |
|
142 | 278 |
08312001 - Built PhysicsFS on Mandrake 8.0 for the PowerPC. Compiles clean, |
279 |
but there's at least one byte-ordering issue in zip.c that needs |
|
280 |
to be fixed. |
|
281 |
08292001 - win32.c calculates the base dir with GetModuleFileName() first, now, |
|
282 |
and falls back to SearchPath() if there were problems. Changed an |
|
283 |
occurence of _MAX_PATH to MAX_PATH, so both CygWin and Visual C can |
|
284 |
handle it. |
|
285 |
08282001 - win32.c now checks HOMEDRIVE, HOMEPATH, and HOME when calculating |
|
286 |
the userdir. Added include files that make it a little closer to |
|
287 |
compiling under Cygwin. Added a TODO file. Fixed unix.c's |
|
288 |
__PHYSFS_platformCalcBaseDir() so that it actually works. Fixed |
|
289 |
Makefile so that it links the test program properly. |
|
290 |
Changed version to 0.1.3. |
|
291 |
08232001 - Fixed a potential free()ing of a NULL pointer in |
|
292 |
__PHYSFS_platformEnumerateFiles() in platform/unix.c. Added |
|
293 |
platform/win32.c. Other cleanups to get this compiling with |
|
294 |
Visual C and CygWin. Added BAIL_MACRO for times when we were doing |
|
295 |
BAIL_IF_MACRO(1, ...). Abstracted mkdir() in the platform drivers. |
|
296 |
Added GRP setting output to showcfg in the Makefile. Updated INSTALL |
|
297 |
with license info and Win32 build instructions. Dependency on the |
|
298 |
readline library in test_physfs.c is now optional. |
|
299 |
Changed version to 0.1.2. |
|
300 |
08072001 - Changed version to 0.1.1. |
|
301 |
08062001 - Added CD-ROM detection code to the unix platform driver. |
|
302 |
08012001 - Added a safety memset in error setting, fixed URLs and email addr. |
|
303 |
07282001 - Initial release. |
|
59 | 304 |
|
305 |
--ryan. (icculus@clutteredmind.org) |
|
306 |
||
307 |
/* end of CHANGELOG ... */ |
|
308 |