* syscalls.cc (_link): Make sure that newpath does not exist. Set errno if it
does. * cygheap.cc (init_cheap): Don't specify a load address for the heap. It doesn't work on #!*& Windows 9x. (cygheap_init): Move GetUserName to memory_init. * dcrt0.cc (dll_crt0_1): Call new memory_init functin, eliminate call to heap_init. * heap.cc (heap_init): Improve error output. * heap.h: Correct some declarations. * shared.cc (mount_table_init): Remove. (memory_init): Renamed from shared_init. Reorganize to accomodate strange Windows 9x problems with cygheap/heap interaction. * shared_info.h: Rename shared_init to memory_init.
This commit is contained in:
@@ -531,6 +531,13 @@ _link (const char *a, const char *b)
|
||||
set_errno (real_b.error);
|
||||
goto done;
|
||||
}
|
||||
|
||||
if (real_b.file_attributes () != (DWORD)-1)
|
||||
{
|
||||
syscall_printf ("file '%s' exists?", (char *)real_b);
|
||||
set_errno (EEXIST);
|
||||
goto done;
|
||||
}
|
||||
if (real_b.get_win32 ()[strlen (real_b.get_win32 ()) - 1] == '.')
|
||||
{
|
||||
syscall_printf ("trailing dot, bailing out");
|
||||
|
Reference in New Issue
Block a user