This is the mail archive of the cygwin-developers@sourceware.cygnus.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: WARNING: previous dlopen of %s wasn't correctly performed


Chris Faylor <cgf@cygnus.com> writes:
> Can anyone tell me what this error message signifies?  I've got it coming fro
> m dlopen
> but I'm too tired to figure out why.
> 

If you're using dlopen, I may know have a clue; otherwise, sorry.

Point your debugger to DllList::recordDll and check then "buf" and
_dlOpenedLib variables and that should provide a clue.

The problem is quite possibly in DllList::recordDll, and usually has 
to do with the fact the the DLL name given to dlopen doesn't match the 
name Windows returns via GetModuleFileName later in recordDll. Usually
the problem is in case mismatch, and that should have been fixed by the 
following patch:

Sat May 22 19:03:47 1999  Mumit Khan  <khan@xraylith.wisc.edu>

	* dll_init.cc (DllList::recordDll): Forkee must reload dlopened
	DLLs. Also use strcasematch, not strcmp to compare file name.

The other issue may very well have to do with symbolic links, however
it does appear to be taken care of in dlfcn.cc:get_full_path_of_dll. See
get_full_path_of_dll and check_access in dlfcn.cc for how a DLL name is 
looked up. 

Regards,
Mumit


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]