CVSROOT:        /cvs/src
Module name:    src
Changes by:     [EMAIL PROTECTED]       2008-03-07 11:24:52

Modified files:
        winsup/cygwin  : ChangeLog Makefile.in autoload.cc cygheap.h 
                         cygtls.cc cygtls.h environ.cc environ.h 
                         external.cc fhandler_console.cc 
                         fhandler_process.cc fork.cc path.cc path.h 
                         pinfo.cc registry.cc spawn.cc syscalls.cc 
                         tlsoffsets.h winsup.h 
Added files:
        winsup/cygwin  : tls_pbuf.cc tls_pbuf.h 

Log message:
        * Makefile.in (DLL_OFILES): Add tls_pbuf.o.
        * autoload.cc (CreateDesktopW): Replace CreateDesktopA.
        (CreateWindowStationW): Replace CreateWindowStationA.
        (GetUserObjectInformationW): Replace GetUserObjectInformationA.
        * cygheap.h (cwdstuff::get): Assume default buffer size NT_MAX_PATH.
        * cygtls.cc (_cygtls::remove): Free temporary TLS path buffers.
        * cygtls.h (TP_NUM_C_BUFS): Define.
        (TP_NUM_W_BUFS): Define.
        (class tls_pathbuf): New class to store pointers to thread local
        temporary path buffers.
        (_local_storage::pathbufs): New member.
        * environ.cc (win_env::add_cache): Use temporary TLS path buffer instead
        of stack based buffer.
        (posify): Get temporary outenv buffer from calling function.
        (environ_init): Create temporary TLS path buffer for posify.
        (build_env): Create Windows environment block as WCHAR buffer.
        * environ.h (build_env): Change declaration accordingly.
        * external.cc (sync_winenv): Accommodate build_env change.
        * fhandler_console.cc (fhandler_console::need_invisible): Use
        GetUserObjectInformationW and CreateWindowStationW.
        * fhandler_process.cc (format_process_maps): Use temporary TLS path
        buffer instead of stack based buffer.
        * fork.cc (frok::parent): Convert to use CreateProcessW.
        * path.cc: Throughout use temporary TLS path buffers instead of stack
        based buffer.  Replace checks for CYG_MAX_PATH by checks for
        NT_MAX_PATH.
        (getfileattr): New function to replace GetFileAttributesA.
        (normalize_win32_path): Remove Win32 and NT long path prefixes.
        (getwd): Assume PATH_MAX + 1 buffer per SUSv3.
        * path.h (class path_conv): Set path buffer to size NT_MAX_PATH.
        (iswdrive): Define.
        * pinfo.cc (commune_process): Use temporary TLS path buffer instead of
        stack based buffer.
        * registry.cc (get_registry_hive_path): Ditto.
        (load_registry_hive): Ditto.
        * spawn.cc (spawn_guts): Convert to use CreateProcessW and
        CreateProcessAsUserW.
        (av::fixup): Open/close file using NtOpenFile/NtClose.
        * syscalls.cc (mknod_worker): Allow PATH_MAX file name.
        (mknod32): Ditto.
        (getusershell): Ditto.
        * tls_pbuf.cc: New file implementing tls_pathbuf and tmp_pathbuf
        methods.
        * tls_pbuf.h: New header for files using tmp_pathbuf.
        * tlsoffsets.h: Regenerate.
        * winsup.h (NT_MAX_PATH): Define as 32767 to avoid USHORT overflow.

Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/src/winsup/cygwin/tls_pbuf.cc.diff?cvsroot=src&r1=NONE&r2=1.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/winsup/cygwin/tls_pbuf.h.diff?cvsroot=src&r1=NONE&r2=1.1
http://sourceware.org/cgi-bin/cvsweb.cgi/src/winsup/cygwin/ChangeLog.diff?cvsroot=src&r1=1.4040&r2=1.4041
http://sourceware.org/cgi-bin/cvsweb.cgi/src/winsup/cygwin/Makefile.in.diff?cvsroot=src&r1=1.205&r2=1.206
http://sourceware.org/cgi-bin/cvsweb.cgi/src/winsup/cygwin/autoload.cc.diff?cvsroot=src&r1=1.144&r2=1.145
http://sourceware.org/cgi-bin/cvsweb.cgi/src/winsup/cygwin/cygheap.h.diff?cvsroot=src&r1=1.130&r2=1.131
http://sourceware.org/cgi-bin/cvsweb.cgi/src/winsup/cygwin/cygtls.cc.diff?cvsroot=src&r1=1.59&r2=1.60
http://sourceware.org/cgi-bin/cvsweb.cgi/src/winsup/cygwin/cygtls.h.diff?cvsroot=src&r1=1.54&r2=1.55
http://sourceware.org/cgi-bin/cvsweb.cgi/src/winsup/cygwin/environ.cc.diff?cvsroot=src&r1=1.160&r2=1.161
http://sourceware.org/cgi-bin/cvsweb.cgi/src/winsup/cygwin/environ.h.diff?cvsroot=src&r1=1.10&r2=1.11
http://sourceware.org/cgi-bin/cvsweb.cgi/src/winsup/cygwin/external.cc.diff?cvsroot=src&r1=1.97&r2=1.98
http://sourceware.org/cgi-bin/cvsweb.cgi/src/winsup/cygwin/fhandler_console.cc.diff?cvsroot=src&r1=1.174&r2=1.175
http://sourceware.org/cgi-bin/cvsweb.cgi/src/winsup/cygwin/fhandler_process.cc.diff?cvsroot=src&r1=1.80&r2=1.81
http://sourceware.org/cgi-bin/cvsweb.cgi/src/winsup/cygwin/fork.cc.diff?cvsroot=src&r1=1.194&r2=1.195
http://sourceware.org/cgi-bin/cvsweb.cgi/src/winsup/cygwin/path.cc.diff?cvsroot=src&r1=1.474&r2=1.475
http://sourceware.org/cgi-bin/cvsweb.cgi/src/winsup/cygwin/path.h.diff?cvsroot=src&r1=1.111&r2=1.112
http://sourceware.org/cgi-bin/cvsweb.cgi/src/winsup/cygwin/pinfo.cc.diff?cvsroot=src&r1=1.242&r2=1.243
http://sourceware.org/cgi-bin/cvsweb.cgi/src/winsup/cygwin/registry.cc.diff?cvsroot=src&r1=1.32&r2=1.33
http://sourceware.org/cgi-bin/cvsweb.cgi/src/winsup/cygwin/spawn.cc.diff?cvsroot=src&r1=1.252&r2=1.253
http://sourceware.org/cgi-bin/cvsweb.cgi/src/winsup/cygwin/syscalls.cc.diff?cvsroot=src&r1=1.472&r2=1.473
http://sourceware.org/cgi-bin/cvsweb.cgi/src/winsup/cygwin/tlsoffsets.h.diff?cvsroot=src&r1=1.34&r2=1.35
http://sourceware.org/cgi-bin/cvsweb.cgi/src/winsup/cygwin/winsup.h.diff?cvsroot=src&r1=1.212&r2=1.213

Reply via email to