and call to GetLastError throughout.
* bsd_mutex.cc: Ditto.
* sysv_sem.cc (semget): Replace %X __small_printf format specifier
with %llx.
+2008-02-06 Corinna Vinschen <corinna@vinschen.de>
+
+ * bsd_helper.cc: Replace %E __small_printf format specifier with %lu
+ and call to GetLastError throughout.
+ * bsd_mutex.cc: Ditto.
+ * sysv_sem.cc (semget): Replace %X __small_printf format specifier
+ with %llx.
+
2008-02-06 Corinna Vinschen <corinna@vinschen.de>
Remove dependency from Cygwin internal code.
2008-02-06 Corinna Vinschen <corinna@vinschen.de>
Remove dependency from Cygwin internal code.
vm_object_t object = CreateFileMapping (INVALID_HANDLE_VALUE, &sec_all_nih,
PAGE_READWRITE, 0, size, NULL);
if (!object)
vm_object_t object = CreateFileMapping (INVALID_HANDLE_VALUE, &sec_all_nih,
PAGE_READWRITE, 0, size, NULL);
if (!object)
- panic ("CreateFileMapping in _vm_pager_allocate failed, %E");
+ panic ("CreateFileMapping in _vm_pager_allocate failed, %lu", GetLastError ());
if (!DuplicateHandle (GetCurrentProcess (), object,
td->client->handle (), &dup_object,
0, TRUE, DUPLICATE_SAME_ACCESS))
if (!DuplicateHandle (GetCurrentProcess (), object,
td->client->handle (), &dup_object,
0, TRUE, DUPLICATE_SAME_ACCESS))
- panic ("!DuplicateHandle in vm_object_duplicate failed, %E");
+ panic ("!DuplicateHandle in vm_object_duplicate failed, %lu", GetLastError ());
unlockable by the lock owner. */
m->h = CreateSemaphore (NULL, 1, 1, NULL);
if (!m->h)
unlockable by the lock owner. */
m->h = CreateSemaphore (NULL, 1, 1, NULL);
if (!m->h)
- panic ("couldn't allocate %s mutex, %E\n", name);
+ panic ("couldn't allocate %s mutex, %lu\n", name, GetLastError ());
_log (file, line, LOG_DEBUG, "Try locking mutex %s (%u) (hold: %u)",
m->name, winpid, m->owner);
if (WaitForSingleObject (m->h, INFINITE) != WAIT_OBJECT_0)
_log (file, line, LOG_DEBUG, "Try locking mutex %s (%u) (hold: %u)",
m->name, winpid, m->owner);
if (WaitForSingleObject (m->h, INFINITE) != WAIT_OBJECT_0)
- _panic (file, line, "wait for %s in %d failed, %E", m->name, winpid);
+ _panic (file, line, "wait for %s in %d failed, %lu", m->name, winpid,
+ GetLastError ());
m->owner = winpid;
_log (file, line, LOG_DEBUG, "Locked mutex %s/%u (%u)",
m->name, ++m->cnt, winpid);
m->owner = winpid;
_log (file, line, LOG_DEBUG, "Locked mutex %s/%u (%u)",
m->name, ++m->cnt, winpid);
{
/* Check if the semaphore was already on it's max value. */
if (GetLastError () != ERROR_TOO_MANY_POSTS)
{
/* Check if the semaphore was already on it's max value. */
if (GetLastError () != ERROR_TOO_MANY_POSTS)
- _panic (file, line, "release of mutex %s failed, %E", m->name);
+ _panic (file, line, "release of mutex %s failed, %lu", m->name,
+ GetLastError ());
}
_log (file, line, LOG_DEBUG, "Unlocked mutex %s/%u (owner: %u)",
m->name, cnt, owner);
}
_log (file, line, LOG_DEBUG, "Unlocked mutex %s/%u (owner: %u)",
m->name, cnt, owner);
a[i].ident = ident;
a[i].wakeup_evt = CreateEvent (NULL, TRUE, FALSE, NULL);
if (!a[i].wakeup_evt)
a[i].ident = ident;
a[i].wakeup_evt = CreateEvent (NULL, TRUE, FALSE, NULL);
if (!a[i].wakeup_evt)
- panic ("CreateEvent failed: %E");
+ panic ("CreateEvent failed: %lu", GetLastError ());
debug ("i = %d, CreateEvent: %x", i, a[i].wakeup_evt);
a[i].threads = 1;
++cnt;
debug ("i = %d, CreateEvent: %x", i, a[i].wakeup_evt);
a[i].threads = 1;
++cnt;
msleep_glob_evt = CreateEvent (NULL, TRUE, FALSE, NULL);
if (!msleep_glob_evt)
msleep_glob_evt = CreateEvent (NULL, TRUE, FALSE, NULL);
if (!msleep_glob_evt)
- panic ("CreateEvent in msleep_init failed: %E");
+ panic ("CreateEvent in msleep_init failed: %lu", GetLastError ());
long msgmni = support_msgqueues ? msginfo.msgmni : 0;
long semmni = support_semaphores ? seminfo.semmni : 0;
TUNABLE_INT_FETCH ("kern.ipc.msgmni", &msgmni);
long msgmni = support_msgqueues ? msginfo.msgmni : 0;
long semmni = support_semaphores ? seminfo.semmni : 0;
TUNABLE_INT_FETCH ("kern.ipc.msgmni", &msgmni);
treat an ERROR_INVALID_HANDLE as a normal process termination and
hope for the best. */
if (GetLastError () != ERROR_INVALID_HANDLE)
treat an ERROR_INVALID_HANDLE as a normal process termination and
hope for the best. */
if (GetLastError () != ERROR_INVALID_HANDLE)
- panic ("wait in msleep (%s) failed, %E", wmesg);
- debug ("wait in msleep (%s) failed for %d, %E", wmesg,
- td->td_proc->winpid);
+ panic ("wait in msleep (%s) failed, %lu", wmesg, GetLastError ());
+ debug ("wait in msleep (%s) failed for %d, %lu", wmesg,
+ td->td_proc->winpid, GetLastError ());
struct ucred *cred = td->td_ucred;
#endif
struct ucred *cred = td->td_ucred;
#endif
- DPRINTF(("semget(0x%X, %d, 0%o)\n", key, nsems, semflg));
+ DPRINTF(("semget(0x%llx, %d, 0%o)\n", key, nsems, semflg));
if (!jail_sysvipc_allowed && jailed(td->td_ucred))
return (ENOSYS);
if (!jail_sysvipc_allowed && jailed(td->td_ucred))
return (ENOSYS);