Raziel wrote:
Might you share what the problem was?
Im just so curious
Hubert
In a nutshell, the problems was a small bug in camd.library.
Incase you also want to know the entire nuts and bolts details of this issue, here it is....
I discovered late last year that I was getting a bug report about being unable to scan directories with a particular
piece of software, but only when using a particular filesystem. This turned out to be a discrepancy between the way
the dos.library handled ExamineDir() emulation for older filesystems and when newer supporting filesystems did it.
Basically, one of the data items was always being supplied by the emulator, whether you asked for it or not.
This would not normally be a problem, because you SHOULD have specified the correct flags for the respective
data items you actually wanted, but when the faulty code ran on a non emulated ExamineDir() filesystem,
it only gave you the items you specificly asked for, as expected.
This would make the faulty application code break that "assumed" the previously unspecified data item would
still be forthcomming.
At dos.library 53.116 I tightened up the ExamineDir() emulator to behave exactly like a supporting filesystem,
and as the documentation specified, so there were no inconsistencies between emulated and supported calls.
This small change made any faulty code consistently show up this problem, regardless of the filesystem in use.
It's just that no-one noticed this for a while, camd.lib wasn't really a high trafic area.