From 66de14fff8d6aa6fb902b8e6f30c0ea3fcf42b91 Mon Sep 17 00:00:00 2001 From: scottc Date: Sun, 22 Sep 2002 10:31:44 +0000 Subject: * cygserver_shm.cc (with_strerr): Remove macro. (server_shmmgr::segment_t::~segment_t): Remove calls to with_strerr. (server_shmmgr::segment_t::attach): Ditto. (server_shmmgr::new_segment): Ditto. * shm.cc (with_strerr): Remove macro. (client_shmmgr::shmdt): Remove calls to with_strerr. (client_shmmgr::attach): Ditto. --- winsup/cygwin/ChangeLog | 10 ++++++ winsup/cygwin/cygserver_shm.cc | 63 +++------------------------------ winsup/cygwin/shm.cc | 79 +++++++----------------------------------- 3 files changed, 28 insertions(+), 124 deletions(-) diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index 8ca2bad653e..a9a79561519 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,3 +1,13 @@ +2002-09-22 Conrad Scott + + * cygserver_shm.cc (with_strerr): Remove macro. + (server_shmmgr::segment_t::~segment_t): Remove calls to with_strerr. + (server_shmmgr::segment_t::attach): Ditto. + (server_shmmgr::new_segment): Ditto. + * shm.cc (with_strerr): Remove macro. + (client_shmmgr::shmdt): Remove calls to with_strerr. + (client_shmmgr::attach): Ditto. + 2002-09-21 Christopher Faylor * init.cc (dll_entry): Temporarily disable thread detach code. diff --git a/winsup/cygwin/cygserver_shm.cc b/winsup/cygwin/cygserver_shm.cc index 615da2c1ee9..2958667bd9e 100755 --- a/winsup/cygwin/cygserver_shm.cc +++ b/winsup/cygwin/cygserver_shm.cc @@ -27,48 +27,6 @@ details. */ #include "cygwin/cygserver_process.h" #include "cygwin/cygserver_transport.h" -/*---------------------------------------------------------------------------* - * with_strerr () - *---------------------------------------------------------------------------*/ - -#define with_strerr(MSG, ACTION) \ - do \ - { \ - const DWORD lasterr = GetLastError (); \ - char *MSG = NULL; \ - if (!FormatMessage ((FORMAT_MESSAGE_ALLOCATE_BUFFER \ - | FORMAT_MESSAGE_FROM_SYSTEM \ - | FORMAT_MESSAGE_IGNORE_INSERTS), \ - NULL, \ - lasterr, \ - MAKELANGID (LANG_NEUTRAL, SUBLANG_DEFAULT), \ - reinterpret_cast(&MSG), \ - 0, \ - NULL)) \ - { \ - MSG = static_cast \ - (LocalAlloc (LMEM_FIXED, 24)); /* Big enough. */ \ - if (!MSG) \ - { \ - system_printf (("failure in LocalAlloc(LMEM_FIXED, 16): " \ - "error = %lu"), \ - GetLastError ()); \ - } \ - else \ - { \ - snprintf (MSG, 24, "error = %lu", lasterr); \ - } \ - } \ - SetLastError (lasterr); \ - { ACTION; } \ - if (MSG && !LocalFree (MSG)) \ - { \ - system_printf ("failed to free memory at %p, error = %lu", \ - MSG, GetLastError ()); \ - } \ - SetLastError (lasterr); \ - } while (false) - /*---------------------------------------------------------------------------* * class server_shmmgr * @@ -239,10 +197,7 @@ server_shmmgr::segment_t::~segment_t () assert (!_attach_head); if (!CloseHandle (_hFileMap)) - with_strerr - (msg, - syscall_printf (("failed to close file map [handle = 0x%x]: %s"), - _hFileMap, msg)); + syscall_printf ("failed to close file map [handle = 0x%x]: %E", _hFileMap); } /*---------------------------------------------------------------------------* @@ -263,13 +218,9 @@ server_shmmgr::segment_t::attach (class process *const client, FALSE, // bInheritHandle DUPLICATE_SAME_ACCESS)) { - with_strerr - (msg, - syscall_printf (("failed to duplicate handle for client " - "[key = 0x%016llx, shmid = %d, handle = 0x%x]:" - "%s"), - _ds.shm_perm.key, _shmid, _hFileMap, - msg)); + syscall_printf (("failed to duplicate handle for client " + "[key = 0x%016llx, shmid = %d, handle = 0x%x]: %E"), + _ds.shm_perm.key, _shmid, _hFileMap); return -EACCES; // FIXME: Case analysis? } @@ -748,11 +699,7 @@ server_shmmgr::new_segment (const key_t key, if (!hFileMap) { - with_strerr - (msg, - syscall_printf (("failed to create file mapping [size = %lu]: %s"), - size, msg)); - + syscall_printf ("failed to create file mapping [size = %lu]: %E", size); return -ENOMEM; // FIXME } diff --git a/winsup/cygwin/shm.cc b/winsup/cygwin/shm.cc index 5b2b7188a13..94a86e2a8bc 100644 --- a/winsup/cygwin/shm.cc +++ b/winsup/cygwin/shm.cc @@ -27,48 +27,6 @@ details. */ #include "cygserver_ipc.h" #include "cygserver_shm.h" -/*---------------------------------------------------------------------------* - * with_strerr () - *---------------------------------------------------------------------------*/ - -#define with_strerr(MSG, ACTION) \ - do \ - { \ - const DWORD lasterr = GetLastError (); \ - char *MSG = NULL; \ - if (!FormatMessage ((FORMAT_MESSAGE_ALLOCATE_BUFFER \ - | FORMAT_MESSAGE_FROM_SYSTEM \ - | FORMAT_MESSAGE_IGNORE_INSERTS), \ - NULL, \ - lasterr, \ - MAKELANGID (LANG_NEUTRAL, SUBLANG_DEFAULT), \ - reinterpret_cast(&MSG), \ - 0, \ - NULL)) \ - { \ - MSG = static_cast \ - (LocalAlloc (LMEM_FIXED, 24)); /* Big enough. */ \ - if (!MSG) \ - { \ - system_printf (("failure in LocalAlloc(LMEM_FIXED, 16): " \ - "error = %lu"), \ - GetLastError ()); \ - } \ - else \ - { \ - snprintf (MSG, 24, "error = %lu", lasterr); \ - } \ - } \ - SetLastError (lasterr); \ - { ACTION; } \ - if (MSG && !LocalFree (MSG)) \ - { \ - system_printf ("failed to free memory at %p, error = %lu", \ - MSG, GetLastError ()); \ - } \ - SetLastError (lasterr); \ - } while (false) - /*---------------------------------------------------------------------------* * class client_shmmgr * @@ -335,22 +293,17 @@ client_shmmgr::shmdt (const void *const shmaddr) assert (cnt >= 0); if (!UnmapViewOfFile ((void *) shmaddr)) - with_strerr (msg, - syscall_printf (("failed to unmap view " - "[shmid = %d, handle = %p, shmaddr = %p]:" - "%s"), - segptr->shmid, segptr->hFileMap, shmaddr, - msg)); + syscall_printf (("failed to unmap view " + "[shmid = %d, handle = %p, shmaddr = %p]:" + "%E"), + segptr->shmid, segptr->hFileMap, shmaddr); assert (segptr->hFileMap); if (!CloseHandle (segptr->hFileMap)) - with_strerr (msg, - syscall_printf (("failed to close file map handle " - "[shmid = %d, handle = %p]:" - "%s"), - segptr->shmid, segptr->hFileMap, - msg)); + syscall_printf (("failed to close file map handle " + "[shmid = %d, handle = %p]: %E"), + segptr->shmid, segptr->hFileMap); client_request_shm request (segptr->shmid); @@ -514,12 +467,9 @@ client_shmmgr::attach (const int shmid, if (!ptr) { - with_strerr (msg, - syscall_printf (("failed to map view " - "[shmid = %d, handle = %p, shmaddr = %p]:" - "%s"), - shmid, request.hFileMap (), shmaddr, - msg)); + syscall_printf (("failed to map view " + "[shmid = %d, handle = %p, shmaddr = %p]: %E"), + shmid, request.hFileMap (), shmaddr); result = EINVAL; // FIXME } else if (shmaddr && ptr != shmaddr) @@ -535,12 +485,9 @@ client_shmmgr::attach (const int shmid, if (result != 0) { if (!CloseHandle (request.hFileMap ())) - with_strerr (msg, - syscall_printf (("failed to close file map handle " - "[shmid = %d, handle = %p]:" - "%s"), - shmid, request.hFileMap (), - msg)); + syscall_printf (("failed to close file map handle " + "[shmid = %d, handle = %p]: %E"), + shmid, request.hFileMap ()); client_request_shm dt_req (shmid); -- cgit v1.2.1