in the OS4 SDK. Otherwise "struct timeval" will not be defined at the time
the <net/if.h> of the netincludes will be included by <proto/bsdsocket.h>.
- The strftime() hook function had the locale and character parameters
switched, which made 'setlocale(LC_ALL,""); strftime(..);' unusable.
Fixed.
- fchown() and chown() now accept owner and group ID values of -1, which
indicate that the respective information should not be changed.
- The OS4 library build now includes the crtbegin.o and crtend.o object
files in the libc.a library, which solves a problem with the thread-safe
shared library support code.
git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15090 87f5fb63-7c3d-0410-a384-fd976d0f7a62
- getcwd() now considers a buffer size of 0 an error, and it sets
the errno code to ERANGE if the buffer is too small.
- With Unix path semantics enabled, rename() now fails if either
the old or the new name are empty strings. Same thing for
opendir(), utime(), unlink(), chown(), link(), readlink(),
realpath(), chdir(), access(), stat(), rmdir(), lstat(),
chmod(), statfs() and open()/fopen().
- Fixed several issues with the formatted output of strftime()
for the "C" locale: "%p" could return " PM", "%c" is now
equivalent to "%a %b %e %T %Y", "%x" is equivalent to "%m/%d/%y"
and "%X" is now equivalent to "%T".
git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@15020 87f5fb63-7c3d-0410-a384-fd976d0f7a62
year number mod 100.
git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@14955 87f5fb63-7c3d-0410-a384-fd976d0f7a62
"decimal" number. That is, if the difference is 5 hours and 30 minutes,
then %z will now print "530" rather than "330".
- mktime() now handles one leap second gracefully.
git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@14941 87f5fb63-7c3d-0410-a384-fd976d0f7a62
and dirent data operations. That should do it! While the library is
not reentrant (this is not ixemul.library) it should be thread-safe
now. Thread-safe in the sense of POSIX 1003.1c-1995.
git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@14842 87f5fb63-7c3d-0410-a384-fd976d0f7a62
parameters (which is by default linked in with libunix.a),
regular expressions can no longer prompt dos.library requesters
to appear. However, to be on the safe side, if you are expecting
to pass regular expressions on the command line, do not use
the wildcard expansion code such as by overriding the library
symbols with dummy functions such as are used in the file
"stdlib_wildcard_expand.c".
- Added a new variable '__open_locale' which can be used to
restrict all library functions to use the "C" language locale
rather than the current system locale settings. In addition
to that, two new functions __locale_exit() and __locale_init()
can be used to close and (re-)open the system locale at a
later time.
- Local ("static") functions are now identified by the STATIC
qualifier. This was done in preparation for changes that will
deal with global and local data and the issue of thread safety.
git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@14839 87f5fb63-7c3d-0410-a384-fd976d0f7a62
code which initialized them.
- Reading/changing the errno variable is no longer done directly, but
involves accessor functions.
- References to the HUGE_VAL quantity now involve an accessor function, too.
- Changed the manner in which the __huge_val constant is initialized by
the __math_init() function.
git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@14824 87f5fb63-7c3d-0410-a384-fd976d0f7a62
- Simplified the code in time_asctime_r.c which builds the time
string. It gracefully handles buffer sizes which are too short
by returning an empty string.
- Moved the tm->tm_wday initialization out of the hook function
in time_strftime.c since it was to be called only once anyway.
- Lost a few compiler warnings in unistd_time_delay.c and
time_gettimeofday.c.
- Folded duplicate code in time_mktime.c; also, errno is no longer
modified unless the library is built with the CHECK_FOR_NULL_POINTERS
option.
git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@14818 87f5fb63-7c3d-0410-a384-fd976d0f7a62
so far as used by the the __convert_time() function and the conversion
code in strftime().
- Also changed the algorithm used by strftime() to produce the week numbers
(the '%U' and '%W' format specifiers). The new method is much simpler
than the old one.
- Made the code that converts a 'time_t' value into the 'struct DateStamp',
as used by strftime() and utime(), into its own function. This also
fixes a bug in the code strftime() would use which was completely
unaware of the local time zone settings.
git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@14815 87f5fb63-7c3d-0410-a384-fd976d0f7a62
strftime() and asctime_r(). This one isn't sensitive to the effects of
adding/subtracting the local time zone.
git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@14813 87f5fb63-7c3d-0410-a384-fd976d0f7a62
function.
- The fall-back function for converting time into a string in strftime()
now calls itself for the "%x" and "%X" format specifiers.
git-svn-id: file:///Users/olsen/Code/migration-svn-zu-git/logical-line-staging/clib2/trunk@14809 87f5fb63-7c3d-0410-a384-fd976d0f7a62