diff options
author | Eric Blake <eblake@redhat.com> | 2007-06-27 12:46:35 +0000 |
---|---|---|
committer | Eric Blake <eblake@redhat.com> | 2007-06-27 12:46:35 +0000 |
commit | 048e00e01d23d1f8e59eb990ddc740b779f8f1f5 (patch) | |
tree | ca79cdb999e2d90381bc3afa66bfe8b899b93f51 /winsup/cygwin/assert.cc | |
parent | 3473e6bd7b268deb4314659009512d846a75b368 (diff) | |
download | cygnal-048e00e01d23d1f8e59eb990ddc740b779f8f1f5.tar.gz cygnal-048e00e01d23d1f8e59eb990ddc740b779f8f1f5.tar.bz2 cygnal-048e00e01d23d1f8e59eb990ddc740b779f8f1f5.zip |
* assert.cc (__assert_func): New function, to match newlib header
change.
* cygwin.din: Export __assert_func.
* include/cygwin/version.h: Bump API minor number.
Diffstat (limited to 'winsup/cygwin/assert.cc')
-rw-r--r-- | winsup/cygwin/assert.cc | 19 |
1 files changed, 14 insertions, 5 deletions
diff --git a/winsup/cygwin/assert.cc b/winsup/cygwin/assert.cc index 063c7b852..2d50c190c 100644 --- a/winsup/cygwin/assert.cc +++ b/winsup/cygwin/assert.cc @@ -1,6 +1,6 @@ /* assert.cc: Handle the assert macro for WIN32. - Copyright 1997, 1998, 2000, 2001 Red Hat, Inc. + Copyright 1997, 1998, 2000, 2001, 2007 Red Hat, Inc. This file is part of Cygwin. @@ -23,6 +23,13 @@ details. */ extern "C" void __assert (const char *file, int line, const char *failedexpr) { + __assert_func (file, line, NULL, failedexpr); +} + +extern "C" void +__assert_func (const char *file, int line, const char *func, + const char *failedexpr) +{ HANDLE h; /* If we don't have a console in a Windows program, then bring up a @@ -35,15 +42,17 @@ __assert (const char *file, int line, const char *failedexpr) char *buf; buf = (char *) alloca (100 + strlen (failedexpr)); - __small_sprintf (buf, "Failed assertion\n\t%s\nat line %d of file %s", - failedexpr, line, file); + __small_sprintf (buf, "Failed assertion\n\t%s\nat line %d of file %s%s%s", + failedexpr, line, file, + func ? "\nin function " : "", func ? func : ""); MessageBox (NULL, buf, NULL, MB_OK | MB_ICONERROR | MB_TASKMODAL); } else { CloseHandle (h); - small_printf ("assertion \"%s\" failed: file \"%s\", line %d\n", - failedexpr, file, line); + small_printf ("assertion \"%s\" failed: file \"%s\", line %d%s%s\n", + failedexpr, file, line, + func ? ", function: " : "", func ? func : ""); } #ifdef DEBUGGING |