* dcrt0.cc (multiple_cygwin_problem): Reorganize error message to not always

talk about a "version" when it's not a version.
(dll_crt0_0): Change info passed to multiple_cygwin_problem to be a little more
precise.
* shared.cc (user_shared_initialize): Ditto.
(shared_info::initialize): Ditto.
This commit is contained in:
Christopher Faylor 2005-01-05 21:40:08 +00:00
parent abb13199ba
commit 2d76a612d2
3 changed files with 20 additions and 9 deletions

View File

@ -1,3 +1,12 @@
2005-01-05 Christopher Faylor <cgf@timesys.com>
* dcrt0.cc (multiple_cygwin_problem): Reorganize error message to not
always talk about a "version" when it's not a version.
(dll_crt0_0): Change info passed to multiple_cygwin_problem to be a
little more precise.
* shared.cc (user_shared_initialize): Ditto.
(shared_info::initialize): Ditto.
2005-01-03 Christopher Faylor <cgf@timesys.com>
* pinfo.cc (_pinfo::dup_proc_pipe): Can't close proc pipe when execing

View File

@ -600,13 +600,13 @@ dll_crt0_0 ()
else
{
if ((child_proc_info->intro & OPROC_MAGIC_MASK) == OPROC_MAGIC_GENERIC)
multiple_cygwin_problem ("proc", child_proc_info->intro, 0);
multiple_cygwin_problem ("proc intro", child_proc_info->intro, 0);
else if (child_proc_info->intro == PROC_MAGIC_GENERIC
&& child_proc_info->magic != CHILD_INFO_MAGIC)
multiple_cygwin_problem ("proc", child_proc_info->magic,
multiple_cygwin_problem ("proc magic", child_proc_info->magic,
CHILD_INFO_MAGIC);
else if (child_proc_info->cygheap != (void *) &_cygheap_start)
multiple_cygwin_problem ("cygheap", (DWORD) child_proc_info->cygheap,
multiple_cygwin_problem ("cygheap base", (DWORD) child_proc_info->cygheap,
(DWORD) &_cygheap_start);
unsigned should_be_cb = 0;
switch (child_proc_info->type)
@ -1141,12 +1141,14 @@ multiple_cygwin_problem (const char *what, unsigned magic_version, unsigned vers
if (CYGWIN_VERSION_MAGIC_VERSION (magic_version) == version)
system_printf ("%s magic number mismatch detected - %p/%p", what, magic_version, version);
else
api_fatal ("%s version mismatch detected - %p/%p.\n\
You have multiple copies of cygwin1.dll on your system.\n\
api_fatal ("%s mismatch detected - %p/%p.\n\
This problem is probably due to using incompatible versions of the cygwin DLL.\n\
Search for cygwin1.dll using the Windows Start->Find/Search facility\n\
and delete all but the most recent version. The most recent version *should*\n\
reside in x:\\cygwin\\bin, where 'x' is the drive on which you have\n\
installed the cygwin distribution.", what, magic_version, version);
installed the cygwin distribution. Rebooting is also suggested if you\n\
are unable to find another cygwin DLL.",
what, magic_version, version);
}
#ifdef DEBUGGING

View File

@ -185,9 +185,9 @@ user_shared_initialize (bool reinit)
user_shared->delqueue.init ();
}
else if (user_shared->version != USER_VERSION_MAGIC)
multiple_cygwin_problem ("user", user_shared->version, USER_VERSION_MAGIC);
multiple_cygwin_problem ("user shared memory version", user_shared->version, USER_VERSION_MAGIC);
else if (user_shared->cb != sizeof (*user_shared))
multiple_cygwin_problem ("user shared size", user_shared->cb, sizeof (*user_shared));
multiple_cygwin_problem ("user shared memory size", user_shared->cb, sizeof (*user_shared));
}
void
@ -203,7 +203,7 @@ shared_info::initialize ()
{
if (version != SHARED_VERSION_MAGIC)
{
multiple_cygwin_problem ("shared", version, SHARED_VERSION_MAGIC);
multiple_cygwin_problem ("system shared memory version", version, SHARED_VERSION_MAGIC);
InterlockedExchange ((LONG *) &version, sversion);
}
while (!cb)